為什么物聯(lián)網(wǎng)設備要使用RTOS?
數(shù)據(jù)驅(qū)動世界的需求意味著您的物聯(lián)網(wǎng)設備將需要強大而可靠的軟件。為此,您需要一個實時操作系統(tǒng)(RTOS)。
我們將物聯(lián)網(wǎng)設備視為通過網(wǎng)絡發(fā)送和接收信息的嵌入式系統(tǒng)。盡管許多嵌入式系統(tǒng)使用較不復雜的軟件即可很好地管理,但聯(lián)網(wǎng)設備需要功能更強大的系統(tǒng)。
物聯(lián)網(wǎng)設備的軟件必須為:
- 可擴展,以適應各種不同類別的設備
- 模塊化的,因此您只能選擇滿足嚴格的RAM要求所需的組件
- 已連接,因此您可以通過Wi-Fi,以太網(wǎng),USB或藍牙將數(shù)據(jù)移入和移出設備。
- 可靠,因此您的設備可以通過安全關鍵性應用認證
那么為什么不使用Linux呢?
Linux當然是一個成熟的,對開發(fā)人員友好的操作系統(tǒng),作為物聯(lián)網(wǎng)設備的平臺已受到關注。Linux已成為許多應用程序的主流嵌入式操作系統(tǒng)。
然而,與實時操作系統(tǒng)相比,Linux有一個缺點:內(nèi)存占用。即使可以通過刪除嵌入式系統(tǒng)中不需要的工具和系統(tǒng)服務來縮小Linux的規(guī)模,但它仍然是一大部分軟件。它根本無法在8位或16位MCU上運行,甚至許多較新的32位MCU都沒有足夠的板載RAM用于Linux內(nèi)核。ARM Cortex-M系列就是一個很好的例子:有數(shù)百種基于流行的Cortex-M架構(gòu)的MCU,通常只有幾百KB的板載內(nèi)存。Linux將永遠無法在這些芯片上運行。
Linux當然會在嵌入式設備中有很多用途,尤其是那些提供圖形豐富的用戶界面的設備。但是有成千上萬的Linux不適合應用程序。