Linux 2.6完全公平調(diào)度器內(nèi)幕
任務調(diào)度器是任何操作系統(tǒng)的關鍵部分,Linux 在此領域中不斷發(fā)展和創(chuàng)新。在內(nèi)核 2.6.23 中,推出了Completely Fair Scheduler(CFS)。這款調(diào)度器不依賴于運行隊列而是使用紅黑樹 (red-black tree) 實現(xiàn)任務管理...CFS背后的主要想法是維護為任務提供處理器時間方面的平衡(公平性)。這意味著應給進程分配相當數(shù)量的處理器。分給某個任務的時間失去平衡時(意味著一個或多個任務相對于其他任務而言未被給予相當數(shù)量的時間),應給失去平衡的任務分配時間,讓其執(zhí)行。要實現(xiàn)平衡,CFS 在叫做虛擬運行時 的地方維持提供給某個任務的時間量。任務的虛擬運行時越小, 意味著任務被允許訪問服務器的時間越短 其對處理器的需求越高。CFS 還包含睡眠公平概念以便確保那些目前沒有運行的任務(例如,等待 I/O)在其最終需要時獲得相當份額的處理器。
【編輯推薦】