-
實時操作系統
鎖定
- 中文名
- 實時操作系統
- 外文名
- Real Time Operating System
- 簡 稱
- RTOS
實時操作系統定義
實時操作系統是保證在一定時間限制內完成特定功能的操作系統。實時操作系統有硬實時和軟實時之分,硬實時要求在規定的時間內必須完成操作,這是在操作系統設計時保證的;軟實時則只要按照任務的優先級,儘可能快地完成操作即可。我們通常使用的操作系統在經過一定改變之後就可以變成實時操作系統。
例如,可以為確保生產線上的機器人能獲取某個物體而設計一個操作系統。在“硬”實時操作系統中,如果不能在允許時間內完成使物體可達的計算,操作系統將因錯誤結束。在“軟”實時操作系統中,生產線仍然能繼續工作,但產品的輸出會因產品不能在允許時間內到達而減慢,這使機器人有短暫的不生產現象。一些實時操作系統是為特定的應用設計的,另一些是通用的。一些通用目的的操作系統稱自己為實時操作系統。但某種程度上,大部分通用目的的操作系統,如微軟的Windows NT或IBM的OS/390有實時系統的特徵。這就是説,即使一個操作系統不是嚴格的實時系統,它們也能解決一部分實時應用問題。
大體上,實時操作系統(RTOS)要求:
- 多任務
- 處理能被區分優先次序的進程線
- 一箇中斷水平的充分數量
被裝入作為微型設備一部分的內含小操作系統經常要求實時操作系統。一些核心問題能被考慮以符合實時操作系統的需求。然而,因為像設備驅動程序這樣的其他成份,也通常被特別的方法需要,一個實時操作系統通常比核心更大。
[1]
實時操作系統實時任務
按任務執行時是否呈現週期性變化來劃分:
a、週期性實時任務
外部設備週期性地發出激勵信號給計算機,要求它按照指定週期循環執行,以便週期性的控制某種外部設備。
b、非週期性實時任務
外部設備所發出的激勵信號並無明顯的週期性,但都必須聯繫着一個截止時間。 它又可分為開始截止時間(任務在某時間以前必須開始執行)和完成截止時間(任務在某時間以前必須完成)兩部分。
根據對截至時間的要求來劃分:
a、硬實時任務
實時操作系統特徵
1)高精度計時系統
計時精度是影響實時性的一個重要因素。在實時應用系統中,經常需要精確確定實時地操作某個設備或執行某個任務,或精確的計算一個時間函數。這些不僅依賴於一些硬件提供的時鐘精度,也依賴於實時操作系統實現的高精度計時功能。
2)多級中斷機制
一個實時應用系統通常需要處理多種外部信息或事件,但處理的緊迫程度有輕重緩急之分。有的必須立即作出反應,有的則可以延後處理。因此,需要建立多級中斷嵌套處理機制,以確保對緊迫程度較高的實時事件進行及時響應和處理。
3)實時調度機制
實時操作系統不僅要及時響應實時事件中斷,同時也要及時調度運行實時任務。但是,
[3]
處理機調度並不能隨心所欲的進行,因為涉及到兩個進程之間的切換,只能在確保“安全切換”的時間點上進行,實時調度機制包括兩個方面,一是在調度策略和算法上保證優先調度實時任務;二是建立更多“安全切換”時間點,保證及時調度實時任務。
實時操作系統相關概念
實時操作系統基本概念
代碼臨界段:指處理時不可分割的代碼。一旦這部分代碼開始執行則不允許中斷打入;
資源:任何為任務所佔用的實體;
共享資源:可以被一個以上任務使用的資源;
任務:也稱作一個線程,是一個簡單的程序。每個任務被賦予一定的優先級,有它自己的一套CPU寄存器和自己的棧空間。典型地,每個任務都是一個無限的循環,每個任務都處在以下五個狀態下:休眠態,就緒態,運行態,掛起態,被中斷態;
調度:內核的主要職責之一,決定輪到哪個任務運行。一般基於優先級調度法;
實時操作系統優先級的問題
任務優先級:分為優先級不可改變的靜態優先級和優先級可改變的動態優先級;
實時操作系統互斥
中斷響應時間=中斷延遲時間+保存CPU狀態的時間+該內核的ISR進入函數的執行時間。
中斷延遲時間=MAX(關中斷的最長時間,最長指令時間) + 開始執行ISR的第一條指令的時間。
最大中斷禁止時間:
任務切換時間:
實時操作系統實時系統與分時系統特徵的比較
(2)獨立性。實時信息處理系統與分時系統一樣具有獨立性。每個終端用户在向分時系統提出服務請求時,是彼此獨立的操作,互不干擾;而在實時控制系統中信息的採集和對對象的控制,也彼此互不干擾。
(3)及時性。實時信息系統對實時性的要求與分時系統類似,都是以人所能接受的等待時間來確定;而實時控制系統的及時性,則是以控制對象所要求的開始截止時間或完成截止時間來確定的,一般為秒級、百毫秒級直至毫秒級,甚至有的要低於100微秒。
(5)可靠性。分時系統要求系統可靠,相比之下,實時系統則要求系統高度可靠。因為任何差錯都可能帶來巨大的經濟損失甚至無法預料的災難性後果。因此,在實時系統中,採取了多級容錯措施來保證系統的安全及數據的安全。
[2]
- 參考資料
-
- 1. 實時操作系統 .TechTarget數據中心[引用日期2015-07-21]
- 2. 湯小丹,梁紅兵. 計算機操作系統. 西安電子科技大學出版社,2007.
- 3. 處理機調度算法的研究 .知網[引用日期2017-03-22]