物聯(lián)網(wǎng)、開源,、操作系統(tǒng)是目前IT業(yè)界的熱門詞匯,,也正是這三個詞匯構成了物聯(lián)網(wǎng)開源操作系統(tǒng)。那么,,對于物聯(lián)網(wǎng)開源操作系統(tǒng),,你了解有多少呢?我們今天帶大家一起走近物聯(lián)網(wǎng)操作系統(tǒng),,同時介紹10款經(jīng)典的物聯(lián)網(wǎng)操作系統(tǒng),。
從物聯(lián)網(wǎng)說起
(圖片來源于:維基百科)
物聯(lián)網(wǎng),英文名:Internet of Things,,簡稱:IoT,,是互聯(lián)網(wǎng)概念的一種延伸,廣義是指各種物理對象之間的聯(lián)網(wǎng),,簡單的說,,就是“物物互聯(lián)”?!拔铩痹谖锫?lián)網(wǎng)中,,可以是各種各樣的設備,例如監(jiān)測心臟功能的植入物,、監(jiān)測農(nóng)場動物的生物芯片,、內(nèi)置傳感器的汽車、監(jiān)測食品環(huán)境的DNA分析設備、用于消防和搜救的現(xiàn)場操作設備等等,。
(圖片來源于:思科)
物聯(lián)網(wǎng)技術包括了智能電網(wǎng),、智能家居、智能交通和智慧城市等等概念,,是一種更廣的聯(lián)網(wǎng),,最終目標是實現(xiàn)電網(wǎng)、家居,、交通等領域網(wǎng)絡之間的互聯(lián),,同時提供安全性、數(shù)據(jù)分析和管理,。
操作系統(tǒng)是什么,?
(圖片來源于:維基百科)
操作系統(tǒng),英文名 operating system,,簡稱:OS,,是一種系統(tǒng)軟件,位于計算機硬件和應用程序中間的一層,,管理硬件和軟件資源,,為計算機程序提供相關服務。所有的計算機程序包括應用程序或者固件,,都需要操作系統(tǒng)支持,。
一般來說,操作系統(tǒng)通常具有以下功能:進程管理,、中斷,、內(nèi)存管理、文件系統(tǒng),、設備驅(qū)動,、網(wǎng)絡、安全,、輸入輸出系統(tǒng),。
典型的操作系統(tǒng)主要有windows 操作系統(tǒng)(微軟)、Unix及類Unix操作系統(tǒng)(Linux,、谷歌),、mac操作系統(tǒng)(蘋果)。
windows 操作系統(tǒng) MS-DOS 的基礎上設計的圖形操作系統(tǒng),,是一種閉源系統(tǒng),,即源代碼不開放。
而Unix及類Unix操作系統(tǒng),,例如FreeBSD,、OpenBSD,、Solaris 、Minix,、Linux、QNX,、谷歌的Android 操作系統(tǒng)(基于linux),,ubuntu,這些基本上都是開源系統(tǒng),,源代碼開放,。
另外就是蘋果的Mac OS X 和 iOS移動設備操作系統(tǒng),是以Darwin為基礎開發(fā)的,,Darwin 是一種類Unix操作操作系統(tǒng),,蘋果的操作系統(tǒng)(Mac OS X 和 iOS)是閉源的,但是蘋果于2000年將 Darwin 進行開源,。
什么是開源操作系統(tǒng),?
開源操作系統(tǒng)(open source operating system),是指源代碼公開的操作系統(tǒng)軟件,,遵循開源協(xié)議進行使用,、編譯和再發(fā)布。在遵守相關開源協(xié)議的前提下,,任何人都可以免費使用,,隨意控制軟件的運行方式。開源操作系統(tǒng)最大的特點就是開放源代碼和自由定制,。下面列舉開源操作系統(tǒng)的一些優(yōu)勢:
易理解:開源操作系統(tǒng)源代碼公開,,開發(fā)人員更容易查看理解代碼,獲取相關知識,。
公開透明:操作系統(tǒng)漏洞和缺陷更容易曝光,,同時代碼的開發(fā)和維護也是公開的。
可定制:用戶可以根據(jù)需求,,依照不同的硬件平臺和應用場景進行定制,。
低成本:無商業(yè)版權費,節(jié)省了相關開發(fā)管理和人力投入成本,。
可持續(xù):即使之前開發(fā)的公司因為各種原因無法支持,,依靠開源社區(qū)廣大的開發(fā)人員的參與,系統(tǒng)還可以持續(xù)維護下去,。
集思廣益:因為開源操作系統(tǒng)公開,,可以讓更多的開發(fā)者參與開發(fā),集中更多的智慧和想法,。
物聯(lián)網(wǎng)為何需要開源操作系統(tǒng),?
對于物聯(lián)網(wǎng)發(fā)展而言,,“碎片化”是主要的問題,其中芯片,、傳感器,、通信協(xié)議、應用場景千差萬別,,“山頭林立”,。比如無線通信標準,就有藍牙,、Wi-Fi,、ZigBee、PLC,、Z-Wave,、RF、Thread,、Z-Wave,、NFC、UWB,、LiFi,、NB-IoT、LoRa等等,。很明顯,,技術方案不統(tǒng)一,體系結構不一致,,阻礙了物聯(lián)網(wǎng)的發(fā)展,,也局限了互聯(lián)互通的范圍。
然而,,各種操作系統(tǒng)可以支持不同的硬件,、通信標準、應用場景,。開源,,有利于打破技術障礙和壁壘,提高互操作性和可移植性,,減小開發(fā)成本,,同時也適合開源社區(qū)的開發(fā)人員參與進來。
操作系統(tǒng),,是物聯(lián)網(wǎng)中一個十分關鍵的環(huán)節(jié),,而開源更佳助推了物聯(lián)網(wǎng)的開放和發(fā)展。目前,,開源操作系統(tǒng)在物聯(lián)網(wǎng)中的應用已經(jīng)十分廣泛,,以后也必將在物聯(lián)網(wǎng)中扮演越來越重要的角色,。
十大物聯(lián)網(wǎng)開源操作系統(tǒng)
手機市場呈現(xiàn)出Android和iOS兩家獨大的局面,而在物聯(lián)網(wǎng)體系中,,操作系統(tǒng)也呈現(xiàn)出多樣性的特點,,并不是一兩種操作系統(tǒng)可以支持所有的物聯(lián)網(wǎng)設備。
所以,,我們今天要重點介紹的是十大物聯(lián)網(wǎng)開源操作系統(tǒng),。(微軟的Windows 10 for IoT 和 蘋果的 iOS,雖然也是很強大,,但是因為閉源,,不在本文介紹之列,。)
1,、Andorid Things
Andorid Things 是谷歌上周剛推出的物聯(lián)網(wǎng)操作系統(tǒng),是去年推出的“Brillo”操作系統(tǒng)的更新版本,,作為 Andorid 系統(tǒng)的一個分支版本,,類似于可穿戴和智能手表用的Andorid Wear(實際上它也是一種物聯(lián)網(wǎng)操作系統(tǒng))。
(圖片來源于:谷歌)
它使用一種名為 Weave的通信協(xié)議,,實現(xiàn)設備與云端相連,,并且與谷歌助手等服務交互。Android Things 面向所有Java開發(fā)者,,不管開發(fā)者有沒有移動開發(fā)經(jīng)驗,。該操作系統(tǒng)將能夠支持一系列物聯(lián)網(wǎng)設備的計算平臺,其中包括英特爾Edison 平臺,,NXP公司的Pico平臺,,以及“黑莓派3”。
2,、Contiki
Contiki,,是一個開源的、容易移植的多任務操作系統(tǒng),,適用于內(nèi)存受限的網(wǎng)絡任務,。Contiki 項目的作者是瑞典計算機科學研究所的網(wǎng)絡嵌入式系統(tǒng)小組的Adam Dunkels 博士。
(圖片來源于:contiki-os.org)
該系統(tǒng)只需要幾千字節(jié)或者幾百字節(jié)的內(nèi)存,,就能提供多任務操作系統(tǒng)環(huán)境和TCP/IP支持,。它已經(jīng)移植并成功運行于嵌入式微控制器平臺(TI MSP430,Atmel AVR)以及電腦,、游戲機等平臺,。它支持的協(xié)議有全標準 IPv6 和 IPv4,以及低功耗網(wǎng)絡標準:6lowpan,、RPL,、CoAP,。
3、eLinux
(圖片來源于:elinux.org)
eLinux,,也稱為Embedded Linux,,即嵌入式Linux 操作系統(tǒng),該操作系統(tǒng)基于Linux 內(nèi)核,,是Linux 對于嵌入式系統(tǒng)的裁剪版,,支持該操作系統(tǒng)的廠家、芯片和產(chǎn)品比較廣泛,。該操作系統(tǒng)的維基主頁提供了開發(fā),、硬件、產(chǎn)品,、廠家,、社區(qū)等一系列相關信息。
4,、FreeRTOS
FreeRTOS 是一個迷你的實時操作系統(tǒng)內(nèi)核,,功能包括:任務管理、時間管理,、信號量,、消息隊列、內(nèi)存管理,、記錄功能,、軟件定時器、協(xié)程等,,可基本滿足較小系統(tǒng)的需要,。
(圖片來源于:freertos.org)
FreeRTOS 操作系統(tǒng)是完全開源你的操作系統(tǒng),具有源碼公開,、可移植,、可裁減、調(diào)度策略靈活的特點,。目前,,該操作系統(tǒng)已經(jīng)數(shù)百萬設備上部署,它號稱是“市場上領先的嵌入式實時操作系統(tǒng)”,,能夠為微控制器和微處理器提供很好的解決方案,。
5、mbed OS
(圖片來源于:https://www.mbed.com/)
這款操作系統(tǒng)由ARM開發(fā),,專門為運行ARM處理器的物聯(lián)網(wǎng)設備而設計,。它包含了C++應用程序網(wǎng)絡,公司也提供其他開發(fā)工具和相關的設備服務器,。
默認情況下,,mbed 操作系統(tǒng)是事件驅(qū)動的單線程架構,,而非多線程(實時操作系統(tǒng))環(huán)境。 這確保了它可以擴展到尺寸最小,、成本最低且功耗最低的物聯(lián)網(wǎng)設備,。
ARM在移動設備端有著強大的市場占有率,所以這款操作系統(tǒng)實力和前景不可小覷
6,、Raspbian
Raspbian 是一款基于Debian,,為樹莓派硬件而設計的操作系統(tǒng)。這個操作系統(tǒng)包括一些列的基礎程序和工具,,保證樹莓派硬件的運行,。
(圖片來源于:http://raspbian.org)
7、RIOT
RIOT,,將自己稱為“友好的物聯(lián)網(wǎng)操作系統(tǒng)”,,致力于開發(fā)者友好、資源友好,、物聯(lián)網(wǎng)友好,,關鍵的功能包括C/C++支持,、多線程,、能量效率、部分遵守POSIX等等,。RIOT 開源社區(qū)自2008年以來就啟動了,。RIOT能夠在眾多平臺上運行包括嵌入式設備、PC,、傳感器等,。
圖片來源于:http://riot-os.org/)
8、Ubuntu Core
Ubuntu 是目前最流行的Linux 版本,,而Ubuntu Core旨在將Ubuntu 帶向物聯(lián)網(wǎng)世界,。它可以運行例如微軟Azure、 谷歌計算引擎,、 亞馬遜彈性云計算服務,,也可以運行在例如BeagleBone Black 和樹莓派等硬件上。
(圖片來源于:http://developer.ubuntu.com)
9,、Huawei LiteOS
Huawei LiteOS 是華為面向IoT領域,,構建的“統(tǒng)一物聯(lián)網(wǎng)操作系統(tǒng)和中間件軟件平臺”,具有輕量級(內(nèi)核小于10k),、低功耗,、互聯(lián)互通、安全等關鍵能力,。Huawei LiteOS 目前主要應用于智能家居,、穿戴式,、車聯(lián)網(wǎng)、智能抄表,、工業(yè)互聯(lián)網(wǎng)等 IoT 領域的智能硬件上,,還可以和LiteOS生態(tài)圈內(nèi)的硬件互聯(lián)互通,提高用戶體驗,。
Liteos操作系統(tǒng)具有能耗最低,,尺寸小、響應快等特點,,也建立了開源社區(qū),,能夠支持的芯片例如海思的PLC芯片HCT3911、媒體芯片3798M/C,、IPCamera芯片Hi3516A,,以及LTE-M芯片等。
10,、Tizen
Tizen,,Linux基金會和LiMo基金會,聯(lián)合英特爾和三星電子,,共同開發(fā)的開源操作系統(tǒng),,它可以滿足物聯(lián)網(wǎng)設備生態(tài)系統(tǒng)(包括設備制造商、手機運營商,、應用開發(fā)者,、獨立軟件服務提供商)的需求,應用于手機,、電視,、穿戴等多個產(chǎn)品。
(圖片來源于:tizen.org)
Tizen底層平臺相關API按照HTML5的形式公開出來,,服務將涵蓋通信,、多媒體、相機,、網(wǎng)絡,、社區(qū)媒體等。三星已經(jīng)售賣了幾款搭載該操作系統(tǒng)的產(chǎn)品,,是它的最大支持者,。