999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

針對嵌入式實時編程的系統性教學方法探討

2009-08-28 09:09:14王蘇峰陸洪毅侯方勇
計算機教育 2009年14期

王蘇峰 竇 勇 陸洪毅 侯方勇

摘要:隨著嵌入式計算技術的蓬勃發展和在各行各業的廣泛應用,嵌入式系統成為當今國際教學和科研的熱點領域之一。由于實際應用的需要,嵌入式系統大多是實時系統,對響應時間有嚴格的要求,因此其關鍵是如何保證系統的實時性。為了滿足系統的實時性需要,人們提出了各種各樣的實時編程結構,但是相關知識分散、敘述不夠嚴密,且未能系統性的歸納和總結。本文針對這個問題,詳細闡述了各種實時編程結構的結構模型、實時性和優缺點。

關鍵詞:嵌入式系統;實時編程結構;前后臺系統;實時操作系統

中圖分類號:G642 文獻標志碼:B

1引言

隨著嵌入式計算技術的蓬勃發展和在各行各業的廣泛應用,嵌入式系統成為當今國際教學和科研的熱點領域之一。由于實際應用的需要,嵌入式計算大多是實時計算系統,對響應時間有嚴格的要求,操作的正確性不但依賴于邏輯設計的正確程度,而且更依賴于這些操作進行的時間。所以嵌入式實時系統可以說是能在確定的時間內對外部的異步事件做出響應并執行其功能的計算機系統,這包含著兩層含義:一個是外部的異步事件——事件響應,另外一個是執行其功能——任務處理。嵌入式實時系統有兩種類型:軟實時系統和硬實時系統。軟實時系統僅要求事件響應是實時的,并不要求限定任務必須在多長時間內完成。硬實時系統不僅要求事件響應要實時,而且要求在規定的時間內完成任務的處理。通常大多數實時系統是兩者的結合。因此,嵌入式實時系統的關鍵是如何保證系統的實時性。為了滿足系統的實時性需要,人們提出了各種各樣的實時編程結構,但是相關知識分散、敘述不夠嚴密,且未能系統性的歸納和總結。為了滿足教學的需要,針對這個問題,作者在此詳細的闡述了各種實時編程結構的結構模型、實時性以及優缺點。

2無操作系統的實時編程結構

2.1基于查詢方式的實時編程結構

在沒有中斷機制的情況下,僅采用查詢方式實現的實時編程結構,如圖1所示。

基于查詢方式的實時編程結構側重任務的處理,而事件的發生是通過查詢事件標志來獲取的;軟件設計簡單可靠,任務使用的堆棧可以預測,而且由于任務之間不嵌套,可以調用不可重入函數。但缺點也很明顯,對事件響應不能實時,只有查詢到該標志時才會記錄該事件,因此容易丟棄異步事件;所有任務具有相同優先級別,眾生平等;一個任務執行時間不可預測時,則所有任務的響應時間不可預測;采用無限循環結構,一個任務崩潰則引起整個系統崩潰。

在最壞情況下,一個任務要得到響應要等到其它所有任務執行完畢才會輪到它,所以實時性(最壞情況)取決于所有其它任務執行時間之和。

由于該類型嵌入式系統軟件設計簡單可靠,目前在某些任務簡單且單一、可靠性要求極高而對實時性要求不是很高的領域(如航空航天領域)依然使用廣泛。

2.2基于中斷方式的實時編程結構

基于中斷機制采用純中斷方式實現的實時編程結構,事件和任務處理全部由中斷服務子程序(ISR)完成。如圖2所示。

相對于基于查詢方式的實時編程結構來說,基于中斷方式的實時編程結構則側重事件的處理,利用中斷優先級解決了優先級問題,不再眾生平等。但是由于高優先級中斷長時間占用CPU,則容易漏掉低優先級的異步事件;中斷無限制的嵌套則容易導致棧溢出(嵌入式系統棧容量很小),堆棧不可預測;由于中斷嵌套,調用不可重入型函數時,要滿足互斥條件。

由于高優先級中斷能得到及時響應和處理,所以實時性(最壞情況)取決于中斷響應時間(中斷延遲+保存現場時間)。相對于任務執行時間來說,中斷響應時間幾乎可以忽略不計。中斷恢復時間則包括恢復現場時間和執行中斷返回指令的時間。

由于該類型嵌入式系統響應及時,但缺點也很明顯,所以在任務數量不多且簡單以及低功耗嵌入式系統中得到了廣泛應用。

2.3基于前后臺系統的實時編程結構

前后臺系統通常把程序分成兩部分:前臺程序和后臺程序。前臺程序也就是事件處理程序(中斷級),通過中斷來處理事件。中斷服務子程序一般只做簡單的處理,然后給出事件發生的標志,待后臺程序來處理,不會因處理費時的事件而影響其它中斷。后臺程序也就是任務處理程序(任務級),一個死循環,循環查詢各種事件發生的標志位,如果標志位置位,就執行相應的任務處理程序。如圖3、4所示。

中斷有優先級,也可無優先級,因中斷處理時間很短,幾乎可以忽略不計。任務級采用周期循環調度,一個超循環系統,同查詢系統一樣,任務無優先級,眾生平等。

事件響應實時性分析:由于中斷服務子程序只一些做簡單的處理(事件標志置位),事件能得到及時響應,可以避免中斷嵌套(棧溢出),避免漏掉異步事件。

任務響應實時性分析:任務的執行是通過主循環查詢相應的標志位(ISR置位)來執行的,可調用不可重入函數(任務間不嵌套),最壞的情況是循環中所有其它的任務處理程序執行完,才執行當前事件的任務處理程序。所以任務實時性(最壞情況)取決于所有其它任務執行時間之和。

顯然任務實時性、可靠性難以滿足要求,所有的任務具有相同的優先級別,即是平等的,對那些實時性要求高的任務不可能立刻得到處理。如果一個任務執行時間不能確定,則所有任務響應時間不可預測。任務處理(后臺)程序是一個無限循環的結構,一旦在這個循環體中正在處理的任務崩潰,使得整個任務隊列中的其它任務得不到機會被處理,從而造成整個系統的崩潰,任務優先級固定。

前后臺系統結構簡單,幾乎不需要額外的存儲開銷,所以在簡單的嵌入式應用中得到了廣泛的應用。

3基于實時操作系統的實時編程結構

實時操作系統(Real Time Operating System,RTOS)指具有實時性、能支持實時系統工作的操作系統。首要任務是調度一切可利用的資源完成實時任務,其次才著眼于提高系統的使用效率。實時操作系統最重要特點是要滿足對時間的限制和要求,基本結構如圖5所示。

根據基于優先級的任務調度策略,實時操作系統可分為兩類:非搶占(non-preemption)式實時操作系統和搶占式(preemption)實時操作系統。非搶占式實時操作系統也叫不可剝奪或非搶先式實時操作系統;搶占式實時操作系統也叫可剝奪或搶先式實時操作系統。

3.1基于非搶占式實時操作系統的實時編程結構

非搶占式實時操作系統就是一個任務運行后,就把CPU控制權完全交給了該任務,直到它主動將CPU控制權還回來。事件處理由中斷服務子程序來處理,可以激活一個掛起態的任務,使之進入就緒態;中斷服務子程序很簡單,類似于前后臺系統僅使標志置位。任務響應時間由最長任務執行時間、尋找最高優先級任務的時間以及任務切換時間決定,所以實時性(最壞情況)主要取決于最長任務的執行時間(其它可忽略)。

采用非搶占式實時操作系統的優點:實時性比前后臺系統的要好,程序設計相對簡單,可調用不可重入函數(任務間不嵌套)。缺點:如果最長任務的執行時間不能確定,系統的實時性(任務響應時間)就不能確定。

非搶占式實時操作系統運行原理如圖6所示。

3.2基于搶占式實時操作系統的實時編程結構

搶占式實時操作系統就是指內核可以搶占正在運行任務的CPU使用權并將使用權交給進入就緒態的優先級更高的任務。事件處理由中斷服務子程序來處理,可以激活一個掛起態的任務,使之進入就緒態。由于任務之間存在嵌套問題,應用程序不應該直接調用不可重入函數。調用不可重入型函數時,要滿足互斥條件;調用可重入函數使得堆棧不可預測。任務響應時間包括尋找最高優先級任務的時間和任務切換時間,所以實時性(最壞情況)主要取決于任務切換時間(其它可忽略)。

采用搶占式實時操作系統的優點:實時性好,優先級高的任務只要具備了運行的條件,就可以立即運行。缺點:如果任務之間搶占CPU控制權處理不好,會產生系統崩潰、死機等嚴重后果(優先級倒置);調用不可重入型函數時,要滿足互斥條件。

搶占式實時操作系統運行原理如圖7所示。

4結束語

前面我們闡述了五種實時編程結構,下面比較一下各種結構的任務響應實時性。查詢方式和前后臺系統一樣,實時性取決于它所有任務執行時間之和,可能不可預測;中斷方式實時性取決于中斷響應時間,可預測;非搶占式實時操作系統實時性取決于最長任務執行時間,可能不可預測;搶占式實時操作系統實時性取決于任務切換時間,可預測。

這是我們多年來從事嵌入式系統教學以及科研得來的一點點心得和體會,僅是我們的一家之言,希望對同行起到拋磚引玉的作用,也歡迎同行批評指正。

參考文獻:

[1]王志英,李宗伯,王蘇峰,等. 嵌入式系統原理與設計[M]. 北京:高等教育出版社,2007.

[2](英)Andrew Bateman,Lain Paterson Stephens. DSP算法、應用與設計[M]. 陳健,陳偉,汪書寧,譯.北京:機械工業出版社,2003.

[3]Bruce Powel Douglass. 嵌入式與實時系統開發——使用UML、對象技術、框架與模式[M]. 柳翔,譯. 北京:機械工業出版社,2005.

主站蜘蛛池模板: 久久国语对白| 国产精品永久久久久| 日本免费新一区视频| 亚洲男人在线| 午夜福利视频一区| 亚洲精品国产综合99| 久久女人网| 成人无码一区二区三区视频在线观看 | 99精品久久精品| 伊人查蕉在线观看国产精品| 精品视频福利| 免费欧美一级| 国产av无码日韩av无码网站| 男人天堂亚洲天堂| 国产日本视频91| 亚洲最大情网站在线观看| 5555国产在线观看| 国产黄色视频综合| 国产迷奸在线看| 久久网综合| 亚洲欧洲一区二区三区| 亚洲αv毛片| 亚洲国产精品VA在线看黑人| 欧美日韩国产综合视频在线观看 | 久久99精品久久久久纯品| 亚洲男人在线| 色婷婷久久| 午夜影院a级片| 91色在线视频| 在线观看亚洲天堂| 天天综合网站| 国产色伊人| 成人在线亚洲| 亚洲无码久久久久| 久青草免费在线视频| 国产日韩AV高潮在线| 国产在线欧美| 亚洲日韩精品欧美中文字幕| 亚洲日韩日本中文在线| 九九久久99精品| 国产剧情伊人| 中文字幕精品一区二区三区视频| 久久狠狠色噜噜狠狠狠狠97视色 | 在线播放国产一区| 免费a级毛片18以上观看精品| 亚洲成a人片77777在线播放| 日韩精品无码免费一区二区三区| 免费毛片网站在线观看| 爆乳熟妇一区二区三区| 国产精品爽爽va在线无码观看| 国产视频一区二区在线观看 | 美女国产在线| 久久精品娱乐亚洲领先| 最新国语自产精品视频在| 日本精品一在线观看视频| 国产在线一区视频| 国产精品微拍| 日韩AV无码一区| 成人在线观看一区| 国产精品免费p区| 国产性生交xxxxx免费| 亚洲天堂色色人体| 性激烈欧美三级在线播放| 亚洲国产91人成在线| 国产一级在线观看www色 | 国产激情无码一区二区APP| 午夜精品福利影院| 99久久国产自偷自偷免费一区| 亚洲国产欧洲精品路线久久| 毛片在线看网站| 亚洲日本中文字幕乱码中文| 人妻无码AⅤ中文字| 成人中文在线| 欧美性天天| 99热国产这里只有精品9九| 欧美97欧美综合色伦图| 亚洲熟女中文字幕男人总站| a国产精品| 无码丝袜人妻| 欧美午夜在线视频| 国产精品无码影视久久久久久久 | 国产精品欧美日本韩免费一区二区三区不卡|