Linux調(diào)度的實時性
由于Linux本身是一個面向桌面系統(tǒng)的操作系統(tǒng),因此將它應(yīng)用于實時系統(tǒng)中會存在如下一些問題:
本文引用地址:http://www.ex-cimer.com/article/148454.htm●Linux系統(tǒng)中的系統(tǒng)時鐘周期為10 ms,對于實時系統(tǒng)來說,這個周期比較長,所以它不能提供精確的定時,滿足不了實時系統(tǒng)精確定時的要求。
●對于Linux 2.4版本的操作系統(tǒng),當(dāng)一個進程因調(diào)用系統(tǒng)調(diào)用而進人內(nèi)核態(tài)運行后,它在某些情況下屬于有條件剝奪型內(nèi)核,從雨使得調(diào)度延時不可預(yù)測,所以它不能滿足硬實時的要求。
●由于使用虛擬內(nèi)存技術(shù),當(dāng)發(fā)生頁出錯時,需要從硬盤中讀取交換數(shù)據(jù),但硬盤讀/寫因存儲位置的隨機性會導(dǎo)致隨機的讀/寫時間,這在某些情況下會影響一些實時任務(wù) 的截止期限。
●在2.4版的內(nèi)核里,查找最佳候選就緒進程的過程是在調(diào)度器調(diào)用函數(shù)schedule()時來進行的,每一次調(diào)度都要在for()循環(huán)中遍歷就緒進程并調(diào)用函數(shù)goodness(),所以 這種查找過程與當(dāng)前就緒進程的個數(shù)相關(guān)。因此,查找所耗費的時間是當(dāng)前就緒進程個數(shù)有關(guān)的,這與實時系統(tǒng)的要求相違背。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論