| SIZE(1) | ابزارهای توسعه نرمافزار GNU | 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 شبیه به
خروجی System V size
باشد (با
استفاده از
-A یا --format=sysv)، یا
Berkeley size (با
استفاده از
-B یا --format=berkeley).
حالت
پیشفرض،
قالب
تکخطی
مشابه Berkeley
است. علاوه
بر این،
میتوانید
قالب خروجی
گنو را
انتخاب
کنید (با
استفاده از
-G یا --format=gnu)؛
این حالت
شبیه به
قالب خروجی
Berkeley است، اما
اندازهها
به شکل
متفاوتی
شمارش
میشوند.
در اینجا یک مثال از قالب خروجی Berkeley (پیشفرض) از ابزار size آمده است:
$ size --format=Berkeley ranlib size text data bss dec hex filename 294880 81920 11592 388392 5ed28 ranlib 294880 81920 11888 388688 5ee50 size
خروجی سبک Berkeley دادههای فقطخواندنی را در ستون "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
- چاپ اندازه کل نمادهای عمومی (Common symbols) در هر فایل. هنگام استفاده از قالب Berkeley یا GNU این موارد در اندازه bss گنجانده میشوند.
- -t
- --totals
- نمایش مجموع کل تمام اشیاء فهرستشده (فقط در حالت قالب Berkeley یا GNU).
- --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)
حق نشر © 1991-2026 بنیاد نرمافزارهای آزاد (Free Software Foundation, Inc.)
مجوز کپی، توزیع و/یا تغییر این سند تحت شرایط مجوز مستندات آزاد گنو (GNU Free Documentation License)، نسخه ۱.۳ یا هر نسخه جدیدتر منتشرشده توسط بنیاد نرمافزارهای آزاد صادر شده است؛ بدون بخشهای تغییرناپذیر، بدون متون روی جلد و بدون متون پشت جلد. یک نسخه از این مجوز در بخش با عنوان «GNU Free Documentation License» قرار داده شده است.
| 2026-08-11 | binutils-2.47 |