• 招生咨詢熱線:4008-569-579 
  • 手機(jī)版
    用手機(jī)掃描二維碼直達(dá)商品手機(jī)版
招生咨詢熱線
4008-569-579
機(jī)構(gòu)主頁(yè) > 培訓(xùn)資料 > 嵌入式開發(fā):實(shí)時(shí)操作系統(tǒng)(RTOS)介紹
機(jī)構(gòu)主頁(yè) > 培訓(xùn)資料>嵌入式開發(fā):實(shí)時(shí)操作系統(tǒng)(RTOS)介紹

嵌入式開發(fā):實(shí)時(shí)操作系統(tǒng)(RTOS)介紹

來源:廣州達(dá)內(nèi)教育        時(shí)間:2023-05-30        熱度:45℃        返回列表

當(dāng)今嵌入式系統(tǒng)中最重要的組件之一是RTOS”或“實(shí)時(shí)操作系統(tǒng)”,它負(fù)責(zé)從調(diào)度任務(wù)到啟用CPython等高級(jí)語(yǔ)言的所有工作。那么,是什么讓RTOS成功了,為什么嵌入式開發(fā)人員要關(guān)心它呢?

 

RTOSGPOS

 

通用操作系統(tǒng)(GPOS)。通用操作系統(tǒng)中的“通用”意味著操作系統(tǒng)必須實(shí)現(xiàn)許多目標(biāo),如提供良好的最終用戶體驗(yàn)、支持不同類型的程序和硬件以及提供定制選項(xiàng)等功能。

 

GPOS傾向于與處理器協(xié)同工作,其中每個(gè)內(nèi)核每次運(yùn)行一個(gè)執(zhí)行線程。在這里,操作系統(tǒng)的調(diào)度器決定運(yùn)行哪個(gè)程序以及何時(shí)運(yùn)行,并在每個(gè)程序之間快速切換。這導(dǎo)致了同時(shí)執(zhí)行的錯(cuò)覺,并希望提供良好的整體用戶體驗(yàn)。除此之外,GPOS還可以提供其他功能,如復(fù)雜的圖形用戶界面、復(fù)雜的文件I/O系統(tǒng)等。

 

另一方面,RTOS被設(shè)計(jì)為提供可預(yù)測(cè)的執(zhí)行模式,并且在處理必須符合有時(shí)間限制的系統(tǒng)的時(shí)間限制時(shí)(即,以某一頻率完成處理,否則整個(gè)系統(tǒng)將失?。┦褂?/span>RTOS。因此,與GPOS相比,RTOS通常重量輕、體積小,通常只提供在特定硬件上運(yùn)行特定類型應(yīng)用程序所需的功能。在某些情況下,嵌入式開發(fā)人員可能會(huì)修改現(xiàn)有的RTOS,將其縮減為僅特定應(yīng)用程序所需的功能,或自定義其功能或性能特征。

 

實(shí)時(shí)操作系統(tǒng)可分為:

軟的:RTOS通??梢詽M足時(shí)間限制的最后期限;搶占期通常在幾毫秒內(nèi)。

牢固的:RTOS有一定的時(shí)間限制,這些限制并不嚴(yán)格,可能會(huì)產(chǎn)生不希望的但可接受的效果。

硬的:RTOS可以決定性地滿足時(shí)間期限。硬RTOS通常適用于涉及任務(wù)關(guān)鍵型應(yīng)用程序(如機(jī)器人和無人機(jī))的用例。硬RTOS的搶占期通常小于幾微秒。

 

GPOS一樣,RTOS提供了您期望從OS中獲得的一些或所有基本功能,如線程同步、跨界通信(例如,命名管道)、計(jì)時(shí)器、內(nèi)存管理等。然而,RTOS努力以符合底層系統(tǒng)和目標(biāo)應(yīng)用程序的時(shí)間限制要求的方式提供此功能。



滿足截止日期

在允許RTOS滿足這些時(shí)間約束的眾多因素中,任務(wù)調(diào)度和中斷值得特別一提。

嵌入式開發(fā)人員使用GPOS,調(diào)度以通常實(shí)現(xiàn)高吞吐量(即單位時(shí)間內(nèi)完成執(zhí)行的進(jìn)程總數(shù))的方式來處理。但是,這可能意味著高優(yōu)先級(jí)流程的執(zhí)行將被延遲,以便完成多個(gè)低優(yōu)先級(jí)任務(wù)。另一方面,RTOS的價(jià)值是根據(jù)它的反應(yīng)速度或可預(yù)測(cè)性來衡量的,而不是根據(jù)它在給定時(shí)間內(nèi)完成的工作量來衡量的。

 

RTOS中,調(diào)度通常基于優(yōu)先級(jí)。大多數(shù)RTOS使用基于優(yōu)先級(jí)的搶先任務(wù)調(diào)度方法。這里,高優(yōu)先級(jí)進(jìn)程將在低優(yōu)先級(jí)進(jìn)程之上執(zhí)行。使用GPOS時(shí),隨著需要調(diào)度更多線程,延遲會(huì)不斷累積。RTOS沒有這樣的問題,因?yàn)樗羞M(jìn)程和線程的延遲都是有時(shí)間限制的。RTOS還為您提供了一種確保共享系統(tǒng)資源不會(huì)被并發(fā)訪問的方法。

 

在嵌入式開發(fā)中,RTOS的內(nèi)核是可搶占的,而GPOS的內(nèi)核是不可搶占的,這在優(yōu)先服務(wù)高優(yōu)先級(jí)進(jìn)程和線程時(shí)非常重要。如果沒有可搶占的內(nèi)核,來自內(nèi)核內(nèi)部的請(qǐng)求,比如來自驅(qū)動(dòng)程序或系統(tǒng)服務(wù)的請(qǐng)求,將會(huì)覆蓋所有其他進(jìn)程和線程。使用RTOS,只有非常重要的服務(wù)請(qǐng)求被保存在內(nèi)核調(diào)用中,所有其他服務(wù)請(qǐng)求都被視為外部進(jìn)程和線程。基于內(nèi)核的服務(wù)請(qǐng)求與RTOS的有限延遲相關(guān)聯(lián),以保持快速和可預(yù)測(cè)的響應(yīng)。

 

結(jié)論

RTOS是確保嵌入式設(shè)備(如物聯(lián)網(wǎng)、機(jī)器人和移動(dòng)設(shè)備)可預(yù)測(cè)和及時(shí)執(zhí)行的關(guān)鍵組件。因此,它的目標(biāo)是為時(shí)間受限的應(yīng)用程序提供設(shè)施,這些應(yīng)用程序必須在特定的時(shí)間框架內(nèi)執(zhí)行,同時(shí)最小化中斷和切換線程導(dǎo)致的延遲(如延遲)。

 

正如我們所看到的,在嵌入式開發(fā)中,有商業(yè)、開源和專有的RTOS可以用于嵌入式系統(tǒng),它們提供了多種選項(xiàng)和功能,如可定制性、跨平臺(tái)或?qū)S弥С忠约柏S富的SDK支持。

電話咨詢

電話咨詢

咨詢電話:
4008-569-579
回到頂部

回到頂部