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

        ?

        淺析嵌入式Linux操作系統(tǒng)的實(shí)時(shí)應(yīng)用中的問(wèn)題與優(yōu)化

        2016-03-19 16:35:11袁世軍中煤科工集團(tuán)重慶研究院有限公司重慶400037
        低碳世界 2016年32期
        關(guān)鍵詞:嵌入式操作系統(tǒng)補(bǔ)丁內(nèi)核

        袁世軍(中煤科工集團(tuán)重慶研究院有限公司,重慶400037)

        淺析嵌入式Linux操作系統(tǒng)的實(shí)時(shí)應(yīng)用中的問(wèn)題與優(yōu)化

        袁世軍(中煤科工集團(tuán)重慶研究院有限公司,重慶400037)

        隨著我國(guó)計(jì)算機(jī)信息技術(shù)的發(fā)展,嵌入式系統(tǒng)逐漸被人們認(rèn)可,越來(lái)越多地應(yīng)用到我們的日常生活中,而嵌入式實(shí)時(shí)操作系統(tǒng)的開(kāi)發(fā)是在這個(gè)基礎(chǔ)上進(jìn)一步開(kāi)發(fā)研究出來(lái)的結(jié)果,但由于其開(kāi)發(fā)成本高,價(jià)格昂貴,而且核心技術(shù)沒(méi)有公開(kāi),我國(guó)要想應(yīng)用只有借用別人的技術(shù),在實(shí)時(shí)應(yīng)用中非常不劃算,而Linux操作系統(tǒng)的出現(xiàn)使得這一局面大為改觀,到目前為止Linux操作系統(tǒng)已然成為嵌入式操作系統(tǒng)實(shí)時(shí)應(yīng)用時(shí)的最佳選擇之一。本文通過(guò)對(duì)嵌入式Linux操作系統(tǒng)進(jìn)行概況分析,主要探討嵌入式Linux操作系統(tǒng)在實(shí)時(shí)應(yīng)用中的問(wèn)題及其優(yōu)化方法。

        嵌入式Linux操作系統(tǒng);實(shí)時(shí)應(yīng)用;問(wèn)題;優(yōu)化

        由于嵌入式Linux操作系統(tǒng)具有開(kāi)源,免費(fèi)以及支持多種架構(gòu)等特點(diǎn),使其在嵌入式操作系統(tǒng)中得到了廣泛地應(yīng)用,它是后PC時(shí)代來(lái)臨時(shí)嵌入式操作系統(tǒng)與Internet的有效融合,但是嵌入式Linux操作系統(tǒng)在設(shè)計(jì)之初并沒(méi)有對(duì)其實(shí)時(shí)性方面進(jìn)行仔細(xì)研究,尤其是內(nèi)核中沒(méi)有設(shè)計(jì)允許搶占的要求,隨著現(xiàn)今嵌入式Linux操作系統(tǒng)對(duì)實(shí)時(shí)性的要求越來(lái)越高,導(dǎo)致其在具體應(yīng)用過(guò)程中受到諸多限制,出現(xiàn)了許多問(wèn)題,對(duì)此需要對(duì)嵌入式Linux操作系統(tǒng)的實(shí)時(shí)應(yīng)用進(jìn)行相應(yīng)的優(yōu)化,這也是本文分析探討的重點(diǎn)。

        1 嵌入式Linux操作系統(tǒng)的概況

        嵌入式Linux操作系統(tǒng)最初是由一個(gè)叫Linus的芬蘭大學(xué)生完成的一份作業(yè),其內(nèi)容是關(guān)于Unix課程的,主要是設(shè)計(jì)出一個(gè)包含兩個(gè)向屏幕寫(xiě)字母的進(jìn)程,而進(jìn)程之間的切換則通過(guò)定時(shí)器來(lái)完成,就是這么一個(gè)小程序發(fā)展到如今正在逐步完善,是許多編程愛(ài)好者共同努力的結(jié)果,到目前為止,Linux已經(jīng)變成了一個(gè)應(yīng)用最廣,真正優(yōu)秀并且值得信賴的嵌入式操作系統(tǒng)[1]。

        ①嵌入式Linux操作系統(tǒng)的開(kāi)發(fā)成本低,目前大多數(shù)的商業(yè)操作系統(tǒng)都價(jià)格昂貴,而Linux操作系統(tǒng)卻是完全免費(fèi),而且其性能非常優(yōu)秀,源代碼也完全公開(kāi),這讓許多領(lǐng)域的不同用戶都可以按照自己的需求改造內(nèi)核,從而設(shè)計(jì)出自己滿意的嵌入式操作系統(tǒng);②Linux操作系統(tǒng)有較高的穩(wěn)定性,這主要是由于其內(nèi)核具備高度穩(wěn)定性,既使移植到特定平臺(tái)上其穩(wěn)定性依然如故,而且移植過(guò)程相對(duì)也較為容易簡(jiǎn)便,可以運(yùn)用在多種處理器上;③Linux操作系統(tǒng)具備強(qiáng)大的網(wǎng)強(qiáng)功能,現(xiàn)在通用的網(wǎng)絡(luò)協(xié)議和網(wǎng)絡(luò)接口基本都已經(jīng)訂制在Linux中,而且Linux的內(nèi)核處理器在處理這些網(wǎng)絡(luò)協(xié)議時(shí)更有效率,而且其吞吐量也更高;④Linux操作系統(tǒng)具備完整的開(kāi)發(fā)工具鏈,其提供的開(kāi)發(fā)工具無(wú)論從編輯器到底層調(diào)試,適用于多種體系結(jié)構(gòu)的平臺(tái)。

        2 嵌入式Linux操作系統(tǒng)在實(shí)時(shí)應(yīng)用中的問(wèn)題

        如上文所述,嵌入式Linux操作系統(tǒng)針對(duì)網(wǎng)絡(luò)協(xié)議具有很高的處理效率,也就是說(shuō)其具備很高的吞吐量,標(biāo)準(zhǔn)的Linux操作系統(tǒng)正是以這個(gè)作為主要的研究目標(biāo),而沒(méi)有考慮其實(shí)時(shí)應(yīng)用過(guò)程中所要遇到的問(wèn)題,比如需滿足時(shí)間的約束要求等,其具體不足之處分析如下:

        (1)Linux操作系統(tǒng)的內(nèi)核是不可搶占的,它是以用戶態(tài)和核心態(tài)兩種模式進(jìn)行運(yùn)行,當(dāng)進(jìn)程運(yùn)行到用戶態(tài)時(shí),就會(huì)被優(yōu)先級(jí)別更高的進(jìn)程所搶占,而當(dāng)運(yùn)行到核心態(tài)時(shí),卻不能被用戶態(tài)所搶占;

        (2)在Linux操作系統(tǒng)的運(yùn)行過(guò)程中,在突然發(fā)生某些事件時(shí),極有可能會(huì)阻塞到實(shí)時(shí)進(jìn)程的正常運(yùn)行,也就不能確定出實(shí)時(shí)進(jìn)程的確切響應(yīng)時(shí)間;

        (3)Linux操作系統(tǒng)在實(shí)時(shí)應(yīng)用過(guò)程若是發(fā)生頻繁短時(shí)間的中斷現(xiàn)象,極有可能會(huì)導(dǎo)致中斷延遲出現(xiàn)不可控制的局面;

        (4)在實(shí)時(shí)應(yīng)用時(shí)優(yōu)先級(jí)反轉(zhuǎn)的現(xiàn)象可能會(huì)使高優(yōu)先級(jí)的進(jìn)程被低優(yōu)先級(jí)的進(jìn)程所阻塞,導(dǎo)致優(yōu)先級(jí)不能正常反轉(zhuǎn)的現(xiàn)象發(fā)生,同時(shí)Linux操作系統(tǒng)與通用的嵌入式操作系統(tǒng)相比還缺少相應(yīng)細(xì)粒度與多種模式運(yùn)行下的定時(shí)器,導(dǎo)致進(jìn)程之間不能正常切換[2]。

        3 嵌入式Linux操作系統(tǒng)在實(shí)時(shí)應(yīng)用中的優(yōu)化方法

        通過(guò)上文的探討分析,可以看出嵌入式Linux操作系統(tǒng)在進(jìn)行實(shí)時(shí)應(yīng)用時(shí)還存在許多問(wèn)題,對(duì)此需要增強(qiáng)Linux操作系統(tǒng)的實(shí)時(shí)應(yīng)用性,其具體優(yōu)化方法如下所示:

        3.1 結(jié)構(gòu)改進(jìn)

        3.1.1 標(biāo)準(zhǔn)內(nèi)核搶占

        標(biāo)準(zhǔn)內(nèi)核的搶占主要是通過(guò)對(duì)標(biāo)準(zhǔn)Linux的內(nèi)核進(jìn)行相應(yīng)的修改,使得高優(yōu)先級(jí)能夠搶占低優(yōu)先級(jí)程,在具體實(shí)踐中有以下兩種內(nèi)核補(bǔ)丁方法:首先就是利用低內(nèi)核的延遲方案,也就是修改Linux的單內(nèi)核結(jié)構(gòu),有效縮短非搶斷代碼的長(zhǎng)度,使內(nèi)核的實(shí)時(shí)性得到增強(qiáng);其次就是利用內(nèi)核可搶斷方案,其內(nèi)核可搶斷補(bǔ)丁主要由Rober Love提出以及進(jìn)行相應(yīng)的維護(hù),此方案不僅使內(nèi)核中的單執(zhí)1行流的限制得到解除,而且根據(jù)自旋鎖宏定義和互斥鎖保護(hù)數(shù)據(jù)的完整性,使得內(nèi)核將擁有完整的可搶斷性[3];另外將這兩種內(nèi)核補(bǔ)丁方法放在一起進(jìn)行實(shí)驗(yàn),結(jié)果發(fā)現(xiàn)其實(shí)驗(yàn)后的系統(tǒng)性能更加優(yōu)秀,這充分表明這兩種內(nèi)核補(bǔ)丁修改方案完全適用于Linux操作系統(tǒng)的內(nèi)核搶占修改,可使得Linux操作系統(tǒng)的結(jié)構(gòu)發(fā)生改變。

        3.1.2 標(biāo)準(zhǔn)內(nèi)核的實(shí)時(shí)補(bǔ)丁

        對(duì)標(biāo)準(zhǔn)內(nèi)核進(jìn)行實(shí)時(shí)補(bǔ)丁也可以修改Linux的內(nèi)核,以便提高其實(shí)時(shí)性能,具體方法如下:①實(shí)時(shí)微內(nèi)核,這種方法是將一個(gè)內(nèi)核作為標(biāo)準(zhǔn)內(nèi)核與硬件層之間的接口層,在緊湊代碼模塊的同時(shí),還把標(biāo)準(zhǔn)內(nèi)核當(dāng)作后臺(tái)任務(wù)執(zhí)行,而且微內(nèi)核可截取硬件中斷,保證標(biāo)準(zhǔn)內(nèi)核不會(huì)搶占微內(nèi)核正在處理的中斷,另外微內(nèi)核還可以調(diào)度優(yōu)先級(jí)的實(shí)時(shí)任務(wù)以避免任務(wù)的延遲時(shí)間太長(zhǎng),這種雙內(nèi)核機(jī)制可以最大程度地縮短實(shí)時(shí)任務(wù)的中斷時(shí)間,以獲得硬時(shí)實(shí)支持;②POSIX實(shí)時(shí)擴(kuò)展,這種方法是直接將標(biāo)準(zhǔn)內(nèi)核進(jìn)行修改,以此提供一個(gè)實(shí)現(xiàn)POSIX實(shí)時(shí)擴(kuò)展的庫(kù),通過(guò)這個(gè)庫(kù)可以產(chǎn)生一個(gè)符合IEEE1003.1d標(biāo)準(zhǔn)的系統(tǒng),這種修改方法沒(méi)有增加另外的內(nèi)核,其補(bǔ)丁程序是直接針對(duì)內(nèi)核的,從而能夠?qū)崿F(xiàn)相應(yīng)標(biāo)準(zhǔn)的定時(shí)器,信號(hào),信號(hào)量以及進(jìn)程鎖的內(nèi)存機(jī)制,實(shí)現(xiàn)內(nèi)存共享,優(yōu)先級(jí)調(diào)度以及同步或異步I/O等;③納內(nèi)核方法,這種方法的顯著特征就是可以讓許多操作系統(tǒng)同時(shí)運(yùn)行在納內(nèi)核上,只要其中一個(gè)是實(shí)時(shí)系統(tǒng)即可;④資源內(nèi)核擴(kuò)展,這種方法同實(shí)時(shí)微內(nèi)核方法一樣,都是緊湊代碼模塊,為普通內(nèi)核以及用戶進(jìn)程提供相對(duì)應(yīng)的資源模塊,讓用戶進(jìn)程在運(yùn)行過(guò)程中可以以請(qǐng)求或保留的方式存在,同時(shí)還要保證能夠獲得相應(yīng)的機(jī)器資源[3]。

        3.2 任務(wù)響應(yīng)時(shí)間分析

        嵌入式Linux操作系統(tǒng)在運(yùn)行過(guò)程中由于某些突發(fā)事件而無(wú)法確定出任務(wù)響應(yīng)的時(shí)間,而通常情況下影響任務(wù)響應(yīng)時(shí)間的因素主要包括分派時(shí)間中斷,服務(wù)時(shí)間中斷,調(diào)度延遲,上下文切換時(shí)間以及系統(tǒng)調(diào)用返回時(shí)間等,在這其中服務(wù)時(shí)間中斷的減少是一個(gè)非常重要的問(wèn)題,不能通過(guò)禁止其他特定中斷而進(jìn)行中斷處斷,這種方法雖然可以有效減少中斷服務(wù)的時(shí)間,但若是出現(xiàn)無(wú)數(shù)個(gè)中斷的情況,關(guān)中斷就會(huì)造成丟中斷,這種代價(jià)無(wú)疑是巨大的。對(duì)此需要在Linux操作系統(tǒng)的內(nèi)核和硬件中斷控制器的中設(shè)置一個(gè)中斷模擬軟件層,就可以很好的解決中斷丟失的問(wèn)題,比如當(dāng)發(fā)生中斷情況時(shí),操作系統(tǒng)就會(huì)中斷變量進(jìn)行記錄,然后立即返回給CPU處理器,在這個(gè)過(guò)程中只保存了中斷模擬程序中的寄存器,而有效拖延了中斷服務(wù)程序的過(guò)程,從而保證了中斷任務(wù)運(yùn)行時(shí)的響應(yīng)時(shí)間[4]。

        3.3 定時(shí)器粒度分析

        定時(shí)器的粒度具體指的是Linux操作系統(tǒng)所提供的最小間隔時(shí)間,在Linux操作系統(tǒng)中定時(shí)器每?jī)纱沃袛嘀g的時(shí)間就是其粒度,這也是影響Linux操作系統(tǒng)響應(yīng)速度的一個(gè)主要因素,通常情況下標(biāo)準(zhǔn)Linux操作系統(tǒng)的定時(shí)器粒度大約為10ms,這個(gè)粒度不能滿足Linux操作系統(tǒng)的實(shí)時(shí)調(diào)度需求,就需用將其粒度進(jìn)行細(xì)化,具體方式有兩種:①可以將操作系統(tǒng)的實(shí)時(shí)時(shí)鐘芯片放置在單次觸發(fā)模式下,通過(guò)多處微秒級(jí)的細(xì)小粒度來(lái)起到細(xì)化其粒度的作用;②將Linux操作系統(tǒng)的內(nèi)核中的Hz宏的定義進(jìn)行修改,這種細(xì)化粒度的方式雖然在某種程度上會(huì)增加系統(tǒng)開(kāi)銷(xiāo),但只需要對(duì)定時(shí)器在初始時(shí)進(jìn)行一次設(shè)置就可以長(zhǎng)期保持,這樣可以有效提升系統(tǒng)定時(shí)器的處理效率。

        3.4 優(yōu)先級(jí)反向問(wèn)題

        嵌入式Linux操作系統(tǒng)在實(shí)時(shí)應(yīng)用時(shí),通過(guò)一種二元信號(hào)量的機(jī)制來(lái)實(shí)現(xiàn)資源共享,從而進(jìn)行有效管理。當(dāng)臨界資源任務(wù)在進(jìn)入到臨界區(qū)之前必須擁有相應(yīng)的信號(hào)量,否則其沒(méi)有執(zhí)行臨界代碼的權(quán)限,而且由于一些關(guān)健數(shù)據(jù)區(qū)的信號(hào)量得到了保護(hù),一些高優(yōu)先極的程序進(jìn)程在等待信號(hào)量的過(guò)程中出現(xiàn)了阻塞,從而導(dǎo)致低優(yōu)先級(jí)進(jìn)程處于運(yùn)行態(tài)的狀況發(fā)生,這就是優(yōu)先級(jí)反向問(wèn)題,這種問(wèn)題在系統(tǒng)運(yùn)行中難以預(yù)測(cè),甚至還會(huì)導(dǎo)致操作系統(tǒng)出崩潰的局面,對(duì)于這種優(yōu)先級(jí)反向問(wèn)題主要有兩種解決方法:第一種就是基本優(yōu)先級(jí)繼承協(xié)議,也就是將低優(yōu)先級(jí)進(jìn)程的優(yōu)先級(jí)提高到高優(yōu)先級(jí)進(jìn)程的優(yōu)先級(jí)別,另一種就是優(yōu)先級(jí)上限繼承協(xié)議,也就是事先設(shè)置一個(gè)優(yōu)先級(jí)上限,當(dāng)進(jìn)程在獲取資源共享的使用權(quán)時(shí),就可以將該進(jìn)程的優(yōu)先級(jí)別提高到上限,而當(dāng)高優(yōu)先級(jí)的進(jìn)程在釋放資源時(shí)就立刻恢復(fù)優(yōu)先級(jí)原有的級(jí)別[5]。

        4 結(jié)束語(yǔ)

        綜上所述,本文通過(guò)對(duì)嵌入式Linux操作系統(tǒng)進(jìn)行概況分析,主要探討嵌入式Linux操作系統(tǒng)在實(shí)時(shí)應(yīng)用中的問(wèn)題及其優(yōu)化方法,其實(shí)時(shí)應(yīng)用的問(wèn)題及其優(yōu)法方法主要表面在四個(gè)方面,即系統(tǒng)的結(jié)構(gòu)內(nèi)核改進(jìn),任務(wù)響應(yīng)時(shí)間的減少,定時(shí)器粒度的細(xì)化以及優(yōu)先級(jí)進(jìn)程的級(jí)別提升與恢復(fù)等,希望本文的分析探討讓嵌入式Linux操作系統(tǒng)更好地應(yīng)用在實(shí)時(shí)應(yīng)用中,在走入我們生活與工作的同時(shí)可以帶給我們更大加完善的操作體驗(yàn)。

        [1]馬季蘭,劉 勇.嵌入式Linux操作系統(tǒng)的實(shí)時(shí)性研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2007,08:80~83+91.

        [2]陳文星,張輝宜.嵌入式Linux操作系統(tǒng)的特性[J].計(jì)算機(jī)技術(shù)與發(fā)展,2006,03:20~21+25.

        [3]肖振華,徐玉斌,解 輝,呂亞男.基于嵌入式Linux2.6的實(shí)時(shí)優(yōu)化[J].計(jì)算機(jī)技術(shù)與發(fā)展,2008,11:83~86.

        [4]王宇英.嵌入式Linux實(shí)時(shí)化及其應(yīng)用[D].西北工業(yè)大學(xué),2003.

        [5]李智鵬.嵌入式Linux操作系統(tǒng)實(shí)時(shí)問(wèn)題研究[D].湖南大學(xué),2004.

        TP316.81

        A

        2095-2066(2016)32-0240-02

        2016-11-2

        袁世軍(1978-),男,四川隆昌人,工程師,本科,從事技術(shù)工作。

        猜你喜歡
        嵌入式操作系統(tǒng)補(bǔ)丁內(nèi)核
        萬(wàn)物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
        強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
        基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
        健胃補(bǔ)丁
        學(xué)與玩(2018年5期)2019-01-21 02:13:06
        典型實(shí)時(shí)嵌入式操作系統(tǒng)應(yīng)用分析
        Linux內(nèi)核mmap保護(hù)機(jī)制研究
        繡朵花兒當(dāng)補(bǔ)丁
        文苑(2018年18期)2018-11-08 11:12:30
        補(bǔ)丁奶奶
        基于嵌入式操作系統(tǒng)的工業(yè)采集板設(shè)計(jì)
        應(yīng)用服務(wù)型人才培養(yǎng)體系下的嵌入式操作系統(tǒng)教學(xué)改革探索
        亚洲国产字幕| 国产卡一卡二卡3卡4乱码| 曰本女人与公拘交酡| 一本一道久久综合狠狠老| 又爽又黄无遮挡高潮视频网站| 国产精品不卡无码AV在线播放| 蜜桃成人精品一区二区三区| 国产精品,在线点播影院| 久久99免费精品国产| 手机在线观看免费av网站| 久久午夜无码鲁丝片午夜精品| 国产乱子乱人伦电影在线观看| 人妻影音先锋啪啪av资源| 无码一区东京热| 成人国产精品免费网站| 久久91精品国产91久久跳舞| 97cp在线视频免费观看| 亚洲精品无码久久久久av老牛| 久久丫精品国产亚洲av| 免费无码黄网站在线观看| 亚洲av精品一区二区三| 漂亮人妻出轨中文字幕| 91精品国产综合久久久密臀九色| 亚洲精品美女久久777777| 国产午夜亚洲精品午夜鲁丝片| 人妻av一区二区三区精品| 黑人一区二区三区在线| 国产一级黄色片在线播放| 亚洲午夜av久久久精品影院色戒| 亚洲av日韩专区在线观看| 无码一区二区三区不卡AV| 国产av一区二区三区狼人香蕉| 一区二区三区天堂在线| www射我里面在线观看| 欧美日韩中文国产一区发布 | 青青草手机在线免费观看视频| 免费人成年激情视频在线观看| 最近中文字幕在线mv视频在线 | 美女不带套日出白浆免费视频 | 国产av一区二区三区丝袜 | 一区二区在线视频免费蜜桃|