




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第1頁,共42頁。嵌入式操作系統基礎培訓日期:Wednesday,November30,2022版次:v1.0第2頁,共42頁。培訓內容嵌入式操作系統基本概念vxWorks操作系統介紹運行支撐MAP和IAP簡介第3頁,共42頁。培訓內容嵌入式操作系統基本概念第4頁,共42頁。實時計算機系統實時計算機系統簡稱為實時系統(real-timesystem),指能夠在確定和限定的時間內執行其功能并對外部的異步事件作出響應的計算機系統。三個衡量指標:
響應時間(ResponseTime) 生存時間(SurvivalTime) 吞吐量(Throughput)第5頁,共42頁。實時操作系統實時多任務操作系統(RealTimeOperatingSystem)對規模較大的實時系統,需要使用實時多任務操作系統來加以管理。實時操作系統是指具有實時性,能支持實時控制系統工作的操作系統。重要特點是要滿足對時間的限制和要求。實時操作系統可以分為:
一般實時操作系統 嵌入式實時操作系統第6頁,共42頁。嵌入式系統嵌入式系統(EmbeddedSystem):以應用為中心,以計算機技術為基礎,軟件硬件可裁剪,適應應用系統對功能、可靠性、成本、體積和功耗嚴格要求的專用計算機系統。交叉開發——“宿主機/目標機”方式第7頁,共42頁。嵌入式實時操作系統嵌入式實時操作系統具備了實時操作系統和嵌入式系統的特征。即采用的是交叉開發的方式,同時要滿足實時操作系統對時間的限制和要求。常用的商用實時操作系統
1.Tornado/VxWorks 2.pSOSystem 3.WindowsCE第8頁,共42頁。任務任務(task)RTOS的任務是由計算機所執行的一項活動,也就是一段程序,該程序可以認為CPU完全只屬于該程序自己。第9頁,共42頁。任務(續)任務的特點: 動態性 并發性 異步獨立性任務的狀態: 運行態(Executing) 就緒態(Ready) 等待(waiting,通常又稱為掛起,suspend) 休眠(Dormant)第10頁,共42頁。狀態遷移圖第11頁,共42頁。互斥互斥用于確保當一個任務使用一個共享資源時,其它任務不能做同樣的操作的手段。與共享資源打交道時,使之滿足互斥條件最一般的方法有:關中斷使用測試并置位指令禁止做任務切換利用信號量第12頁,共42頁。同步同步在實時系統中通常幾個任務是協同工作的,需要在確定的時間里執行各自的功能,這就產生同步問題。對于單個任務,所謂同步就是使它能在指定的時間執行。一個任務可以通過系統調用來使自己掛起一段時間或者掛起到某一指定的時刻。通常我們所謂的任務同步,主要是指兩個或兩個以上的任務需要協調執行的情況。實現同步主要有兩種方式:信號量和事件。第13頁,共42頁。任務間通信任務間通信主要有兩種途徑共享數據結構-全局變量-緩沖區數據結構發消息給另一個任務-郵箱-消息隊列第14頁,共42頁。中斷中斷處理中斷是一種硬件機制,用于通知CPU有個異步事件發生了。異步事件是指無一定時序關系的隨機發生的事件。中斷一旦被識別,CPU就保存部分(或全部)上下文,即部分或全部寄存器值,跳轉到專門的子程序,稱為中斷服務子程序(ISR)。中斷服務子程序做事件處理,處理完成后,程序回到:在前后臺系統中,程序回到后臺程序對非搶占內核,程序回到被中斷的任務對搶占內核,讓進入就緒態的優先級最高的任務開始運行第15頁,共42頁。時鐘節拍時鐘節拍
在實時系統中,一般不能缺少實時時鐘,它是實時軟件運行的必不可少的硬件設施。實時時鐘單純地提供一個規則的脈沖序列,脈沖之間的間隔可以作為系統的時間基準稱為時基,時基的大小代表了實時時鐘的精度,這個精度取決于系統的要求。軟時鐘方法硬件所做的工作第16頁,共42頁。死鎖死鎖若一個進程集合中的每一個進程都在等待只能由本集合中的另一個進程才能引發的事件,則這種情況被視為死鎖(deadlock)。例:系統有兩個信號量,初始值都是1,任務1和任務2優先級相同。任務1申請到信號量1,此時系統調度到任務2,任務2申請到了信號量2,此時,任務2又想申請信號量1,由于任務1沒有釋放而阻塞。系統調度任務1運行,任務1想申請信號量2,同樣由于任務2沒有釋放而阻塞。這樣一來,任務1和任務2都想獲得對方占用的資源,永遠都不可能繼續執行下去,引起了死鎖。申請信號量1…申請信號量2申請信號量1申請信號量2獲得信號量1…獲得信號量2任務1任務2調度阻塞第17頁,共42頁。調度策略實時調度策略任務調度就是從就緒狀態的任務中,挑選一個任務到處理器上運行。常見的調度算法有:1.先進先出2.短任務優先3.輪循調度4.基于優先級的搶占式調度第18頁,共42頁。培訓內容vxWorks操作系統介紹第19頁,共42頁。任務的定義代碼+上下文(context)第20頁,共42頁。任務上下文內存位置:TCB內容: CPU的寄存器(PC+SP+…..) 堆棧 I/O輸入,輸出分配的I/O。 延時定時器 時間片定時器 內核的控制結構 信號句柄 其它用于調試和監控的值第21頁,共42頁。任務的狀態及轉換任務狀態轉換圖第22頁,共42頁。基于優先級可搶占調度算法第23頁,共42頁。時間片輪轉調度算法第24頁,共42頁。搶占禁止taskLock()/taskUnlock()執行時間長 不禁止中斷 intLock()/intUnlock() 執行時間短 會增加系統的中斷時延 不會關掉任務調度(semTake會調度)第25頁,共42頁。消息隊列第26頁,共42頁。消息隊列使用注意使用消息隊列發送和接受消息時都存在著內存拷貝。因此要注意效率。如果傳遞的是指針的話要注意堆棧的問題。注意消息隊列的大小。中斷中可以調用msgQSend,但必須使用NO_WAIT的方式。第27頁,共42頁。二進制信號量二進制信號量能夠滿足兩種類型的任務協調需要:互斥和同步。二進制信號量需要的系統開銷最小,因而特別適用于高性能的需求。二進制信號量可以處于兩種狀態:FULL態或者EMPTY態。FULL態代表信號量可用,一般量化為1;EMPTY態代表信號量不可用,對應的量化為0。用于互斥時信號量的初始值必須是1(FULL)用于同步時信號量的初始值必須是0(EMPTY)第28頁,共42頁。互斥信號量互斥信號量:用來解決任務的優先級繼承、安全刪除和對資源的遞歸訪問等問題。互斥信號量使用有一些特別要求:1)它只能用于互斥2)它只能被取走它的任務釋放,且可以嵌套調用3)它不能被中斷服務程序使用4)不能用semFlush()函數對它進行操作第29頁,共42頁。計數信號量計數信號量是任務同步和互斥的另一種實現方式。計數信號量除了保留信號量被釋放的次數的跟蹤以外,其他功能和二進制信號量是一樣的。每次信號量被釋放一次,計數增加1;每次信號量被占用一次,計數減少1。當計數減少為0時,要求得到信號量的任務被阻塞。第30頁,共42頁。中斷服務第31頁,共42頁。中斷使用注意不能調用那些由可能引起阻塞的程序(malloc、free、printf等)不允許通過VxWorks的驅動來執行其它I/O操作浮點寄存器(自己保存和恢復)請注意能被中斷中調用的系統函數(semGive,logMsg,msgQSend,intLock等)第32頁,共42頁。內存劃分LOCAL_MEM_LOCAL_ADRS到RAM_LOW_ADRS之間的空間用于存放一些與具體CPU相關的系統信息如中斷向量等;RAM_LOW_ADRS到FREE_RAM_ADRS之間用于存放VxWorksimage(映像文件);WDB_POOL_SIZE段專供調試使用;SYSTEMMEMORYPOOL與USER_RESERVED_MEM段可供用戶使用。
第33頁,共42頁。內存分配方式從靜態存儲區域分配,固定長度的內存池,如UB:userblock在棧上創建從堆上分配,即malloc,頻繁使用會造成內存碎片第34頁,共42頁。培訓內容運行支撐MAP和IAP簡介第35頁,共42頁。支撐系統位置系統位置應用模塊之下系統層面之上應用模塊支撐系統OS或CPU小系統第36頁,共42頁。支撐系統作用功能或作用約束上層應用(框架規范)簡化應用設計屏蔽系統層面差異資源控制,便于管理輔助故障診斷第37頁,共42頁。支撐系統組成支撐內核模塊內存管理進程調度進程通訊定時器管理支撐外圍模塊板間通訊版本加載系統控制其他輔助模塊支撐增強模塊內存監聽在線補丁進程私有頁面管理第38頁,共42頁。MAP平臺小型接入平臺用于DSL9806H項目的支撐系統VOS接口R層接口第39頁,共42頁。IAP平臺綜合接入平臺用于DSL9800v3.0、c200、msag6000等項目的支撐系統R層接口第40頁,共42頁。第41頁,共42頁。內容梗概嵌入式操作系統基礎培訓。日期:Friday,November18,2022。簡稱為實時系統(real-timesystem),指能夠在確定和限定的時間內執行其功能并對外部的異步事件作出響應的計算機系統。對規模較大的實時系統,需要使用實時多任務操。嵌入式實時操作系統具備了實時操作系統和嵌入式系統的特征。即采用的是交叉開發的方式,同時要滿足實時操作系統對時間的限制和要求。等待(waiting,通常又稱為掛起,suspend)。用于確保當一個任務使用一個共享資源時,其它任務不能做同樣的操作的手段。一個任務可以通過系統調用來使自己掛起一段時間或者掛起到某一指定的時刻。異步事件是指無一定時序關系
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農村土房子收購合同范例
- 農村自建別墅合同樣本
- 二居合同標準文本
- 鄉鎮樓盤收購合同范例
- 上海市家裝合同標準文本
- 動態美術教學模型的研究與應用計劃
- 2013勞動合同標準文本
- 2025《合同協議樣本》
- 養蝦雇人合同標準文本
- 買賣茶具合同標準文本
- 導游人員管理法律制度課件
- 2022年江蘇安東控股集團有限公司招聘筆試題庫及答案解析
- 美國地圖高清中文版
- 金屬監督監理實施細則
- 不銹鋼304焊接工藝評定報告PQR(全氬弧)
- 正確認識汽車太陽膜課件
- 工程建筑給排水外文文獻翻譯1
- 曲線上梁的平分中矢坐標計算方法解讀
- DB4201∕T 646-2021 軌道交通工程運營期結構監測技術規程
- 200句話搞定上海中考單詞(精華版)
- 船舶輔鍋爐的自動控制系統分析
評論
0/150
提交評論