关闭

不同编译器 关于程序占用系统ROM、RAM情况的查看方法

1225人阅读 评论(0) 收藏 举报
分类:

不同编译器 关于程序占用系统ROM、RAM情况的查看方法:

  • 某些编译器的build output窗口会打印相关信息;
  • 通过文件***.map 查看;
这里以MDK(keil)和IAR 编译器说明。

MDK:

编译输出窗口的信息:


这里对“Program Size: Code=86496 RO-data=9064 RW-data=1452 ZI-data=16116 ”作出说明:
  • Code是代码占用的空间;
  • RO-data是 Read Only 只读常量的大小,如const型;
  • RW-data是(Read Write) 初始化了的可读写变量的大小;
  • ZI-data是(Zero Initialize) 没有初始化的可读写变量的大小。ZI-data不会被算做代码里因为不会被初始化;

通过文件 ***.map查看



可以看到,在map文件中,我们可以得到相对来说更详尽的信息。

关于ROM、RAM的占用情况如下:
简单的说就是在烧写的时候是FLASH中的被占用的空间为:Code + RO Data + RW Data
程序运行的时候,芯片内部RAM使用的空间为:               RW Data + ZI Data

IAR:

该编译器相对MDK,界面更简洁,so,,,,仅在map文件中可以找到内存的占用情况,如下

通过文件 ***.map查看:


可知:
RAM:16093字节
ROM:三者之和=15668+ 792 +16093

以上,仅个人看法.....

0
0
查看评论

怎么查看单片机程序占多少RAM 、ROM

Code = 121550 字节——程序代码段的 flash 大小 RO-data = 12154字节——程序中所定义的指令和常量大小(read only) RW-data = 1896 字节——程序中已初始化的变量大小(read/write) ZI-data =...
  • SuGuolin
  • SuGuolin
  • 2017-09-26 14:25
  • 536

Codewarrior中查看下载代码的大小。

Codewarrior 10.x 查看生成的代码大小的方法, KEIL和IAR都可以在编译完成自动显示生成的代码的大小, Codewarrior 向来都是不主动显示的,怎么查看呢 这个也不难, 找到工程的linker  map文件就可以了,后缀名是xMA...
  • yingxuexuan
  • yingxuexuan
  • 2012-07-17 16:26
  • 825

Keil MDK编译器下查看占用Flash和SRAM空间大小

在Keil MDK编译器编译后,信息栏都会显示编译情况,这其中就包含了FLASH跟SRAM的信息。如下图所示, /****************************************************************************************...
  • JohnnyTim
  • JohnnyTim
  • 2017-07-19 14:49
  • 847

KEIL MDK 查看代码量、RAM使用情况--RO-data、RW-data、ZI-data的解释

KEIL RVMDK编译后的信息   Program Size: Code=86496 RO-data=9064 RW-data=1452 ZI-data=16116    Code是代码占用的空间,RO-data是 Read Only 只读常量...
  • xkzju2010
  • xkzju2010
  • 2016-05-05 16:15
  • 3636

IPTV技术要点解析

    IPTV在刚开始的时候,基本上是免费的,商家主要是通过电视节目来吸引更多的网站点击率,现在也出现了收费的情况,主要是通过用户输入手机号码的方式,从手机账户上扣除费用。  自从去年冬季以来,以普通电视机为终端的IPTV概念,把IPTV炒作到了前所未有的热度。  当然,如果通...
  • dugu072
  • dugu072
  • 2007-04-28 01:59
  • 578

程序的内存分布+ROM和RAM

PS:前面部分是软件萌新的个人理解,如果有什么错误的理解部分,希望各位大牛给我指出。 SECTION 1:内存分布 一个程序包含两个部分: 1.只读区(代码区),代码区里有代码和只读数据。(代码区就是程序编译后生成的二进制文件,存在你的硬盘里) 2.读写区(变量区),变量区有全局变量...
  • u014070197
  • u014070197
  • 2016-10-11 16:18
  • 712

程序所占用系统内存总结及全局变量与静态变量的区别

本文是 (1)符号起始的区块(Block Started by Symbol,BSS)段:BSS段通常指用来存放程序中未初始化的全局数据和静态数据的一块内存区域。BSS段属于静态内存分配,程序结束后静态变量资源由系统自动释放。 (2)数据段:数据段通常指用来存放程序中已初始化的全局边的一...
  • Thinker_YU
  • Thinker_YU
  • 2014-09-14 20:55
  • 2627

android 应用 cpu和内存简要分析

android cpu和内存简要分析
  • u010153076
  • u010153076
  • 2017-03-30 11:20
  • 1007

搜索android RAM ROM SD区别时找到一篇分析不错的文章

最近入手一部Android手机,使用后发现系统总会在后台自动启动一些程序,而这些程序都是平时不怎么用的。做过实验,刚开机时系统只有5个程序启动,RAM剩余288M,待机半个小时候有10个程序被启动,RAM剩余176M,再过个把小时后有近18个程序被加载了,RAM剩余只有106M。整个过程中手机完全处...
  • victory08
  • victory08
  • 2013-02-21 13:52
  • 1897

ROM,RAM使用情况统计

一般我们的flash分区文件在custom_MemoryDevice.h (custom\system\techain50_cosmos_11b_bb) 目录下。 一般的flash大小为128*64Mb,指的是位,即为128*64M/bit(128*64Mb),也就是我们通常说的小b, ...
  • ch_xin
  • ch_xin
  • 2012-12-21 15:07
  • 843
    个人资料
    • 访问:127207次
    • 积分:1950
    • 等级:
    • 排名:千里之外
    • 原创:62篇
    • 转载:35篇
    • 译文:2篇
    • 评论:11条
    文章分类
    最新评论