演講嘉賓 | 陸 道
回顧整理 | 廖 濤
排版校對(duì) | 宋夕明

嘉賓介紹
OS內(nèi)核及視窗分論壇
陸道,誠邁科技(南京)股份有限公司資深研發(fā)工程師。
正文內(nèi)容
實(shí)時(shí)性是操作系統(tǒng)內(nèi)核在特定應(yīng)用場景中不可或缺的特性,它通過多種技術(shù)手段確保系統(tǒng)在規(guī)定時(shí)間內(nèi)完成任務(wù),從而滿足高可靠性、高響應(yīng)速度的需求。OpenHarmony的實(shí)時(shí)性是如何實(shí)現(xiàn)的,又有哪些進(jìn)一步的優(yōu)化方案?誠邁科技(南京)股份有限公司資深研發(fā)工程師陸道在第三屆OpenHarmony技術(shù)大會(huì)上進(jìn)行了精彩分享。

在當(dāng)今數(shù)字化與智能化飛速發(fā)展的時(shí)代,操作系統(tǒng)內(nèi)核的實(shí)時(shí)性已經(jīng)成為眾多關(guān)鍵應(yīng)用場景的核心需求:(1)在物聯(lián)網(wǎng)領(lǐng)域,實(shí)時(shí)性是確保設(shè)備高效運(yùn)行和數(shù)據(jù)準(zhǔn)確傳輸?shù)年P(guān)鍵。例如,智能家居系統(tǒng)需要實(shí)時(shí)響應(yīng)各種傳感器數(shù)據(jù),以便實(shí)現(xiàn)對(duì)家居設(shè)備的精準(zhǔn)監(jiān)控和控制;(2)在工業(yè)自動(dòng)化場景中,實(shí)時(shí)性關(guān)乎生產(chǎn)效率和設(shè)備安全。例如,電力系統(tǒng)需要在10毫秒內(nèi)完成數(shù)據(jù)采集,而工業(yè)控制中的PLC需要在固定時(shí)間內(nèi)完成動(dòng)作以滿足協(xié)作要求;(3)智能交通系統(tǒng)同樣對(duì)實(shí)時(shí)性提出了極高的要求,如實(shí)時(shí)監(jiān)測道路交通狀況,優(yōu)化交通流量分配等。然而,實(shí)現(xiàn)高效的實(shí)時(shí)性并非易事,其需要操作系統(tǒng)內(nèi)核在任務(wù)調(diào)度、中斷處理以及資源管理等多個(gè)層面進(jìn)行深度優(yōu)化,以確保系統(tǒng)能夠在極短的時(shí)間內(nèi)做出響應(yīng)。

如何評(píng)估一個(gè)內(nèi)核的實(shí)時(shí)性是否高效?可以從以下幾個(gè)實(shí)時(shí)性衡量指標(biāo)進(jìn)一步了解:
對(duì)于內(nèi)核實(shí)時(shí)性而言,主要的衡量指標(biāo)包括中斷響應(yīng)時(shí)間、任務(wù)切換時(shí)間、任務(wù)搶占時(shí)間以及吞吐量等。其中,中斷響應(yīng)時(shí)間指從系統(tǒng)接收到中斷信號(hào)到開始執(zhí)行中斷服務(wù)例程(ISR)的時(shí)間間隔。在實(shí)時(shí)系統(tǒng)中,快速的中斷響應(yīng)時(shí)間是至關(guān)重要的,因?yàn)樗苯佑绊懴到y(tǒng)對(duì)突發(fā)事件的處理速度;而任務(wù)切換時(shí)間指從一個(gè)任務(wù)被掛起到另一個(gè)任務(wù)被調(diào)度并開始執(zhí)行的時(shí)間間隔。在實(shí)時(shí)系統(tǒng)中,任務(wù)切換時(shí)間的長短會(huì)影響系統(tǒng)對(duì)多個(gè)任務(wù)的處理效率,尤其是在任務(wù)之間需要頻繁切換的場景中。
對(duì)于任務(wù)實(shí)時(shí)性而言,主要的衡量指標(biāo)包括任務(wù)的最短時(shí)延、最長時(shí)延以及平均時(shí)延等。其中,最短時(shí)延是指系統(tǒng)在最佳情況下,從事件發(fā)生到做出響應(yīng)的最短時(shí)間。其反映了系統(tǒng)在理想狀態(tài)下的響應(yīng)速度;最長時(shí)延是指系統(tǒng)在最壞情況下,從事件發(fā)生到做出響應(yīng)的最長時(shí)間。其反映了系統(tǒng)在極端條件下的響應(yīng)速度,對(duì)于硬實(shí)時(shí)系統(tǒng)來說,最長時(shí)延必須滿足任務(wù)的截止時(shí)間要求;平均時(shí)延是指系統(tǒng)在一段時(shí)間內(nèi),所有任務(wù)時(shí)延的平均值。它反映了系統(tǒng)在正常運(yùn)行情況下的平均響應(yīng)速度。
此外,影響內(nèi)核的實(shí)時(shí)性因數(shù)包括時(shí)鐘節(jié)拍tick、調(diào)度算法、資源等待時(shí)間以及多任務(wù)等。
OpenHarmony的實(shí)時(shí)性優(yōu)化策略主要如下:
一、內(nèi)核實(shí)時(shí)性補(bǔ)丁。該方案通過多維度的優(yōu)化措施,從內(nèi)核調(diào)度、中斷處理、內(nèi)存管理到應(yīng)用層優(yōu)化,全面提升系統(tǒng)的實(shí)時(shí)性能。這些優(yōu)化措施不僅提升了系統(tǒng)的響應(yīng)速度和穩(wěn)定性,還為開發(fā)者提供了靈活的定制化方案,滿足不同場景下的實(shí)時(shí)性需求。其優(yōu)點(diǎn)包括開發(fā)效率高,工具多,優(yōu)化手段多,且提升了任務(wù)切換時(shí)間以及中斷響應(yīng)時(shí)間。但是,由于任務(wù)的多樣化以及復(fù)雜性,僅通過內(nèi)核實(shí)時(shí)性補(bǔ)丁的方法,無法保證任務(wù)的最大時(shí)延,且任務(wù)的安全性也無法保障。
二、虛擬方案(Jailhouse)。Jailhouse是一種輕量級(jí)的硬件輔助虛擬化技術(shù),旨在允許多個(gè)操作系統(tǒng)在同一硬件平臺(tái)上并行運(yùn)行,同時(shí)保證資源隔離和實(shí)時(shí)性。在OpenHarmony中,Jailhouse被用于實(shí)現(xiàn)RTOS的虛擬化,支持高效、低延遲的運(yùn)行環(huán)境,適用于嵌入式和IoT設(shè)備。Jailhouse通過硬件虛擬化擴(kuò)展將硬件資源劃分為多個(gè)獨(dú)立的“單元”(Cells),每個(gè)單元可以運(yùn)行一個(gè)操作系統(tǒng)。該方案利用了Jailhouse虛擬運(yùn)行freertos系統(tǒng),提升了任務(wù)的平均時(shí)延,能夠最大限度的保障任務(wù)的實(shí)行性。但同時(shí),因?yàn)槠湫枰獌商组_發(fā)環(huán)境,在開發(fā)調(diào)試以及實(shí)時(shí)系統(tǒng)跟主系統(tǒng)的通訊上存在一定的挑戰(zhàn)。
三、AMP(基于核間共享內(nèi)存的異構(gòu)核間通信框架)。AMP是一種多核架構(gòu),允許多個(gè)異構(gòu)處理器核心運(yùn)行不同的操作系統(tǒng)或應(yīng)用程序。OpenHarmony的AMP框架基于OpenAMP(Open Asymmetric Multi-Processing)實(shí)現(xiàn),OpenAMP是一個(gè)開源的異構(gòu)多處理框架,提供了一套完整的軟件組件,用于構(gòu)建和部署AMP系統(tǒng)。其核心組件包括Remoteproc、RPMsg以及VirtIO等。通過OpenAMP框架,OpenHarmony能夠高效地管理異構(gòu)多核系統(tǒng),實(shí)現(xiàn)資源隔離和任務(wù)分配,滿足復(fù)雜應(yīng)用場景的需求。但是,跟虛擬方案Jailhouse類似,AMP也同樣需要兩套開發(fā)環(huán)境,在開發(fā)、調(diào)試以及優(yōu)化上均存在一定挑戰(zhàn)。
在分析了上述OpenHarmony的實(shí)時(shí)性優(yōu)化策略后,作者本人以輕量級(jí)的實(shí)時(shí)操作系統(tǒng)內(nèi)核KFreeRtos為例,進(jìn)一步探討了如何提升內(nèi)核的實(shí)時(shí)性能。
KFreeRtos是一個(gè)輕量級(jí)的實(shí)時(shí)操作系統(tǒng)內(nèi)核,基于FreeRTOS開發(fā)。它繼承了FreeRTOS的核心特性,如任務(wù)管理、信號(hào)量、消息隊(duì)列和事件標(biāo)志組等功能,同時(shí)進(jìn)行了優(yōu)化以適應(yīng)特定的硬件平臺(tái)。KFreeRtos不僅提供了多種實(shí)時(shí)調(diào)度算法,還提供了實(shí)時(shí)的內(nèi)存管理、網(wǎng)絡(luò)管理、安全管理、日志管理以及線程管理。

在OpenHarmony上,開發(fā)者可以通過linux內(nèi)核驅(qū)動(dòng)的開發(fā)方式,利用KFreeRtos提供的實(shí)時(shí)性API接口,構(gòu)建出一套在OpenHarmony內(nèi)核上運(yùn)行的實(shí)時(shí)解決方案。主要針對(duì)傳統(tǒng)實(shí)時(shí)操作系統(tǒng)不完善的功能,例如:內(nèi)存,網(wǎng)絡(luò),日志管理等方面,利用linux強(qiáng)大的內(nèi)核功能api,為開發(fā)者提供具備有實(shí)時(shí)操作系統(tǒng)的特性并且具備低時(shí)延,高性能,高效率開發(fā),多平臺(tái)部署等開發(fā)框架。
KFreeRtos架構(gòu)的引入,為OpenHarmony在內(nèi)核實(shí)時(shí)性領(lǐng)域的探索提供了新的思路和解決方案。未來,隨著嵌入式設(shè)備算力的不斷增強(qiáng)和AI模型的進(jìn)一步優(yōu)化,將會(huì)有更多AI大模型能夠部署到邊緣設(shè)備上。這種結(jié)合不僅能夠滿足實(shí)時(shí)性需求,還能實(shí)現(xiàn)離線學(xué)習(xí)和自適應(yīng)能力。同時(shí),內(nèi)核的實(shí)時(shí)性優(yōu)化也將會(huì)涌現(xiàn)更多創(chuàng)新策略。
-
內(nèi)核
+關(guān)注
關(guān)注
4文章
1468瀏覽量
42875 -
OpenHarmony
+關(guān)注
關(guān)注
33文章
3952瀏覽量
21102
發(fā)布評(píng)論請(qǐng)先 登錄
帝奧微第三屆經(jīng)銷商大會(huì)圓滿舉行
第三屆開放原子大賽首批賽項(xiàng)頒獎(jiǎng)儀式圓滿落幕
Elektrobit亮相第三屆英飛凌汽車創(chuàng)新峰會(huì)
第三屆引望車聯(lián)網(wǎng)安全大會(huì)圓滿結(jié)束
中興通訊第三屆學(xué)習(xí)發(fā)展大會(huì)圓滿收官
國際星閃聯(lián)盟亮相第三屆電子紙產(chǎn)業(yè)創(chuàng)新大會(huì)
第三屆開放原子大賽正式啟動(dòng)
奇異摩爾出席第三屆芯粒開發(fā)者大會(huì)AI芯片與系統(tǒng)分論壇
行芯科技亮相第三屆芯粒開發(fā)者大會(huì)
第三屆大會(huì)回顧第6期 | HarmonyOS NEXT原生智能,助力應(yīng)用低成本生而智能
第三屆大會(huì)回顧第5期 | OpenHarmony內(nèi)核實(shí)時(shí)性探索
評(píng)論