《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 一種改進嵌入Linux實時性的新型方案
一種改進嵌入Linux實時性的新型方案
linux聯盟
摘要: 一種改進嵌入Linux實時性的新型方案,對嵌入式Linux進行實時性改進是嵌入式操作系統領域的一個研究熱點。本文在分析了現有嵌入式操作系統實時性不足的基礎上,提出了一種新型的改進方案(將RTAI和uClinux相結合),并給出具體的工控應用實例,進一步對
Abstract:
Key words :

    對嵌入式Linux" title="Linux">Linux進行實時性改進是嵌入式操作系統領域的一個研究熱點。本文在分析了現有嵌入式操作系統實時性不足的基礎上,提出了一種新型的改進方案(將RTAI和uClinux相結合),并給出具體的工控應用實例,進一步對這種系統的功能進行有效驗證。


圖1 雙內核實時系統嵌入式實時Linux架構
  嵌 入式Linux以代碼開放、價格低廉、功能強大又易于移植的特性正在被廣泛應用,為嵌入式操作系統提供了一個極具吸引力的選擇。但許多實際應用,譬如多媒 體通信、生產過程控制、在線事務處理等等都要求對外部事件在限定的時間內做出反應。因而嵌入式系統實時性問題越來越受到關注,對嵌入式Linux進行實時 性改進也成為嵌入式操作系統領域的一個研究熱點。

  本文提出了一種基于uClinux的嵌入式實時操作系統方案。將RTAI和 uClinux相結合,既滿足了嵌入式應用的需求,同時又保證了系統的硬實時性。此外,還有強大的網絡功能、易升級性、易移植性等優點。最后結合基于這一 操作系統開發的重大裝備遠程監控系統的應用案例,進一步從功能和性能上對其進行驗證。

現有嵌入式操作系統應用中存在的問題

   一個優秀的嵌入式操作系統是嵌入式系統成功的關鍵。它除了具備一般操作系統最基本的功能,如任務調度、同步機制、中斷處理、文件功能等,還需要具有以下特點:

1. 更好的硬件適應性,也就是良好的移植性;

2. 占有更少的硬件資源;

3. 高可靠性;

4. 提供強大的網絡功能,支持TCP/IP協議及其他協議;

5. 有些應用要求具有實時性能。

   現 有的嵌入式操作系統大致可分為商用型和免費型兩類:商用型操作系統由于功能穩定、可靠,有完善的技術支持和售后服務,在嵌入式市場占有一定的份額。但它同 時也存在價格昂貴、需要版權、源代碼不公開等一系列問題;免費型操作系統(如Linux)源碼公開,有價格方面的優勢,但在嚴格滿足嵌入式實時應用需求方 面還有欠缺。


圖2 實時內核實現機理


RTAI對Linux的實時性改進

現有幾種針對Linux的實時系統解決方案,實現方法主要包括兩種:

1)直接修改Linux內核、增加實時性,如:Montavista;

2)在普通Linux內核之上增加實時模塊、雙內核結構,如:RTLinux或RTAI。

    Montavista 可以滿足用戶的軟實時要求,RTLinux或RTAI著重增強Linux的硬實時特性。軟實時系統的時限是柔性靈活的,它可以容忍偶然的超時錯誤。失敗造 成的后果并不嚴重,僅僅是輕微地降低了系統的吞吐量。硬實時系統有一個剛性的、不可改變的時間限制,它不允許任何超出時限的錯誤。超時錯誤會帶來損害甚至 導致系統失敗、或者導致系統不能實現它的預期目標。

   RTAI采用雙內核方法,不直接使用Linux的任何功能,而是把需要高度時間精度的 工作寫成一個驅動程序的形式,然后直接用PC時序芯片所產生的中斷調用這個驅動程序。RTAI與NMT RT-Linux的最大不同之處在于,它在Linux上定義了一組實時硬件抽象層(RTHAL)。RTHAL將RTAI需要在Linux中修改的部分定義 成一組程序界面,RTAI只使用這組界面和Linux溝通。這樣做的好處在于,用戶可以將直接修改的Linux核心程序代碼減至最小,這有可能使得將 RTHAL移植到新版Linux的工作量減至最低。

但是,RTAI雖然滿足了硬實時性要求,卻沒有被裁減為足夠小且適用于嵌入式系統。

RTAI+uClinux的實時方案

    uClinux 是為嵌入式應用設計的,它本身并沒有更多地關注實時問題。uClinux經過小型化改造,形成了一個高度優化、代碼緊湊的嵌入式Linux,并保留了 Linux大多數的優點。它專門針對無MMU的CPU,去除了普通Linux內核中的虛擬內存管理部分。更重要的是,uClinux提供了完整的 TCP/IP協議棧,并支持大量其他的網絡協議,為嵌入式系統提供了強大的網絡支持。

   而從前面的分析可以看出,RTAI是基于普通Linux內核,相對于嵌入式應用其內核過于龐大;而uClinux本身并沒有更多地關注實時問題。因此,可以將RTAI和uClinux相結合,采用雙內核的設計方案,既滿足了嵌入式應用的需求,又保證了系統的硬實時性。

1.硬件抽象層


圖3 系統中斷處理流程圖

    系統的實現基礎是硬件抽象層,通過硬件抽象層進行硬件管理,把基本內核和實時內核結合在一起,其中一個內核的改變,不會影響另一個內核的執行。

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

2.雙內核結構

雙內核實時系統的總體結構模型如圖1所示,主要包含了基本內核、實時內核、硬件抽象層、硬件部分。

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

3.實時內核動態加載

嵌入式實時Linux的實時內核是動態加載的。實時任務被激活前,實時內核并沒有啟動,基本內核通過RTHAL透明訪問硬件,就像RTHAL不存在一樣。當實時任務被激活時,RTHAL結構發生變化,基本內核被實時內核接管,圖2表明了實時內核啟動前后,系統發生的變化。

4.調度處理

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

應用案例

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

1.嵌入式遠程監控系統結構

應 用針對工業生產中使用的大型設備在連續運轉狀態下的遠程監控問題,研究用于重大裝備遠程監控的嵌入式裝置。系統主要包括輸入/輸出模塊(NetIO)和輸 入/輸出上位模塊(NetWeb),前者用于實現現場數據的采集(輸入),或用于現場裝置的控制(輸出),后者集成了Web功能,使得用戶可以通過互聯網 對輸入/輸出模塊進行訪問。兩類模塊通過網絡相連接,在本系統中為通過串行485總線。嵌入式遠程監控系統結構如圖4所示。

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


圖4 嵌入式遠程監控體系結構


NetWeb的開發基于前面介紹的嵌入式實時Linux操作系統。特殊的雙內核操作系統結構決定了應用開發的特殊性。

1)任務管理功能

系統中的任務可以分為實時性任務和非實時性任務,實時任務包括實時數據采集、處理等方面,這部分的功能要在實時內核RTAI之上進行實現;另外,非實時任務主要包括數據存儲、遠程通訊的實現,這部分功能要在基本內核uClinux之上實現。

嵌入式實時Linux將實時任務與非實時任務分開管理,實施不同的調度策略和任務間通信方式,至于實時任務與非實時任務之間的通信可以通過實時的FIFO或共享內存實現。這樣的功能使應用的編寫簡潔清晰、功能明確、調度靈活,方便了用戶。

2)網絡功能

嵌入式實時Linux實現了嵌入式互聯網技術,將Web服務器引入到現場測試和控制設備中,在相應的硬件平臺和軟件系統的支持下,使傳統的測試和控制設備轉變為具備了以TCP/IP為底層通信協議,Web技術為核心的基于互聯網的網絡測試和控制設備。

嵌 入式Web與傳統Web應用相比,簡化了系統結構,將信息采集和信息發布都集成到現場的測控設備中。由于有了標準的接口形式和通信協議,內嵌于設備的 Web服務器可以向任何接入它所在網絡的合法用戶提供統一的基于瀏覽器方式的操作和控制界面,瀏覽器成了設備的前端控制板。

3)實時性

嵌 入式實時Linux是硬實時的嵌入式操作系統。當中斷到來時,若是基本內核中斷,如果當前有實時任務正在運行,則只是設置一下中斷標志位,懸掛此中斷;如 果此中斷是實時中斷,就直接調用相對應的實時中斷處理程序。這樣的調度機制可以保證遠程監控系統中實時任務在確定的時間限度內完成,為系統故障的實時預 報、診斷、控制提供了強有力的支持。

此外,系統還從時間管理、內存管理、中斷管理、同步、互斥管理以及設備管理等方面對這一操作系統的功能進行評估驗證。

本文小結

盡管將Linux進行嵌入式實時性改進的方案很多,但是采用RTAI+uClinux的還未見到成型的產品。這一方案既符合嵌入式系統的需求,又達到硬實時性標準,同時還有強大的網絡功能、易升級性、易移植性等優點。

同時,在其上進行應用編程時實時任務(基于RTAI)和非實時任務(基于uClinux)是分開編寫的,清晰簡潔,但由于用戶需要直接在內核空間編程,從系統的安全性角度存在很大隱患。希望可以通過進一步討論研究使其更加完善。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美一区二区三区精品电影| 亚洲调教视频在线观看| 亚洲欧洲一区二区天堂久久| 国外精品视频| 国产午夜精品在线| 国产精品视频精品| 国产精品久久久久国产a级| 欧美日韩天堂| 欧美日韩精品一区二区天天拍小说| 欧美大片免费观看在线观看网站推荐| 久久久噜噜噜久久人人看| 久久成人这里只有精品| 欧美影院成年免费版| 午夜电影亚洲| 欧美一区免费视频| 欧美在线一区二区| 欧美一区网站| 久久都是精品| 久久精品亚洲一区二区| 久久久精彩视频| 久久综合一区二区三区| 美女精品视频一区| 欧美成人中文| 欧美精品一线| 国产精品国产福利国产秒拍| 国产精品国产福利国产秒拍| 国产精品羞羞答答| 国产自产高清不卡| 激情国产一区二区| 在线精品亚洲一区二区| 亚洲欧洲三级电影| av不卡在线看| 亚洲图色在线| 欧美在线视频在线播放完整版免费观看 | 午夜一区二区三区不卡视频| 欧美一级艳片视频免费观看| 久久精品一区二区三区中文字幕| 亚洲日韩第九十九页| 在线一区二区三区四区五区| 欧美一区二区三区视频| 免费不卡中文字幕视频| 欧美日韩一级片在线观看| 国产精品一区二区在线观看不卡 | 亚洲福利视频在线| 一本色道久久综合狠狠躁的推荐| 亚洲综合另类| 久久免费视频在线| 欧美日韩国产综合一区二区| 国产精品乱码妇女bbbb| 在线观看亚洲a| 中文久久乱码一区二区| 久久精品一区二区| 国产精品99久久99久久久二8| 欧美一二区视频| 欧美高清成人| 国产欧美一区二区三区视频| 在线成人www免费观看视频| 一区二区欧美在线| 亚洲国产一区二区三区在线播 | 午夜精品视频在线观看| 欧美a级一区二区| 国产精品家教| 亚洲高清在线观看| 亚洲欧美日韩国产一区二区三区| 亚洲国产精品一区二区久| 亚洲综合另类| 欧美成人有码| 国产在线观看精品一区二区三区| 亚洲精品一区二区三| 欧美一级黄色录像| 亚洲一二三区精品| 欧美成人dvd在线视频| 国产精品资源| 日韩午夜激情电影| 久久精品亚洲一区二区| 亚洲欧美日韩国产成人| 欧美激情一区| 激情欧美国产欧美| 亚洲欧美视频在线| 亚洲一区二区三区影院| 欧美国产成人精品| 黄色成人在线免费| 亚洲欧美日韩视频二区| 亚洲素人一区二区| 欧美激情视频给我| 激情文学一区| 欧美一区二区三区免费观看视频 | 久久精品视频在线观看| 欧美先锋影音| 亚洲日本va午夜在线电影| 久久丁香综合五月国产三级网站| 午夜国产精品影院在线观看| 欧美日韩亚洲一区二| 亚洲国产精品va| 亚洲国产视频一区二区| 久久国产精品毛片| 国产乱码精品一区二区三区不卡| 99精品国产在热久久婷婷| 亚洲免费成人av电影| 嫩草伊人久久精品少妇av杨幂| 国产亚洲欧美日韩日本| 亚洲欧美日韩综合| 欧美一级久久| 国产精品普通话对白| 在线一区二区日韩| 亚洲天堂免费观看| 欧美三区在线视频| 日韩视频一区| 亚洲午夜精品久久| 欧美色道久久88综合亚洲精品| 91久久黄色| 亚洲精品视频一区| 欧美激情第六页| 亚洲伦伦在线| 亚洲午夜激情免费视频| 欧美日韩中文在线| 99re在线精品| 亚洲一区日韩| 国产精品香蕉在线观看| 午夜精品久久久久99热蜜桃导演| 性刺激综合网| 国产午夜精品理论片a级探花 | 亚洲欧美日韩在线观看a三区| 国产精品美女久久久浪潮软件 | 久久久国产精品一区二区中文| 国产日韩精品一区观看| 香蕉乱码成人久久天堂爱免费| 性欧美超级视频| 国产亚洲午夜高清国产拍精品| 久久精品国产v日韩v亚洲| 免费的成人av| 日韩视频中午一区| 亚洲影视在线播放| 国产欧美一级| 亚洲电影中文字幕| 欧美精品久久天天躁| 一区二区三区不卡视频在线观看| 亚洲欧美韩国| 国产亚洲一级| 亚洲伦理在线观看| 欧美三日本三级三级在线播放| 亚洲一区二区三区四区五区黄| 久久大逼视频| 亚洲黄色有码视频| 亚洲欧美日本伦理| 国产一区二区激情| 亚洲精品视频免费| 国产精品美女午夜av| 久久爱www| 欧美久久久久中文字幕| 国产精品99久久久久久www| 欧美一区免费视频| 在线免费观看欧美| 亚洲婷婷综合久久一本伊一区| 国产精品一区二区在线观看网站 | 一区二区三区中文在线观看| 亚洲三级电影全部在线观看高清| 亚洲精品一区二区三区99| 久久一区二区三区国产精品| 亚洲国产欧美久久| 亚洲一卡二卡三卡四卡五卡| 国产日韩精品一区二区三区在线| 亚洲激情电影中文字幕| 欧美日韩hd| 亚洲综合另类| 欧美高清在线精品一区| 亚洲视频在线观看| 久久综合九色九九| 一区二区三区免费网站| 久久精品最新地址| 日韩午夜av电影| 久久久久九九九九| 亚洲精品一品区二品区三品区| 久久超碰97人人做人人爱| 亚洲黄色在线看| 久久av红桃一区二区小说| 亚洲欧洲美洲综合色网| 欧美一区二区三区在线视频| 亚洲国产一区二区三区a毛片| 欧美一级淫片aaaaaaa视频| 亚洲三级性片| 久久久久久欧美| 在线亚洲免费| 欧美成人精品一区二区三区| 亚洲女与黑人做爰| 欧美久久电影| 亚洲大片免费看| 国产精品欧美日韩一区| 亚洲精品在线免费| 国产一区二区三区久久 | 99国产精品私拍| 久久久蜜桃精品| 亚洲视频每日更新| 欧美岛国在线观看| 香蕉久久夜色精品国产使用方法| 欧美日韩国产色视频| 亚洲国产精彩中文乱码av在线播放| 欧美日韩亚洲国产精品| 亚洲人成网站精品片在线观看| 国产日本亚洲高清|