2020年是物聯(lián)網(wǎng)浪潮奔涌的一年,5G+IoT的爆發(fā)迎來諸多智能商業(yè)場景的落地。在這其中,操作系統(tǒng)作為物聯(lián)網(wǎng)的「大腦」發(fā)揮了不可或缺的作用。
物聯(lián)網(wǎng)操作系統(tǒng)是新一代信息技術的重要組成部分。其英文名稱是IoT(Internet of Things),顧名思義,「物聯(lián)網(wǎng)就是萬物相連的互聯(lián)網(wǎng)」。與傳統(tǒng)的個人計算機或個人智能終端(智能手機、平板電腦等)上的操作系統(tǒng)不同,物聯(lián)網(wǎng)操作系統(tǒng)有其獨特的特征。這些特征是為了更好的服務物聯(lián)網(wǎng)應用而存在的,運行物聯(lián)網(wǎng)操作系統(tǒng)的終端設備,能夠與物聯(lián)網(wǎng)的其它層次結合的更加緊密,數(shù)據(jù)共享更加順暢,能夠大大提升物聯(lián)網(wǎng)的生產(chǎn)效率。
在本文中,OFweek維科網(wǎng)特地盤點、匯總了2020年最受關注的十大物聯(lián)網(wǎng)操作系統(tǒng),一起來認識下都有哪些?
Andorid Things
Android Things是Google推出的平臺,旨在幫助Android開發(fā)者打造物聯(lián)網(wǎng)設備。這個平臺還支持強大的應用,例如視頻與音頻處理以及通過TensorFlow進行板載機器學習。它繼承Brillo的功能外,還增加了Android API和Google服務的支持,以及一些Android Things的支持庫。
Android Things最早是在2015年谷歌全球開發(fā)大會上出現(xiàn)的,谷歌對外宣布將會開發(fā)一個面向物聯(lián)網(wǎng)設備的安卓操作系統(tǒng),一開始被命名為「Brillo」。它其實就類似安卓系統(tǒng)的一個分支版本,類似于面向智能手表和穿戴設備推出的Android Wear等;2016年12月,谷歌第一次對外公布了Android Things的開發(fā)者預覽版本。
根據(jù)谷歌的介紹,Android Things和手機版安卓系統(tǒng)一樣,也會提供大量的安卓開發(fā)接口和谷歌基礎服務,可以讓物聯(lián)網(wǎng)設備的開發(fā)者快速進行功能開發(fā)。據(jù)悉,谷歌圍繞物聯(lián)網(wǎng)設備提供的服務有「谷歌云平臺」,「谷歌Play服務」、以及「Android Studio」開發(fā)工具。
華為Lite OS
說到華為的物聯(lián)網(wǎng)領域布局,可能大家耳熟能詳?shù)囊粋€詞就是「鴻蒙」,但其實鴻蒙OS和Lite OS有所不同。
嚴格來說,目前,二者之間是包含關系,Lite OS是華為布局于物聯(lián)網(wǎng)設備領域的底層操作系統(tǒng),而鴻蒙OS是華為布局于智能設備領域的底層操作系統(tǒng),包含了Lite OS的軟件代碼,也就是說Lite OS是鴻蒙體系中的一個內核。
據(jù)了解,華為Lite OS是驅動萬物感知、互聯(lián)、智能,可廣泛應用于面向個人、家庭和行業(yè)的物聯(lián)網(wǎng)產(chǎn)品和解決方案。其具備創(chuàng)新式系統(tǒng)設計,可最大限度降低系統(tǒng)功耗,在特定場景下,能減少60%功耗開銷;能提供E2E物聯(lián)網(wǎng)領域性技術棧,快速構建不同應用場景下的TurnKey解決方案;可復制華為在消費者、運營商和企業(yè)領域成功商業(yè)實踐和優(yōu)秀經(jīng)驗,助力合作伙伴商業(yè)成功。
華為Lite OS基礎內核支持任務管理、內存管理、時間管理、通信機制、中斷管理、隊列管理、事件管理、定時器等操作系統(tǒng)基礎組件,更好地支持低功耗場景,支持tickless機制,支持定時器對齊。同時提供端云協(xié)同能力,集成了LwM2M、CoAP、mbedtls、LwIP全套IoT互聯(lián)協(xié)議棧,且在LwM2M的基礎上,提供了Agent Tiny模塊,用戶只需關注自身的應用,而不必關注LwM2M實現(xiàn)細節(jié),直接使用Agent Tiny封裝的接口即可簡單快速實現(xiàn)與云平臺安全可靠的連接。
RTX
RTX是ARM公司的一款嵌入式實時操作系統(tǒng),使用標準的C結構編寫,運用RealView編譯器進行編譯。不僅僅是一個實時內核,還具備豐富的中間層組件,不但免費,而且代碼也是開放的。
RTX的主要功能除了對任務(進程)的開始和終止以外,還支持進程通信,例如任務的同步、共享資源(外設或內存)的管理、任務之間消息的傳遞。開發(fā)者可以使用基本函數(shù)去開啟實時運行器,去開始和終結任務,以及去傳遞任務間的控制(輪轉調度)。開發(fā)者可以賦予任務優(yōu)先級。
RTX的主要特點包括:支持時間片,搶占式和合作式調度。不限制數(shù)量的任務,每個任務都具有254的優(yōu)先級。不限制數(shù)量的信號量,互斥信號量,消息郵箱和軟定時器。支持多線程和線程安全操作。使用MDK基于對話框的配置向導,可以很方便的完成MDK的配置。
FreeRTOS
FreeRTOS是一種小型實時操作系統(tǒng)內核,具有源碼公開、可移植、可裁減的特點。在嵌入式領域中,嵌入式實時操作系統(tǒng)正得到越來越廣泛的應用。采用嵌入式實時操作系統(tǒng)(RTOS)可以更合理、更有效地利用CPU的資源,簡化應用軟件的設計,縮短系統(tǒng)開發(fā)時間,更好地保證系統(tǒng)的實時性和可靠性。但是由于RTOS需占用一定的系統(tǒng)資源(尤其是RAM資源),只有μC/OS-II、embOS、salvo、FreeRTOS等少數(shù)實時操作系統(tǒng)能在小RAM單片機上運行。相對μC/OS-II、embOS等商業(yè)操作系統(tǒng),F(xiàn)reeRTOS操作系統(tǒng)是完全免費的操作系統(tǒng),具有源碼公開、可移植、可裁減、調度策略靈活的特點,可以方便地移植到各種單片機上運行。
作為一個輕量級的操作系統(tǒng),F(xiàn)reeRTOS提供的功能包括:任務管理、時間管理、信號量、消息隊列、內存管理、記錄功能等,可基本滿足較小系統(tǒng)的需要。FreeRTOS內核支持優(yōu)先級調度算法,每個任務可根據(jù)重要程度的不同被賦予一定的優(yōu)先級,CPU總是讓處于就緒態(tài)的、優(yōu)先級最高的任務先運行。FreeRTOS內核同時支持輪換調度算法,系統(tǒng)允許不同的任務使用相同的優(yōu)先級,在沒有更高優(yōu)先級任務就緒的情況下,同一優(yōu)先級的任務共享CPU的使用時間。
嵌入式領域,F(xiàn)reeRTOS是不多的同時具有實時性,開源性,可靠性,易用性,多平臺支持等特點的嵌入式操作系統(tǒng)。目前,F(xiàn)reeRTOS已經(jīng)發(fā)展到支持包含X86,Xilinx,Altera等多達30種的硬件平臺,其廣闊的應用前景已經(jīng)越來越受到業(yè)內人士的矚目。
Fuchsia
Fuchsia系統(tǒng)是谷歌自主打造的一款精簡、安全、基于微內核設計、為物聯(lián)網(wǎng)時代打造的全新操作系統(tǒng),谷歌希望通過Fuchsia系統(tǒng)統(tǒng)一安卓和Chrome OS,其支持多達4個程序同屏同時運行(平板模式下),并且主頁以直列的方式顯示各種故事卡、應用集、系統(tǒng)組件等,有點類似多任務、多標簽頁的做法,但更簡潔。
據(jù)悉,F(xiàn)uchsia系統(tǒng)不同于安卓使用的Linux內核,而是采用的比較新的Zircon的內核。該系統(tǒng)與當下Android相比,無論是存儲器還是內存之類的硬件要求都大幅降低,可以看出這是一款面向物聯(lián)網(wǎng)的家用電器用的系統(tǒng)。Fuchsia系統(tǒng)支持32位和64位的ARM處理器和64位PC處理器。Fuchsia支持多種編程語言,包括C/C++、Dart、Go、Rust和Python,此外還有一種名為FIDL的接口定義語言。據(jù)悉,F(xiàn)uchsia可以用于手機、電腦、智能手表、車載娛樂系統(tǒng)和其他嵌入式設備。
VxWorks
VxWorks誕生于1983年,由美國風河系統(tǒng)(Wind River System,簡稱WRS)公司設計開發(fā),它是一種嵌入式實時操作系統(tǒng)(RTOS),是嵌入式開發(fā)環(huán)境的關鍵組成部分。
VxWorks之所以能在嵌入式實時操作系統(tǒng)領域占據(jù)一席之地,其良好的持續(xù)發(fā)展能力、高性能的內核以及友好的用戶開發(fā)環(huán)境被認為了其中的幾點原因。
VxWorks支持幾乎所有現(xiàn)代市場上的嵌入式CPU,包括x86系列、ARM、MIPS、LoongISA、 PowerPC、Freescale ColdFire、Intel i960、SPARC、SH-4、StrongARM以及xScale CPU。
VxWorks以其良好的可靠性和卓越的實時性被廣泛地應用在通信、軍事、航空、航天等前沿、尖端及實時性要求極高的領域中,例如衛(wèi)星通訊、軍事演習、彈道制導、飛機導航等。
據(jù)悉,美國的F-16、F/A-18戰(zhàn)斗機、B-2隱形轟炸機和愛國者導彈,火星探測器如1997年7月登陸的火星探路者號,2008年5月登陸的鳳凰號、2012年8月登陸的好奇號、2018年登陸的洞察號等,都使用了VxWorks操作系統(tǒng)。
風河公司公司還推出有的一套名為Tornado的實時操作系統(tǒng)開發(fā)環(huán)境,類似MicrosoftVisual C,但是提供了更豐富的調試、仿真環(huán)境和工具。
風河公司持續(xù)致力于開拓嵌入式計算,技術成果據(jù)稱已應用于20億+產(chǎn)品之中。
Mbed OS
Mbed OS由ARM聯(lián)合它的技術合作伙伴,以及Mbed開發(fā)者社區(qū)打造,它是一個平臺、一個操作系統(tǒng),也是主打物聯(lián)網(wǎng)的一整套軟件解決方案。Mbed OS被用于基于32位ARM Cortex-M系列芯片的物聯(lián)網(wǎng)設備,圍繞Mbed OS,形成了一個嵌入式開源生態(tài)。
針對不同類型、不同資源配置的物聯(lián)網(wǎng)設備,ARM推出了兩款不同的操作系統(tǒng):Mbed OS和Mbed Linux OS。
據(jù)ARM物聯(lián)網(wǎng)服務集團中國區(qū)負責人陳曦2019年的介紹,Mbed OS面向一些資源比較受限,希望能夠用簡單快捷的方式滿足連接、安全以及應用開發(fā)需求的設備,Mbed Linux OS則面向網(wǎng)關、攝像頭、工業(yè)電腦這類資源配置更加豐富的設備,方便用戶集中開發(fā)高附加值的功能。
作為一個開源的OS,Mbed OS已經(jīng)和160多種不同的芯片平臺做好了預集成,大幅降低了開發(fā)難度,縮短開發(fā)時間。
Mbed OS的核心軟件平臺由核心貢獻者和伙伴公司開發(fā),由mbed團隊維護。在Apache許可證2.0下,這個核心平臺提供的所有核心通用軟件構件,加上HAL遷移性允許mbed透明的運行在不同制造商的微控制器上,和TOOLCHAIN遷移性允許開發(fā)使用不同的嵌入式工具鏈。
Mbed OS的構件數(shù)據(jù)庫由各公司和更廣泛的社區(qū)開發(fā),它提供對各種外設構件、傳感器、無線廣播、協(xié)議和云服務API的支持,這也是在Apache許可證2.0或其它創(chuàng)立者選擇的許可證下貢獻的,也由這些個體公司和開發(fā)開發(fā)者社區(qū)支持。
RIOT
RIOT 操作系統(tǒng)的低內存占用特性使其更適用于物聯(lián)網(wǎng)設備,它背后沒有某個公司的支持,而完全是由社區(qū)驅動。它的官方口號是:If your tiny IoT device can't run Linux, use RIOT,可見其定位。此外,在其官網(wǎng)上,迎面展示的也是這樣一句話:The friendly Operating System for the Internet of Things。
RIOT操作系統(tǒng)最初由柏林自由大學(FU Berlin)、法國國家信息與自動化研究所(INRIA),以及漢堡應用科技大學(HAW Hamburg)共同開發(fā),其內核基本從FireKernel繼承,而這個內核原本為傳感器網(wǎng)絡開發(fā)。
RIOT基于微內核架構。與其他低內存占用的系統(tǒng)(如TinyOS和Contiki)不同, RIOT允許使用C語言和C++語言編寫應用程序,而且提供完整的多線程和實時響應解決方案。
RIOT可以在8位單片機(如AVR ATMega),16位單片機(如MSP430)和32位單片機(如ARM的Cortex)上運行,也可以作為一個Linux或macOS進程運行,能使用諸如GNU編譯器合集(GCC),GNU調試器,Valgrind,Wireshark等標準調試工具。
RIOT符合一部分POSIX標準,提供多種通信協(xié)議棧,包括了IPv6、6LoWPAN和內容中心網(wǎng)絡,還支持RPL、UDP、TCP和CoAP。
AliOS-Things
據(jù)官方介紹,AliOS Things是面向IoT領域的輕量級物聯(lián)網(wǎng)嵌入式操作系統(tǒng),是 阿里巴巴AliOS家族旗下、面向IoT領域的、高可伸縮的物聯(lián)網(wǎng)操作系統(tǒng)。
AliOS Things致力于搭建云端一體化IoT基礎設備。具備極致性能,極簡開發(fā)、云端一體、豐富組件、安全防護等關鍵能力,并支持終端設備連接到阿里云Link,可廣泛應用在智能家居、智慧城市、新出行等領域。
AliOS Things提供已通過認證的80+的硬件平臺和100+的傳感器給潛在客戶選擇,也為用戶提供包括MQTT,Http/Https,Coap,LwM2M,LoRaWAN在內的多種物聯(lián)網(wǎng)協(xié)議組件支持。
據(jù)官方展示,AliOS Things目前已用于智能家居、智能辦公、智能廚房、空氣環(huán)境等領域。
Tizen RT
Tizen RT是三星電子2011年推出的基于Linux的操作系統(tǒng),它適用于移動應用程序和小型嵌入式系統(tǒng)。
Tizen RT的目標是將Tizen平臺的設備覆蓋范圍擴展到低端設備。Tizen已在智能電視、智能手機、可穿戴設備(Gear S,Gear Fit)、車輛和智能家電中商業(yè)化。三星電子主要將此操作系統(tǒng)用于物聯(lián)網(wǎng)開發(fā)。
Tizen RT是基于RTOS的輕量級平臺,使用C語言,C ++和Html5作為開發(fā)語言,它可以適合這些的設備:它們通常配備具有MPU,小于2MB RAM和小于16MB Flash的Cortex-M / R處理器。
典型的基于RTOS的開發(fā)環(huán)境有幾個限制。首先,它無法在運行時加載其他模塊。其次,它可能不如Linux環(huán)境。為了解決這些限制,Tizen RT采用Linux風格的開發(fā)環(huán)境,包括POSIX API,BSD Socket API,Shell和Kconfig構建配置。這有助于Linux開發(fā)人員輕松地在Tizen RT之上構建其業(yè)務邏輯。
TizenRT使用稱為「Tizen Common」的共享基礎架構來維持物聯(lián)網(wǎng)開發(fā)的主要目的。TizenRT的開發(fā)方式使移動運營商可以根據(jù)某個地區(qū)的人口需求定制其產(chǎn)品。
評論