2017-01-05 44 views
1

对于同一个文件,我认为ls -l xxx的输出总是大于或等于size xxx的输出。'size'vs'ls -l'来获取可执行文件的大小

但是当我键入ls -l /bin/ls输出为:

 -rwxr-xr-x 1 root root 104508 1月 14 2015 /bin/ls 

对于size /bin/ls,输出为:

 
    text data  bss  dec  hex filename 
101298  976 3104 105378 19ba2 /bin/ls 

为什么ls显示小于size

回答

5

ls -l告诉你的文件的大小,而size命令告诉你存储在文件中可执行图像的大小 - 加载时会多少内存需要。某些段(例如.bss)是零初始化的,而不是要求文件中的数据对它们进行初始化,因此文件可能会比可执行映像小。