Anda dapat menulis skrip Anda sendiri yang menggunakan ps
untuk membuat daftar semua proses dalam keadaan run/runnable tanpa nilai Nice yang lebih besar dari 0. Sintaks khusus yang perlu Anda gunakan akan berbeda berdasarkan versi ps
Anda . Sesuatu seperti ini mungkin berhasil:
ps -eo state,nice | awk 'BEGIN {c=0} $2<=0 && $1 ~ /R/ { c++ } END {print c-2}'
Ini menjalankan ps
mengumpulkan state
dan nice
tingkat semua proses dan menyalurkan output ke awk
yang menetapkan variabel hitungan c
dan menambahnya setiap kali kolom kedua (Bagus) kurang dari atau sama dengan 0 dan kolom pertama menyertakan R (untuk runnable). Setelah selesai, nilai c
akan dicetak setelah mengurangkan 2. Saya kurangi 2 karena perintah ps dan awk hampir selalu dianggap dapat dijalankan selama durasi eksekusi perintah. Hasil akhirnya akan berupa angka tunggal yang mewakili jumlah proses yang dapat dijalankan pada saat skrip dieksekusi dengan mengecualikan dirinya sendiri dan proses berjalan nicely
, yang pada dasarnya adalah beban sesaat pada mesin. Anda perlu menjalankan ini secara berkala dan menghitung rata-ratanya selama 1, 5, dan 15 menit untuk menentukan rata-rata beban umum mesin.