千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > 嵌入式開發(fā):選擇實(shí)時(shí)操作系統(tǒng)(RTOS)的三個(gè)關(guān)鍵因素

嵌入式開發(fā):選擇實(shí)時(shí)操作系統(tǒng)(RTOS)的三個(gè)關(guān)鍵因素

來源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-12-10 15:42:32 1702194152

在嵌入式開發(fā)中,實(shí)時(shí)操作系統(tǒng)(RTOSes)在20世紀(jì)90年代普及,為各種嵌入式和實(shí)時(shí)產(chǎn)品提供了技術(shù)優(yōu)勢(shì)。一些最重要的好處包括快速和小的代碼占用、確定性功能、廣泛的半導(dǎo)體支持、結(jié)構(gòu)化設(shè)計(jì)方法以及通過封裝的軟件重用。

RTOS通常具有微內(nèi)核設(shè)計(jì),其中調(diào)度器起著核心作用。建立在一個(gè)簡(jiǎn)單而有效的實(shí)時(shí)調(diào)度器上,可以實(shí)現(xiàn)系統(tǒng)設(shè)計(jì)的精確性。生產(chǎn)系統(tǒng)的決策因素超出了技術(shù)基礎(chǔ)。在選擇RTOS時(shí),產(chǎn)品團(tuán)隊(duì)必須考慮業(yè)務(wù)、軟件工程和長(zhǎng)期可行性。

1.選擇RTOS時(shí)的業(yè)務(wù)考慮

在選擇RTOS時(shí),許可模型、源代碼修改限制和行業(yè)認(rèn)證是首要的業(yè)務(wù)考慮因素,這三個(gè)商業(yè)考慮因素相互影響。當(dāng)產(chǎn)品要求具有可修改性時(shí),許可和認(rèn)證的選擇可能會(huì)受到直接影響。

許可模式包括開源、商業(yè)和混合版本。一些常用的開源許可證是MIT-0、ApacheLicense2.0和EclipsePublicLicense。由于許可模型和源代碼可用性,可修改的源代碼限制可能會(huì)影響創(chuàng)新過程。例如,創(chuàng)新可能受到限制,新的硬件功能或軟件創(chuàng)新需要內(nèi)核級(jí)別的更改。

開源許可允許修改內(nèi)核,開源項(xiàng)目強(qiáng)烈鼓勵(lì)修改貢獻(xiàn),這樣技術(shù)社區(qū)就可以從進(jìn)步中受益。商業(yè)許可模式往往限制了修改的可能性。例如,如果必須對(duì)內(nèi)核源代碼進(jìn)行調(diào)整,那么商業(yè)實(shí)體將接受并優(yōu)先考慮,甚至可能拒絕修改的支持請(qǐng)求。如果商業(yè)RTOS公司破產(chǎn),關(guān)閉業(yè)務(wù),并且源代碼沒有托管,那么修改可能是不可能的。

然而,如果預(yù)計(jì)不會(huì)進(jìn)行內(nèi)核修改,則嵌入式開發(fā)人員可以在設(shè)計(jì)中使用諸如高完整性系統(tǒng)的SAFERTOS之類的選項(xiàng)。另一方面,一些開源RTOS現(xiàn)在提供長(zhǎng)期支持(LTS),具有鎖定版本配置、維護(hù)承諾和使用全球平臺(tái)SESIP等程序的預(yù)認(rèn)證。

2.選擇RTOS的軟件工程考慮

開發(fā)人員生產(chǎn)力是許多軟件工程團(tuán)隊(duì)的主要關(guān)鍵性能指標(biāo),嵌入式系統(tǒng)軟件工程也不例外。交付結(jié)果、優(yōu)化軟件性能和快速解決問題是一些最重要的指標(biāo)。使用RTOS可以幫助構(gòu)建良好的封裝、重用和維護(hù)實(shí)踐。廣泛的生態(tài)系統(tǒng)支持建立在這些基礎(chǔ)之上。開源或商業(yè)庫、編譯器和代碼優(yōu)化工具以及調(diào)試和問題解決工具的可用性可以從根本上提高工程團(tuán)隊(duì)的性能。

RTOS項(xiàng)目和供應(yīng)商通常與提供軟件庫的開源和商業(yè)實(shí)體有關(guān)系。一個(gè)龐大的軟件庫目錄提供了對(duì)技術(shù)和技術(shù)的更快訪問。軟件庫的可用性和庫與內(nèi)核良好配合的保證降低了軟件工程風(fēng)險(xiǎn)。

內(nèi)核和庫通常作為RTOSLTS分發(fā)版提供。同樣,Espressif、Renesas、STMicroelectronics和Xilinx(現(xiàn)為AMD的一部分)等半導(dǎo)體制造商通過各自的軟件開發(fā)套件提供RTOS。軟件分發(fā)并不排除使用非分發(fā)軟件庫。相反,軟件發(fā)行版通過正式的集成測(cè)試提供了經(jīng)過驗(yàn)證的組合。

編譯器和源代碼優(yōu)化支持可能是嵌入式系統(tǒng)性能和內(nèi)存管理優(yōu)化的關(guān)鍵因素。ArmCortex-M等普及的嵌入式系統(tǒng)架構(gòu)享有類似的普及編譯器和源代碼優(yōu)化生態(tài)系統(tǒng),并提供開源和商業(yè)工具選擇。開源工具鏈GNU編譯器集合(GCC)經(jīng)受住了時(shí)間的考驗(yàn),在許多供應(yīng)商的軟件開發(fā)工具包中經(jīng)常被認(rèn)為是事實(shí)上的標(biāo)準(zhǔn)。然而,IAR等商業(yè)工具供應(yīng)商提供了額外的保證,并且通常經(jīng)過安全認(rèn)證,這降低了設(shè)備軟件安全認(rèn)證的風(fēng)險(xiǎn)。一般來說,嵌入式開發(fā)人員將RTOS的選擇限制在支持最廣泛使用和檢查的編譯器及相關(guān)工具鏈的RTOS是一個(gè)關(guān)鍵的決策因素。

調(diào)試和問題解決工具的生態(tài)系統(tǒng)強(qiáng)度是RTOS具有生產(chǎn)級(jí)支持的主要指標(biāo)。通常,半導(dǎo)體制造商提供調(diào)試器系統(tǒng)作為硬件開發(fā)板的組件。然而,在大多數(shù)情況下,這些軟件級(jí)調(diào)試器的速度、跟蹤和處理開銷可能會(huì)導(dǎo)致誤報(bào)和誤報(bào)。

IAR和SEGGER等商用調(diào)試器通過相關(guān)的工作站RTOS感知軟件工具提供出色的調(diào)試器支持,可加快RTOS問題的解決。商業(yè)工作站軟件,如與商業(yè)調(diào)試器配對(duì)的PercepioTracealyzer,可以為最嚴(yán)峻的開發(fā)挑戰(zhàn)提供更深入的見解。

3.選擇RTOS的長(zhǎng)期可行性考慮

最后但同樣重要的考慮因素是通過支撐結(jié)構(gòu)的長(zhǎng)期可行性、普遍使用和耐久性。這三個(gè)特性為物聯(lián)網(wǎng)建設(shè)者提供了他們選擇的RTOS在未來可用的保證,這在構(gòu)建具有中長(zhǎng)期使用壽命的產(chǎn)品時(shí)是關(guān)鍵。具有這些壽命的產(chǎn)品無疑需要維護(hù),包括功能增強(qiáng)和不斷變化的安全挑戰(zhàn)。知道RTOS具有經(jīng)過驗(yàn)證的歷史可以降低產(chǎn)品交付和維護(hù)風(fēng)險(xiǎn)。

當(dāng)工程問題解決具有挑戰(zhàn)性時(shí),RTOS社區(qū)和商業(yè)支持提供了解決問題的途徑。社區(qū)支持和商業(yè)支持(包括提供長(zhǎng)期支持)是相輔相成的。從一般目的和小眾角度來看,在嵌入式開發(fā)中,社區(qū)支持效果良好。

鑒于沒有與社區(qū)支持達(dá)成服務(wù)級(jí)別協(xié)議(SLA)以確保最終問題解決,響應(yīng)時(shí)間可能會(huì)有很大差異,但通常會(huì)產(chǎn)生大量軼事反饋。商業(yè)支持通常有一個(gè)相關(guān)的SLA,但知識(shí)范圍可能受到更大的限制。當(dāng)社區(qū)支持與商業(yè)支持相結(jié)合時(shí),問題解決通常效果最佳。

RTOS的普遍使用是用戶基礎(chǔ)保持率的有力指標(biāo),這標(biāo)志著RTOS的健康性和良好的設(shè)計(jì)。經(jīng)過時(shí)間的考驗(yàn),合理的設(shè)計(jì)使不可避免但優(yōu)雅的技術(shù)進(jìn)步成為可能。盡管RTOS項(xiàng)目可能會(huì)提供用戶基數(shù),但演示在生產(chǎn)系統(tǒng)中的普遍使用通常很有挑戰(zhàn)性,但通過發(fā)布和驗(yàn)證的用例進(jìn)行了演示。在整個(gè)RTOS歷史中對(duì)用例速度的全面檢查提供了RTOS在商業(yè)上被采用的情況。

將各種因素結(jié)合在一起

許可模型和源代碼修改約束會(huì)影響產(chǎn)品適應(yīng)不斷變化的趨勢(shì)和技術(shù)的能力。開發(fā)人員工具生態(tài)系統(tǒng)支持直接影響代碼優(yōu)化、調(diào)試和易用性,這些都會(huì)增加產(chǎn)品開發(fā)成本。長(zhǎng)壽命和經(jīng)驗(yàn)證的使用通常強(qiáng)調(diào)社區(qū)和商業(yè)支持、工程知識(shí)的概率,以及RTOS如何適應(yīng)不斷變化的技術(shù)環(huán)境。嵌入式開發(fā)人員下次在選擇RTOS時(shí),應(yīng)用這些關(guān)鍵考慮因素來提高選擇RTOS的信任度。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
嵌入式培訓(xùn)課程:探索技術(shù)的無限可能

近年來,嵌入式系統(tǒng)的廣泛應(yīng)用已經(jīng)深刻改變了我們的生活方式。從智能手機(jī)到智能家居,從汽車到醫(yī)療設(shè)備,嵌入式技術(shù)已經(jīng)成為現(xiàn)代社會(huì)不可或缺的...詳情>>

2023-12-12 11:02:35
嵌入式開發(fā):Linux網(wǎng)絡(luò)編程的探索與實(shí)踐

在當(dāng)今的科技世界中,嵌入式系統(tǒng)已經(jīng)滲透到我們生活的方方面面,從智能手機(jī)、電視、汽車到醫(yī)療設(shè)備等。而在這些設(shè)備中,Linux網(wǎng)絡(luò)編程扮演著至...詳情>>

2023-12-12 09:55:55
Java游戲項(xiàng)目開發(fā):技術(shù)概覽與實(shí)踐

在數(shù)字化世界中,游戲已經(jīng)成為了人們休閑娛樂的重要方式之一。隨著科技的不斷進(jìn)步,游戲開發(fā)行業(yè)也在不斷發(fā)展,而Java作為一門廣泛使用的編程語...詳情>>

2023-12-12 08:49:15
Web前端的基石:HTML

在數(shù)字化的時(shí)代,網(wǎng)頁設(shè)計(jì)已經(jīng)成為了一個(gè)重要的領(lǐng)域。而在這個(gè)領(lǐng)域中,HTML(HyperTextMarkupLanguage)無疑是最基礎(chǔ)、最重要的一環(huán)。它是構(gòu)建...詳情>>

2023-12-12 08:15:55
嵌入式開發(fā):內(nèi)存分配的方式

嵌入式系統(tǒng)開發(fā)中,內(nèi)存分配是一個(gè)至關(guān)重要的話題。嵌入式系統(tǒng)通常具有有限的內(nèi)存資源,因此合理的內(nèi)存分配方式對(duì)系統(tǒng)的性能和穩(wěn)定性至關(guān)重要。...詳情>>

2023-12-12 06:35:55
快速通道