~3 min read • Updated Jul 18, 2025

۱. فرآیند چیست؟


در لینوکس، هر فرآیند دارای یک شناسه یکتا (PID) است. فرآیند اصلی سیستم که در بوت اجرا می‌شود معمولاً init با PID 1 است. فرآیندها می‌توانند فرآیندهای فرزند ایجاد کنند و ساختار درختی تشکیل دهند. هسته، وضعیت حافظه، مالکیت و استفاده از CPU را برای هر فرآیند مدیریت می‌کند.


۲. مشاهده فرآیندها با ps



ps           # فرآیندهای متصل به ترمینال جاری
ps x         # فرآیندهای کاربر شامل daemonها
ps aux       # تمام فرآیندهای سیستم با جزئیات

ستون‌های مهم:

  • PID: شناسه فرآیند
  • TTY: ترمینال متصل به فرآیند
  • STAT: وضعیت فرآیند (S = خواب، R = اجرا، Z = zombie)
  • %CPU / %MEM: میزان مصرف منابع

۳. پایش زنده با top


top

نمایش لحظه‌ای مصرف منابع با دسته‌بندی بر اساس CPU. خلاصه شامل:

  • زمان روشن بودن سیستم و میانگین بار
  • تعداد فرآیندهای فعال، خواب و zombie
  • جزئیات استفادهٔ CPU و حافظه

کلید h برای راهنما، q برای خروج


۴. مدیریت فرآیندها به‌صورت تعاملی



xlogo &          # اجرا در پس‌زمینه
fg %1            # بازگرداندن job 1 به پیش‌زمینه
Ctrl+Z           # توقف فرآیند پیش‌زمینه
bg %1            # ادامهٔ job 1 در پس‌زمینه
jobs             # نمایش jobهای در حال اجرا

۵. ارسال سیگنال با kill و killall



kill 28401             # ارسال سیگنال TERM به PID
kill -9 28401          # kill اجباری با SIGKILL
killall xlogo          # خاتمه تمام فرآیندهای با نام مشخص

سیگنال‌های رایج:

  • SIGINT (2): قطع
  • SIGTERM (15): پایان آرام
  • SIGKILL (9): خاتمه فوری
  • SIGSTOP / SIGCONT: توقف / ادامهٔ فرآیند

۶. فرمان‌های خاموش‌سازی سیستم



shutdown -r now    # راه‌اندازی مجدد فوری
poweroff           # خاموشی کامل
reboot             # راه‌اندازی مجدد

خاموش‌سازی صحیح باعث حفظ داده‌ها و همگام‌سازی فایل سیستم می‌شود.


۷. ابزارهای پیشرفته پایش


دستورشرح
pstreeنمایش درختی ساختار فرآیندها
vmstat 5بروزرسانی منابع هر ۵ ثانیه
tloadنمودار متنی بار سیستم
xloadنظارت گرافیکی بر بار سیستم

نتیجه‌گیری


لینوکس ابزارهای قدرتمندی برای مدیریت فرآیندها دارد. از ps و top برای مشاهده، تا kill، jobs و fg/bg برای کنترل و تعامل، می‌توان عملکرد سیستم را به‌صورت دقیق مدیریت کرد. تسلط بر کنترل فرآیندها باعث افزایش اطمینان و توانایی در عیب‌یابی یا بهینه‌سازی منابع می‌شود.


Written & researched by Dr. Shahin Siami