Sen edebilirsiniz renice vermek için çalışan bir süreci daha az ya da önceliği (sözde "güzel değer"). UNIX öncelik ölçeğinin bir şekilde karşı sezgisel olduğuna dikkat edin: negatif değerler, bir sürecin eşzamanlı süreçlere göre tercih edildiği anlamına gelir, yani "daha fazla" önceliğe sahiptir.
Böylece, PID verildiğinde sürecinizi "yavaşlatmaya" çalışabilirsiniz:
# lower priority of a process
renice +1 "PID"
Bunu her çalıştırdığınızda, "hoş değer" süreci 1 artar; +1
elbette dışındaki tamsayı değerlerini kullanabilirsiniz .
Nice komutu , bir işlemi +10 nice değer ayarlamasıyla başlatmanıza izin verir (bunu seçenekle değiştirin -n
). Örneğin:
# start a CPU-intensive task with low priority
nice ./cpu-hog
Ancak, "güzel değer" sadece ne kadar etkilediğini sistemde diğerlerine göre belirli bir süreç çalışıyor zamanlayıcı iyilik: Bilgisayarınızın temelde edecek tek sürecin "güzel değeri" yükselterek rölantide ise değil % 100 almaktan bu süreci durdurmak İŞLEMCİ. Getpriority (2) manpageinden alıntı yapıyorum : (Vurgu ekledim.)
Göreceli hoş değerlerinin süreçlerin zamanlamasını etkileme derecesi Unix sistemlerinde ve Linux'ta çekirdek sürümlerinde değişir. Çekirdek 2.6.23'ten başlayarak, Linux güzel değerlerde göreli farklılıkların çok daha güçlü bir etkiye sahip olmasına neden olan bir algoritma benimsedi. Bu ,
sistemde başka herhangi bir yüksek öncelik yükü olduğunda işleme çok az CPU sağlamak için çok düşük hoş değerlerin (+19) oluşmasına neden olur .
Bunun nedeni, işlemlerin UNIX benzeri bir çekirdek üzerinde çalışma biçiminde yatmaktadır: çekirdek bir işlemi yürütmeye her karar verdiğinde, bu işlem belirli (sabit ve kısa) bir süre boyunca bir CPU çekirdeği üzerinde tam denetime sahiptir. "Güzel değer", çekirdek zamanlayıcısının bir sürece zaman aralığı vermek istediğini etkileyebilir, ancak bir kez zamanlandıktan sonra bir işlemin sabit bir süre boyunca bozulmadan çalıştığı gerçeğini değiştiremezsiniz.
Bu nedenle, CPU'nuzu yavaşlatmadan kısa bir süre, sistemde CPU erişimi için mücadele edebilecek başka bir işlem yoksa, bir işlemin daha yavaş çalışmasını sağlamanın bir yolu yoktur.