【操作系統(tǒng)】什么是RTOS?RTOS與普通操作系統(tǒng)的區(qū)別?
Real-Time Operating System實時操作系統(tǒng)
本文引用地址:http://butianyuan.cn/article/202210/439152.htm實時操作系統(tǒng)(RTOS)是指當(dāng)外界事件或數(shù)據(jù)產(chǎn)生時,能夠接受并以足夠快的速度予以處理,其處理的結(jié)果又能在規(guī)定的時間之內(nèi)來控制生產(chǎn)過程或?qū)μ幚?a class="contentlabel" href="http://butianyuan.cn/news/listbylabel/label/系統(tǒng)">系統(tǒng)做出快速響應(yīng),調(diào)度一切可利用的資源完成實時任務(wù),并控制所有實時任務(wù)協(xié)調(diào)一致運行的操作系統(tǒng)。
實時系統(tǒng)的正確性不僅依賴系統(tǒng)計算的邏輯結(jié)果,還依賴于產(chǎn)生這個結(jié)果的時間。
換句話說,系統(tǒng)設(shè)計時所有的事件都可以在指定的時間內(nèi)得到響應(yīng)(時間確定性)。
如果系統(tǒng)關(guān)鍵任務(wù)響應(yīng)時間都滿足這條標(biāo)準(zhǔn),則這樣的實時系統(tǒng)可稱為硬實時系統(tǒng)。
提供及時響應(yīng)和高可靠性是RTOS的主要特點。
實時操作系統(tǒng)和普通操作系統(tǒng)的區(qū)別?
與通用的分時操作系統(tǒng)不同(Linux、Windows、Unix等),實時操作系統(tǒng)在航空航天、軍事與工業(yè)自動化領(lǐng)域更具優(yōu)勢,首先實時操作系統(tǒng)有著分時操作系統(tǒng)無法比擬的響應(yīng)時間確定性,實時操作系統(tǒng)從調(diào)度器算法,到中斷響應(yīng)系統(tǒng),到消息傳遞機(jī)制等所有的核心算法時間復(fù)雜度都是O(1),它表示系統(tǒng)的響應(yīng)速度不依賴于系統(tǒng)任務(wù)的多少,負(fù)載的輕重,而只依賴于優(yōu)先級的設(shè)計,就算當(dāng)前系統(tǒng)滿負(fù)荷運行,優(yōu)先級高的事件發(fā)生后,系統(tǒng)還將會在指定的時間內(nèi)立即響應(yīng)事件。由于這種設(shè)計理念和算法上的優(yōu)勢,根據(jù)相關(guān)數(shù)學(xué)理論,分時系統(tǒng)在負(fù)載嚴(yán)重的情況下是不能通過提升處理器性能來獲得確定的響應(yīng)時間。
這種算法上的優(yōu)勢是通用分時系統(tǒng)所難以比擬的,而通用分時系統(tǒng)則更多考慮的是系統(tǒng)易用性、平衡性和數(shù)據(jù)吞吐率。
實時系統(tǒng)與分時系統(tǒng)設(shè)計思想和應(yīng)用領(lǐng)域完全不同,不存在替代關(guān)系,而是一種互補(bǔ)關(guān)系。
我們常用的Windows XP windows 7/8/10,等都是分時系統(tǒng),它打開文件,程序,不存在時間的確定性,而且快2秒,慢5秒不會對我們的生活和工作造成影響;
實時操作系統(tǒng)大部分是運行在芯片的底層,比如美國的Vx Works,RT-linux,我們國產(chǎn)的SylixOS,這些大型的實時操作系統(tǒng)實時的控制著最底層的應(yīng)用,時間確定的執(zhí)行著設(shè)定任務(wù),例如火箭發(fā)射中定是分離,調(diào)整軌道等;
什么是硬實時?什么是軟實時?
硬實時與軟實時之間最關(guān)鍵的差別在于,軟實時只能提供統(tǒng)計意義上的實時。例如,有的應(yīng)用要求系統(tǒng)在95%的情況下都會確保在規(guī)定的時間內(nèi)完成某個動作,而不一定要求100%。
在許多情況下,這樣的“軟性”正確率已經(jīng)可以達(dá)到用戶期望的水平。比如,用戶在操作DVD播放機(jī)時,只要98%的情況都能正常播放,用戶可能就滿意了;
而發(fā)射衛(wèi)星、控制核反應(yīng)堆的應(yīng)用系統(tǒng),這些系統(tǒng)的實時性必須達(dá)到100%,是絕對不允許出現(xiàn)意外。
硬實時系統(tǒng)有一個剛性的、不可改變的時間限制,它不允許任何超出時限的錯誤。超時錯誤會帶來損害甚至導(dǎo)致系統(tǒng)失敗、或者導(dǎo)致系統(tǒng)不能實現(xiàn)它的預(yù)期目標(biāo)。
軟實時系統(tǒng)的時限是一個柔性靈活的,它可以容忍偶然的超時錯誤。
實時操作系統(tǒng)就是在規(guī)定的時間內(nèi)必須正確地完成操作,完成操作的時間有操作系統(tǒng)的因素,也有用戶軟件的因素。
非實時操作系統(tǒng)指操作系統(tǒng)無法保證哪怕是最高優(yōu)先級任務(wù)開始執(zhí)行的最后時限。
只有“非屏蔽中斷+執(zhí)行時間確定的ISR”才可以稱為硬實時系統(tǒng),因為這個系統(tǒng)明確告訴我什么時候完成操作。
著名的硬實時系統(tǒng)包括:
VxWorks,SylixOS,RTlinux,ThreadX,QNX,Nucleus等.
如何實現(xiàn)實時系統(tǒng)?
實時系統(tǒng)的調(diào)度策略?
實時系統(tǒng)的中斷處理?
主要是內(nèi)核調(diào)度策略和中斷優(yōu)先級。
實時操作系統(tǒng)從調(diào)度器算法,到中斷響應(yīng)系統(tǒng),到消息傳遞機(jī)制等所有的核心算法時間復(fù)雜度都是O(1),它表示系統(tǒng)的響應(yīng)速度不依賴于系統(tǒng)任務(wù)的多少,負(fù)載的輕重,而只依賴于優(yōu)先級的設(shè)計,就算當(dāng)前系統(tǒng)滿負(fù)荷運行,優(yōu)先級高的事件發(fā)生后,系統(tǒng)還將會在指定的時間內(nèi)立即響應(yīng)事件。由于這種設(shè)計理念和算法上的優(yōu)勢,根據(jù)相關(guān)數(shù)學(xué)理論,分時系統(tǒng)在負(fù)載嚴(yán)重的情況下是不能通過提升處理器性能來獲得確定的響應(yīng)時間。
參考:https://www.xuexila.com/diannao/xitong/zonghe/3631068.html
————————————————
版權(quán)聲明:本文為CSDN博主「Evan_ZGYF丶」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/Ivan804638781/article/details/114239343
評論