the "load" command and the .bss section
Mike Frysinger
vapier@gentoo.org
Mon Apr 28 08:34:00 GMT 2008
On Sunday 27 April 2008, Daniel Jacobowitz wrote:
> On Sun, Apr 27, 2008 at 05:09:31AM -0400, Mike Frysinger wrote:
> > i was doing a new board port using jtag and so was leveraging the "load"
> > command to setup the initial ELF in the relevant memory regions. things
> > kept crashing on me and then i realized that the loading process wasnt
> > actually zeroing out the bss. is there a reason for this ? i googled
> > and flipped through the manual, but the details on what exactly the
> > "load" command is supposed to do is a bit on sketchy side. from what i
> > can tell from the gdb source code and the actual output from running the
> > command, it walks the section headers (rather than the program headers ?)
> > and loads up everything that is in the file. since the bss section
> > doesnt actually exist in the file and is only allocated, that is why it
> > gets skipped ?
>
> Load puts things at their LMA rather than their VMA. So it assumes
> that whatever sets up load -> virtual also handles bss; it's more like
> flash programming than like the Linux kernel's loader. Heck,
> sometimes it is flash programming...
ah, now that i know the intentions, may i suggest the following to the
documentation.
-mike
2008-04-27 Mike Frysinger <vapier@gentoo.org>
* gdb.texinfo (Commands for Managing Targets): Clarify load command
wrt load/virtual addresses and handling of allocated sections.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 827 bytes
Desc: This is a digitally signed message part.
URL: <http://sourceware.org/pipermail/gdb-patches/attachments/20080428/077cd597/attachment.sig>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gdb-clarify-load.patch
Type: text/x-diff
Size: 1278 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/gdb-patches/attachments/20080428/077cd597/attachment.bin>
More information about the Gdb-patches
mailing list