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