新聞中心

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

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

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

而從前面的分析可以看出,RTAI是基于普通內(nèi)核,相對于式應用其內(nèi)核過于龐大;而uClinux本身并沒有更多地關(guān)注實時問題。因此,可以將RTAI和uClinux相結(jié)合,采用雙內(nèi)核的設(shè)計,既滿足了式應用的需求,又保證了系統(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)核任務或是實時任務。RTHAL包含一 個關(guān)鍵的組件:中斷描述符表(IDT,Interrupt Descriptor Table),它定義了一套指針用來處理中斷例程。RTHAL本身定義了一個結(jié)構(gòu),使得基本內(nèi)核中斷處理函數(shù)能夠很容易地被實時處理函數(shù)所替代。這樣,當 實時內(nèi)核通過RTHAL激活后,新的IDT表為合法。在以上控制下,基本內(nèi)核作為實時系統(tǒng)的任務提供服務。

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

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

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

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

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

本文引用地址:http://m.butianyuan.cn/article/151179.htm

4.調(diào)度處理

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

應用案例

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

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

應 用針對工業(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)閉