物聯網中有兩大類物理對象:標記對象和連接對象。第一類包括貼在產品上的各種標簽技術,如條形碼、二維碼、NFC或RFID標簽、IR/AR等。在這種情況下,對象不是直接連接到網絡,而是被動連接,因為另一個設備或應用程序需要與產品交互。連接的對象直接連接到物聯網,即嵌入式開發的世界,它本質上是小型、相對便宜、低功耗的計算機,資源和功能有限。物聯網嵌入式系統的操作系統目前有兩種:實時操作系統 (RTOS) 和非實時操作系統!
實時操作系統 (RTOS)
在嵌入式設備方面,RTOS 的世界由 FreeRTOS(一種開源實時操作系統)主導,盡管存在一些可行的替代方案,例如 Contiki、TinyOS、mbed OS 或商業 Intel VxWorks。RTOS 的缺點之一是它不太擅長并行操作許多任務,這使得構建提供簡單抽象的復雜層變得困難。這就是非 RTOS 可以提供幫助的地方。它對于任務不那么關鍵的事情特別有用,在這些事情中,用戶體驗和功能比恒定的、非常快速的響應時間更重要。
非實時操作系統
在嵌入式開發中,一個操作系統比在 RTOS 世界中更多地控制所有操作系統:Linux。由于其龐大的社區、大量的工具、抽象和受支持的架構,Linux 是開始修補和創新 IoT 設備的理想環境。但不要搞錯;它也越來越成為現實世界和強大的物聯網應用程序(如家庭自動化或構建應用程序網關)的可靠候選者。還值得注意的是,許多項目提供了 Linux 內核的修改版本,以將其轉變為實時操作系統。
在過去的幾年里,Linux 已經成為一種非常流行的用于嵌入式設備的操作系統,Linux 基金會 (Yocto) 的一個項目現在正致力于為嵌入式設備創建定制的 Linux 發行版。同樣,谷歌發布了 Brillo,它是用于物聯網的 Android(也基于 Linux)的擴展,而 Ubuntu 發布了用于物聯網的 Ubuntu 內核。Ubuntu Core 還展示了物聯網操作系統容器化的一個有趣發展:允許將應用程序部署在容器中,為物聯網應用商店鋪平道路(想象在電梯安裝在現實世界中后為其添加功能)。值得注意的是,雖然 Linux 在很大程度上占主導地位,但在這個領域還有一些 Linux 的替代品,例如用于物聯網的 Windows 10。
在構建物聯網時,您將了解有關嵌入式開發以及如何為 Raspberry Pi、BeagleBone 或 Intel Edison 等平臺安裝和自定義 Linux 的更多信息。關于物聯網嵌入式系統的操作系統就先介紹到這里,更多關于物聯網培訓的問題,歡迎咨詢千鋒教育在線名師,如果想要了解我們的師資、課程、項目實操的話可以點擊咨詢課程顧問,獲取試聽資格來試聽我們的課程,在線零距離接觸千鋒教育大咖名師,讓你輕松從入門到精通。