一般來說,大家想到的不外乎是溫度、壓力、濕度傳感器、電力開關或是微型攝影機,因為不需要太多功能,這些物聯網 IoT 裝置的大腦其實都很簡單,大概就是在一顆簡易的 CPU 上面執行 Linux 這套操作系統。
不過,很多時候對物聯網 IoT 裝置來說,連要有顆簡易的 CPU 都太過奢侈,取而代之的是微控制器(不知道那是什么的話可以看看何謂微控制器);但微控制器的運算能力太低、跑不動 Linux 這種完整的操作系統,所以操作系統也從原本的 Linux 變成 FreeRTOS 這種專門為微控制器設計的操作系統。
FreeRTOS 是什么
FreeRTOS 是一個在 2003 年誕生、專門為微控制器設計的操作系統。
一般來說微控制器不見得需要一個操作系統;不過,要是微控制器要做的事情多了起來(例如接了 25 個傳感器,然后還要跟另外 3 個裝置溝通),操作系統所提供的功能(讓各個程序分享硬件資源、不互相沖突地工作)就能幫上很大的忙??梢杂酶俚某绦虼a寫出一樣的功能、并且也更穩定、好維護。
不過,有一些傳統上我們不歸類為物聯網 IoT 裝置的,其實也是跑著幾乎一樣的硬件,例如無線門鈴、煙霧警報器等等。他們多半用的也是(比較老舊的)微控制器與 FreeRTOS,但無法與網絡連接。
亞馬遜為何對 物聯網IoT 有興趣?
亞馬遜這個以“什么都賣”而聞名的公司,自從在 2006 年推出它的云端運算服務(Amazon Web Service,簡稱 AWS)以來,就不斷地擴張他們的云端版圖。從他們這次的聲明稿與最近的動作來看,IoT 是他們擴張云端版圖的下一個目標(這也不是第一次有大型科技公司想這樣做了,像是 Google 去年底就推出 Android Things、還有華為早在 2015 就推出 LiteOS)。
Amazon Web Services
透過這次發表的 Amazon FreeRTOS(目前只支持 4 種開發板),亞馬遜可以讓新創公司踏入 物聯網IoT 的難度降低;另一方面也可以讓已經在制造設備的廠商更容易將他們的產品(假設原本就是跑 FreeRTOS 的話)變成物聯網 IoT 并連上云端(正確來說應該是亞馬遜的云端);而且減少那些公司在更新設備、確保安全性所需的資源。
我是個 Maker,這跟我有什么關系?
給 IoT 用的操作系統其實不少,除了 FreeRTOS 之外還有 Riot、Contiki、Zephyr、TinyOS、Mbed(太多了,列幾個就好…)。這次亞馬遜除了釋出 Amazon 版的 FreeRTOS 之外,對 maker 來說的另一個重點,是他們把 FreeRTOS 的創始者 —— Richard Barry 也請進了 Amazon ,并且把 FreeRTOS 原始碼的授權方式改為 MIT 授權(簡單來說就是更適合商用公司使用)。
所以,如果你接下來打算開發功能更為復雜、但是跑在微控制器上的物聯網IoT 裝置的話(上面提到的那幾個操作系統,并不是全部都能跑在微控制器上),或許可以多考慮一下要不要用 FreeRTOS 這個經過十幾年的歷練、發展,而且現在又有亞馬遜這個大型科技公司在背后支持的操作系統?!?