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

相关推荐
WHFENGHE15 小时前
输电线路倾斜仪在线监测装置:结构安全的关键技术支撑
物联网
专业开发者16 小时前
GNSS 省电模式
物联网
番茄灭世神16 小时前
升级新版arm-none-eabi-gcc的方法
linux·运维·arm开发
安科瑞小许16 小时前
企业能源精细化管理的科学之路:从挑战到智能解决方案
物联网·自动化·能源·智慧能源
猫猫的小茶馆17 小时前
【ARM】ARM体系结构与开发基础
arm开发·stm32·单片机·嵌入式硬件·mcu·物联网
研华嵌入式17 小时前
用Edge Impulse开启你的边缘AI之旅
arm开发·图像处理·嵌入式硬件·目标检测·视觉检测·边缘计算
武汉唯众智创17 小时前
物联网实训室系列产品介绍
物联网·物联网实训平台·综合布线·综合布线实训装置·物联网实训装置
研华嵌入式17 小时前
从零到边缘:在AOM-2721 OSM开发套件上构建基于Edge Impulse的优化物体检测方案
arm开发·目标检测·计算机视觉·视觉检测
御控工业物联网17 小时前
二供泵房物联网控制解决方案
物联网·数据采集·plc·远程控制·工业自动化
数峦云数字孪生三维可视化17 小时前
魔观3DS智慧工厂数字孪生立体监测系统:让数字孪生“立体可感”的智能中枢
大数据·人工智能·物联网·信息可视化·数字孪生