kernelnewbies.kernelnewbies.org archive mirror
 help / color / mirror / Atom feed
* What is the purpose of parse_elf() in misc.c
@ 2011-11-25  5:30 Graeme Russ
  2011-12-02  5:41 ` Mulyadi Santosa
  0 siblings, 1 reply; 2+ messages in thread
From: Graeme Russ @ 2011-11-25  5:30 UTC (permalink / raw)
  To: kernelnewbies

Hi All,

In looking at booting a raw x86 kernel image, I discovered that the
compressed image in bzImage is actually an ELF image created with:

objcopy -R .comment -S vmlinux

After decompressing the image, the parse_elf() function in misc.c copies
the sections from the ELF image (there are 3 sections, only 2 are marked
PT_LOAD) into their final resting place in memory. This got me to thinking,
why not use:

objcopy -O binary -R .comment -S vmlinux

I wrote a little stand-alone parse_elf() program, and lo-and-behold, the
outputs are identical. So, in theory, if bzImage contained a raw binary, it
could be decompressed directly to the target address.

Now there is some adjustment in parse_elf() for relocatable kernels, but I
can't but think that this could be simply catered for in the decompression
target address

Surely this would speed up kernel loading by removing the additional copy
that parse_elf() introduces

Or am I missing something significant?

Regards,

Graeme

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2011-12-02  5:41 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-25  5:30 What is the purpose of parse_elf() in misc.c Graeme Russ
2011-12-02  5:41 ` Mulyadi Santosa

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).