亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Linux的實時操作系統(tǒng)的研究

        2012-07-12 05:06:16華東石油局物探研究院系統(tǒng)保障部
        電子世界 2012年13期
        關(guān)鍵詞:任務調(diào)度實時性中斷

        華東石油局物探研究院系統(tǒng)保障部 姜 岸

        基于Linux的實時操作系統(tǒng)的研究

        華東石油局物探研究院系統(tǒng)保障部 姜 岸

        本文分析和研究了Linux系統(tǒng)在實時性方面存在的問題,并分析了實時系統(tǒng)的原理,以及提出了 實時Linux系統(tǒng)的系統(tǒng)結(jié)構(gòu)和應用程序的結(jié)構(gòu)。

        Linux;實時操作系統(tǒng);FIFO;實時應用程序

        一、引言

        隨著計算機性能的不斷提高,人們對計算機的數(shù)據(jù)處理能力提出了新的要求,比如在視頻數(shù)據(jù)處理,網(wǎng)絡數(shù)據(jù)處理等。因此,實時操作系統(tǒng)處理數(shù)據(jù)的效率成為當前計算機用戶關(guān)注的焦點。目前,比較流行的實時操作系統(tǒng)主要有兩大類:基于DOS的實時操作系統(tǒng)和基于UNIX操作系統(tǒng)。

        基于DOS的實時操作系統(tǒng)是指在原有DOS的基礎(chǔ)上,提高其相應功能來實現(xiàn)實時操作系統(tǒng)的特性,但是,由于DOS系統(tǒng)存在單任務的缺陷,因而其只能適應于需求時間較小任務量較少的實時任務處理。

        基于UNIX的操作系統(tǒng)是通過UNIX的分時系統(tǒng)設計實時操作系統(tǒng),來達到實時操作系統(tǒng)的最優(yōu)平均性能。因此,基于UNIX的實時操作成為當前主要的實時操作系統(tǒng),但其存在價格昂貴和應用開發(fā)環(huán)境匱乏的缺陷。由于Linux操作系統(tǒng)是開放源代碼的類UNIX的操作系統(tǒng),同時性能穩(wěn)定,處理數(shù)據(jù)效率高,是一款性能高價格低廉的操作系統(tǒng)。

        鑒于此,基于Linux的操作系統(tǒng)來開發(fā)一個高效性能的實時操作系統(tǒng)是可行的。

        二、標準Linux系統(tǒng)在實時特性方面所存在的問題

        實時操作系統(tǒng)的實時特性主要表現(xiàn)在以下幾方面:(1)運行期間和處理數(shù)據(jù)的高可靠性特性;(2)處理數(shù)據(jù)請求的及時特性;(3)完成數(shù)據(jù)請求和處理的時限保證特性,即實時操作系統(tǒng)必須保證在指定的數(shù)據(jù)請求的響應時間內(nèi)或者數(shù)據(jù)處理時間內(nèi)完成請求或者處理任務,具有此功能的操作系統(tǒng)也稱為硬實時操作系統(tǒng);如果沒有在數(shù)據(jù)處理請求,或者數(shù)據(jù)處理時間期限內(nèi)完成數(shù)據(jù)處理,即未能實現(xiàn)時限保證特性,此類實時操作系統(tǒng)也稱為軟實時操作系統(tǒng)。

        實時操作系統(tǒng)的實時性主要體現(xiàn)在時限保證,因此,超出時限保證范圍的大小直接反映著實時操作系統(tǒng)的性能,即最壞情況??紤]到實時操作系統(tǒng)多方面的性能,所以,在設計Linux實時操作系統(tǒng)時,采用最優(yōu)平均性能來衡量操作系統(tǒng)的實時性。

        1.Linux的調(diào)度問題

        Linux操作系統(tǒng)的調(diào)度問題主要是指進程調(diào)度。Linux操作系統(tǒng)的核心是不可競爭的,在規(guī)定的時間內(nèi)對進程實現(xiàn)等級優(yōu)先調(diào)度。一個等級較低的進程在調(diào)用系統(tǒng)核心進程時,則其會被操作系統(tǒng)掛起,只有當?shù)燃壐叩膬?nèi)核進程完成后,才能繼續(xù)執(zhí)行,但是,在執(zhí)行系統(tǒng)核心進程期間,其完成時間的不可預測性可能造成等待后續(xù)進程的持久掛起,進而不能滿足系統(tǒng)的實時性。

        2.Linux的進程問題

        Linux操作系統(tǒng)的進程問題主要包括進程的同步和進程的互斥問題。Linux操作系統(tǒng)的進行同步和進程互斥是通過信號量來實現(xiàn)的。在信號量的使用過程中,其存在信號量的加鎖操作和解鎖操作。由于信號量的頻繁加鎖和解鎖操作會造成一定量時間的損耗,同時影響操作系統(tǒng)的實時特性。鑒此,Linux操作系統(tǒng)采用了粗粒度策略,但是仍然存在信號的加鎖和解鎖的問題,其系統(tǒng)性能較差。

        3.Linux內(nèi)存鎖問題

        與其他操作系統(tǒng)一樣,Linux操作系統(tǒng)在內(nèi)存管理方面,同樣采用虛擬內(nèi)存管理策略,即數(shù)據(jù)在處理過程中,進程會被系統(tǒng)換入內(nèi)存和換出到虛擬內(nèi)存中,頻繁的換入和換出操作會耗費大量的時間。同時,實時操作系統(tǒng)需要將一些主要的或者關(guān)鍵的進程始終運行在內(nèi)存中,但Linux不能保證這種實時要求。

        4.Linux的時間問題

        Linux操作系統(tǒng)的時間問題包括時間精度問題和定時器問題。操作系統(tǒng)的時間精度的精度越高,則中斷處理就會越頻繁,進而造成耗費時間量大。另外,Linux的硬時間周期一般為100Hz,這就要求Linux的最高時間精度可以為100ms,導致某些實時響應無法在此時間精度內(nèi)完成實時響應。

        5.關(guān)中斷問題

        Linux處理進程的互斥時,會保護臨界資源,同時會關(guān)掉中斷,但會造成優(yōu)先級別高的進行長時間的阻塞,為了解決此問題,Linux開發(fā)者對其相關(guān)的實時性進行了擴充和增加,但最終只能保證一部分的軟件實現(xiàn)實時應用。

        三、實時Linux操作系統(tǒng)

        1.基本思想

        圖1 實時Linux操作系統(tǒng)結(jié)構(gòu)圖

        圖2 實時Linux系統(tǒng)應用程序結(jié)構(gòu)圖

        實時Linux操作系統(tǒng)最早是由新墨西哥理工學院開發(fā)的。實時操作系統(tǒng)主要是在實時環(huán)境下進行數(shù)據(jù)的采集,數(shù)據(jù)處理等。為了實時的Linux操作系統(tǒng),開發(fā)者研究和設計了可推行的實時內(nèi)核,并將原來的Linux內(nèi)核作為一個進程與用戶實時進程同時調(diào)度,同時將Linux核心進程的等級調(diào)到最低,以便于操作系統(tǒng)的實時進程進行資源推斷,以此來保證系統(tǒng)的實時特性。用戶或者開發(fā)者可以針對實時性的具體應用來開發(fā)或者編寫實時任務,可以采用先進先出的策略來調(diào)度實時任務進程和Linux系統(tǒng)核心進程,其實時Linux操作系統(tǒng)的系統(tǒng)結(jié)構(gòu)如圖1所示。

        2.原理與設計

        (1)中斷模擬

        針對關(guān)中斷的問題,實時Linux操作系統(tǒng)設計了一個軟件中斷模擬器,該中斷模擬器位于硬件中斷控制器與系統(tǒng)核心的中間。系統(tǒng)核心的中斷處理包括關(guān)中斷、開中斷和中斷返回。系統(tǒng)接收的全部硬件中斷都會被中斷模擬器接收并處理,當發(fā)生關(guān)中斷時,中斷模擬器進行軟件標志的清除操作;如果發(fā)生中斷,中斷模擬器則檢查軟標志是否已經(jīng)被標志為中斷處理。中斷模擬過程:首先,通過開中斷開啟中斷,并設置中斷堆棧;再次,進行中斷處理;最后,通過中斷返回調(diào)用軟中斷進行返回。

        (2)實時任務

        用戶可以針對實際情況,設計和編寫自己需要的實時任務并被實時系統(tǒng)所調(diào)度。在早期的處理器中,如80X86,就采用了分頁存儲技術(shù),有效地保護了各個相互獨立的實時任務,保證了運行過程中上下文切換時寄存器的修改。但是,在80486處理器中,由于采用了虛擬緩沖技術(shù),造成實時任務的切換過于頻繁,導致系統(tǒng)實時性能下降。因此,為了解決此問題,實時Linux操作系統(tǒng)采用了線程的形式來運行實時任務,減少運行地址空間和上下文切換開銷。另外,實時Linux操作系統(tǒng)通過可加載核心模塊來實現(xiàn)實時任務的加載和卸載,相比之下,比CPU上的上下文切換開銷小,提升了實時Linux操作系統(tǒng)的實時性能。

        (3)任務調(diào)度

        任務調(diào)度主要是負責實時系統(tǒng)中各個實時任務能夠在規(guī)定的時限內(nèi)完成數(shù)據(jù)處理。任務調(diào)度是通過實時調(diào)度器來實現(xiàn)的。大部分實時調(diào)度器都未能夠?qū)崿F(xiàn)高效率的任務調(diào)度,開發(fā)者通過修改相關(guān)參數(shù)實現(xiàn)調(diào)度。實時Linux操作系統(tǒng)規(guī)定每個進程的優(yōu)先級別,在調(diào)度過程中,根據(jù)進程的優(yōu)先級別進行搶斷運行,級別高的進程優(yōu)秀于級別低的進程運行,每過一個實時時間片,任務調(diào)度器都會執(zhí)行一次新的任務調(diào)度。同時,實時Linux操作系統(tǒng)還有其他實時調(diào)度算法,如時限優(yōu)先算法,即運行時間越短,越優(yōu)先;最早時限優(yōu)先算法等。

        (4)時間精度

        時間精度的誤差會直接影響實時系統(tǒng)的進程調(diào)度。如果偏差過大容易引起任務釋放抖動,將對實時任務構(gòu)成影響。在一般的操作系統(tǒng)中,采用時間周期調(diào)度任務。在實時Linux操作系統(tǒng)中,對任務調(diào)度的周期進行了改善,根據(jù)當前的系統(tǒng)時間和當前運行的實時任務需求的時間來決定時鐘中斷周期,從而使實時系統(tǒng)在處理實時任務的效率方面有較高的提升。尤其是在80486芯片以上的計算機上,時間精度反映出來的實時速度和效率會更高、更快。

        (5)通信機制

        實時Linux系統(tǒng)在進程通信過程中采用先進先出策略,并且定義實時先進先出數(shù)據(jù)結(jié)構(gòu),以便于進程的建立、釋放、讀操作和寫操作,其中讀寫操作為原子操作,是不能被掛起的,能夠有效防止進程優(yōu)先級的倒置問題。實時Linux系統(tǒng)在調(diào)度實時任務時,也可以根據(jù)UNIX修過過的任務調(diào)度機制Sysem V IPC來實現(xiàn)任務調(diào)度,比如先進先出管道,消息隊列等。

        四、應用程序結(jié)構(gòu)

        實時Linux系統(tǒng)的應用程序在開發(fā)之前,實時應用程序開發(fā)者應當首先分析其運行環(huán)境,并把應用軟件分為兩部分:普通部分和實時部分。實時部分的設計要求簡單,且只負責實時任務處理;而普通部分負責數(shù)據(jù)處理。實時Linux系統(tǒng)的實時應用程序的典型的數(shù)據(jù)流如圖2所示。

        五、總結(jié)

        實時Linux系統(tǒng)是在原來普通操作系統(tǒng)的基礎(chǔ)上進行相應的改善,在獲得實時特性的同時,其還保留著對普通操作系統(tǒng)的兼容。針對普通操作系統(tǒng)存在的中斷、進程調(diào)度和通信等問題進行了針對性的分析,同時針對實時系統(tǒng)的實時性,提出了一些相應的解決辦法,并對實時應用軟件進行了結(jié)構(gòu)分析。希望本文能夠?qū)M一步研究如何保證實時系統(tǒng)的QOS,提供重要的參考。

        [1]趙龍.對UNIX實時擴充的一點研究[J].計算機工程與科學,2005,11.20(4):76-80

        [2]郭杰.基于Linux實時操作系統(tǒng)的分析和設計[D].碩士學位論文,2006

        [3]李明.基于Linux的實時控制系統(tǒng)的調(diào)度算法研究[J].計算機工程與科學,2005(11):45-46

        [4]須文波.歐愛輝基于RTAI-Linux的實時操作系統(tǒng)的分析與研究[J],現(xiàn)代計算機,2003(5):5-6

        姜岸(1988—),女,江蘇南京人,大學???,主要研究方向:計算機linux。

        猜你喜歡
        任務調(diào)度實時性中斷
        基于規(guī)則實時性的端云動態(tài)分配方法研究
        基于改進NSGA-Ⅱ算法的協(xié)同制造任務調(diào)度研究
        基于時間負載均衡蟻群算法的云任務調(diào)度優(yōu)化
        基于虛擬局域網(wǎng)的智能變電站通信網(wǎng)絡實時性仿真
        跟蹤導練(二)(5)
        千里移防,衛(wèi)勤保障不中斷
        解放軍健康(2017年5期)2017-08-01 06:27:44
        航空電子AFDX與AVB傳輸實時性抗干擾對比
        云計算環(huán)境中任務調(diào)度策略
        云計算中基于進化算法的任務調(diào)度策略
        一種車載Profibus總線系統(tǒng)的實時性分析
        国产精品久久久久久久久鸭| 中日无码精品一区二区三区| 久久国产精品免费一区二区| 一本色道久久综合亚州精品 | 80s国产成年女人毛片| 双腿张开被9个男人调教| 欧美亚洲日韩国产人成在线播放 | 末成年女a∨片一区二区| 中文亚洲成a人片在线观看| 无码av免费永久免费永久专区| 男女视频网站免费精品播放| 国产网站一区二区三区| 无遮无挡爽爽免费毛片| 国内无遮码无码| 久久精品国产亚洲av沈先生 | 亚洲综合久久久| 最新国产主播一区二区| 亚洲天堂av三区四区不卡| 少妇粉嫩小泬喷水视频| 久久综合精品国产二区无码| 亚洲自拍另类制服在线| а的天堂网最新版在线| 中文字幕亚洲精品专区| 亚洲av午夜精品无码专区| 国内精品久久久久久中文字幕| 国产一级片毛片| 亚洲人成在线播放a偷伦| 亚洲一区二区国产一区| 色播亚洲视频在线观看| 久热在线播放中文字幕| 国内视频一区| 久久久精品亚洲人与狗| 白丝兔女郎m开腿sm调教室| 婷婷丁香91| 精品一区二区三区老熟女少妇| 亚洲高清中文字幕视频| 熟妇丰满多毛的大隂户| 不卡高清av手机在线观看| 亚洲一级天堂作爱av| 国产精品久久久久一区二区三区| 大学生被内谢粉嫩无套|