【ARM 处理器】程序存储详解
2024-01-07 17:18:07
本篇文章主要介绍ARM处理器,Code, RO-data,RW-data,ZI-data 知识以及程序存储情况
1. 专业词汇
- Code : 代码区,存储在
ROM
区域 - RO-data:
Read Only data
,即只读数据域,存储在ROM
区- 比如
const
类型的变量
- 比如
- RW-data:
Read Write data
,即可读写数据域,程序运行时在 RAM 区域,应用程序可以修改其内容;- 比如 初始化为 非零 的全局变量
- ZI-Data:
Zero Initialie data
,即0初始化数据,程序运行时在 RAM 区域,应用程序可以修改其内容;- 比如 初始化为 **零 ** 的全局变量
2. 程序存储
下图中,左侧为 未上电 状态,右侧为 上电程序运行 状态,上电过程描述为:
- 程序在存储状态时,RO段(RO section)及RW段都被保存在ROM区(数据不能被修改)
- 程序在运行状态时,内核从ROM中读取代码,并将RW端行ROM复制到RAM区域,并且在RAM中加入ZI端,ZI段的数据初始化为0
3. 程序空间计算
-
程序需要下载到芯片的FLASH空间,FLASH的最小空间应该大于Code + RO Data + RW Data的总和;
-
程序运行的时候,芯片内部RAM使用的空间应该大于RW Data + ZI Data之和;
文章来源:https://blog.csdn.net/qq_39217004/article/details/135377474
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!