在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 提高實時操作系統(tǒng)的實時性能和可靠性策略

            提高實時操作系統(tǒng)的實時性能和可靠性策略

            作者: 時間:2009-05-06 來源:網(wǎng)絡(luò) 收藏
            對很多嵌入式系統(tǒng)來說,一個設(shè)計良好的可以讓開發(fā)工程師把握系統(tǒng)執(zhí)行任何任務(wù)或響應(yīng)任何關(guān)鍵事件的時間,滿足系統(tǒng)實時性要求。為了理解如何通過系統(tǒng)調(diào)度策略實現(xiàn)實時性要求,本文介紹了搶占式調(diào)度、可搶占的內(nèi)核、優(yōu)先級繼續(xù)和中斷處理等概念。

            在設(shè)計工業(yè)控制系統(tǒng)或醫(yī)療設(shè)備時,大部分工程師和系統(tǒng)設(shè)計工程師會認(rèn)為采用是必需的。然而,網(wǎng)際路由器、車載娛樂系統(tǒng)和多媒體設(shè)備等普通應(yīng)用還需要采用嗎?像Linux或Windows這樣的通用操作系統(tǒng)是否就能勝任呢?通常,這些產(chǎn)品需要采用RTOS,但是這個問題經(jīng)常直到設(shè)計階段的后期才能意識到。

            RTOS對于很多嵌入式系統(tǒng)來說不但是有益的,而且也是必要的,熟悉到這一點(diǎn)很重要。例如,一個播放如MPEG格式電影的設(shè)備,假如依靠軟件來實現(xiàn)其整個內(nèi)容傳輸,可能會出現(xiàn)用戶難以接受的高丟幀率。然而,通過使用RTOS,系統(tǒng)設(shè)計工程師能夠準(zhǔn)確地控制軟件過程的執(zhí)行順序,從而保證按照給定的媒體速率進(jìn)行播放。上述大部分情況適用于用戶希望對輸入做出立即響應(yīng)的系統(tǒng)。通過RTOS,開發(fā)人員能夠保證由用戶的操作總能得到及時的響應(yīng),除非一個更重要的操作必須首先執(zhí)行。

            總之,一個好的RTOS支持開發(fā)人員控制系統(tǒng)執(zhí)行任何任務(wù)或?qū)θ魏沃匾录龀龇磻?yīng)的時間,并且能夠以一種可以猜測并且完全一致的形式滿足任務(wù)執(zhí)行的最終期限要求。但是,假如RTOS崩潰,這些最終期限就不能被滿足。因此,RTOS必須提供高度的可靠性。非凡是它必須提供在不需要重啟的情況下,從軟件故障中快速并智能恢復(fù)的機(jī)制。

            搶占式調(diào)度

            在像Linux這樣的通用操作系統(tǒng)中,在對線程和進(jìn)程的占用上采用了“公平”調(diào)度策略。這樣的策略能夠提供良好的整體表現(xiàn),但是不能保證高優(yōu)先級、對時間要求嚴(yán)格的線程將優(yōu)先于低優(yōu)先級的線程執(zhí)行。事實上,操作系統(tǒng)有時甚至?xí)袛喔邇?yōu)先級的線程來為低優(yōu)先級線程提供時間。其結(jié)果可能造成對時間要求嚴(yán)格的線程很輕易地錯過它們的最終期限,甚至在一個高速的高端處理器上運(yùn)行時也會出現(xiàn)這種情況。

            而在RTOS中,線程按照其優(yōu)先級順序執(zhí)行。假如一個高優(yōu)先級的線程預(yù)備運(yùn)行時,它將在一個短的、有限時間間隔內(nèi)從任何可能正在運(yùn)行的低優(yōu)先級進(jìn)程接管。另外,高優(yōu)先級的線程能夠不被中斷地運(yùn)行,直到它已經(jīng)完成了需要做的事情-當(dāng)然是在不被更高優(yōu)先級進(jìn)程搶占的前提下。這種方法就是搶占式調(diào)度,保證了高優(yōu)先級線程始終滿足其最終期限,而不管有多少其它線程正在競爭CPU時間。

            通過合理地控制線程優(yōu)先級,開發(fā)者能顯著地提高很多對用戶非常重要的應(yīng)用響應(yīng)速度。然而,控制優(yōu)先級可能是一把雙刃劍,當(dāng)使用不當(dāng)時它可能會潛在地導(dǎo)致低優(yōu)先級的進(jìn)程不能得到CPU時間。保證高優(yōu)先級的進(jìn)程和線程的同時確保不會使其它進(jìn)程處于“饑餓”狀態(tài)的關(guān)鍵是要對它們的執(zhí)行進(jìn)行限制,通過對執(zhí)行進(jìn)行調(diào)整或在響應(yīng)加載的過程中進(jìn)行控制,開發(fā)人員能夠限制這些活動消耗的CPU時間比例,并支持低優(yōu)先級進(jìn)程獲得對CPU的共享。

            優(yōu)先級控制能夠使很多應(yīng)用受益,包括像前面提到的媒體播放器。媒體播放器需要實現(xiàn)正常播放所要求的速率。在這種限制之下,一個讀線程和一個顯示線程可以被設(shè)計成依靠一個可編程的定時器來喚醒,緩沖或顯示一幀后進(jìn)入睡眠狀態(tài),直到下一個定時觸發(fā)。這提供了一種調(diào)整機(jī)制,支持高于正常用戶活動而又低于關(guān)鍵系統(tǒng)功能的優(yōu)先級設(shè)置。換句話說,假如沒有更重要的任務(wù)預(yù)備運(yùn)行,媒體播放將始終以給定的媒體速率執(zhí)行。

            最壞情形

            搶占式調(diào)度僅在高優(yōu)先級的線程在一個短的、有限時間段內(nèi)搶占低優(yōu)先級線程的情況下有效。否則,系統(tǒng)將不可能猜測要花費(fèi)多長時間來執(zhí)行一個給定的操作。因此,任何銷售進(jìn)程模式的RTOS的供給商都必須提供針對下面兩種時間間隔提供最壞情形:線程切換時間,即當(dāng)兩個線程處于同一進(jìn)程的情況下,從執(zhí)行一個線程的最后一條指令到執(zhí)行下一個被調(diào)度線程的第一條指令所經(jīng)過的時間;前后關(guān)系切換時間,其定義同上,但僅針對兩個線程處于不同進(jìn)程的情況。

            可以將線程看作是最小的“執(zhí)行單元”,而將進(jìn)程看作是一個或多個線程的“容器”,進(jìn)程定義了線程將要在其中執(zhí)行的地址空間。顯然,最壞情形的前后關(guān)系切換時間將比最壞情形的線程切換時間要慢,盡管在一個好的RTOS設(shè)計中差別可能是微不足道的。

            將所有的線程放在幾個大的進(jìn)程中將是錯誤的,因為線程提供的切換速度更快。雖然線程能實現(xiàn)并行處理優(yōu)勢因而適合于某些設(shè)計,但將一個應(yīng)用分成多個內(nèi)存保護(hù)的進(jìn)程使得代碼更輕易調(diào)試,提供了更好的錯誤隔離和恢復(fù)能力,并答應(yīng)系統(tǒng)進(jìn)行新功能的動態(tài)升級。

            上一頁 1 2 3 下一頁

            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉