以下代码为2410 BOOTLODER中的一段,请解释一下

紫皮书   2007-10-20 16:03 楼主

        IMPORT  |Image$$RO$$Base|        ; Base of ROM code
        IMPORT  |Image$$RO$$Limit|  ; End of ROM code (=start of ROM data)
        IMPORT  |Image$$RW$$Base|   ; Base of RAM to initialise
        IMPORT  |Image$$ZI$$Base|   ; Base and limit of area
        IMPORT  |Image$$ZI$$Limit|  ; to zero initialise
有资料说这些标号的值是根据LINKER里的RW-BASE,和RO-BASE算出来的,
RO段驻留内存,RW段需要复制到SDRAM中,
关于ELF文件的结构我不清楚,具体一个程序的地址映射也不知道,请高手指点一下

回复评论 (4)

都不知道你想问啥
RW-BASE,和RO-BASE
这些都是编译器给出的
bootload要搬移
你先了解下bootload的工作原理再看代码吧
点赞  2007-11-26 19:44
有时候不要太执着于一些细节。
看上明显是导入映像的一些地址。代码段之类的东西,估计是ADS特有的,看看ADS帮助手册
点赞  2008-9-3 13:53
你可以看一下U-Boot的一些文档,搞清楚ELF文件的基本结构
基本上就是加载代码,复制到特定的内存地址,然后跳转执行的过程,只是具体的细节不太一样
点赞  2008-9-3 20:31
......
点赞  2008-9-3 22:45
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复