| 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
در Berkeley (با
استفاده از
-B، یا --format=berkeley).
حالت
پیشفرض،
قالب
تکخطی
مشابه Berkeley
است. به
عنوان
گزینهای
دیگر،
میتوانید
قالب خروجی
گنو را
انتخاب
کنید (با
استفاده از
-G، یا --format=gnu)؛
این گزینه
شبیه به
قالب خروجی
Berkeley است، اما
اندازهها
در آن به
روش
متفاوتی
محاسبه
میشوند.
در اینجا نمونهای از خروجی size در قالب Berkeley (پیشفرض) آورده شده است:
$ 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 یا گنو، این نمادها در اندازهٔ bss گنجانده میشوند.
- -t
- --totals
- مجموع کل تمام اشیاء فهرستشده را نمایش میدهد (فقط در حالت قالب Berkeley یا گنو).
- --target=bfdname
- مشخص میکند که قالب شیءکد (object-code) برای objfile عبارت از bfdname است. این گزینه ممکن است ضروری نباشد؛ size میتواند بسیاری از قالبها را بهطور خودکار تشخیص دهد.
- -v
- -V
- --version
- شماره نگارش size را نمایش میدهد.
- -f
- نادیده گرفته میشود. این گزینه در نگارشهای دیگر برنامهٔ size استفاده میشود، اما در نگارش GNU Binutils پشتیبانی نمیشود.
- @file
- گزینههای
خط فرمان را
از file
میخواند.
گزینههای
خواندهشده
به جای
گزینهٔ
اولیهٔ @file
درج
میشوند.
اگر file وجود
نداشته
باشد یا
قابل
خواندن
نباشد، با
گزینه
بهصورت
لغوی
برخورد شده
و حذف
نخواهد شد.
گزینهها در file با نویسهٔ فاصله از یکدیگر جدا میشوند. با قرار دادن کل گزینه درون گیومهٔ تکی یا دوگانه، میتوان یک نویسهٔ فاصله را در یک گزینه گنجاند. هر نویسهای (از جمله ممیز وارونه) میتواند با قرار دادن پیشوند ممیز وارونه قبل از آن درج شود. خودِ 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-03 | binutils-2.47 |