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

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users

Reply via email to