【转】Example of using the --info linker option
5.3 Example of using the --info linker option
This is an example of the output generated by the --info option
armlink --info sizes …
sizes gives a list of the Code and data sizes for each input object and library member in the image. Using this option implies --info sizes,totals.Code (inc. data) RO Data RW Data ZI Data Debug
3712 1580 19 44 10200 7436 Object Totals
0 0 16 0 0 0 (incl. Generated)
0 0 3 0 0 0 (incl. Padding)
21376 648 805 4 300 10216 Library Totals
0 0 6 0 0 0 (incl. Padding)
===============================================================================
Code (inc. data) RO Data RW Data ZI Data Debug
25088 2228 824 48 10500 17652 Grand Totals
25088 2228 824 48 10500 17652 ELF Image Totals
25088 2228 824 48 0 0 ROM Totals
===============================================================================
Total RO Size (Code + RO Data) 25912 ( 25.30kB)
Total RW Size (RW Data + ZI Data) 10548 ( 10.30kB)
Total ROM Size (Code + RO Data + RW Data) 25960 ( 25.35kB)
- Code (inc. data)
-
Shows how many bytes are occupied by code. In this image, there are 3712 bytes of code. This includes 1580 bytes of inline data (
inc. data), for example, literal pools, and short strings. - RO Data
-
Shows how many bytes are occupied by RO data. This is in addition to the inline data included in the
Code (inc. data)column. - RW Data
-
Shows how many bytes are occupied by RW data.
- ZI Data
-
Shows how many bytes are occupied by ZI data.
- Debug
-
Shows how many bytes are occupied by debug data, for example, debug input sections and the symbol and string table.
- Object Totals
-
Shows how many bytes are occupied by objects linked together to generate the image.
- (incl. Generated)
-
armlink might generate image contents, for example, interworking veneers, and input sections such as region tables. If the
Object Totalsrow includes this type of data, it is shown in this row.In the example, there are 19 bytes of RO data in total, of which 16 bytes is linker-generated RO data. - Library Totals
-
Shows how many bytes are occupied by library members that have been extracted and added to the image as individual objects.
- (incl. Padding)
-
armlink inserts padding, if required, to force section alignment. If the
Object Totalsrow includes this type of data, it is shown in the associated(incl. Padding)row. Similarly, if theLibrary Totalsrow includes this type of data, it is shown in its associated row.In the example, there are 19 bytes of RO data in the object total, of which 3 bytes is linker-generated padding, and 805 bytes of RO data in the library total, with 6 bytes of padding. - Grand Totals
-
Shows the true size of the image. In the example, there are 10200 bytes of ZI data (in
Object Totals) and 300 of ZI data (inLibrary Totals)giving a total of 10500 bytes. - ELF Image Totals
-
If you are using RW data compression (the default) to optimize ROM size, the size of the final image changes and this is reflected in the output from
--info. Compare the number of bytes underGrand TotalsandELF Image Totalsto see the effect of compression.In the example, RW data compression is not enabled. If data is compressed, the RW value changes. - ROM Totals
-
Shows the minimum size of ROM required to contain the image. This does not include ZI data and debug information which is not stored in the ROM.
【转】Example of using the --info linker option的更多相关文章
- 如何捕捉并分析SIGSEGV的现场
linux下程序对SIGSEGV信号的默认处理方式是产生coredump并终止程序,可以参考man 7 signal Signal Value Action Comment ───────────── ...
- [原]__FILE__宏
在vs中__FILE__宏代表了当前文件,如果有/FC那么__FILE__代表了当前文件的全路径!否则只表示当前文件名 参考 https://msdn.microsoft.com/en-us/li ...
- linux创建动态库
[1]新建源程序sharelib.c /************************************************************************* > F ...
- 转:Configure your eclipse for C++
from: http://omtlab.com/configure-your-eclipse-for-c/ Configure your eclipse for C++ July 7, 2013 Th ...
- 【linux】linux下动态库so文件的一些认识
来源:http://mypyg.iteye.com/blog/845915 so其实就是shared object的意思.今天看了上面的博客,感觉好吃力.赶紧做个笔记记录一下.下面的内容大多都是连接中 ...
- GCC中文手册
GCC 1 NAME gcc,g++-GNU工程的C和C++编译器(egcs-1.1.2) 总览(SYNOPSIS) gcc[option|filename ]... g++[option|filen ...
- #pragma data_seg 共享数据区(转)
原文地址:http://www.cnblogs.com/CBDoctor/archive/2013/01/26/2878201.html 1)#pragma data_seg()一般用于DLL中.也就 ...
- [under the hood]Reduce EXE and DLL Size with LIBCTINY.LIB
Matt Pietrek Download the code for this article: Hood0101.exe (45KB) W ay back in my October 1996 co ...
- DCMTK354之VC++ 2008 MFC应用程序配置完整过程
花了一个礼拜,终于在VC++2008 MFC 应用程序中完成了首个基于DCMTK354的首个程序ECHOSCUWIN32,现将过程记录下来,便于日后查阅,同时也提供给那些有幸看到此博文而对他们又有帮助 ...
随机推荐
- 树形DP 复习
树形DP 树形DP:建立在树上的动态规划 一般有两种传递方式:根→叶或叶→根 前者出现在换根DP中,一般操作是求出某一个点的最优解,再通过这一个点推知其他点的最优解. 后者是树形DP的常见形式,一般树 ...
- Bat 批处理杀死进程 重新启动程序
@echo offset pa=%cd%taskkill /F /IM wgscdTool.exeecho %pa%\wgscdTool.exeping /n 2 127.1>nulstart ...
- 20155323刘威良《网络对抗》Exp7 网络欺诈防范
20155323刘威良<网络对抗>Exp7 网络欺诈防范 实践目标 理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法. 实践内容 (1)简单应用SET工具建立冒名网站 (1分 ...
- 20155325 Exp5 MSF基础应用
目录 实验内容 遇到的问题 基础问题问答 老师!!!我实验三的C代码已经删除了,请求评分~~~ 实验内容 1.Windows服务渗透攻击--MS08-067 系统 虚拟机 参考博客 Windows X ...
- POJ3267
从今天开始POJ里的一部分类型的题目就一般不放在一起写了 一个是太丑,格式麻烦,第二个是以后的题目难度都有所增大,因此一道题可能就要写蛮长 尤其是DP这一块,以前一直没好好学习,现在从基础的先开始吧 ...
- [CF983D]Arkady and Rectangles[线段树+可删堆/set]
题意 你有一个无限大的绘图板,开始颜色是\(0\) , 你将进行\(n\) 次绘图,第\(i\) 次绘图会将左下角为 \((x_1, y_1)\),右上角为\((x_2, y_2)\) 的矩形涂成颜色 ...
- Solr 后台查询实例 (工作备查)
有时间再进行整理package xxx.service.impl; import java.util.HashMap; import java.util.Map; import java.util.M ...
- mpvue两小时,产出一个《点钞辅助工具》小程序
CoffeeScript,Pug,Sass使用 以下内容门槛较高,如看不懂或觉得需要继续了解,结尾处放置了原视频流程与GitHub地址,欢迎琢磨与Star,谢谢. 文章不做技术语法解读,如不清楚,请前 ...
- LeetCode Container With Most Water (Two Pointers)
题意 Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai ...
- 前端项目模块化的实践1:搭建 NPM 私有仓库管理源码及依赖
以下是关于前端项目模块化的实践,包含以下内容: 搭建 NPM 私有仓库管理源码及依赖: 使用 Webpack 打包基础设施代码: 使用 TypeScript 编写可靠类库 使用 TypeScript ...