Uyku süreçleri aynı CPU zamanını alıyor mu?


11

Bazı süreçler "hayatlarının" çoğunu bir sleepstatüde geçirir . Papatyalar, sunucular ve genel dinleyici akla geliyor. Bu durumda aynı CPU saatini alıp almadıklarını merak ediyordum. Dizüstü bilgisayarım gibi bir şeyde, bu çok uygun olmazdı!

İşletim sistemi kursumdan zamanlamaya farklı yaklaşımlar olduğunu belirsiz bir şekilde hatırlıyorum. Mevcut Linux (Debian) kutum hakkında daha fazla bilgi edinmek istiyorum.

Mevcut planlama politikalarımı nasıl öğrenebilirim? Onları dinamik olarak değiştirebilir miyim? Güzel bir kullanıcı uygulaması ile?

Yanıtlar:


15

İşlemler uyurken CPU kaynaklarını tüketmez. Çekirdek onları çevrelemek zorunda olduğu için biraz ek yük ekleyebilirler, ancak bu çok önemsizdir.

Bununla birlikte, sorunun ifade edilmesi nedeniyle, Linux'un CFS'sini (Tamamen Adil Zamanlayıcı) kullanırken, programlara uyduğu zamanla orantılı olarak daha fazla CPU zamanı vermeye çalıştığını belirtmeliyim - yani bir süreç çok uyuyorsa , yeniden başlatıldığında daha yüksek bir öncelik kazanır.

CFS'nin açıklaması için http://www.ibm.com/developerworks/linux/library/l-completely-fair-scheduler/ adresine bakın .


2
Bu cevabı oylamak istiyorum ancak şu anki temsil puanınız (6.666) değişemeyecek kadar güzel. Ah, yine de yapıyorum ...
rahmu

2
@rahmu noooo! Benim güzel düz altıları! Şimdi sadece yedilere ulaşmam gerekecek.
Shawn J. Goff

4

Tanım olarak, cpu üzerinde bir uyku işlemi yürütülmemektedir, bu yüzden açıkçası kullandığı cpu süresi miktarı sıfırdır.


Bu doğruysa, makine uyku süresinin ne zaman tamamlandığını ve yürütmeyi yeniden başlatması gerektiğini nasıl bilebilir?
Dave Goldsmith
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.