الفصل 4.2 - تصور العمليات
الأهداف التعليمية
في نهاية هذا الفصل، ستكون قادرًا على:
- استخدام ps بفعالية
- المراقبة باستخدام top و htop
- فهم المعلومات المعروضة
- تصفية وفرز العمليات
ps - قائمة العمليات
الصياغة الأساسية
# جميع العمليات
ps aux
# عمليات المستخدم الحالي
ps
# صيغة BSD
ps aux
# الصيغة القياسية
ps -ef
الخيارات المفيدة
# صيغة مخصصة
ps -eo pid,ppid,user,cmd,%mem,%cpu,etime
# حسب المستخدم
ps -u user1
ps aux | grep user1
# حسب الأمر
ps aux | grep apache
# شجرة العمليات
ps auxf
ps -ejH
ps --forest
# عمليات من طرفية
ps -t tty1
الأعمدة المهمة
- PID: معرف العملية
- PPID: معرف العملية الأم
- USER: المالك
- %CPU: استخدام المعالج
- %MEM: استخدام الذاكرة
- STAT: الحالة (R, S, T, Z, D)
- START: وقت البدء
- TIME: وقت استخدام المعالج
- COMMAND: الأمر الكامل
top - المراقبة في الوقت الحقيقي
الواجهة التفاعلية
top
العنوان يعرض:
- وقت النظام ومدة التشغيل
- عدد المستخدمين
- الحمل المتوسط
- حالات العمليات
- استخدام المعالج والذاكرة
الجسم يعرض:
- قائمة العمليات
- مرتبة حسب المعالج (افتراضيًا)
الأوامر في top
# التنقل
h # مساعدة
q # خروج
Space # تحديث فوري
# الترتيب
P # حسب المعالج (افتراضي)
M # حسب الذاكرة
T # حسب وقت المعالج
N # حسب PID
k # قتل عملية (يطلب PID)
r # Renice (تغيير الأولوية)
# الفلاتر
u # تصفية حسب المستخدم
o # تصفية حسب معيار
= # إعادة تعيين الفلاتر
# العرض
1 # عرض جميع المعالجات
f # اختيار الأعمدة
W # حفظ التكوين
خيارات سطر الأوامر
# تحديث مخصص
top -d 5 # كل 5 ثواني
# حسب المستخدم
top -u user1
# عملية محددة
top -p 1234,5678
# وضع الدفعة (للنصوص البرمجية)
top -b -n 1 > processus.txt
htop - النسخة المحسنة
التثبيت
# أوبونتو/ديبيان
sudo apt install htop
# ريد هات/سينت أو إس
sudo yum install htop
# أو
sudo dnf install htop
المزايا
- واجهة ملونة وبديهية
- التنقل باستخدام الأسهم
- تصفية سهلة
- شجرة العمليات البصرية
- أشرطة التقدم
الاستخدام
htop
الاختصارات:
F2: التكوينF3: البحثF4: التصفيةF5: عرض الشجرةF6: الترتيبF9: قتل عمليةF10: الخروجSpace: تحديد عملية
أدوات أخرى
pstree - شجرة العمليات
# شجرة بسيطة
pstree
# مع PIDs
pstree -p
# مع المستخدمين
pstree -u
# حسب المستخدم
pstree -u user1
pgrep - البحث بالاسم
# العثور على PID بالاسم
pgrep apache
pgrep -u user1 bash
# عرض الاسم أيضًا
pgrep -l apache
# العد
pgrep -c apache
pidof - PID لبرنامج
# PID لبرنامج
pidof apache2
pidof -s apache2 # PID واحد فقط
معلومات مفصلة
/proc/[PID]/
دليل يحتوي على معلومات عن كل عملية:
# عرض معلومات عملية
cat /proc/1234/status
cat /proc/1234/cmdline
cat /proc/1234/environ
cat /proc/1234/io # I/O
cat /proc/1234/fd/ # الملفات المفتوحة
stat و status
# الحالة المفصلة
cat /proc/1234/status
# المعلومات الخام
cat /proc/1234/stat
ملخص
في هذا الفصل، تعلمت:
ps: قائمة العمليات، خيارات عديدة
top: المراقبة في الوقت الحقيقي، واجهة تفاعلية
htop: النسخة المحسنة، أكثر سهولة
pstree: شجرة العمليات
pgrep/pidof: البحث عن العمليات بالاسم
/proc/: معلومات مفصلة عن العمليات
الخطوات التالية
الفصل 4.3: التحكم في العمليات
الفصل 4.4: الأولويات وقيم Nice
تم إنشاء الفصل في: ديسمبر 2024