pi_stress(8) Linux System Administrator's Manual pi_stress(8)
# SPDX-License-Identifier: GPL-2.0-or-later

pi_stress - آزمون فشار برای موتکس‌های وراثت اولویت در POSIX

pi_stress [-d|--debug] [-D|--duration TIME] [-g|--groups N] [-i|--inversions INV] [--json FILENAME] [-m|--mlockall] [-p|--prompt] [-q|--quiet] [-r|--rr] [-s|--sched OPTS] [-u|--uniprocessor] [-v|--verbose] [-V|--version]

pi_stress برنامه‌ای است که برای اعمال فشار بر مسیرهای کد priority-inheritance (وراثت اولویت) در موتکس‌های POSIX، هم در هسته لینوکس و هم در کتابخانه C به کار می‌رود. این برنامه به عنوان یک وظیفه با اولویت بلادرنگ (real-time) اجرا شده و گروه‌های رشته‌ای inversion machine (ماشین وارونگی) را راه‌اندازی می‌کند. هر گروه وارونگی شرایط priority inversion (وارونگی اولویت) را پدید می‌آورد که اگر سازوکار priority inheritance به‌درستی عمل نکند، به بن‌بست (deadlock) منجر خواهد شد.

اجرا در حالت اشکال‌زدایی؛ چاپ پیام‌های فراوان اضافی در خروجی.
تعیین مدت‌زمان اجرای آزمون.
افزودن 'm'، 'h' یا 'd' برای مشخص کردن دقیقه، ساعت یا روز.
تعداد گروه‌های وارونگی برای اجرا. مقدار پیش‌فرض ۱۰ است.
نمایش پیام راهنمای کوتاه و گزینه‌ها.
N تعداد شرایط وارونگی. این مقدار، مجموع کل وارونگی‌ها برای تمام گروه‌های وارونگی است. مقدار پیش‌فرض -1 برای حالت بی‌نهایت (نامحدود) است.
نوشتن نتایج نهایی در FILENAME با قالب JSON.
فراخوانی mlockall برای قفل کردن تخصیص‌های جاری و آتی حافظه و جلوگیری از انتقال صفحات به حافظه جانبی (swap).
درخواست تایید از کاربر پیش از آغاز واقعی آزمون فشار.
بی‌صدا کردن و جلوگیری از نمایش خروجی‌های حین اجرا.
اجرای رشته‌های گروه وارونگی با سیاست زمان‌بندی SCHED_RR (نوبت‌گردشی یا round-robin). حالت پیش‌فرض اجرای این رشته‌ها با SCHED_FIFO است.
گزینه‌های زمان‌بندی به تفکیک نوع رشته:
id=[high|med|low],
policy=[fifo,rr],priority=N,
policy=deadline,runtime=N,deadline=N,period=N
اجرای تمام رشته‌ها روی یک پردازنده. حالت پیش‌فرض اجرای تمام رشته‌های گروه وارونگی روی یک پردازنده و رشته‌های مدیریتی (رشته گزارش‌دهی، خواننده صفحه‌کلید و غیره) روی یک پردازنده مجزا است.
اجرا همراه با نمایش پیام‌های پرگویانه و با جزئیات کامل.
چاپ شماره نسخه.

رشته‌های آزمون pi_stress با سیاست‌های زمانی SCHED_FIFO یا SCHED_RR اجرا می‌شوند؛ بدین معنا که ممکن است باعث گرسنگی (starvation) رشته‌های حیاتی سیستم شوند. توصیه می‌شود پیش از اجرای pi_stress، سیاست زمان‌بندی رشته‌های حیاتی سیستم به SCHED_FIFO تغییر یابد و اولویت ۱۰ یا بالاتر برای آن‌ها تنظیم شود تا از گرسنگی منابع آن‌ها توسط آزمون فشار جلوگیری به عمل آید.

هیچ اشکال مستندشده‌ای وجود ندارد.

Clark Williams <williams@redhat.com>

November 27, 2006