實時操作系統(RTOS)在各類工業場景中發揮著中樞神經系統的關鍵作用,是數字化工業的重要基礎。當前,全球大部分工業實時操作系統市場被國外廠商占據,圍繞主流RTOS產品內核提供了完備的上下游軟件配套,并以嵌入式形式開展了大量硬件捆綁,形成錨定。本文梳理了工業實時操作系統軟件體系中關鍵技術及發展趨勢,為國產系統加速發展提供參考。
一、RTOS概述
RTOS是面向工業應用的實時操作系統,廣泛應用于工業自動化、軍事、電力、新能源等工業領域關鍵場景中,通常對處理器性能沒有較高要求,對資源的需求也相對有限,但在操作系統實時性、并行性、可靠性、功耗等方面的要求較為嚴苛,其處理器芯片的更新換代周期通常為幾年到幾十年。在工業產品或工業制造流程中,實時操作系統通常以嵌入式形態作為裝備或生產系統的“大腦”,對提高裝備與生產過程的智能化,滿足工業生產對于高效、可靠、實時、綠色等方面的要求具有顯著作用。在實際應用過程中,RTOS并非單一、封閉的軟件工具,而是與硬件、協議、應用軟件等廣泛連接和協同,形成縱橫連通的生態網絡。現代RTOS應重點考慮工業互聯網對泛在感知、互聯、智能環境下的人機物融合發展趨勢所帶來的新挑戰,例如在云邊端協同環境中的嵌入式軟硬件耦合、資源受限、硬件異構、多類別或無操作系統、通信方式各異等情況下,如何實現任務的優化調度和任意遷移等。
二、國內外發展現狀
隨著“工業4.0”和智能制造等國家戰略的推進,對實時操作系統的深入研究越來越受到國內外科研團隊的重視,取得了大量的研究成果。但是從整體上來看,國內面向RTOS領域的研究還處于發展階段,依然有很多具有挑戰性的工作需進一步深入探索。以下圍繞RTOS整體框架,對當前相關研究現狀進行闡述分析,并進一步梳理目前全球主流的實時操作系統產品。
(一)相關研究工作當前,國內圍繞工業操作系統軟件整體框架設計開展了大量研究,重點提升系統安全、可靠、可信等能力。為確保操作系統內核的安全性和可靠性,華東師范大學團隊將形式化方法引入操作系統內核驗證中,提出了一種通用性的操作系統內核自動化驗證框架,輔助解決軟件系統基礎組件的安全可靠問題。針對現有基于MILS架構的嵌入式操作系統在出現運行故障后無法有效進行正確、安全遷移等問題,西安航空計算技術研究所團隊提出了一種嵌入式操作系統多級安全域動態管理架構,保證了任務的動態遷移和功能重構。浙江大學團隊提出了一種基于人工智能的高可信嵌入式操作系統,能夠在不同任務數量、類別的情況下擁有較高的可信率、精準率及召回率。
(二)此外,對于RTOS軟件框架研究逐漸細化深入,與重點行業典型場景緊密結合。如南京理工大學團隊搭建了一種基于Sylix OS嵌入式實時操作系統的火控系統總體框架,實現了彈道解算和火控命中過程的仿真。基于對飛行器飛行控制軟件需求的分析結果,北京航天自動控制研究所團隊提出了一種基于戰星嵌入式實時操作系統的多核分布式飛行控制軟件架構,提高了飛行控制軟件的可靠性與安全性。針對目前相控陣天線控制系統通信方面的高速、高實時、高穩定需求,西安交通大學團隊設計了一種基于Zynq-7000和RT-Thread操作系統的實時控制系統,保證了系統執行處理的實時性和穩定性。在船舶及海航相關領域,中船重工第713研究所團隊設計了一種基于VxWorks的系統控制軟件,該軟件在穩定性和快速性方面取得了較好的控制效果;南昌大學團隊設計了一種基于嵌入式技術的船舶操作系統通用軟件架構,實現了惡劣海洋環境下的船舶精確航線控制。
(三)國內外主要產品
1.國外主要產品國外RTOS相關先進技術及主流產品由美國、英國、德國等國家掌握和主導,產品的成熟度與易用性較高,廣泛應用于航天、船舶、能源等核心領域,占據高比例的國際市場份額。其中,美國方面的主要產品包括WindRiver公司的VxWorks、Micrium公司的μC/OS-II、TexasInstruments公司的TI-RTOS、GreenHillssoftware公司的INTEGRITYRTOS與μ-velOSityRTOS、Microsoft公司的AzureRTOS、LynxSoftware公司的LynxOS、DDC-I公司的DEOS、Amazon公司的AmazonFreeRTOS、MIPS公司的MIPSEmbeddedOS、FSMLabs公司的RTLinux等;英國方面的主要產品包括RTOS公司的FreeRTOS、ARM公司的MbedOS與RTX、WITTENSTEIN公司的SAFERTOS等;德國方面的主要產品包括Segger公司的embOS、SYSGO公司的PikeOS、Siemens公司的NucleusRTOS等。此外,瑞典EneaDataAB公司的ENEAOSE、瑞士SCIOPTASystems公司的SCIOPTA、加拿大BlackBerry公司的QNXNeutrinoRTOS、荷蘭NXP公司的MQXRTOS、Linux基金會的Zephyr、GPL組織的μClinux,以及TizenRT、OpenWrt、DuinOS、ApacheNuttX等在內的實時操作系統產品也占據了穩定的市場份額。
2.國內主要產品
近年來,我國RTOS產業規模持續提升,涌現出了很多優秀企業和產品,包括上海睿賽德RT-thread、科東軟件Intewell OS、翼輝信息Sylix OS、科銀京成Delta OS、中航計算所Acore OS天脈、凱思昊鵬Hopen OS、中船716所JARI-Works、中電科32所ReWorks、致遠電子AworksS等代表性產品。
從整體上看,國內工業實時操作系統產品的水平依然落后于發達國家,在產品可靠性、圖1國內外主要工業實時操作系統產品三維圖形支持能力等方面與國外軟件存在差距,同時缺乏完善的軟硬件生態系統。當前,國內市場依然主要應用美國VxWorks、μC/OS-Ⅱ等產品,關鍵領域國產化率較低。嵌入式實時操作系統市場占比如圖2所示。
三、RTOS關鍵技術
RTOS產品體系主要由內核層、中間件層、輔助設計工具3部分組成,如圖3所示。
(一)實時操作系統內核
內核提供實時操作系統最基本的功能,是操作系統工作的核心部分。內核基于硬件進行第一層軟件擴充,主要實現任務管理、內存管理、文件管理、隊列管理、時鐘管理等功能。工業實時操作系統對內核具有較強的實時性約束,要求其能夠快速處理外部請求,并在規定時間內對請求做出響應,涉及任務調度、中斷管理、時鐘管理、同步與通信機制等關鍵技術。目前,大多實時操作系統內核主要可劃分為微內核和宏內核兩類。微內核一般只包含必要的任務調度、內存管理等核心功能,而外設驅動等服務在其他進程中運行,并可通過裸內核相互傳遞消息,其主要優勢是具備模塊化的靈活特性。宏內核設計中的內核和操作進程共享空間,消息在進程之間直接傳遞,具有集成特性,無需額外調解模塊之間的調用,具備一定的性能優勢。
目前,廣泛應用于各關鍵工業場景中的VxWorks等操作系統產品沿用了宏內核設計,隨著硬件平臺資源有限性日益受到關注,越來越多新興的工業實時操作系統產品采用了微內核架構,以實現其維護簡單、修改方便、操作靈活等優勢。
1.任務調度算法
任務調度算法是提升多任務管理實時性的關鍵,高效的調度算法可使系統在滿足高性能、高穩定性的條件下快速完成任務調度和切換。
當前,國內外科研團隊圍繞實時操作系統內核任務調度方面已取得了一定的研究成果與技術突破。上海理工大學團隊提出了一種混合關鍵級任務半分區調度算法,該算法能夠對多核處理器的空閑資源進行回收計算,在觸發高關鍵級模式的情況下,為被拋棄的低關鍵級任務分配空閑時間片。此外,該高校團隊提出了一種嵌入式多核系統中的實時混合任務調度算法。該算法在改進的邊界公平實時混合任務算法的基礎上,通過引入松弛度參數來改進判定任務的優先級,并進一步提出了基于松弛度與啟發式策略相結合的啟發式算法改進任務的分配策略,有效滿足系統的實時性要求。北京郵電大學團隊提出了一種基于多核操作系統的RTOS流數據任務調度模型,該模型采用實時流式處理任務包的結構,提高了流數據處理的效率。河南大學團隊提出了一種基于任務執行時間的啟發式獨立任務調度算法,該算法通過對任務執行時間矩陣的預處理、分解、預調度、調整等將任務分配至不同的資源,在擁有較低時間復雜度的同時節約了任務的完成時間。
2.中斷/異常管理
中斷/異常管理直接影響系統對外部事件的響應及處理速度,以確保具有時間特性的功能部分得到及時運行。主要包括面向應用層和面向底層的兩個處理部分,同時可對用戶提供統一的中斷處理接口。
針對系統異常驗證和中斷管理,北京控制工程研究所團隊面向SPARC處理器架構的操作系統提出了一種基于Hoare-logic的驗證框架,該框架能夠用于證明SPARC處理器架構操作系統異常管理的正確性;航空工業西安航空計算技術研究所團隊提出了一種基于PowerPC處理器的操作系統異常處理方法,建立了一種PowerPC異常處理機制;云南大學團隊圍繞Forth實時系統提出了一種新的中斷任務類型,該中斷任務類型能夠處理嵌入式操作系統中的實時突發事件,并基于進一步提出的任務調度算法來完成系統終端、后臺以及中斷任務的順利運行;北京中控院團隊提出了一種基于SPARCv8(可擴展處理器架構第8版)的實時操作系統異常管理驗證方法,建立了一種Hoare式程序框架EMS,以北斗三號衛星上實時操作系統SpaceOS的執行場景為例,利用該框架對異常管理進行驗證。
3.時鐘
時鐘是實時操作系統的脈搏與心跳,其粒度大小及準確性同時影響任務響應的及時性和整個系統的效率。時鐘管理主要功能包括時間管理、定時管理、進程賬務管理、負載管理等,時鐘中斷機制驅動著操作系統中的時間與定時器,是系統中與時間相關所有操作的基礎。
時鐘管理相關研究方面,國防科技大學團隊在實時操作系統時鐘管理方面取得了一定的突破,提出了一種面向MCU的輕量級精確時鐘同步協議實現技術,該技術采用共享存儲機制減少數據處理過程中的拷貝,并使用移位操作實現的近似計算處理替換了部分精確計算處理,減少對計算和存儲資源的占用;中國航發控制系統研究所團隊在進行時鐘同步精度影響因子分析的基礎上,提出了一種基于分布式仿真系統的高精度時鐘同步方法,該方法包含高精度邏輯時鐘構建、網絡回路優化、時鐘晶振頻率在線補償等,推進了時鐘同步在分布式仿真系統中的實際應用;布達佩斯大學團隊提出了一種基于微控制器系統的便攜式PTP時鐘同步實現及其性能評估方法,該方法對PTP包時間戳、PPS信號生成和外部HW事件時間戳進行了抽象,保證了良好的可移植性。
同步與通信機制同步與通信機制允許實時操作系統進行任務和中斷的配合,以確保各任務的協同完成。涉及的技術包括優先級置頂協議、優先級集成182024年第03期第14卷科研創新ScientificResearchandInnovation協議等,可用于避免由于優先級反轉、倒置等造成的延遲問題。
在同步與通信機制研究方面,中國科學院微電子研究所團隊于操作系統同步與通信機制方面取得了一定的突破,提出了一種基于多核通信接口框架的多核通信機制,該機制分為邏輯層、操作系統移植層、傳輸層和移植層,滿足嵌入式非對稱多核處理器在上層應用移植方面的需求;華東計算技術研究所團隊提出了一種嵌入式操作系統確定性核間通信機制,該機制設計了端到端通信延遲的上限,可以滿足多核高安全嵌入式操作系統的要求;華北科技學院團隊圍繞實時操作系統同步與通信機制開展了一系列研究,設計了一種基于FreeRTOS操作系統同步與通信機制的濃度監測報警裝置,以及一種基于μC/OS-Ⅲ同步與通信機制的人機交互終端;埃因霍芬理工大學團隊提出了一種分布式多處理器實時嵌入式系統中XRCE-DDS通信標準應用的建模、實現和分析方法,建立了一種場景感知數據流模型,用于根據不同的執行場景捕獲系統行為的動態。
(二)中間件
中間件層位于實時操作系統內核和應用軟件之間,用于協調和管理應用程序之間的通信和交互,是否支持豐富的中間件成為影響實時操作系統可擴展性的關鍵因素。中間件層為應用軟件提供數據管理、應用服務、消息傳遞等功能和服務,具體包括文件系統、網絡協議棧、圖形用戶界面、設備驅動框架等。此外,面向航空、航天、汽車、電子等行業,存在大量行業專用的中間件及標準接口。從代碼量看,中間件開發工作量遠大于實時操作系統內核,中間件層薄弱成為制約我國實時操作系統產品研發應用的主要因素之一。
中間件相關研究方面,陜西國際商貿學院團隊設計了一種基于發布/訂閱機制的實時中間件,該中間件具有基于分布式對象的數據同步功能與實時保障機制,以及基于以太網的發布訂閱通信機制,滿足了分布式應用中數據分發對實時性方面的要求;復旦大學團隊設計了一種數據服務中間件,該中間件引入了虛擬實體和協議適配器,通過對物聯網環境感知數據進行數據建模,消除了數據格式的異構性;天津理工大學團隊設計了一種混合計算中間件,能夠將高并發實時處理業務邏輯、批處理業務邏輯和跨層次動態調用有效融合,縮短了開發時間;圖森未來技術團隊提出了一種結合高性能和高可靠性的機器人中間件,對比于傳統方法,該中間件能夠降低40%以上的通信延遲和CPU使用率。
相關產品方面,經歷較長時間的發展后,Micrium等商業公司為其內核配套了豐富的中間件,FreeRTOS等開源項目在其OpenRTOS等商業項目發展中也積累了較完備的中間件,能夠構建形成相對完整的實時操作系統軟件平臺。國內RT-Thread等產品雖然提供posix接口、網絡協議棧、GUI、設備文件系統、shell、libc庫等中間件,但其中相當大一部分依賴其他開源組件,且缺乏相應輔助設計和調試工具。
(三)輔助設計工具
成熟完備的輔助設計工具能夠顯著降低RTOS開發難度和成本,提升整體設計開發的技術水平,是打造RTOS生態的重要基礎。輔助設計工具主要包括集成開發環境、模擬器、測試框架等。集成開發環境提供源代碼編譯器、工程管理工具等工具模塊;模擬器能夠模擬軟/硬件功能,從而實現嵌入式工業實時操作系統軟/硬件協同驗證;測試框架能夠有效提升開發、執行和報告自動化測試腳本的效率。
輔助設計工具相關研究方面,武漢理工大學團隊提出了一種基于知識圖譜的嵌入式操作系統測試用例推薦模型,該模型根據歷史用例知識設計本體模型,結合知識推薦建立復用推薦模型,節約了測試成本,具有一定的工程應用價值;上海微小衛星工程中心團隊提出了一種嵌入式操作系統自動化測試方法,該方法利用版本管理工具以及持續集成工具,實現了腳本自動編譯、自動運行并記錄測試結果,提升了測試的自動化水平;首都師范大學團隊提出了一種面向ROS的差分模糊測試方法,該方法能夠精準找出ROS不同版本功能包中的漏洞;北京計算機技術及應用研究所團隊提出了一種基于依賴要素比對的國產操作系統兼容性測試方法,該方法對依賴要素進行了分級,并通過比對兩個操作系統依賴要素的一致性獲得操作系統兼容性測試結果。
在開發語言方面,目前國內實時操作系統主要支持C和C++,相比國外主流產品,國內產品對于Python、JAVA、RUST等語言的支持較為欠缺。同時,面向機器人等專用領域,缺乏完備的上層仿真和輔助設計工具,導致設計和調試時間長、控制算法和控制策略等現有成果難以充分利用等問題仍然存在。結合嵌入式系統的復雜化和規模化趨勢,自動的開發配置和測試驗證、離線仿真開發等成為重要發展方向,可以有效提高開發效率。
四、工業實時操作系統發展趨勢
(一)輕量化趨勢
隨著RTOS應用更加廣泛和深入,系統規模及復雜程度顯著增加,為系統靈活性、可靠性、可維護性以及硬件要求等各方面帶來挑戰,要求RTOS以更精簡的結構實現更多的功能集合。同時,用戶對RTOS的可裁剪性需求更加顯著,通過構件的“即插即用”,實現基于硬件環境和應用環境的靈活裁剪和配置,從而降低硬件開銷,提升系統運行效率及可靠性。RTOS輕量化靈活部署的實現離不開強開放性的支持,RTlinux、μClinux等基于Linux內核開發的嵌入式實時操作系統具有開放源代碼優勢,可利用Linux先進的微內核體系,實現層次結構的靈活裁剪和便利的系統調試。同時,Linux生態積累了豐富的資源,對應用程序開發的支持性較強,因而基于Linux的實時操作系統迅速發展,逐漸對傳統嵌入式實時操作系統形成有力競爭。
(二)虛擬化及云化趨勢隨著計算機技術的不斷發展,主流的處理器架構已經從單核處理器過渡到了多核處理器,基于多核的硬件平臺正在迅速發展和廣泛應用。多核系統中多個運算核心獨立運行,每個核心上的任務以共享的方式使用緩存、內存等系統資源,相比于同樣使用了并行任務計算模式的多處理器系統,共享部件可以提高硬件模塊的利用效率,減少硬件數量。這種片上資源的互聯提高了計算核心間的通信效率,也為實時操作系統資源使用和分配帶來了更多挑戰。伴隨著這一技術趨勢,嵌入式工業實時操作系統的虛擬化進程正在加速,通過采用虛擬化技術來對不同子系統的功能進行隔離,從而允許多個嵌入式系統在單個硬件之上的系統管理程序中運行。此外,在工業互聯網等場景的應用推動了工業實時操作系統的云化發展,如將工業控制中對時間敏感的控制過程放至云端、邊緣端進行集中管理,使控制過程之間的交互與合作更加便利,降低了系統成本,具有較高的應用價值。
(三)跨平臺移植及網絡化應用嵌入式RTOS開發過程中一大困難是代碼可重用性差,實時操作系統升級替代過程中涉及大量現有軟件的移植甚至重新開發,已有的工作成果得不到充分利用,造成資源的嚴重浪費,因此相關標準化工作越來越引發重視。操作系統相關應用的快速發展同樣對系統的自身性能提出了更高要求,單一處理器芯片的計算機系統已不能很好地滿足復雜實時應用系統的需求。基于X86、ARM、MIPS、C-SKY、PPC、RISC-V架構的不同硬件平臺以及龍芯處理器、飛騰處理器等國產硬件將得到更加廣泛地應用,而RTOS也將更加注重跨平臺兼容性,以改善嵌入式軟件復用能力,提高系統的可移植性、可擴展性。同時,隨著互聯網技術的快速發展,工業實時操作系統將更加易于移植和聯網,基于配備的標準網絡通信接口,提供TCP、UDP等協議支持,以及統一的MAC訪問層接口,便于連接各種移動計算設備。
五、總結
RTOS廣泛應用于各類關鍵場景,且相較于傳統軟件單品,更需要通過建設豐富的軟、硬件生態,進一步滿足廣泛連接和多樣化負載的需求。在此背景下,統一而規范的接口和基礎設施是代碼移植和復用的前提,也是各種軟硬件協同合作的基礎,可使終端用戶在同一平臺上累積和復用軟件的使用習慣和相關經驗。國產RTOS應通過強化多方協作補齊短板,加強系統的可用性、可靠性、可控性。一是加強關鍵共性技術研究,推動RTOS內核在高可信、高可用、強實時等方面的技術發展;二是共建開放產品生態平臺,豐富通用及行業中間件生態,推動軟硬件適配,完善集成化、可調試化的設計開發環境及工具集支持;三是強化質量標準支撐保障,發展數據模型、接口及管理評價標準,提升第三方測評能力,加強開源風險防控,推動工業實時操作系統規范化、安全化發展。
文章來源于:《新型工業化》
審核編輯 黃宇
-
嵌入式
+關注
關注
5082文章
19126瀏覽量
305198 -
操作系統
+關注
關注
37文章
6825瀏覽量
123331 -
RTOS
+關注
關注
22文章
813瀏覽量
119636
發布評論請先 登錄
相關推薦
評論