加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何知道我的二进制可执行文件的内存占用量

发布时间:2020-12-16 10:25:57 所属栏目:百科 来源:网络整理
导读:我想知道是否有办法知道用C语言编码的二进制可执行文件的内存占用量. informations about binary executable : compiled with toolchain of OpenWrt branch (Attitude Adjustment) and its architecture is x86 解决方法 在 Linux / Unix系统上,您可以使用 s
我想知道是否有办法知道用C语言编码的二进制可执行文件的内存占用量.

informations about binary executable : compiled with toolchain of OpenWrt branch (Attitude Adjustment) and its architecture is x86

解决方法

在 Linux / Unix系统上,您可以使用 size命令,例如:在我的Ubuntu系统上

size /bin/sh
   text    data     bss     dec     hex filename
 102134    1776   11272  115182   1c1ee /bin/sh

由于这是OpenWrt,如果您有不同的架构,例如当然,MIPS或ARM或其他东西必须选择适当工具链的大小命令.

这些部分具有以下含义

> text表示可执行文件的代码大小
>数据是初始化数据部分,例如变量,如int v = 17;或者char name [] =“Tom”;
> bss是未初始化的或仅仅是0个已初始化的部分,int;或双倍金额;
> dec是整体尺寸,在这种情况下为102134 1776 11272 = 115182
> hex最后也是整体大小,作为十六进制值1c1ee = 115182

但是这不包括堆栈或任何动态堆内存.要在运行时查看总体内存使用情况,必须查看pstop输出.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读