[U-Boot-Users] Question About how the CPU find the right string address in U-boot binary file ?
Jerry Van Baren
gerald.vanbaren at ge.com
Wed Jun 4 14:49:34 CEST 2008
wang baohua wrote:
> Dear all,
> I study the U-boot.bin file using the objdump command, I don't know how
> the CPU can find the right string address when puts() string.
> For example, In my binary file, the string "Call backtrace: " in func
> "print_backtrace()" address is :0x0002b280, the func address is
> 0xfff03564, How the CPU can find the 0x0002b280 when call puts ("Call
> backtrace: "); ? I find the SMC serial driver
> "serial_putc()" but cannot know how to find the char address in binary
> file.
>
> Below is the objdump result, can anyone explain to me ? thanks!
Please don't post HTML, use plain text.
I don't understand your question, why are you asking it? Are you trying
to figure out a problem or are you just trying to understand the linking
processes?
Using objdump on u-boot.bin is not valid. U-boot.bin is a binary file,
objdump works on ELF (linker formatted) files.
<http://en.wikipedia.org/wiki/Executable_and_Linkable_Format>
When you link the ELF files, the linker fixes up all the addresses so
the linker sets the proper address in the instruction that the CPU
ultimately executes. The u-boot.bin file is a raw binary dump of the
result.
Was that your question???
Best regards,
gvb
More information about the U-Boot
mailing list