【ARM 处理器】程序存储详解

本篇文章主要介绍ARM处理器,Code, RO-data,RW-data,ZI-data 知识以及程序存储情况

目录

  • [1. 专业词汇](#1. 专业词汇)
  • [2. 程序存储](#2. 程序存储)
  • [3. 程序空间计算](#3. 程序空间计算)

1. 专业词汇

  • Code : 代码区,存储在 ROM 区域
  • RO-dataRead Only data,即只读数据域,存储在ROM
    • 比如 const 类型的变量
  • RW-dataRead Write data,即可读写数据域,程序运行时在 RAM 区域,应用程序可以修改其内容;
    • 比如 初始化为 非零 的全局变量
  • ZI-DataZero Initialie data,即0初始化数据,程序运行时在 RAM 区域,应用程序可以修改其内容;
    • 比如 初始化为 **零 ** 的全局变量

2. 程序存储

下图中,左侧为 未上电 状态,右侧为 上电程序运行 状态,上电过程描述为:

  1. 程序在存储状态时,RO段(RO section)及RW段都被保存在ROM区(数据不能被修改)
  2. 程序在运行状态时,内核从ROM中读取代码,并将RW端行ROM复制到RAM区域,并且在RAM中加入ZI端,ZI段的数据初始化为0

3. 程序空间计算

  1. 程序需要下载到芯片的FLASH空间,FLASH的最小空间应该大于Code + RO Data + RW Data的总和;

  2. 程序运行的时候,芯片内部RAM使用的空间应该大于RW Data + ZI Data之和;

相关推荐
技术硬汉32 分钟前
当前国内2G、3G、4G、5G基站覆盖状况
物联网·5g·信息与通信
Kingexpand_com1 小时前
物联网APP配网技术详解:AP配网、BLE配网、SmartConfig的原理与选型指南
物联网·选型·配网·物联网app
STDD2 小时前
Node-RED 自托管部署指南:打造可视化 IoT 自动化平台
运维·物联网·自动化
中科岩创4 小时前
恩施某旅游景区建筑物监测体系构建与应用
人工智能·物联网·自动化
你疯了抱抱我4 小时前
【Mac】安装并配置HomeBrew;ARM GCC;make;OpenOCD
arm开发·macos
嵌入式ZYXC4 小时前
第6章:通信接口的硬件特性——为什么你的UART乱码、I2C死锁、SPI干扰大?
stm32·单片机·嵌入式硬件·物联网·智能硬件
三佛科技-134163842125 小时前
AIP8P005B 与FT60E112A(8位I/O型单片机)对比分析,FT60E112A能否兼容替代AIP8P005B?
单片机·嵌入式硬件·物联网·智能家居·pcb工艺
Geometry Fu5 小时前
《物联网安全》第6章 入侵检测技术
网络·物联网·安全·ips·入侵检测·ids
Hotchip_MEMS5 小时前
单节锂电池充电管理:如何平衡充电速度与电池寿命
人工智能·单片机·嵌入式硬件·物联网