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

相关推荐
WZGL12304 小时前
破解养老痛点:2026智慧健康养老布局的核心方向与实施路径
大数据·人工智能·物联网
碎碎思5 小时前
使用 Arm Cortex-M1 实现低成本图像处理系统 的 FPGA 方案详解
arm开发·图像处理·人工智能·fpga开发
实验室管理云平台5 小时前
对物联网AI智慧实验室升级改造有利的内容介绍
人工智能·物联网
学术小白人5 小时前
2026 年人工智能与社交网络系统国际学术会议暨智能与网络安全研讨圆满落幕
大数据·人工智能·科技·物联网·机器学习
MIXLLRED6 小时前
树莓派4B(ARM架构)的Ubuntu 22.04(Jammy)上安装Intel RealSense SDK和ROS2驱动
arm开发·ubuntu·树莓派·深度相机
ONLYOFFICE6 小时前
ONLYOFFICE 桌面编辑器现已推出 Linux ARM 版本
linux·运维·arm开发
国产化创客6 小时前
边缘计算轻量级模型SSR-Net使用指南
人工智能·物联网·边缘计算·智能硬件
小李做物联网6 小时前
【单片机毕设】38.1基于单片机stm32智能空气处理毕业设计
stm32·单片机·嵌入式硬件·物联网
qq_526099136 小时前
机器视觉网卡与普通网卡的5点关键不同
arm开发·计算机视觉·自动化
Jason_zhao_MR6 小时前
米尔RK3576成功上车!ROS2 Humble生态系统体验
linux·嵌入式硬件·物联网·ubuntu·嵌入式