Keil中 Program Size: Code RO-data RW-data ZI-data
一般 MCU 包含的存储空间有:片内 Flash 与片内 RAM,RAM 相当于内存,Flash 相当于硬盘。
现在我们就一个STM32的工程为例子
linking...
Program Size: Code= RO-data= RW-data= ZI-data=
FromELF: creating hex file...
"..\object\BootLoader.axf" - Error(s), Warning(s).
Build Time Elapsed: ::
上面提到的 Program Size 包含以下几个部分:
(1)Code:代码段,存放程序的代码部分;
(2)RO-data:只读数据段,存放程序中定义的常量;
(3)RW-data:读写数据段,存放初始化为非 0 值的全局变量;
(4)ZI-data:0 数据段,存放未初始化的全局变量及初始化为 0 的变量;
编译完工程会生成一个. map 的文件,该文件说明了各个函数占用的尺寸和地址,在文件的最后几行也说明了上面几个字段的关系:
==============================================================================
Code (inc. data) RO Data RW Data ZI Data Debug
Grand Totals
ELF Image Totals
ROM Totals
==============================================================================
Total RO Size (Code + RO Data) ( .68kB)
Total RW Size (RW Data + ZI Data) ( .46kB)
Total ROM Size (Code + RO Data + RW Data) ( .79kB)
==============================================================================
RO Size (Code + RO Data) ,表示程序占用Flash空间的大小。
RW Size (RW Data + ZI Data),表示运行时占用的RAM的大小。
ROM Size (Code + RO Data + RW Data) ,表示烧写程序占用的Flash空间的大小。
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
【扩展】
【ARM中的RO、RW和ZI DATA说明】https://blog.csdn.net/jamestaosh/article/details/4348385 [有实例的说明]
【KEIL MDK输出map文件分析】 https://blog.csdn.net/ropai/article/details/7493168
【scatter file介绍】https://blog.csdn.net/zhoujiaxq/article/details/8102587
【Keil sct分散加载文件】https://blog.csdn.net/kobesdu/article/details/38258449
Keil中 Program Size: Code RO-data RW-data ZI-data的更多相关文章
- Keil 中 Program Size: Code RO-data RW-data ZI-data 所代表的意思
在Keil中编译工程成功后,在下面的Bulid Ouput窗口中会输出下面这样一段信息: Program Size: Code=6320 RO-data=4864 RW-data=44 ZI-data ...
- stm32 ARM中的RO、RW和ZI DATA
一直以来对于ARM体系中所描述的RO,RW和ZI数据存在似是而非的理解,这段时间对其仔细了解了一番,发现了一些规律,理解了一些以前书本上有的但是不理解的东西,我想应该有不少人也有和我同样的困惑,因此将 ...
- ARM MDK 编译产生:RO、RW和ZI DATA说明
1.比如编译一个工程文件,产生如下提示信息: Program Size: Code=18938 RO-data=622 RW-data=124 ZI-data=7724 RO段.RW段和ZI段 要了解 ...
- keil编译后Program Size: Code=46284 RO-data=988 RW-data=580 ZI-data=1094588
Program Size: Code=46284 RO-data=988 RW-data=580 ZI-data=1094588 Code : 程序中代码所占字节大小 RO-data : ...
- Keil编译后的Code,RO,RW,ZI分别表示什么以及和芯片Flash、SRAM的对应关系
在使用keil开发STM32应用程序时,点击Build后在Build Output窗口中经常会有如下信息:<ignore_js_op> 以前一直好奇这几个参数和实际使用的STM32芯片中F ...
- RW RO ZI ROM keil中的含义
编译的一个ARM的程序,会得到这样的信息: ============================================================================== ...
- keil Bulid Ouput窗口中PROGRAM SIZE项的具体含义
在Keil中编译工程成功后,在下面的Bulid Ouput窗口中会输出下面这样一段信息: Program Size: Code=6320 RO-data=4864 RW-data=44 ZI ...
- KEIL的ARM编译器对RW和ZI段的一个处理
按照C编译器编译的结果,一般会产生RO段,RW段,ZI段.RO是程序中的指令和常量,RW是程序中的已初始化全局变量,ZI是程序中的未初始化或初始化为零的全局变量. 那么如下的代码 int aaa; i ...
- Program Size
在Keil中编译工程成功后,在下面的Bulid Ouput窗口中会输出下面这样一段信息: Program Size: Code=6320 RO-data=4864 RW-data=44 ZI-d ...
随机推荐
- centos7 安装python3.6 脚本
shell 脚本自动安装python3 # /bin/bash cd /opt yum groupinstall "Development tools" -y yum -y ins ...
- C#如何运行外部程序(打开可执行程序):ShellExcute和Process
最近的任务用到C#来调用C++内核程序,也就是C++编译运行后生成的.exe文件.网搜了一下C#中运行外部程序大致有两种方法,在此稍作总结: (1)使用API函数ShellExcute 添加引用 us ...
- vue-router(配置子路由--单页面多路由区域操作)
1.配置子路由: import Post from "@components/Post" export default new Router({ routers:[ { path: ...
- 用vs2008打开vs2005项目
1 使用记事本打开*.sln解决方案文件,将Visual Studio 2005改为Visual Studio 2008 将版本号改为9.00 2 打开扩展名为*.csproj的项目文件,在Defau ...
- 【linux基础】关于ARM板子使用O3编译选项优化
前言 应领导要求需要将最初级版本的算法移植到ARM板子上,并进行优化,以期达到实时. 平台 移植前: TX2 移植后: ARM() processor : model name : ARMv7 Pro ...
- 【转】@RequestBody注解出现的三点错误
错误1 { "timestamp": 1529747704259, "status": 415, "error": ...
- python 4
一.列表相关操作 l = ['布偶猫', '小断腿', '大白'] # . append l.append('哎呀') print(l) # . insert l.insert(, '小猪佩琪') p ...
- Java并发--Java线程面试题 Top 50
原文链接:http://www.importnew.com/12773.html 不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题.Java语言一个重要的特点就是内置了对并发的支持,让Ja ...
- python2.7安装beautifulsoup包
python2.7安装beautifulsoup包 准备条件: 1.已经安装好python2.7 2.下载beautifulsoup包,选择合适的包,网址:https://www.crummy.com ...
- Codeforces 215D. Hot Days(贪心)
题意 有nnn个地区和mmm个学生,在第iii个地区时,车上有kik_iki个学生,车内温度(当前城市的温度tit_iti+当前车上的学生kik_iki)不能超过TiT_iTi,否则,赔偿每个 ...