Linux 最初是為使用 80386 處理器的 PC 設計的愛好者操作系統 (OS)。但自 1991 年推出以來,它已發展成為一種廣泛使用的操作系統,可在 PC、服務器、大型機和物聯網 (IoT) 設備上運行。世界上大多數頂級超級計算機都在 Linux 上運行。
Linux 的支持范圍令人印象深刻。從最小的設備到最大的大型機和超級計算機,許多設備都運行這種流行操作系統的變體。Linux 流行的原因取決于使用情況;在某些情況下,它是開源方面的,而在其他情況下,它是設備支持的規模以及處理器和平臺的范圍。
現在讓我們深入探討 Linux 在物聯網市場流行的一些關鍵原因。
Linux架構
Linux 是一種開源操作系統,可以從資源受限的小型計算機擴展到最大的超級計算機。它的源代碼是可移植的,這意味著它可以在各種不同的處理器架構(Intel? 、 Arm、IBM PowerPC 等)上運行。
Linux 具有堆棧架構(圖 1)。Linux 的頂層包含應用程序所在的用戶空間(以及工具、庫、shell 等)。內核空間包含 Linux 內核和設備驅動程序。Linux 內核提供調度、進程和內存管理以及一組核心功能。考慮到支持的設備范圍,設備驅動程序包含 Linux 操作系統中的最大代碼量。在構建 IoT 設備或網關時,Linux 可以輕松利用外圍設備(網絡或無線接口、顯示接口等)并在所需的環境中使用它們。
圖 1:Linux 的高級堆棧架構。
在傳統的固件開發中,開發人員為目標系統構建代碼,然后將代碼下載到目標系統進行測試。Linux 可以在目標系統上承載所有的開發工具,使得使用 Linux 開發和測試代碼變得非常容易。
Linux 安全
安全性是物聯網設計中的一個關鍵問題。Linux 以多種方式為 IoT 應用程序提供安全平臺。首先,Linux 是一個開源操作系統,這意味著可以快速發現并修復可能導致漏洞利用的缺陷(與閉源操作系統相比,閉源操作系統很少有人仔細檢查它們)。其次,Linux 包含許多安全功能;從安全模塊框架(支持 AppArmor 等各種安全實現)到提高安全性的內核特性(例如地址空間布局的隨機化)。
物聯網 Linux 發行版
Linux 作為物聯網的軟件平臺已經變得如此流行,以至于您可以找到很多 Linux 發行版來解決物聯網設計問題。表 1列出了最流行的物聯網 Linux 發行版。
表 1:適用于 Linux 的流行 Linux 發行版。
分配 | 描述 |
AndroidThings | 基于 Android 的操作系統,支持 Android API 和 Google 服務。 |
Debian 修補匠 | 用于小型設備的 Debian blend。 |
打開Wrt | 用于嵌入式設備的基于 Linux 的發行版(主要用于無線路由器設備)。 |
樹莓派 | Raspbian 是在Raspberry Pi 硬件上運行的 Debian Linux 操作系統的衍生版本(包括超過 35K 的軟件包)。 |
泰森 | 三星的嵌入式 Linux 堆棧為三星的大部分消費和物聯網設備提供支持。 |
Ubuntu核心 | Ubuntu Core 是 Ubuntu 的嵌入式版本,可在最小資源系統(例如 Pi)上運行。 |
約克托 | Yocto 本身不是一個發行版,而是一個開源項目,可幫助為嵌入式和物聯網設備創建自定義 Linux 發行版。 |
結論
Linux 是物聯網生態系統的核心,從最小的物聯網設備到邊緣網關和云。最近一項由 Eclipse IoT 工作組、AGILE IoT、IEEE 和開放移動聯盟贊助的在線調查發現,在物聯網開發人員中,大約 72% 的受訪者將 Linux 用于他們的物聯網設備。其開源操作系統、可擴展性、安全特性和廣泛的發行版等因素使 Linux 成為物聯網開發的熱門選擇。
關鍵點:
Linux 為物聯網生態系統提供動力,從最小的設備到最龐大的超級計算機。
Linux 提供了多種發行版來支持物聯網設計。
Linux 安全功能保護物聯網設備。
審核編輯:湯梓紅
-
物聯網
+關注
關注
2923文章
45692瀏覽量
385735 -
Linux
+關注
關注
87文章
11425瀏覽量
212406 -
操作系統
+關注
關注
37文章
7028瀏覽量
124756
發布評論請先 登錄
蜂窩物聯網怎么選
為什么選擇蜂窩物聯網
宇樹科技在物聯網方面
入門?畢設?競賽?項目練手?STM32/嵌入式/物聯網學習,有這幾款開發板就夠了!

評論