Linux

睡眠程序是否獲得相同的 CPU 時間?

  • May 8, 2020

一些程序的大部分“生命”都處於一種sleep狀態。我想到了守護程序、伺服器和一般偵聽器。我想知道他們在那種狀態下是否獲得相同的 CPU 時間?在我的筆記型電腦之類的東西上,這不是最理想的!

我從我的作業系統課程中依稀記得有不同的調度方法。我有興趣了解有關我目前的 Linux (Debian) 機器的更多資訊。

如何了解我目前的調度策略?我可以動態更改它們嗎?有一個漂亮的使用者空間應用程序?

程序在休眠時不會消耗 CPU 資源。由於核心必須處理它們,它們可能會增加一些成本,但這非常微不足道。

但是,由於問題的措辭方式,我應該提一下,當使用 Linux 的 CFS(完全公平調度器)時,它會嘗試為程序提供與其睡眠時間成正比的 CPU 時間——也就是說,如果一個程序睡眠很多,當它恢復時,它會獲得更高的優先級。

有關 CFS 的描述,請參閱http://www.ibm.com/developerworks/linux/library/l-completely-fair-scheduler/

引用自:https://unix.stackexchange.com/questions/22886