.TH swapin.bt 8 "2019-07-05" "USER COMMANDS" .SH "نام (NAME)" swapin.bt \- شمارش دفعات swapin به تفکیک فرآیند. استفاده از bpftrace/eBPF. .SH "خلاصه دستور (SYNOPSIS)" .B swapin .SH "توضیحات (DESCRIPTION)" این ابزار تعداد swapinها را به تفکیک فرآیند شمارش می‌کند تا نشان دهد کدام فرآیند تحت تأثیر سواپینگ (swapping) قرار گرفته است (در صورتی که دستگاه‌های swap در حال استفاده باشند). این موضوع می‌تواند منبع قابل توجهی از تأخیر برنامه‌ها را توضیح دهد، در صورتی که به دلیل فشار حافظه بر روی سیستم، فرآیند swap آغاز شده باشد. .PP این ابزار با ردیابی تابع هسته .BR swap_readpage() با استفاده از ابزار دقیق پویا (dynamic instrumentation) کار می‌کند. در صورتی که این تابع در هسته‌های بعدی تغییر کند، ممکن است این ابزار برای ادامه کارکرد خود به نگهداری و به‌روزرسانی نیاز داشته باشد. .PP از آنجا که این ابزار از BPF استفاده می‌کند، تنها کاربر ریشه (root) می‌تواند از آن استفاده کند. .SH "پیش‌نیازها (REQUIREMENTS)" CONFIG_BPF و bpftrace. .SH "مثال‌ها (EXAMPLES)" .TP شمارش swapinها به تفکیک فرآیند، همراه با نمایش خلاصه بر حسب ثانیه: # .B swapin.bt .SH "فیلدها (FIELDS)" .TP 1st نام فرآیند. .TP 2nd شناسه فرآیند (PID). .TP 3rd تعداد swapinها در طول آن بازه زمانی. .SH "بار پردازشی (OVERHEAD)" نرخ swapinها باید پایین باشد (محدود به IOPS دستگاه swapin)، به طوری که انتظار می‌رود بار پردازشی این ابزار ناچیز باشد. .SH "منبع (SOURCE)" این ابزار برگرفته از کتاب "BPF Performance Tools" منتشر شده توسط Addison Wesley (2019) است: .IP http://www.brendangregg.com/bpf-performance-tools-book.html .PP برای مستندات بیشتر درباره این ابزار به کتاب مراجعه کنید. .PP این نسخه در مخزن bpftrace قرار دارد: .IP https://github.com/bpftrace/bpftrace .PP همچنین در توزیع bpftrace به پرونده همراه _examples.txt که شامل نمونه نحوه استفاده، خروجی و توضیحات این ابزار است مراجعه کنید. .SH "سیستم‌عامل (OS)" Linux .SH "پایداری (STABILITY)" ناپایدار \- در حال توسعه. .SH "نویسنده (AUTHOR)" Brendan Gregg .SH "همچنین ببینید (SEE ALSO)" swapon(8)