PC時代造就了Windows操作系統,移動互聯網時代造就了Android和iOS操作系統,如今物聯網時代正迅速崛起,又將造就什么操作系統呢? 操作系統作為一個產業的底層基礎設施,除了潛在的巨大商業價值,在當下時代背景中,更是具備了國家層面的戰略意義。
PC時代造就了Windows操作系統,移動互聯網時代造就了Android和iOS操作系統,如今物聯網時代正迅速崛起,又將造就什么操作系統呢?
操作系統作為一個產業的底層基礎設施,除了潛在的巨大商業價值,在當下時代背景中,更是具備了國家層面的戰略意義,擁有自主產權的優秀操作系統,才能避免受制于人。
因而,我們非常關注物聯網時代的操作系統進展和格局,將在本文簡單探討以下問題:
為什么需要物聯網操作系統?
物聯網需要怎樣的操作系統?
發展至今,物聯網操作系統的核心流派和優劣勢?
物聯網操作系統是否有創業公司機會?未來的商業價值如何體現?
本文由36氪聯合卓晟互聯CTO慕睿濤共同完成,卓晟互聯是國內一家物聯網操作系統研發商,
36氪曾做過詳細報道
。慕睿濤是原SUN中國的第一位JavaME虛擬機開發工程師,原甲骨文Java與嵌入式系統事業部資深顧問。
以下是正文:
為什么需要物聯網操作系統?
在2012年左右物聯網的概念剛剛興起時,整個產業聚焦在2個問題上:網絡連接,前端算力。換句話說,就是“先把設備連上網再說”。至于物聯網終端設備需要跑什么樣的軟件,如何開發前端軟件,前后端軟件如何協同開發,甚至軟件平臺的安全性這樣的問題,全都“以后再說”。
隨著通訊芯片成本的降低、NB-IoT和4G甚至5G無線通訊網絡技術的發展,物聯網已經解決了設備連接互聯網的問題。而隨著ARM32位MCU的普及,前端設備的計算能力有了很大提升,具備了運行更復雜應用的能力。
舊的問題解決了,新的問題也相繼出現。
網絡數據量激增,網絡響應延遲,難以與迭代快、協議復雜的互聯網服務打通 于是邊緣計算越發重要,將計算分布到前端的網關和數據采集終端,和互聯網服務結合,是物聯網當前發展階段的大勢所趨。
邊緣計算使得物聯網終端軟件復雜度大幅提升,而這個需求在幾年前還都是不存在的。過去物聯網產品的軟件功能在出廠時就基本固定了,上層軟件應用開發和底層硬件緊密耦合,很難由第三方開發者為硬件開發應用。這導致物聯網軟件應用迭代慢、成本高,生態閉塞。
參考PC、互聯網以及移動互聯網的技術發展歷程,軟件行業的爆發需要相對較為標準化的底層運行環境作為支撐。于PC就是Windows、Linux、macOS,于互聯網就是瀏覽器,于移動互聯網就是iOS和Android。
所以,物聯網也需要具備一套對軟件開發者更友好的、相對統一的操作系統,使軟件開發過程從硬件開發中脫離出來。只需要基于操作系統,即可快速開發上層應用。
物聯網需要怎樣的操作系統?
首先,既然Android在智能手機上這么成功,那是否可以直接復制到物聯網領域呢?答案是否定的,原因包括Android是專為手機設計的操作系統,運行所需計算資源過大、難以兼容物聯網設備廣泛外設、存在安全問題等。
那么物聯網需要什么樣的操作系統底層運行環境呢?大致有這樣幾個方面的需求:
跨平臺:消弭硬件平臺差異,使軟硬件開發解耦合。
低成本:能在微小設備運行,資源耗用小,降低硬件成本。
易學習:相關技術有大量的存量開發者用戶,不需要重新學習。
強安全:擁有足夠強的安全機制,保障用戶設備和數據的安全。
前兩個是硬件廠商的需求,后兩個是軟件行業的需求。
物聯網操作系統的任務,其實就是為邊緣計算軟件提供滿足這些需求的底層運行環境。
發展至今,物聯網操作系統的核心流派和優劣勢?
目前,市面上的物聯網操作系統基本形成了三大核心流派。
1、由傳統的嵌入式RTOS發展而來。典型代表:FreeRTOS、RT-Thread、LiteOS、uCOS、MICO。
優點:在物聯網終端上已經廣泛支持,硬件推廣成本低。
缺點:軟件開發專業度極高,軟硬件開發難以隔離,對專業軟件公司進入這個領域造成困難。
這條路上有著眾多玩家,尤其是在硬件行業里,RTOS仍舊是終端操作系統的主要選擇。由于歷史原因,傳統RTOS市場里大多是國外廠家,或是FreeRTOS這樣的國外技術人員活躍的開源社區產品。
國內這幾年做得最好的是RT-Thread,目前發展勢頭非常快。其官網信息顯示,RT-Thread已應用于能源、車載、醫療、消費電子等多個行業,累積裝機量超過2億臺。
2、由其他領域的軟件平臺移植而來,如Linux、Java、Node.js Embedded、MicroPython。典型代表:Linaro,MicroEJ,卓晟互聯,Ruff。
優點:軟件資源豐富,開發者眾多,軟件開發快成本低。
缺點:適配物聯網終端硬件有難度,需要解決資源占用、外設接口擴展、節電設計的多方面問題。
考慮到Java在傳統服務器行業的超高市場占有率,以及Java開發者的龐大社區規模,基于Java的物聯網操作系統方案,從傳統行業和傳統IT領域切入物聯網方向的公司,如果能夠在物聯網設備上開發Java應用,將會極大釋放自身軟件業務能力,降低B端客戶采納物聯網方案的門檻。
人工智能領域里,Python在開發者資源方面有著絕對的領先地位。所以人工智能領域的物聯網設備,支持Python是很自然的選擇。不過目前還沒有出現提供比較成熟的、基于Python的物聯網操作系統產品的公司或社區項目。
互聯網公司轉到物聯網領域的時候,JavaScript是一條天然的技術路線選擇。這條路線上,國內主要是Ruff。
3、由互聯網公司的云平臺延伸而來。典型代表:AliOS Things、Android Things。
優點:天生與互聯網服務相結合,方便對接互聯網應用。
缺點:基本上是各家產品對各家服務,難以做到平臺中立,對軟件開發者來說功能性受到了限制。
目前來看,Android Things還是太大了,比嵌入式Linux更耗資源,且不再走Android的開源路線,基本成為了Google自家服務的SDK。對于國內廠商來說,跟隨門檻比Android更高一些。
物聯網操作系統是否有創業公司機會?未來的商業價值如何體現?
過去,操作系統這樣的基礎軟件肯定要選擇大公司的技術方案,因為技術發展、后續維護等工作比開發本身更重要,只有大公司才能擁有客戶的巨大信任。
但是隨著開源模式被廣泛接受,基于開源開發模式、標準開放的技術反而更能贏得客戶的青睞,因為這樣的模式擺脫了客戶對大公司的潛在依賴,任何公司都可以提供持續的技術支持。
這樣一來,操作系統這種以前看起來好像一定是要大公司來干的事,小公司、創業公司也可以來做,只要技術過硬。比如Linux,這項完全由社區(甚至不是一家公司)發展起來的操作技術,雖然IBM也在玩,但是也有Redhat這樣的公司從無到有一路發展壯大起來。
大家都知道操作系統有多重要,多壟斷,但是如何體現到商業價值呢?
在各自領域的大玩家,基本都把物聯網操作系統看做拓展自身業務,或是保住自身在行業中的地位的工具。比如華為的LiteOS,三星的Node.js,無法擺脫為自家硬件服務的屬性;AliOS Things或是Android Things,無法擺脫對自家服務的依賴。
但是這樣其實限制住了操作系統本身的商業價值,操作系統作為軟件基礎平臺,其中立性才是自身價值的最大體現。
在操作系統的商業模式更加開放,且以開源為主流技術開發模式的今天,傳統的軟件商業價值變現方式,即授權、賣copy這樣的模式,已經不適用了。相比之下,先快速做大生態,然后從軟件、云服務、廣告等市場變現,或許是更良性的模式。
評論
查看更多