| SIZE(1) | GNU Development Tools | SIZE(1) |
نام (NAME)
size - فهرست کردن اندازههای بخشها و اندازه کل فایلهای باینری
خلاصه دستور (SYNOPSIS)
size
[-A|-B|-G|--format=compatibility]
[--help]
[-d|-o|-x|--radix=number]
[--common]
[-t|--totals]
[--target=bfdname] [-V|--version]
[-f]
[objfile...]
توضیحات (DESCRIPTION)
ابزار size گنو، اندازه بخشها و اندازه کل هر یک از فایلهای باینری objfile موجود در فهرست آرگومانهایش را فهرست میکند. بهطور پیشفرض، برای هر فایل یا در صورت آرشیو بودن فایل، برای هر ماژول یک خط خروجی تولید میشود.
objfile... فایلهایی هستند که باید بررسی شوند. اگر هیچ فایلی مشخص نشود، در عوض از فایل "a.out" استفاده خواهد شد.
گزینهها (OPTIONS)
گزینههای خط فرمان معانی زیر را دارند:
- -A
- -B
- -G
- --format=compatibility
- با استفاده
از یکی از
این
گزینهها،
میتوانید
تعیین کنید
که آیا
خروجی size
گنو شبیه به
خروجی size در
System V باشد (با
استفاده از
-A یا --format=sysv)، یا
شبیه به size
برکلی (با
استفاده از
-B یا --format=berkeley).
حالت
پیشفرض،
قالب
تکخطی
مشابه قالب
برکلی است.
علاوه بر
این،
میتوانید
قالب خروجی
گنو را
انتخاب
کنید (با
استفاده از
-G یا --format=gnu)؛
این قالب
شبیه به
قالب خروجی
برکلی است،
اما
اندازهها
به شیوه
متفاوتی
محاسبه
میشوند.
در اینجا مثالی از قالب خروجی برکلی (پیشفرض) از size آمده است:
$ size --format=Berkeley ranlib size text data bss dec hex filename 294880 81920 11592 388392 5ed28 ranlib 294880 81920 11888 388688 5ee50 size
خروجی به سبک برکلی، دادههای فقطخواندنی را در ستون "text" محاسبه میکند و نه در ستون "data"؛ هر دو ستون "dec" و "hex" مجموع ستونهای "text"، "data" و "bss" را به ترتیب در مبنای دهدهی و شانزدهشانزدهی نمایش میدهند.
قالب گنو، دادههای فقطخواندنی را در ستون "data" محاسبه میکند و نه ستون "text"، و مجموع ستونهای "text"، "data" و "bss" را تنها یک بار در ستون "total" نمایش میدهد. میتوان از گزینه --radix برای تغییر مبنای عددی تمام ستونها استفاده کرد. در اینجا همان دادهها بر اساس قراردادهای گنو نمایش داده شدهاند:
$ size --format=GNU ranlib size text data bss total filename 279880 96920 11592 388392 ranlib 279880 96920 11888 388688 sizeاین همان دادهها است، اما نزدیکتر به قراردادهای System V نمایش داده شده است:
$ size --format=SysV ranlib size ranlib : section size addr .text 294880 8192 .data 81920 303104 .bss 11592 385024 Total 388392 size : section size addr .text 294880 8192 .data 81920 303104 .bss 11888 385024 Total 388688
- --help
- -h
- -H
- -?
- نمایش خلاصهای از آرگومانها و گزینههای پذیرفتهشده.
- -d
- -o
- -x
- --radix=number
- با استفاده از یکی از این گزینهها، میتوانید تعیین کنید که اندازه هر بخش در مبنای دهدهی (-d یا --radix=10)، هشتهشتی (-o یا --radix=8) یا شانزدهشانزدهی (-x یا --radix=16) داده شود. در --radix=number، تنها سه مقدار (8، 10، 16) پشتیبانی میشوند. اندازه کل همواره در دو مبنا داده میشود؛ دهدهی و شانزدهشانزدهی برای خروجی -d یا -x، یا هشتهشتی و شانزدهشانزدهی در صورت استفاده از -o.
- --common
- چاپ اندازه کل نمادهای مشترک در هر فایل. هنگام استفاده از قالب برکلی یا گنو، این موارد در اندازه bss گنجانده میشوند.
- -t
- --totals
- نمایش مجموع کل تمام اشیای فهرستشده (تنها در حالت قالب برکلی یا گنو).
- --target=bfdname
- مشخص میکند که قالب کد شیء برای objfile برابر با bfdname است. این گزینه ممکن است ضروری نباشد؛ زیرا size میتواند بهطور خودکار بسیاری از قالبها را شناسایی کند.
- -v
- -V
- --version
- نمایش شماره نسخه size.
- -f
- نادیده گرفته میشود. این گزینه در نگارشهای دیگر برنامه size استفاده میشود، اما نسخه GNU Binutils از آن پشتیبانی نمیکند.
- @file
- خواندن
گزینههای
خط فرمان از
file.
گزینههای
خواندهشده
در جایگاه
گزینه
اولیه @file
جایگزین
میشوند.
اگر file وجود
نداشته
باشد یا
قابل
خواندن
نباشد، با
گزینه
بهصورت
لغوی
(تحتاللفظی)
رفتار شده و
حذف نخواهد
شد.
گزینهها در file با نویسههای فاصله خالی (whitespace) از یکدیگر جدا میشوند. یک نویسه فاصله خالی میتواند با محصور کردن کل گزینه در گیومه تکی یا دوگانه، درون آن گنجانده شود. هر نویسهای (از جمله بکاسلش) میتواند با پیشوند کردن یک بکاسلش به نویسه مورد نظر، درج شود. خود file میتواند شامل گزینههای @file دیگری نیز باشد؛ هر یک از این گزینهها بهصورت بازگشتی پردازش خواهند شد.
همچنین ببینید (SEE ALSO)
ar(1)، objdump(1)، readelf(1) و مدخلهای Info برای binutils.
کپیرایت و تکثیر (COPYRIGHT)
Copyright (c) 1991-2026 Free Software Foundation, Inc.
اجازهنامه کپی، توزیع و/یا تغییر این سند تحت شرایط «مجوز مستندات آزاد گنو» (GNU Free Documentation License)، نسخه ۱.۳ یا هر نسخه جدیدتر منتشر شده توسط بنیاد نرمافزار آزاد اعطا میشود؛ بدون هیچ بخش تغییرناپذیر، بدون متنهای روی جلد و بدون متنهای پشت جلد. نسخهای از این مجوز در بخشی تحت عنوان «GNU Free Documentation License» گنجانده شده است.
| 2026-08-31 | binutils-2.47 |