微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > ARM中MMU使用实例

ARM中MMU使用实例

时间:11-11 来源:互联网 点击:

clean:

rm -f mmu.bin mmu_elf mmu.dis *.o

Makefile中第4行命令用来连接程序,它使用连接脚本mmu.lds来控制连接器的行为。文件mmu.lds内容如下:

SECTIONS {

firtst0x00000000 : { head.o init.o }

second0xB0004000 : AT(2048) { leds.o }

}

连接脚本mmu.lds将程序分为两个段:first和second。前者由head.o和init.o组成,它的加载地址和运行地址都是0,所以运行前不需要重新移动代码。后者由leds.o组成,它的加载地址为2048,重定位地址为0xB0004000,这表明段second存放在编译所得映像文件地址2048处,在运行前需要将它复制到地址0xB0004000处,这由init.c中的copy_2th_to_sdram函数完成(注意,此函数将代码复制开始地址为0x30004000的内存中,这是开启MMU后的虚拟地址0xB0004000对应的物理地址)。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top