CHRT(1)

الاسم
chrt - التحكم في سمات الوقت الحقيقي لعملية ما

موجز

chrt [خيارات] [أولوية] أمر [وسيط...]

chrt --pid [خيارات] [أولوية] معرّف-العملية

الوصف

يضبط chrt أو يسترجع سمات جدولة الوقت الحقيقي لـ معرّف-العملية موجود، أو يشغل أمر بالسمات المعطاة.

خيارات السياسة

-o، --other
    اضبط سياسة الجدولة لتكون SCHED_OTHER (جدولة مشاركة الوقت). هذه هي سياسة جدولة لينكس المبدئية. منذ util-linux v2.42، يعد معطى الأولوية اختيارياً؛ وإذا حُدد، فيجب ضبطه على صفر.

-f، --fifo
    تُضبط سياسة الجدولة لتكون SCHED_FIFO (أولاً يدخل أولاً يخرج).

-r، --rr
    تُضبط سياسة الجدولة لتكون SCHED_RR (جدولة دورية). عند عدم تعريف أي سياسة، تُستخدم SCHED_RR كسياسة مبدئية.

-b، --batch
    اضبط سياسة الجدولة لتكون SCHED_BATCH (جدولة العمليات الدفعية). هذه السياسة خاصة بلينكس، ومُدعمة منذ 2.6.16. منذ util-linux v2.42، يعد معطى الأولوية اختيارياً؛ وإذا حُدد، فيجب ضبطه على صفر.

-i، --idle
    اضبط سياسة الجدولة لتكون SCHED_IDLE (جدولة المهام ذات الأولوية المنخفضة جداً). هذه السياسة خاصة بلينكس، ومُدعمة منذ 2.6.23. منذ util-linux v2.42، يعد معطى الأولوية اختيارياً؛ وإذا حُدد، فيجب ضبطه على صفر.

-d، --deadline
    اضبط سياسة الجدولة لتكون SCHED_DEADLINE (جدولة الموعد النهائي لنموذج المهام المتفرقة). هذه السياسة خاصة بلينكس، ومُدعمة منذ 3.14. منذ util-linux v2.42، يعد معطى الأولوية اختيارياً؛ وإذا حُدد، فيجب ضبطه على صفر. انظر أيضاً --sched-runtime و --sched-deadline و --sched-period. العلاقة بين الخيارات التي تتطلبها النواة هي runtime ⇐ deadline ⇐ period. ينسخ chrt قيمة period إلى deadline إذا لم يُحدد --sched-deadline، وينسخ deadline إلى runtime إذا لم يُحدد --sched-runtime. يعني هذا وجوب تحديد --sched-period على الأقل. انظر sched(7) لمزيد من التفاصيل.

-e، --ext
    Set scheduling policy to SCHED_EXT (BPF program-defined scheduling). Linux-specific, supported since 6.12. Since util-linux v2.42, the priority argument is optional; if specified, it must be set to zero. Note that for the policy to be recognized, the following kernel configuration options need to be enabled: CONFIG_BPF, CONFIG_SCHED_CLASS_EXT, CONFIG_BPF_SYSCALL, CONFIG_BPF_JIT, CONFIG_DEBUG_INFO_BTF, CONFIG_BPF_JIT_ALWAYS_ON and CONFIG_BPF_JIT_DEFAULT_ON.

خيارات الجدولة

-T، --sched-runtime نانو_ثانية
    يحدد معامل وقت التشغيل لسياسة SCHED_DEADLINE وطول الشريحة المخصص لسياسات SCHED_OTHER و SCHED_BATCH (خاص بنواة لينكس). لاحظ أن طول الشريحة المخصص عبر معامل وقت التشغيل مُدعم منذ إصدار النواة 6.12.

-P، --sched-period نانو_ثانية
    يحدد معامل الفترة لسياسة SCHED_DEADLINE (خاصة بلينكس). لاحظ أن الحد الأدنى للنواة هو 100 ميكرو ثانية.

-D، --sched-deadline نانو_ثانية
    يحدد معامل الموعد النهائي لسياسة SCHED_DEADLINE (خاص بـ لينكس).

-R، --reset-on-fork
    استخدم وسم SCHED_RESET_ON_FORK أو SCHED_FLAG_RESET_ON_FORK. خاص بنواة لينكس، ومُدعم منذ الإصدار 2.6.31.

    لكل خيط وسم جدولة reset-on-fork. عند ضبط هذا الوسم، لا ترث العمليات التابعة المنشأة بواسطة fork(2) سياسات الجدولة ذات الامتيازات. بعد تفعيل وسم reset-on-fork، لا يمكن إعادة تعيينه إلا إذا كان الخيط يملك قدرة CAP_SYS_NICE. يُعطل هذا الوسم في العمليات التابعة المنشأة بواسطة fork(2).

    بشكل أدق، إذا ضُبط وسم reset-on-fork، تُطبق القواعد التالية على العمليات التابعة المنشأة لاحقاً:

        • إذا كانت لصدفة المستدعِي سياسة جدولة من نوع SCHED_FIFO أو SCHED_RR، تُعاد السياسة إلى SCHED_OTHER في العمليات التابعة.

        • إذا كانت للعملية المستدعِية قيمة لطافة (nice) سالبة، تُعاد القيمة إلى صفر في العمليات التابعة.

الخيارات

-a، --all-tasks
    اضبط أو استرجع سمات الجدولة لجميع المهام (الخيوط) لـ PID معين.

-m، --max
    أظهر الحد الأدنى والأقصى للأولويات الصالحة، ثم اخرج.

-p، --pid
    اعمل على PID موجود ولا تطلق مهمة جديدة.

-v، --verbose
    أظهر معلومات الحالة.

-h، --help
    اعرض نص المساعدة ثم اخرج.

-V، --version
    اعرض الإصدار واخرج.

أمثلة

السلوك المبدئي هو تشغيل أمر جديد:

    chrt أولوية ‎أمر [‎وسائط]

يمكنك أيضاً جلب سمات الوقت الحقيقي لمهمة موجودة:

    chrt --pid معرّف-العملية

أو اضبطها:

    chrt --pid خيار-السياسة الأولوية معرّف-العملية

على سبيل المثال، لضبط سياسة الجدولة لتكون SCHED_RR (التعاقب الدوري) والأولوية إلى 30 للعملية 1234:

    chrt --pid -r 30 1234

أعد ضبط الأولويات إلى الوضع المبدئي لعملية ما:

    chrt --pid -o 0 معرّف-العملية

اضبط شريحة مخصصة قدرها 1 ملي ثانية لمهمة SCHED_OTHER (الأولوية اختيارية للسياسات بخلاف SCHED_FIFO و SCHED_RR):

    chrt --pid -o -T 1000000 معرّف-العملية

انظر sched(7) لمناقشة مفصلة حول فئات المجدول المختلفة وكيفية تفاعلها.

الأذونات

يجب أن يمتلك المستخدم CAP_SYS_NICE لتغيير سمات الجدولة لـ عملية ما. يمكن لأي مستخدم استرجاع معلومات الجدولة.

ملاحظات

فقط SCHED_FIFO و SCHED_OTHER و SCHED_RR جزء من معيار POSIX 1003.1b لجدولة العمليات. قد تُتجاهل سمات الجدولة الأخرى في بعض الأنظمة.

سياسة جدولة لينكس المبدئية هي SCHED_OTHER.

المؤلفين

انظر أيضاً

nice(1)، renice(1)، taskset(1)، sched(7)

انظر sched_setscheduler(2) لوصف مخطط جدولة لينكس.

التبليغ عن الأخطاء

لتقارير العِلل، استخدم

التوفر

الأمر chrt جزء من حزمة util-linux التي يمكن تنزيلها من