<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > Linux分時操作系統(tǒng)的實時性分析

          Linux分時操作系統(tǒng)的實時性分析

          作者: 時間:2010-12-12 來源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/151227.htm


          我們給每一個實時任務(wù)定義了4個調(diào)度屬性:priority(優(yōu)先級:限制該任務(wù)比相關(guān)聯(lián)的其他任務(wù)的優(yōu)先權(quán))、starttime(起始時間:任務(wù)開始執(zhí)行時間)、finishtime(截止時間:任務(wù)停止時間)和budget(預(yù)設(shè)值:任務(wù)允許執(zhí)行時間),不同屬性的數(shù)據(jù)對應(yīng)不同的調(diào)度策略。宏觀調(diào)度結(jié)構(gòu)分為兩個模塊:屬性分配模塊和調(diào)度器選擇模塊。屬性分配模塊給每一個實時任務(wù)分配多個屬性值,并通過其中的一兩個屬性值決定哪個屬性優(yōu)先,這樣調(diào)度器選擇模塊就可以根據(jù)屬性的優(yōu)先級別選擇不同的調(diào)度器。例如:如果優(yōu)先級屬性優(yōu)先,則調(diào)度器就變成了一個純粹的PD調(diào)度器;如果截止時間優(yōu)先,那么調(diào)度器就作為EDF調(diào)度器來工作。

          實驗時采用Pentium-||400處理器,128MB內(nèi)存,運行環(huán)境2.0.35(以RED-0.5為補?。訰M調(diào)度策略為例,分別測量每一次系統(tǒng)請求消耗的時間。數(shù)據(jù)整理如下:宏觀調(diào)度結(jié)構(gòu)下屬性分配模塊消耗的時間大部分不到40Ls,平均約35Ls,調(diào)度器選擇模塊平均消耗時間約85Ls,消耗時間總計為118Ls,約占0.118%的CPU時間;單一調(diào)度策略的情況平均消耗時間約為25Ls,約占0.025%的CPU時間。宏觀調(diào)度結(jié)構(gòu)的延遲時間為傳統(tǒng)調(diào)度方式的5倍,對于大多數(shù)的嵌入式系統(tǒng)來講內(nèi)核的靈活性和可配置性比調(diào)度的延時更為重要,而宏觀結(jié)構(gòu)和單一調(diào)度結(jié)構(gòu)的CPU可用時間分別為99.88%和99.97%,差別極小,符合嵌入式系統(tǒng)要求。

          五、結(jié)論與展望

          雖然為,但由于其功能強大、源代碼開放以及可移植性強等優(yōu)勢,已成為日益流行的嵌入式實時的解決方案。本文從軟中斷模擬技術(shù)、可搶占式內(nèi)核和實時調(diào)度策略三個方面給出了改善系統(tǒng)能的方法,并提出了通過采用宏觀調(diào)度結(jié)構(gòu)實現(xiàn)的混合調(diào)度,拓展了實時系統(tǒng)的應(yīng)用范圍。Linux能的逐步完善,必將大大促進嵌入式Linux在工業(yè)控制、后PC時代信息電器等領(lǐng)域的廣泛應(yīng)用,應(yīng)用的需要也會進一步促進大量新型控制算法的出現(xiàn)。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          上一頁 1 2 3 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();