不同编译器 关于程序占用系统ROM、RAM情况的查看方法
2016-05-31 11:13
489 查看
不同编译器 关于程序占用系统ROM、RAM情况的查看方法:
某些编译器的build output窗口会打印相关信息;
通过文件***.map 查看;
这里以MDK(keil)和IAR 编译器说明。
这里对“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文件中,我们可以得到相对来说更详尽的信息。
关于ROM、RAM的占用情况如下:
简单的说就是在烧写的时候是FLASH中的被占用的空间为:Code + RO Data + RW Data
程序运行的时候,芯片内部RAM使用的空间为: RW Data + ZI Data
可知:
RAM:16093字节
ROM:三者之和=15668+ 792 +16093
以上,仅个人看法.....
某些编译器的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
以上,仅个人看法.....
相关文章推荐
- [Android]手动触发OnClick事件
- 切换fragment回来的时候如果有类似viewpager的控件,会自动的被隐藏了,自动滑动了最上方的问题解决
- chrome启动参数
- STM32 TIM8 PWM
- zynq petalinux编译用户自定义系统
- OkHttp使用教程——网络操作之OkHttp, Volley以及Gson
- C#知识点总结系列:C#中Delegate和Event以及它们的区别
- 【HDU 4612 Warm up】BCC 树的直径
- 修改mysql root密码
- 期末作业进度表
- linux 下配置 nodejs+ionic+cordova
- python3 threading thread 模块学习
- Image图片的相关工具类
- C/C++中const关键字详解
- 总结项目中不支持emoji表情的问题的解决方法
- app store上传图片显示错误:未能创建 屏幕快照
- 国内最火的五款HTML5前端开发框架
- java中枚举的使用
- es6 添加事件监听
- 站立会议07(冲刺二)