付斌|作者
RTOS與Linux的物聯(lián)網設備操作系統(tǒng)之爭已經持續(xù)了很多年。Linux以其強大的計算能力和豐富的軟件生態(tài),在需要復雜處理和軟件支持的物聯(lián)網設備上占據(jù)一席之地;RTOS憑借實時響應和資源節(jié)約的特性,在對實時性和資源占用有嚴格要求的場景中獨領風騷。
如果時間倒回五年前,那時候IoT徹底火了,但大型科技公司在面對RTOS和Linux的抉擇中,對RTOS不感興趣,更加青睞Linux,并把它推成主流。不過,在最近一段時間,風評反轉了,實時操作系統(tǒng) (RTOS)在嵌入式IoT領域開始重新復興。
在開源計劃、大型科技公司支持、對低延遲和資源受限應用程序不斷增長的需求的推動下,RTOS 正在迅速縮小與Linux的差距。很多開發(fā)人員發(fā)現(xiàn),在選擇操作系統(tǒng)時,規(guī)模并非越大越好,隨著更多傳感器在時間關鍵型的應用程序中上線,越來越多人發(fā)現(xiàn)RTOS有著改變邊緣世界的力量。
嵌入式的新變革
全面而精簡,是RTOS被人注視的最大原因,畢竟誰又不喜歡“小而美”。并且,這幾年,隨著RTOS在保持實時響應性的同時,其在可用性、安全性和可擴展性等方面也取得進展。
目前,有將近三分之二的嵌入式系統(tǒng)都在使用RTOS,而RTOS迄今已經擁有了100多種不同的商業(yè)和開源產品,比如VxWorks、PX5、EmbOS、SafeRTOS等商業(yè)RTOS,再比如Eclipse ThreadX、RT-Thread、mbed OS、UCOS-II、NuttX、eCos、Zephyr等開源RTOS。
對于未來幾年的市場,很多業(yè)內人士都很樂觀嗎,并表示RTOS在未來三年內每年或可增長10%。之所以能夠有這種市場表現(xiàn)的原因在于大廠不斷布局RTOS,幫助提升了RTOS開發(fā)環(huán)境,提供了增強的綜合工具、強大的社區(qū)支持等,持續(xù)促進市場增長。
首先,是微軟。2019年4月18日,ThreadX這一有名的RTOS被微軟看中,其所有者Express Logic 被整體收購。從那時起,它的名字也被改為Azure RTOS。去年11月,微軟宣布將Azure RTOS托管至Eclipse基金會,更名為Eclipse ThreadX,并過渡到開源模式。
其次,是亞馬遜。2017年 FreeRTOS由亞馬遜收購,并成為亞馬遜Web Services(AWS)的一部分,進一步推動了其在物聯(lián)網(IoT)領域的應用。同時,亞馬遜宣布在FreeRTOS_V10內核基礎上建立MIT licensed的Amazon FreeRTOS操作系統(tǒng)”。
最后,是MCU廠商。比如,樂鑫將FreeRTOS作為組件集成到ESP-IDF中,因為原生FreeRTOS是單核RTOS,而ESP32是雙核的,因此樂鑫為了支持多核,將FreeRTOS 內核移植到ESP芯片的所有可用架構中;Linux基金會的Zephyr RTOS在Intel、NXP 和 Nordic等廠商的努力下,正在逐漸發(fā)展壯大,成為行業(yè)新主流;為嵌入式系統(tǒng)設計的lwIP(輕型IP)這樣的RTOS IP堆棧正變得越來越強大;MbedTLS這樣的加密庫現(xiàn)在可以與OpenSSL的功能相媲美,OpenSSL長期以來一直是Linux系統(tǒng)的領導者。
RTOS和Linux的異同
RTOS和Linux都屬于嵌入式領域,二者的根本區(qū)別在于它們的設計理念。
RTOS追求的是輕量級和極致的實時性(Real-time),通常是專為實時應用程序構建的,優(yōu)先考慮任務執(zhí)行的確定性和可預測性,使其在醫(yī)療、核能或航空航天等關鍵任務行業(yè)中得到廣泛應用。同時,輕量化的設計,使得其在資源受限的嵌入式系統(tǒng)中非常受歡。
所謂實時性指的是操作系統(tǒng)(OS)在有限的響應時間內提供所需服務級別的能力。在實時系統(tǒng)中,計算的正確性不僅取決于結果的邏輯正確性,還取決于它產生結果的時間。
與通用操作系統(tǒng)不同,RTOS側重于確定性響應時間和對任務調度的精確控制。相比來說,RTOS擅長管理任務優(yōu)先級,允許關鍵任務優(yōu)先于對時間不太敏感的流程,在系統(tǒng)必須保證運營在特定時間范圍內時,這種優(yōu)先級至關重要。企業(yè)通常在任務關鍵型場景中使用RTOS,此外,它同樣適用于無法容忍任何形式系統(tǒng)故障的關鍵系統(tǒng)應用程序中。
Linux則更為通用,支持多用戶和多任務處理,并提供了豐富的網絡功能和設備獨立性,也針對性地推出了實時Linux。不過,畢竟Linux需要處理大量系統(tǒng)調度和其它任務,實時性相對會差一些。
實時Linux的核心概念是“搶占”,也就是中斷當前執(zhí)行線程,立即處理優(yōu)先級較高的事件。在沒有內核搶占的情況下,在Linux中無法實現(xiàn)確定性響應時間。
RTOS和實時Linux之間的選擇取決于系統(tǒng)特定延遲要求,以及對開銷和資源效率的需求。雖然實時Linux為許多場景提供了強大的解決方案,但在某些關鍵的嵌入式系統(tǒng)中,專用 RTOS可能仍然更可取。如果項目需要在實時需求和運行各種應用程序的靈活性之間取得平衡,那么實時Linux將提供更通用的解決方案。
RTOS和Linux未來依然會共生
RTOS此時此刻的優(yōu)勢是明顯的。對于構建時間敏感型應用程序的開發(fā)人員來說,RTOS的低延遲和可預測的實時任務執(zhí)行比通用操作系統(tǒng)具有明顯優(yōu)勢。此外,隨著復雜軟件堆棧中的安全漏洞不斷浮出水面,RTOS的精簡架構減少了攻擊面。由于應用程序直接編譯到操作系統(tǒng)中,因此與動態(tài)加載的程序相比,代碼注入的可能性大大降低。
更重要的是,開發(fā)人員不再需要為了性能和安全性而犧牲可用性。從云到加密,RTOS解決方案正在迅速成熟,使開發(fā)人員能夠構建安全、響應迅速且可擴展的嵌入式系統(tǒng)。
不過,要說RTOS徹底取代Linux,那也是完全不可能的。
畢竟,實時不會帶來優(yōu)化的性能,而且Linux在復雜的高端嵌入式系統(tǒng)中無法被取代。
RTOS通常是專業(yè)且資源密集型的,與通用操作系統(tǒng)相比,功能有限。在需要超出實時約束的不同應用程序的場景中,這可能是一個缺點。而且,現(xiàn)在實時Linux開始集成一些補?。ū热鏤buntu的PREEMPT_RT補?。?,能夠有效地為大多數(shù)實際的低延遲、低抖動工作負載提供服務,同時實現(xiàn)均衡的解決方案,從而減少開銷并保持響應能力,最終減少維護成本,并使用有限的資源最大限度地提高。
總之,正是因為RTOS和Linux非?;パa,開發(fā)人員才有了更多選擇,能夠自由地選擇用什么系統(tǒng),對開發(fā)者來說才是一次真正的勝利。
-
物聯(lián)網
+關注
關注
2909文章
44634瀏覽量
373316 -
Linux
+關注
關注
87文章
11304瀏覽量
209476 -
RTOS
+關注
關注
22文章
813瀏覽量
119630
發(fā)布評論請先 登錄
相關推薦
評論