原创 RO段、RW段和ZI段

2007-10-6 19:13 5826 6 6 分类: MCU/ 嵌入式

一般而言,一个程序包括只读的代码段和可读写的数据段。在ARM的集成开发环境中,只读的代码段和常量被称作RO段(ReadOnly);可读写的全局变量和静态变量被称作RW段(ReadWrite);RW段中要被初始化为零的变量被称为ZI段(ZeroInit)。对于嵌入式系统而言,程序映象都是存储在Flash存储器等一些非易失性器件中的,而在运行时,程序中的RW段必须重新装载到可读写的RAM中。这就涉及到程序的加载时域和运行时域。简单来说,程序的加载时域就是指程序烧入Flash中的状态,运行时域是指程序执行时的状态。对于比较简单的情况,可以在ADS集成开发环境的ARM LINKER选项中指定RO BASE和RW BASE,告知连接器RO和RW的连接基地址。对于复杂情况,如RO段被分成几部分并映射到存储空间的多个地方时,需要创建一个称为“分布装载描述文件”的文本文件,通知连接器把程序的某一部分连接在存储器的某个地址空间。需要指出的是,分布装载描述文件中的定义要按照系统重定向后的存储器分布情况进行。
在引导程序完成初始化的任务后,应该把主程序转移到RAM中去运行,以加快系统的运行速度。

文章评论0条评论)

登录后参与讨论
相关推荐阅读
会穿裤子的公鸡 2008-07-27 23:55
IAR下用JLINK 调试STM32心得
用JLINK 调试STM32心得相关配置:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&...
会穿裤子的公鸡 2008-07-19 12:14
KEIL的一些BUG修复
一: 光标问题   Keil uv3 中会出现光标定位不准的问题,对程序员来说是个很大的困扰   修改方法:打开Keil文件夹下的Tool.ini文件做如下修改        NAME="User",...
会穿裤子的公鸡 2008-07-19 12:12
LPC2378开发板
ARM7 KIT LPC2378特点:1、硬件资源丰富,可作LPC2378所有资源的实验。2、丰富的例程(实验大全,无一遗漏),让你快速上手,缩短学习ARM的时间加速项目的开发进度。3、良好的技术支持...
会穿裤子的公鸡 2008-02-16 21:46
Keil uVision 的中文字体乱码解决办法
Keil uVision 的中文字体乱码解决办法来自http://www.mcu123.net/bbs/dispbbs.asp?BoardID=7&ID=6430&replyID=&a...
会穿裤子的公鸡 2007-09-18 16:20
KEIL下用JLINK调试LPC2210外部FLASH
KEIL下用JLINK调试LPC2210外部FLASH ...
广告
我要评论
0
6
1
2
3
4
5
6
7
8
9
0
广告
关闭 热点推荐上一条 /4 下一条