size命令

Last Updated: 2023-06-19 03:06:51 Monday

-- TOC --

size命令用来查看二进制文件的几个主要section的大小,.text,.data和.bss,以及它们的总大小。size表示的是此进程文件载入内存后,.text,.data和.bss占用内存的大小。

size - list section sizes and total size of binary files

$ size test
   text    data     bss     dec     hex filename
   1619     600       8    2227     8b3 test
$ python3 -q
>>> hex(2227)
'0x8b3'
>>> 1619+600+8
2227
$ size -t test test
   text    data     bss     dec     hex filename
   1619     600       8    2227     8b3 test
   1619     600       8    2227     8b3 test
   3238    1200      16    4454    1166 (TOTALS)

-t, total,size命令后面接多个文件,统计总大小。

Sizes of busybox-1.33.0 and busybox-1.34.0 (with equivalent config, static uclibc build):

   text    data     bss     dec     hex filename
1032724     908   14344 1047976   ffda8 busybox-1.33.0
1042344     908   14336 1057588  102334 busybox-1.34.0

注意:用size命令得到的大小,仅仅是二进制文件text段和data+bss段的大小,不是文件占用磁盘空间的大小,不是用ls命令看到的大小。用size命令看到的大小,是程序加载到内存后占用内存的大小!

size命令没有统计.rodata,为什么?这个section在运行时也会占用内存呀...

本文链接:https://cs.pynote.net/sf/c/cdm/202111227/

-- EOF --

-- MORE --