【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之和;

相关推荐
CET中电技术11 分钟前
预付费电表计费系统是什么?云综能Lite如何重构水电费管理?
人工智能·物联网·重构
cnnews25 分钟前
Ubuntu 编译 postmarketOS
linux·运维·arm开发·ubuntu·github·音视频
Doraemomo1 小时前
硬件基础概念
arm开发
jonyleek2 小时前
JVS物模型复用机制:实现硬件设备批量继承的实践方法
物联网·设备管理·设备接入·技术教程·物模型·jvs·批量继承
码上上岸4 小时前
基于stm32的智能荷兰豆生长舱监控系统
stm32·单片机·嵌入式硬件·物联网
serene944 小时前
功能强大的Modbus从站模拟器使用说明
物联网·上位机·modbus协议·从站仿真器·从站模拟器·modbus开发工具
会周易的程序员4 小时前
告别 matiec 与 Docker:aiDgePLC Editor 全面拥抱 STVM 字节码编译
物联网·网关·electron·软plc·iec61131·stvm·open plc
沐欣工作室_lvyiyi5 小时前
基于物联网的智慧路灯监控系统设计(论文+源码)
单片机·物联网·智能路灯
QYRdata5 小时前
权威数据披露:物联网边缘框架2026-2032年复合增长率达9.2%,增长动能凸显
物联网
sibylyue5 小时前
物联网MQTT
物联网