四川中衛(wèi)北斗科技有限公司

在線咨詢
微信

微信掃一掃

長按二維碼關注微信加好友

區(qū)塊鏈竟然開始在物聯(lián)網(wǎng)操作系統(tǒng)里“作妖”了….

發(fā)布時間:2018-03-26 17:20

------   【導讀】   ------

區(qū)塊鏈技術的確可以為IoT帶來特定層面的提升,比如改進數(shù)據(jù)的安全性和激發(fā)新的商業(yè)模式,但這并不是一種顛覆,而是一次融合?!拔镦溇W(wǎng)”操作系統(tǒng)如果想在IoT領域站穩(wěn)腳跟,必須讓物聯(lián)網(wǎng)企業(yè)易于使用,它的本質與物聯(lián)網(wǎng)操作系統(tǒng)別無二致,因此應滿足物聯(lián)網(wǎng)操作系統(tǒng)的各種要求。

這是一篇非典型的學習筆記,因為這周我想聊聊物聯(lián)網(wǎng)操作系統(tǒng)。

 

為什么突然想到這個老生常談的話題呢?有兩個主要原因:


一是這個禮拜有意無意當面接觸了很多做物聯(lián)網(wǎng)操作系統(tǒng)的公司,尤其在坐鎮(zhèn)由母校組織的第3屆清華校友創(chuàng)意創(chuàng)新創(chuàng)業(yè)大賽(簡稱三創(chuàng)大賽)過程中,看到了新型物聯(lián)網(wǎng)操作系統(tǒng)項目的展示。


二是隨著區(qū)塊鏈與物聯(lián)網(wǎng)深度結合為“物鏈網(wǎng)”的發(fā)酵,專為“物鏈網(wǎng)”而生的操作系統(tǒng)也不甘寂寞,紛紛ICO或者發(fā)行代幣,比如Elastos(現(xiàn)在叫亦來云)、Ruff、萬物鏈ITC…我也被越來越多的人問到怎么看待這些物鏈網(wǎng)OS,那么這次我就來分享一下關于物鏈網(wǎng)操作系統(tǒng)這門“課程”我的學習筆記,需要說明的是,首先我認為筆記必須淺顯易懂,其次這些筆記蘊含了【物聯(lián)網(wǎng)智庫】篩選優(yōu)質項目的部分方法論。畢竟作為物聯(lián)網(wǎng)領域中獨具“高冷范兒”的專業(yè)媒體和研究機構,對于報道哪些有價值的靠譜項目,雪藏哪些埋伏著“定時炸彈”的忽悠項目,我們是這個行業(yè)中最為“挑剔”的。

 

“物鏈網(wǎng)”操作系統(tǒng)的本質是“物聯(lián)網(wǎng)”操作系統(tǒng)

 

區(qū)塊鏈技術的確可以為IoT帶來特定層面的提升,比如改進數(shù)據(jù)的安全性和激發(fā)新的商業(yè)模式,但這并不是一種顛覆,而是一次融合?!拔镦溇W(wǎng)”操作系統(tǒng)如果想在IoT領域站穩(wěn)腳跟,必須讓物聯(lián)網(wǎng)企業(yè)易于使用,它的本質與物聯(lián)網(wǎng)操作系統(tǒng)別無二致,因此應滿足物聯(lián)網(wǎng)操作系統(tǒng)的各種要求。

 

[筆記1:為什么需要物聯(lián)網(wǎng)操作系統(tǒng)IoT OS?因為雙重解耦]

 

物聯(lián)網(wǎng)的典型特征是碎片化,硬件設備配置多種多樣,不同的應用領域差異很大。從小到只有幾個KB內(nèi)存的低端單片機,到數(shù)百MB內(nèi)存的高端智能設備。因此需要IoTOS屏蔽物聯(lián)網(wǎng)底層硬件碎片化的特征,提供統(tǒng)一的編程接口,降低物聯(lián)網(wǎng)應用開發(fā)的成本和時間。

IoT OS與Android在移動互聯(lián)網(wǎng)領域的地位和作用類似,實現(xiàn)了應用軟件與智能終端硬件的解耦。就像在Android的生態(tài)環(huán)境中,開發(fā)者基本不用考慮智能終端的物理硬件配置,只需根據(jù)Android的編程接口編寫應用程序,就可以運行在所有基于Android的智能終端上一樣,IoTOS的作用也是如此。除此之外,在邊緣計算時代的某些特定場景中,物聯(lián)網(wǎng)OS還需要達到另外一種解耦:硬件驅動程序與操作系統(tǒng)內(nèi)核的分離。

 

[筆記2:物聯(lián)網(wǎng)操作系統(tǒng)的整體架構,至少包含3個關鍵子系統(tǒng)]

 

IoTOS由操作系統(tǒng)內(nèi)核、中間件平臺(外圍功能組件)、物聯(lián)網(wǎng)協(xié)同框架、集成開發(fā)環(huán)境等子系統(tǒng)組成。這些子系統(tǒng)之間相互配合,共同組成一個完整的面向各種各樣物聯(lián)網(wǎng)應用場景的軟件基礎平臺。同時這些子系統(tǒng)之間有一定的層次依賴關系,比如外圍功能組件需要依賴于物聯(lián)網(wǎng)操作系統(tǒng)內(nèi)核,物聯(lián)網(wǎng)協(xié)同框架需要依賴于外圍功能組件。

1.內(nèi)核是任何操作系統(tǒng)都有的核心組件,操作系統(tǒng)的核心功能和核心機制,都是在內(nèi)核中實現(xiàn)的。

 

內(nèi)核中包括線程/任務管理、多任務同步與通信、內(nèi)存管理、內(nèi)核安全等機制。對于物聯(lián)網(wǎng)硬件來說,內(nèi)核的能力千差萬別。

 

如果把物聯(lián)網(wǎng)設備比作外星人,他們的智商參差不齊,其中一些只會從0數(shù)到1,而另一些外星人的智商超過愛因斯坦。內(nèi)核就相當于外星人的腦容量,智商不同腦容量自然差異很大。一些內(nèi)核尺寸必須維持在10K以內(nèi),超標了外星人就要罷工,另外一些則不同,內(nèi)核尺寸達到MB級別也不在話下。

 

2. 中間件平臺(外圍功能組件)是指為了適應物聯(lián)網(wǎng)的應用特點,操作系統(tǒng)應該具備的一些功能特征。

 

中間件平臺還包含為了擴展物聯(lián)網(wǎng)操作系統(tǒng)內(nèi)核的功能范圍,而開發(fā)的一些模塊,比如文件系統(tǒng)、網(wǎng)絡協(xié)議棧等。物聯(lián)網(wǎng)操作系統(tǒng)內(nèi)核和外圍功能組件結合起來,可以解決物聯(lián)網(wǎng)的連接需求,比如支持以太網(wǎng)、3G/4G、藍牙、Wi-Fi、ZigBee、NFC、LiFi、NB-IoT、LoRa等。

 

延續(xù)上面的比喻,想讓領養(yǎng)來的外星人可管可控,你得給他配備必要的服飾和工具。這些工具就由中間件平臺提供,比如穿好工作服(GUI)、配備手機/呼機/商務通…讓他能與外界聯(lián)系(滿足連接需求)、當然還需要一位翻譯讓外星人理解你的指令(JAVA虛擬機)。

 

3. 物聯(lián)網(wǎng)協(xié)同框架是實現(xiàn)物聯(lián)網(wǎng)“協(xié)同”功能性需求的關鍵功能系統(tǒng)。

 

團隊的能量是巨大的,為了最大程度壓榨外星人團隊的腦力和體力,自帶十八般武藝的“總管”不可或缺(一組軟件的集合),他負責統(tǒng)籌外星人隊員之間的協(xié)同工作。也就是說,協(xié)同框架使得物聯(lián)網(wǎng)設備能夠“充分合作”,以達到單一物聯(lián)網(wǎng)設備無法完成的功能。

 

4. 物聯(lián)網(wǎng)智能引擎(非必需),其中包含了諸如語音與語義識別,機器學習等功能模塊。

 

5. 集成開發(fā)環(huán)境是豐富操作系統(tǒng)生態(tài)圈的核心組件,同時也是形成“二級開發(fā)模式”的基礎。

 

所謂二級開發(fā)模式,指的是包含操作系統(tǒng)平臺本身功能開發(fā)的第一級開發(fā),以及基于操作系統(tǒng)平臺,進行應用程序開發(fā)或操作系統(tǒng)內(nèi)核定制的二次開發(fā)。簡單而言,它讓你能夠重新配置外星人大腦中的部分底層代碼。

 

其中,物聯(lián)網(wǎng)運行庫(IoT Runtime)值得劃重點強調(diào)。任何一種開發(fā)語言,都有一個與之對應的運行庫,比如針對Java語言的J2SE/J2EE/J2ME等配套庫。這些運行庫包含開發(fā)過程中常用的功能或函數(shù),提供最為常見的物聯(lián)網(wǎng)開發(fā)功能支持。

 

以最后一個比喻結束筆記2。如果你想讓一個外星人不止會算加法,還要會算平方,就拿來“平方”對應的Runtime直接導入。綜合上面的說明,可以把物聯(lián)網(wǎng)操作系統(tǒng)的框架做進一步細化,如下圖所示。

[筆記3:物聯(lián)網(wǎng)操作系統(tǒng)呈現(xiàn)開源為主、閉源并存的發(fā)展態(tài)勢]

 

各種物聯(lián)網(wǎng)操作系統(tǒng)可以支持不同的硬件、通信標準、應用場景。開源,有利于打破技術障礙和壁壘,提高互操作性和可移植性,減小開發(fā)成本,同時也適合開源社區(qū)的開發(fā)人員參與。

 

典型的開源物聯(lián)網(wǎng)操作系統(tǒng)包括:RT-Thread、LiteOS、Tizen、TinyOS、RIOT、Contiki、FreeRTOS、ApacheMynewt、Zephyr OS、Ubuntu Core、ARM mbed、AndroidThings、Yocto、Raspbian。


為了保證安全性和掌握控制權,某些操作系統(tǒng)會將關鍵部分閉源授權。同時,由于某些特殊行業(yè)存在自身特殊需求,操作系統(tǒng)的閉源策略仍有很大的互補需求。

 

典型的商業(yè)物聯(lián)網(wǎng)操作系統(tǒng)包括:Windows 10 IoT、WindRiverVxWorks、MicriumμC/ OS、Micro Digital SMX RTOS、MicroEJOS、ExpressLogic ThreadX、Mentor Graphics Nucleus RTOS、Green Hills Integrity、Particle。

 

[筆記4:物聯(lián)網(wǎng)操作系統(tǒng)的兩條技術路線之爭]

 

由于原有的嵌入式操作系統(tǒng)很難完全匹配物聯(lián)網(wǎng)應用需求,目前物聯(lián)網(wǎng)操作系統(tǒng)領域主要存在出2條技術路徑:


一條是基于Android這樣的操作系統(tǒng)進行裁剪和定制,來適應物聯(lián)網(wǎng)接入設備的需求;另一條是以傳統(tǒng)嵌入式操作系統(tǒng)和實時操作系統(tǒng)為基礎,通過增加設備聯(lián)網(wǎng)等功能,滿足物聯(lián)網(wǎng)接入設備互聯(lián)需求,形成新的嵌入式操作系統(tǒng)。

 

1.基于Android等操作系統(tǒng)進行裁剪和定制的技術路線

 

采用這條技術路線的操作系統(tǒng)大多是基于開源Linux系統(tǒng)裁剪,優(yōu)勢在于保持底層技術架構一致的基礎上,可以使用原有操作系統(tǒng)的商業(yè)生態(tài),從而降低市場進入成本。

 

缺點在于要兼顧多種應用場景,很難保證針對底層應用的最優(yōu)化,包括功耗的最優(yōu)化和可靠性最優(yōu)化等,也很難保證運行在高頻處理器的操作系統(tǒng),經(jīng)過裁剪能夠運行在低主頻和更低主頻的微控制器上。為了便于理解,此處調(diào)用上面的比喻。也就是說,這條路線對“外星人”的腦容量有一定要求,智商達標了才可以。

 

典型代表公司是Google,通過對Android的適當定制裁剪,Google推出了AndroidThings。

2.在傳統(tǒng)RTOS實時操作系統(tǒng)的基礎上增加設備聯(lián)網(wǎng)功能

 

這條技術路線的優(yōu)勢在于原本單片機操作系統(tǒng)就是針對資源受限的硬件平臺開發(fā),功耗和可靠性方面都顯著優(yōu)于上面的技術路徑,通過適當增加功能也能保證功耗和性能符合應用需求。

 

缺點和主要問題在于如何圍繞操作系統(tǒng)構建一套新的完整生態(tài)體系,提高市場占有率。

 

典型代表公司是亞馬遜,2017年底,F(xiàn)reeRTOS作者加入亞馬遜AWS任首席工程師,正式推出AmazonFreeRTOS。

 

目前兩種技術路線尚處發(fā)展的過程中,兩者技術架構完全不同,基本上不存在交集。

 

“說法”并不驗證“想法”,用“做法”驗證想法

 

如今大家對邊緣計算的認識得到了極大提升,物聯(lián)網(wǎng)操作系統(tǒng)的戰(zhàn)略重要性越來越高。一方面物聯(lián)網(wǎng)操作系統(tǒng)不僅包含內(nèi)核,還包含各種功能組件,便于物聯(lián)網(wǎng)企業(yè)加快產(chǎn)品上市時間。另一方面,隨著華為、阿里、ARM等巨頭紛紛布局物聯(lián)網(wǎng),IoTOS作為連接“云”和“端”的“入口”,成為巨頭的必爭之地。

 

有了上面的課程筆記作為基礎,我們可以相對容易的對各種物聯(lián)網(wǎng)操作系統(tǒng)做出基本判斷?!皞鹘y(tǒng)”物聯(lián)網(wǎng)OS的評述和分析已有不少現(xiàn)成的精華文章,因此這里著重以最近火爆的“新型”物鏈網(wǎng)OS為例,包括萬物鏈ITC、Ruff、亦來云,進行說明。

 

當下“物鏈網(wǎng)”操作系統(tǒng)尚沒有明確的定義,對于大量碎片化的物聯(lián)網(wǎng)設備來說,能夠承載區(qū)塊鏈功能的操作系統(tǒng)與“傳統(tǒng)”IoT操作系統(tǒng)并沒有嚴格的區(qū)別。物鏈網(wǎng)OS的新意之一在于考慮到部署區(qū)塊鏈錢包的便捷性,在內(nèi)核之上通過中間件和應用程序提供了更多區(qū)塊鏈功能的支持。

 

客觀現(xiàn)實的危險性不得不提:物鏈網(wǎng)離人性的試金石“利益”太近,往往令人變得“言不由衷”,因此寫在白皮書上的文字和各種高談闊論的“說法”并不能驗證真實“想法”。一個物聯(lián)網(wǎng)操作系統(tǒng)團隊的想法是否可行、能否落地,只能反應于他們會采取什么樣的“做法”。區(qū)塊鏈技術在物聯(lián)網(wǎng)領域的應用,將是個緩慢長期的過程,但由于物鏈網(wǎng)OS的做法普遍“非比尋?!?,結果或很快就能見分曉。

 

從學習筆記你可以看出,操作系統(tǒng)是一個比較耗費時間的技術,相對來說從業(yè)者并不多,創(chuàng)始團隊如果沒有10年以上的底蘊積累,難掀風浪。而區(qū)塊鏈也是一種以公信力為代表的技術,也就意味著裝機量不大的系統(tǒng)直接出局。IoT設備普遍計算能力相對薄弱,資源受限,挖礦激勵機制基本上在IoT設備中不可行,也就大概率不存在為了獲得激勵而鋪機器的情況。因此作為操作系統(tǒng)的“新生”萬物鏈ITC可以直接跳過。

 

直接來看Ruff。Ruff是由上海南潮信息科技有限公司開發(fā)的一個支持JavaScript開發(fā)應用的物聯(lián)網(wǎng)操作系統(tǒng)。RuffOS 1.0于2016年4月正式發(fā)布,同時發(fā)布的還有RuffSDK、Ruff軟件倉庫、Ruff開發(fā)套件等幫助開發(fā)者快速開發(fā)物聯(lián)網(wǎng)應用的工具。

 

Ruff在物聯(lián)網(wǎng)領域是一種獨特的存在。RuffOS是一個兼容多個平臺的運行環(huán)境Runtime,它不僅支持嵌入式Linux,還支持MCU單片機領域等。RuffOS為開發(fā)者提供統(tǒng)一的硬件資源的抽象,幫助開發(fā)者便捷管理APP。

依照學習筆記中整體架構一項作為主要判斷因素,Ruff的理想是在現(xiàn)有操作系統(tǒng)內(nèi)核之上,增加一個物聯(lián)網(wǎng)運行庫(IoT Runtime)就好,的確令人眼前一亮。然而理想豐滿現(xiàn)實骨感,以Runtime為支撐的操作系統(tǒng)很“單薄”,受到來自芯片企業(yè)和IoT軟件應用開發(fā)者的雙重壓力也更大,使用場景比較有限。

 

尤其在當Ruff提出了自己的區(qū)塊鏈Ruff Chain之后,雖然在區(qū)塊鏈技術應用于物聯(lián)網(wǎng)方面有一定優(yōu)勢,但“傳統(tǒng)”物聯(lián)網(wǎng)公司也可以在具體實施過程中引入?yún)^(qū)塊鏈技術,況且Ruff團隊在運營區(qū)塊鏈生態(tài)之余,還有多少精力兼顧OS底層架構的牢固可靠性,不禁令人擔憂。

 

Elastos現(xiàn)在有了更令人熟知的名字,亦來云。我與亦來云的創(chuàng)始人陳榕相識于2015年,他是清華大學計算機系77級的學長,先是在美國伊利諾伊大學研究了7年操作系統(tǒng),隨后又在微軟總部8年,參與Windows操作系統(tǒng)底層模塊的開發(fā),回國后一心做操作系統(tǒng)苦熬十多年,可以說從頭見證了各種OS的發(fā)展。

 

從學習筆記中的技術路線上來看,亦來云采用了物聯(lián)網(wǎng)操作系統(tǒng)中的第一種。由于Linux已經(jīng)相當成熟,改進空間不大,因此亦來云將主要精力用于虛擬機技術。這一定位決定了亦來云對于大量的碎片化小型物聯(lián)網(wǎng)設備來說有些“龐大”,覆蓋不了占據(jù)絕大多數(shù)比例的物聯(lián)網(wǎng)場景,Elastos更加適合于計算能力較高的物聯(lián)網(wǎng)設備以及與互聯(lián)網(wǎng)接壤的領域。Elastos將區(qū)塊鏈功能運行在操作系統(tǒng)之上,提升了部署效率。

 

寫到這里,不禁有個問題,物聯(lián)網(wǎng)操作系統(tǒng)承載區(qū)塊鏈DApp應用并非難事,為什么那些最有實力的IoTOS沒有介入呢?你我心中都有答案。

 

除了物鏈網(wǎng)操作系統(tǒng)之外,現(xiàn)在打著各種“人工智能”旗號的物聯(lián)網(wǎng)操作系統(tǒng)正在浮現(xiàn)。比較奇葩的一款比如TreeOS,號稱可以“從電路圖直接生成代碼”,呵呵。相信每個人對照著上面的“課程”筆記,都可以對它進行一目了然的評價。根據(jù)一份最新的研究報告顯示,全球物聯(lián)網(wǎng)操作系統(tǒng)最近幾年將以超過42%的CAGR增長。與PC、平板電腦和智能手機有本質不同,由于碎片化、場景復雜等特性,IoT可能不會出現(xiàn)只有幾款操作系統(tǒng)主導整個物聯(lián)網(wǎng)市場的情況。相反,和物聯(lián)網(wǎng)云平臺的情況類似,我們將不得不面對數(shù)十種IoT OS的備選方案,它們各自的優(yōu)缺點都不能放之四海而皆準,但四海之內(nèi)一定有最適合你手中物聯(lián)網(wǎng)場景的OS或OS組合。上述學習筆記可以進一步提煉為IoT OS要素Checklist,希望它能為你擦亮雙眼。

掃一掃在手機上閱讀本文章

版權所有? 四川中衛(wèi)北斗科技有限公司    蜀ICP備14007264號-3    技術支持: 竹子建站