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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 一種改進嵌入Linux實時性的新型方案

          一種改進嵌入Linux實時性的新型方案

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

          而從前面的分析可以看出,RTAI是基于普通內(nèi)核,相對于式應(yīng)用其內(nèi)核過于龐大;而uClinux本身并沒有更多地關(guān)注實時問題。因此,可以將RTAI和uClinux相結(jié)合,采用雙內(nèi)核的設(shè)計,既滿足了式應(yīng)用的需求,又保證了系統(tǒng)的硬。

          1.硬件抽象層


          圖3 系統(tǒng)中斷處理流程圖

          系統(tǒng)的實現(xiàn)基礎(chǔ)是硬件抽象層,通過硬件抽象層進行硬件管理,把基本內(nèi)核和實時內(nèi)核結(jié)合在一起,其中一個內(nèi)核的改變,不會影響另一個內(nèi)核的執(zhí)行。

          硬 件抽象層定義了本系統(tǒng)同硬件之間的抽象接口,主要用來截取硬件中斷,并且依據(jù)實時內(nèi)核調(diào)度器的需求,重定向為基本內(nèi)核任務(wù)或是實時任務(wù)。RTHAL包含一 個關(guān)鍵的組件:中斷描述符表(IDT,Interrupt Descriptor Table),它定義了一套指針用來處理中斷例程。RTHAL本身定義了一個結(jié)構(gòu),使得基本內(nèi)核中斷處理函數(shù)能夠很容易地被實時處理函數(shù)所替代。這樣,當 實時內(nèi)核通過RTHAL激活后,新的IDT表為合法。在以上控制下,基本內(nèi)核作為實時系統(tǒng)的任務(wù)提供服務(wù)。

          2.雙內(nèi)核結(jié)構(gòu)

          雙內(nèi)核實時系統(tǒng)的總體結(jié)構(gòu)模型如圖1所示,主要包含了基本內(nèi)核、實時內(nèi)核、硬件抽象層、硬件部分。

          其 中基本內(nèi)核(uClinux)和實時內(nèi)核(RTAI)分別處理非實時和實時任務(wù)的調(diào)度和執(zhí)行,而實時任務(wù)和非實時任務(wù)之間信息的交換要通過管道 (FIFO)或共享內(nèi)存(MBUFF)來實現(xiàn)。當實時任務(wù)運行時,基本內(nèi)核被硬件抽象層屏蔽。即實時內(nèi)核將基本內(nèi)核作為優(yōu)先級最低的一個任務(wù)來運行,只有 在沒有實時任務(wù)運行的時候才予以調(diào)度。

          3.實時內(nèi)核動態(tài)加載

          式實時的實時內(nèi)核是動態(tài)加載的。實時任務(wù)被激活前,實時內(nèi)核并沒有啟動,基本內(nèi)核通過RTHAL透明訪問硬件,就像RTHAL不存在一樣。當實時任務(wù)被激活時,RTHAL結(jié)構(gòu)發(fā)生變化,基本內(nèi)核被實時內(nèi)核接管,圖2表明了實時內(nèi)核啟動前后,系統(tǒng)發(fā)生的變化。

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

          4.調(diào)度處理

          當 中斷到來時,實時內(nèi)核判斷它是基本內(nèi)核中斷還是屬于實時中斷,分別進行處理。若是基本內(nèi)核中斷,如果當前有實時任務(wù)正在運行,則只是設(shè)置一下中斷標志位, 懸掛此中斷,如果沒有實時任務(wù)運行,則調(diào)用基本內(nèi)核的中斷處理程序;如果此中斷是實時中斷,就直接調(diào)用相對應(yīng)的實時中斷處理程序。注意,實時中斷可以搶先 基本內(nèi)核任務(wù)的執(zhí)行。系統(tǒng)的中斷處理流程如圖3所示。

          應(yīng)用案例

          工業(yè)控制是嵌入式實時操作系統(tǒng)的傳統(tǒng)應(yīng)用領(lǐng)域,需要嚴格的實時處理功能、高可靠性和良好的開放性,對開發(fā)環(huán)境、可操作性、成本等也有特別的要求。因此本項研究以重大裝備的遠程監(jiān)控系統(tǒng)作為其應(yīng)用之一。

          1.嵌入式遠程監(jiān)控系統(tǒng)結(jié)構(gòu)

          應(yīng) 用針對工業(yè)生產(chǎn)中使用的大型設(shè)備在連續(xù)運轉(zhuǎn)狀態(tài)下的遠程監(jiān)控問題,研究用于重大裝備遠程監(jiān)控的嵌入式裝置。系統(tǒng)主要包括輸入/輸出模塊(NetIO)和輸 入/輸出上位模塊(NetWeb),前者用于實現(xiàn)現(xiàn)場數(shù)據(jù)的采集(輸入),或用于現(xiàn)場裝置的控制(輸出),后者集成了Web功能,使得用戶可以通過互聯(lián)網(wǎng) 對輸入/輸出模塊進行訪問。兩類模塊通過網(wǎng)絡(luò)相連接,在本系統(tǒng)中為通過串行485總線。嵌入式遠程監(jiān)控系統(tǒng)結(jié)構(gòu)如圖4所示。

          2.NetWeb對嵌入式的功能驗證


          圖4 嵌入式遠程監(jiān)控體系結(jié)構(gòu)

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


          關(guān)鍵詞: 新型 方案 實時性 Linux 嵌入 改進

          評論


          相關(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); })();