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