The nice
perintah memungkinkan Anda untuk mengatur prioritas penjadwalan ( "kebaikan") dari sebuah program. Pada semua sistem mirip Unix yang saya gunakan, kebaikan ditentukan oleh berbagai bilangan bulat, di mana -20 adalah prioritas penjadwalan yang paling menguntungkan, 0 adalah default, dan 19 adalah yang paling tidak menguntungkan.
Memiliki 0 sebagai standarnya sudah cukup intuitif, tetapi mengapa -20 dan 19 dipilih sebagai titik akhir kisaran? Mengapa tidak -128 dan 127, yang akan pas dengan byte 8-bit yang sudah ditandatangani? Atau mengapa tidak -100 hingga 100, yang lebih intuitif untuk manusia yang berpikiran desimal, atau serupa tetapi sedikit lebih ergonomis, -99 hingga 99? Apakah rentang -20 hingga 19 dipilih secara sewenang-wenang, atau apakah ada kaitannya dengan internal scheduler yang nice
awalnya berinteraksi? (Saya mengerti bahwa tidak ada hubungan seperti itu hari ini, setidaknya untuk Linux, yang penjadwal menggunakan prioritas dalam kisaran 0 hingga 139. Namun, saya tertarik pada alasan historis kisaran -20 hingga 19).
min(127, (recent CPU usage on a scale of 0 to 15) + 50 + pp->p_nice - 20
), dan prioritas <25 dicadangkan untuk proses melakukan hal-hal yang tidak pernah terputus. Jadi kebaikan harus semacam jangkauan terbatas.