




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、實(shí)時(shí)與非實(shí)時(shí)系統(tǒng)對比實(shí)驗(yàn)報(bào)告目錄一實(shí)時(shí)工具RTX簡介2二安裝RTX插件2三intervalzero rtx64延遲視圖工具3四優(yōu)先級翻轉(zhuǎn)64.1概念64.2程序?qū)崿F(xiàn)流程64.3實(shí)時(shí)與非實(shí)時(shí)系統(tǒng)結(jié)果對比74.4結(jié)論84.5感悟8一 實(shí)時(shí)工具RTX簡介Windows是通用操作系統(tǒng),其調(diào)度功能不針對實(shí)時(shí)應(yīng)用程序。因此,實(shí)時(shí)開發(fā)人員受到嚴(yán)重限制,并且經(jīng)常無法使用Windows操作系統(tǒng)。 IntervalZero的RTX64產(chǎn)品通過向Windows添加實(shí)時(shí)功能來彌補(bǔ)這一差距。它還提供用于構(gòu)建和執(zhí)行實(shí)時(shí)程序的工具和實(shí)用程序。實(shí)時(shí)系統(tǒng)有時(shí)被分類為硬實(shí)時(shí)或軟實(shí)時(shí)系統(tǒng)。硬實(shí)時(shí)系統(tǒng)是其中響應(yīng)時(shí)間確定性要求是絕對的
2、;對于軟實(shí)時(shí)系統(tǒng),允許一些小的偏差。 IntervalZero沒有容忍的偏差,這意味著硬實(shí)時(shí)。通過擴(kuò)展Windows操作系統(tǒng),RTX64使需要確定性和高速響應(yīng)時(shí)間的應(yīng)用程序組件或模塊與其他非實(shí)時(shí)應(yīng)用程序組件一起在通用Windows系統(tǒng)上協(xié)同工作。使用RTX64,可以使用單個(gè),低成本的平臺來滿足全方位的實(shí)時(shí)和嵌入式應(yīng)用需求。二 安裝RTX插件從intervalzero公司的官網(wǎng)即可下載RTX插件,64位系統(tǒng)可選擇intervalzero公司最新推出了64位插件RTX64 3.0版本的插件,安裝好RTX64 3.0 SDK和RTX64 3.0Runtime后需要激活。激活完成后,配置分配運(yùn)行在wi
3、ndow系統(tǒng)下和RTSS系統(tǒng)下的處理器。打開RTX64 3.0Runtime下的ControlPanel軟件點(diǎn)擊Assign system processors進(jìn)行分配。分配如圖1所示,可選擇將電腦或者筆記本的處理器分成window處理器和RTSS處理器,本次實(shí)驗(yàn)使用的筆記本有8個(gè)處理器,最大可選7個(gè)處理器為RTSS處理器。于是可分配處理器如圖1所示,4個(gè)window處理器,4個(gè)RTSS處理器。重啟電腦,在visual stdio工具中即可建立實(shí)時(shí)工程如圖2所示。通過編譯運(yùn)行實(shí)時(shí)代碼進(jìn)行實(shí)時(shí)開發(fā)。圖1圖2三 intervalzero rtx64延遲視圖工具intervalzero RTX64延
4、遲視圖工具如圖3所示,是RTX插件附帶的一個(gè)程序, IntervalZero延遲視圖工具顯示W(wǎng)indows和RTX64內(nèi)核之間的延遲比較。 系統(tǒng)定時(shí)器響應(yīng)延遲測量為從子系統(tǒng)定時(shí)器中斷發(fā)送信號到該信號被中斷服務(wù)線程(IST)中運(yùn)行的軟件識別的總時(shí)間。 如圖4所示,延遲由硬件延遲,(信號被中斷服務(wù)程序(ISR)識別所花費(fèi)的時(shí)間),以及軟件延遲(從ISR到IST中的例程運(yùn)行所花費(fèi)的時(shí)間)組成 。圖3 intervalzero RTX64延時(shí)視圖工具圖4延遲工具以1秒為間隔重復(fù)捕獲數(shù)據(jù),并為每個(gè)核心提供該時(shí)間段的最大值的圖形顯示。 每個(gè)磁芯還顯示累計(jì)最小值,最大值和平均值。 可以從運(yùn)行在Windows
5、內(nèi)核上的32位和/或64位進(jìn)程查看延遲值,并將其與運(yùn)行在RTSS內(nèi)核上的64位進(jìn)程的延遲值進(jìn)行比較。 可以選擇向選定的內(nèi)核添加視頻和/或磁盤負(fù)載,模擬系統(tǒng)活動,以便更準(zhǔn)確地顯示繁忙系統(tǒng)上的最大延遲時(shí)間如圖5所示選擇加載磁盤負(fù)載來達(dá)到使系統(tǒng)繁忙情況下采集延遲值的數(shù)據(jù)。圖5圖6是在加載了磁盤負(fù)載的情況下,window系統(tǒng)內(nèi)核的每個(gè)磁芯還顯示累計(jì)最小值,最大值和平均值,圖7在加載了磁盤負(fù)載的情況下,RTSS系統(tǒng)內(nèi)核的每個(gè)磁芯還顯示累計(jì)最小值,最大值和平均值。從顯示的數(shù)據(jù)來看window系統(tǒng)內(nèi)核的平均延遲為52us,53us,49us,49us,RTSS系統(tǒng)內(nèi)核的平均延遲為2us,2us,2us,3u
6、s。RTSS系統(tǒng)響應(yīng)延遲非常小,是window系統(tǒng)下響應(yīng)延遲的1/26。圖6圖7那么實(shí)時(shí)window和非實(shí)時(shí)window下相同的程序運(yùn)行結(jié)果會發(fā)生變化嗎?我們進(jìn)行了優(yōu)先級翻轉(zhuǎn)實(shí)時(shí)與非實(shí)時(shí)的對比試驗(yàn)進(jìn)行觀察。四 優(yōu)先級翻轉(zhuǎn)4.1 概念有優(yōu)先級為A、B和C三個(gè)任務(wù),優(yōu)先級A>B>C,任務(wù)A,B處于掛起狀態(tài),等待某一事件發(fā)生,任務(wù)C正在運(yùn)行,此時(shí)任務(wù)C開始使用某一共享資源S。在使用中,任務(wù)A等待事件到來,任務(wù)A轉(zhuǎn)為就緒態(tài),因?yàn)樗热蝿?wù)C優(yōu)先級高,所以立即執(zhí)行。當(dāng)任務(wù)A要使用共享資源S時(shí),由于其正在被任務(wù)C使用,因此任務(wù)A被掛起,任務(wù)C開始運(yùn)行。如果此時(shí)任務(wù)B等待事件到來,則任務(wù)B轉(zhuǎn)為就緒
7、態(tài)。由于任務(wù)B優(yōu)先級比任務(wù)C高,因此任務(wù)B開始運(yùn)行,直到其運(yùn)行完畢,任務(wù)C才開始運(yùn)行。直到任務(wù)C釋放共享資源S后,任務(wù)A才得以執(zhí)行。在這種情況下,優(yōu)先級發(fā)生了翻轉(zhuǎn),任務(wù)B先于任務(wù)A運(yùn)行。4.2 程序?qū)崿F(xiàn)流程按照概念選擇使用臨界區(qū)建立線程1和線程3的共享資源,程序流程圖如圖8所示。首先建立三個(gè)線程1,2,3,并使3個(gè)線程掛起,為線程分配優(yōu)先級。按照概念令線程1優(yōu)先級最高,其次線程2,線程3優(yōu)先級最低。初始化臨界區(qū),激活線程3,線程3處于運(yùn)行狀態(tài)執(zhí)行占用臨界區(qū)資源的指令。激活線程1,激活線程2,三個(gè)線程執(zhí)行完后釋放。圖84.3 實(shí)時(shí)與非實(shí)時(shí)系統(tǒng)結(jié)果對比在window和RTSSwindow系統(tǒng)上實(shí)現(xiàn)
8、上述程序邏輯后。分別統(tǒng)計(jì)10次結(jié)果,window系統(tǒng)執(zhí)行效果如圖9所示,RTSSwindow如圖10所示。Window系統(tǒng)下,程序執(zhí)行不一定發(fā)生優(yōu)先級翻轉(zhuǎn),而RTSSwindow系統(tǒng)下,程序均發(fā)生優(yōu)先級翻轉(zhuǎn)。圖9圖104.4 結(jié)論出現(xiàn)線程2先于線程1執(zhí)行結(jié)果的情況即可認(rèn)為優(yōu)先級發(fā)生翻轉(zhuǎn),在本次實(shí)驗(yàn)window系統(tǒng)和RTSSwindow系統(tǒng)下模擬現(xiàn)實(shí)生活任務(wù)執(zhí)行過程中出現(xiàn)的優(yōu)先級翻轉(zhuǎn)的情況,發(fā)現(xiàn)實(shí)時(shí)和非實(shí)時(shí)系統(tǒng)下執(zhí)行效果具有如下差異:Ø 非實(shí)時(shí)情況下: 優(yōu)先級不一定按照程序的邏輯效果進(jìn)行翻轉(zhuǎn)Ø 實(shí)時(shí)情況下: 優(yōu)先級在觀測下均發(fā)生發(fā)展,嚴(yán)格按照程序邏輯進(jìn)行執(zhí)行經(jīng)思考,兩者的差異來自于實(shí)時(shí)與非實(shí)時(shí)內(nèi)核的延遲時(shí)間不同。實(shí)時(shí)系統(tǒng)在執(zhí)行任務(wù)方面表現(xiàn)效果優(yōu)于非實(shí)時(shí)系統(tǒng)?!咀ⅰ浚荷洗握n堂上演示時(shí),我說出現(xiàn)奇怪的結(jié)果,其實(shí)那種奇怪的結(jié)果是剛剛好線程3執(zhí)行完線程2執(zhí)行緊接著線程1出現(xiàn)的情況,這個(gè)也屬于優(yōu)先級翻轉(zhuǎn)的情況,線程2先于線程1執(zhí)行,并不是什么奇怪的結(jié)果。4.5 感悟 通過自己動手查資料,不斷地思考,不斷地發(fā)現(xiàn)問題,再不斷地思考,最終學(xué)習(xí)到了很多之前沒能深入思考的知識點(diǎn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 倉庫地面修復(fù)合同標(biāo)準(zhǔn)文本
- 公寓二手房買賣合同范例
- 公司暗股合同樣本
- 公司和物流合同范例
- 任務(wù)協(xié)議合同范例
- 光纖線纜銷售合同范例
- 專業(yè)食品加盟合同范例
- 礦山配件采購合同范本
- 內(nèi)墻天花合同范例
- 企業(yè)車輛租賃服務(wù)合同范例
- 心理委員工作手冊本
- 危險(xiǎn)化學(xué)品混放禁忌表
- 2023年高考語文一模試題分項(xiàng)匯編(北京專用)解析版
- 2023年大唐集團(tuán)招聘筆試試題及答案
- 冠寓運(yùn)營管理手冊
- 學(xué)校意識形態(tài)工作存在的問題及原因分析
- 評職稱學(xué)情分析報(bào)告
- 2023山東春季高考數(shù)學(xué)真題(含答案)
- 基本樂理知到章節(jié)答案智慧樹2023年哈爾濱工業(yè)大學(xué)
- 中石油職稱俄語
- 物料管理入門部分真題含答案
評論
0/150
提交評論