在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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首頁 > 測試測量 > 設(shè)計應(yīng)用 > μC/OS-II實時性能測試與研究

            μC/OS-II實時性能測試與研究

            ——
            作者: 時間:2007-10-12 來源: 收藏

              實時性是指系統(tǒng)能夠在限定的時間內(nèi)完成任務(wù)并對外部的異步事件作出及時響應(yīng)。在大多數(shù)工業(yè)控制中,對實時性的要求非常高。

              實時是能夠滿足實時系統(tǒng)中實時任務(wù)的處理響應(yīng)時間要求的。實時是事件驅(qū)動(event-driven)的,能對來自外界的作用和信號在限定的時間范圍內(nèi)作出響應(yīng)。它強調(diào)的是實時性、可靠性和靈活性,與實時應(yīng)用軟件相結(jié)合成為有機的整體,起著核心作用;由它來管理和協(xié)調(diào)各項工作,為應(yīng)用軟件提供良好的運行軟件環(huán)境及開發(fā)環(huán)境。在多任務(wù)實時系統(tǒng)中,必然由實時操作系統(tǒng)來對實時任務(wù)進行管理。

              μC/OS-II是一種結(jié)構(gòu)小巧、具有可剝奪實時內(nèi)核的實時操作系統(tǒng)。其內(nèi)核提供任務(wù)調(diào)度與管理、時間管理、任務(wù)間同步與通信、內(nèi)存管理和中斷服務(wù)等功能。

              現(xiàn)在許多工業(yè)控制系統(tǒng)用到了μC/OS-II,為了對其實時性有更深入具體的了解,本文對μC/OS-II的實時性進行了和分析,在實時系統(tǒng)設(shè)計中具有現(xiàn)實意義。

              1 μC/OS-II指標

              衡量嵌入式實時操作系統(tǒng)的好壞一般主要參考以下主要性能指標參數(shù):任務(wù)切換時間、中斷響應(yīng)時間、任務(wù)響應(yīng)時間、任務(wù)創(chuàng)建/刪除時間、交替信號量時間、取得/釋放信號量時間、交替消息隊列傳輸時間等。本文僅對前2個最重要的指標參數(shù)進行分析。

              1.1 任務(wù)切換時間

              任務(wù)切換時間(Task Content Switch Time)可以反映出RTOS執(zhí)行任務(wù)的速度。

              μC/OS-II使用的是占先式內(nèi)核,以保證系統(tǒng)的響應(yīng)時間。每個任務(wù)都被賦予一定的優(yōu)先級,最高優(yōu)先級的任務(wù)一旦就緒,就能得到CPU的控制權(quán)。當一個運行著的任務(wù)通過信號量等機制使一個更高優(yōu)先級的任務(wù)進入了就緒態(tài),μC/OS-II會進行任務(wù)調(diào)度。這時當前任務(wù)的CPU使用權(quán)就要被剝奪,那個高優(yōu)先級的任務(wù)會立刻得到CPU的控制權(quán)。

              每個任務(wù)都有自己的一套CPU寄存器和棧空間。任務(wù)的切換實際上就是CPU寄存器內(nèi)容的切換。CPU內(nèi)部寄存器越多,額外負荷就越重。

              在任務(wù)切換之前還需要在就緒表中查找出優(yōu)先級最高的任務(wù),它由任務(wù)調(diào)度函數(shù)OSSched()完成,是比較花費時間的。因為這個函數(shù)有固定長度的語句,所以它的執(zhí)行時間是常數(shù),與應(yīng)用程序建立了多少個任務(wù)沒有關(guān)系。

              所以任務(wù)切換時間取決于CPU有多少寄存器要出入棧,以及相關(guān)調(diào)度函數(shù)的執(zhí)行速度。

              1.2 中斷響應(yīng)時間

              中斷響應(yīng)時間(Interrupt Response Time)可以反映出RTOS對外界變化的反應(yīng)速度,是指從中斷發(fā)生起到執(zhí)行中斷處理程序的第一條指令所用的時間。它是衡量嵌入式實時操作系統(tǒng)的最主要、最具有代表性的性能指標。

              中斷響應(yīng)時間=中斷延遲時間+保存CPU狀態(tài)的時間+該內(nèi)核的ISR進入函數(shù)的執(zhí)行時間

              中斷延遲時間=關(guān)中斷的最長時間+開始執(zhí)行中斷服務(wù)子程序(ISR)的第1條指令的時間

              關(guān)中斷的最長時間取決于運行時不同的情況,其他參數(shù)在其系統(tǒng)中都有固定長度代碼。中斷響應(yīng)是系統(tǒng)在最壞情況下響應(yīng)中斷的時間。

              2 μC/OS-II測試原理

              2.1 任務(wù)切換時間測試原理

              任務(wù)切換時間測試是利用系統(tǒng)內(nèi)部的定時器計算任務(wù)切換時間。給定時器一個初始值a1,并建立兩個任務(wù);在任務(wù)1中開啟定時器,利用消息郵箱切換到任務(wù)2,停止計時,記錄定時器的值為a2。設(shè)系統(tǒng)時鐘的計數(shù)頻率為f,任務(wù)切換時間為Ttest,則:

              Ttest=(a1-a2)/f (1)

              2.2 中斷響應(yīng)時間測試原理

              中斷響應(yīng)時間測試同樣也是利用定時器計算中斷響應(yīng)時間。給定時器一個初始值a1,建立一個任務(wù)和定時器中斷服務(wù)函數(shù),在任務(wù)中開啟定時器;當定時器自減為0時,進入中斷服務(wù)子函數(shù),在該子函數(shù)中關(guān)閉定時器,記錄定時器的值為a2。注意:定時器歸0后自動變?yōu)槌跏贾礱1。設(shè)系統(tǒng)時鐘的計數(shù)頻率為f,中斷響應(yīng)時間為Tirt,則:

              Tirt=(a1-a2)/f (2)

              3 μC/OS-II實時性能測試步驟及結(jié)果

              本文測試使用的硬件平臺為2410開發(fā)板,其中處理

              器采用Samsung公司的S3C2410X。S3C2410X是一款基于ARM920T內(nèi)核的16/32位RISC嵌入式處理器,系統(tǒng)主頻是202.8 MHz。

              3.1 任務(wù)切換時間測試步驟及結(jié)果

              ①系統(tǒng)時鐘初始化。這里只用到定時器0。PCLK=FCLK/4-202.8 MHz/4=50.7 MHz,預分頻值設(shè)置為0,除法器設(shè)為1/4,所以最小分頻為0.08 μs,f=12.5 MHz。計時器0初始值TCNTB0設(shè)為60 000,即a1=60 000.

              ②如圖1所示,建立兩個任務(wù):Task_TCST_Start()和Task_TCST_End()。Task_TCST_

              End優(yōu)先級高,運行后因等待郵箱的消息而掛起等待;然后Task_TCS'T_Start開始運行,向郵箱發(fā)送一則消息,同時定時器開始計時;之后該任務(wù)延時一段時間,進入掛起狀態(tài)。Task_TCST_End收到郵箱消息,由等待狀態(tài)進入就緒態(tài),因為擁有就緒態(tài)隊列中的最高優(yōu)先級,所以獲得CPU使用權(quán)。它進入運行態(tài)后立即停止計時,記為a2。

              

             ?、鄹鶕?jù)式(1)計算結(jié)果。

             ?、苤貜?0次實驗,取最大值為5.36μs。

              需要注意2點:其一,有意義的任務(wù)切換時間和中斷響應(yīng)時間是系統(tǒng)在最壞情況下發(fā)生的,所以不能取平均值,應(yīng)該取最大值。其二,因為定時器是循環(huán)計數(shù)的,即從初始值自減到0,然后恢復初始值,繼續(xù)自減。所以停止計時時,定時器可能經(jīng)過了兩次或多次循環(huán)。設(shè)計程序時要注意這一點。在本次實驗中,循環(huán)最大間隔為60 000



            評論


            相關(guān)推薦

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

            關(guān)閉