gpt4 book ai didi

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

转载 作者:太空狗 更新时间:2023-10-29 14:52:27 26 4
gpt4 key购买 nike

我想知道是否有办法知道用 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 或其他东西,当然,您必须选择适当工具链的 size 命令。

各节含义如下

  • text 表示可执行文件的代码大小
  • data 是初始化数据段,例如变量,例如 int v = 17;char name[] = "Tom";
  • bss 是未初始化或简单的 0 初始化部分,int a;double amount;<
  • dec 是整体大小,在本例中为 102134 + 1776 + 11272 = 115182
  • hex 最后也是整体大小,作为十六进制值 1c1ee = 115182

但这不包括堆栈或任何动态堆内存。要查看运行时的整体内存使用情况,您必须查看 pstop输出。

关于c - 如何知道我的二进制可执行文件的内存占用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22478014/

26 4 0
文章推荐: html - 从 vb.net 代码端隐藏
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com