ARM 中的内存分类

说明: 本文为作者自己根据网上知识总结,不保证内容的完全正确性,主要是方便自己记录。

 

1.  存储组织

存储硬件分为: flash ,ram , registers and I/O ports 这4类, 它们本身没有地址,只是被 组织为线性的4g空间;

 

2.  编译后的存储

(1) 编译器在编译程序的时候统计了4类存储: code ,ro-data , rw-data 和 zi-data  , 归纳为2类 , ro  (code + ro-data)和 rw(rw-data 和 zi-data) ;

 (2)编译器在生成image文件(bin文件)的时候只包含code , ro-data ,rw-data这3个 , 而不包含zi-data ;程序运行的时候只需要把zi-data相应的ram存储区域整体清0即可;

(3)bin文件一定要有2个功能:

           a.  将rw-data从rom(flash)搬运到ram中 ,rw变量只能在程序中运行;

           b.  将zi-data在ram中的区域清0 ;

           代码再初始阶段只有完成了a和b,c程序才能访问变量,否则只能运行不包含变量的程序;

 

3.  变量类型和编译后的存储类型的对应关系

(1)ro-data 包含 常量;(表

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值