'\" t .\" Title: ionice .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.26 .\" Date: 2026-03-31 .\" Manual: دستورات کاربری .\" Source: util-linux 2.41.5 .\" Language: Persian .\" .TH "IONICE" "1" "2026-03-31" "util\-linux 2.41.5" "دستورات کاربری" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "نام (NAME)" ionice \- دریافت یا تنظیم کلاس و اولویت زمان‌بندی ورودی/خروجی برنامه .SH "خلاصه دستور (SYNOPSIS)" .sp \fBionice\fP [\fB\-c\fP \fIclass\fP] [\fB\-n\fP \fIlevel\fP] [\fB\-t\fP] \fB\-p\fP \fIPID\fP .sp \fBionice\fP [\fB\-c\fP \fIclass\fP] [\fB\-n\fP \fIlevel\fP] [\fB\-t\fP] \fB\-P\fP \fIPGID\fP .sp \fBionice\fP [\fB\-c\fP \fIclass\fP] [\fB\-n\fP \fIlevel\fP] [\fB\-t\fP] \fB\-u\fP \fIUID\fP .sp \fBionice\fP [\fB\-c\fP \fIclass\fP] [\fB\-n\fP \fIlevel\fP] [\fB\-t\fP] \fIcommand\fP [argument] .\|.\|. .SH "توضیحات (DESCRIPTION)" .sp این برنامه کلاس و اولویت زمان‌بندی ورودی/خروجی (I/O) را برای یک برنامه تنظیم کرده یا دریافت می‌کند. اگر هیچ آرگومانی یا فقط \fB\-p\fP داده شود، \fBionice\fP کلاس و اولویت زمان‌بندی کنونی ورودی/خروجی را برای آن فرایند پرس‌وجو می‌کند. .sp هنگامی که \fIcommand\fP مشخص شده باشد، \fBionice\fP این دستور را با آرگومان‌های داده‌شده اجرا می‌کند. اگر هیچ \fIclass\fP مشخص نشده باشد، آنگاه \fIcommand\fP با کلاس زمان‌بندی "best\-effort" اجرا خواهد شد. سطح اولویت پیش‌فرض ۴ است. .sp در زمان نگارش این مستند، یک فرایند می‌تواند در یکی از سه کلاس زمان‌بندی قرار داشته باشد: .sp \fBبیکار (Idle)\fP .RS 4 برنامه‌ای که با اولویت ورودی/خروجی idle اجرا می‌شود، تنها زمانی زمان دیسک را دریافت می‌کند که هیچ برنامه دیگری در یک دوره مهلت (grace period) معین درخواست ورودی/خروجی دیسک نکرده باشد. تأثیر یک فرایند ورودی/خروجی idle بر فعالیت عادی سیستم باید صفر باشد. این کلاس زمان‌بندی آرگومان اولویت نمی‌پذیرد. در حال حاضر، این کلاس زمان‌بندی برای یک کاربر عادی مجاز است (از هسته 2.6.25 به بعد). .RE .sp \fBبیشترین تلاش (Best\-effort)\fP .RS 4 این کلاس زمان‌بندی مؤثر برای هر فرایندی است که اولویت ورودی/خروجی خاصی درخواست نکرده باشد. این کلاس یک آرگومان اولویت از \fI0\-7\fP می‌پذیرد که در آن عدد کمتر نشان‌دهنده اولویت بالاتر است. برنامه‌هایی که در اولویت best\-effort یکسانی اجرا می‌شوند، به روش نوبت‌گردشی (round\-robin) سرویس‌دهی می‌شوند. .sp توجه داشته باشید که پیش از هسته 2.6.26 فرایندی که اولویت ورودی/خروجی درخواست نکرده بود، رسماً از "\fBnone\fP" به عنوان کلاس زمان‌بندی استفاده می‌کرد، اما زمان‌بند ورودی/خروجی با چنین فرایندهایی به‌گونه‌ای رفتار می‌کرد که گویی در کلاس best\-effort قرار دارند. اولویت در کلاس best\-effort به‌طور پویا از سطح CPU nice فرایند مشتق می‌شد: io_priority = (cpu_nice + 20) / 5. .sp برای هسته‌های پس از 2.6.26 با زمان‌بند ورودی/خروجی CFQ، فرایندی که اولویت ورودی/خروجی درخواست نکرده باشد، کلاس زمان‌بندی CPU خود را به ارث می‌برد. اولویت ورودی/خروجی از سطح CPU nice فرایند مشتق می‌شود (مشابه وضعیت پیش از هسته 2.6.26). .RE .sp \fBبلادرنگ (Realtime)\fP .RS 4 به کلاس زمان‌بندی RT بدون توجه به دیگر فعالیت‌های سیستم، نخستین دسترسی به دیسک داده می‌شود. بنابراین از کلاس RT باید با احتیاط استفاده شود، زیرا می‌تواند فرایندهای دیگر را دچار گرسنگی (starvation) کند. همانند کلاس best\-effort، تعداد ۸ سطح اولویت تعریف شده است که نشان می‌دهد یک فرایند مشخص در هر پنجره زمان‌بندی چه مقدار برش زمانی دریافت خواهد کرد. این کلاس زمان‌بندی برای یک کاربر عادی (یعنی غیر ریشه/non\-root) مجاز نیست. .RE .SH "گزینه‌ها (OPTIONS)" .sp \fB\-c\fP, \fB\-\-class\fP \fIclass\fP .RS 4 تعیین نام یا شماره کلاس زمان‌بندی مورد استفاده؛ \f(CR0\fP برای none، \f(CR1\fP برای realtime، \f(CR2\fP برای best\-effort، \f(CR3\fP برای idle. .RE .sp \fB\-n\fP, \fB\-\-classdata\fP \fIlevel\fP .RS 4 تعیین داده کلاس زمان‌بندی. این گزینه تنها در صورتی تأثیر دارد که کلاس یک آرگومان بپذیرد. برای realtime و best\-effort، مقادیر \fI0\-7\fP داده‌های معتبر (سطوح اولویت) هستند و \f(CR0\fP بالاترین سطح اولویت را نشان می‌دهد. .RE .sp \fB\-p\fP, \fB\-\-pid\fP \fIPID\fP.\|.\|. .RS 4 تعیین شناسه‌های فرایند (PID) فرایندهای در حال اجرا برای دریافت یا تنظیم پارامترهای زمان‌بندی آن‌ها. .RE .sp \fB\-P\fP, \fB\-\-pgid\fP \fIPGID\fP.\|.\|. .RS 4 تعیین شناسه‌های گروه فرایند (PGID) فرایندهای در حال اجرا برای دریافت یا تنظیم پارامترهای زمان‌بندی آن‌ها. .RE .sp \fB\-t\fP, \fB\-\-ignore\fP .RS 4 نادیده گرفتن شکست در تنظیم اولویت درخواستی. اگر \fIcommand\fP مشخص شده باشد، حتی در صورت عدم امکان تنظیم اولویت زمان‌بندی مورد نظر (که می‌تواند به دلیل دسترسی‌های ناکافی یا نسخه قدیمی هسته رخ دهد)، آن را اجرا می‌کند. .RE .sp \fB\-u\fP, \fB\-\-uid\fP \fIUID\fP.\|.\|. .RS 4 تعیین شناسه‌های کاربری (UID) فرایندهای در حال اجرا برای دریافت یا تنظیم پارامترهای زمان‌بندی آن‌ها. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 نمایش متن راهنما و خروج. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 نمایش نسخه و خروج. .RE .SH "نکات (NOTES)" .sp لینوکس از زمان 2.6.13 همراه با زمان‌بند ورودی/خروجی CFQ از اولویت‌ها و کلاس‌های زمان‌بندی ورودی/خروجی پشتیبانی می‌کند. .SH "مثال‌ها (EXAMPLES)" .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} # \fBionice\fP \-c 3 \-p 89 .RE .sp فرایند با PID 89 را به عنوان یک فرایند ورودی/خروجی بیکار (idle) تنظیم می‌کند. .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} # \fBionice\fP \-c 2 \-n 0 bash .RE .sp دستور \*(Aqbash\*(Aq را به عنوان برنامه‌ای در کلاس best\-effort با بالاترین اولویت اجرا می‌کند. .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} # \fBionice\fP \-p 89 91 .RE .sp کلاس و اولویت فرایندهای با PID 89 و 91 را چاپ می‌کند. .SH "نویسندگان (AUTHORS)" .sp .MTO "jens\(ataxboe.dk" "Jens Axboe" "," .MTO "kzak\(atredhat.com" "Karel Zak" "" .SH "همچنین ببینید (SEE ALSO)" .sp \fBioprio_set\fP(2) .SH "گزارش باگ‌ها (REPORTING BUGS)" .sp برای گزارش باگ‌ها، از \c .URL "https://github.com/util\-linux/util\-linux/issues" "ردیاب مشکلات" "." .SH "در دسترس بودن (AVAILABILITY)" .sp دستور \fBionice\fP بخشی از بسته util\-linux است که می‌توان آن را از \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux" "بایگانی هسته لینوکس" "." دانلود کرد.