為什么IoT設(shè)備的操作系統(tǒng)選用RTOS,而不是Linux?
素材來(lái)源:網(wǎng)絡(luò)
編輯整理:strongerHuang
物聯(lián)網(wǎng)近兩年的快速發(fā)展,想必大家都看到了,因?yàn)槲锫?lián)網(wǎng),使C語(yǔ)言的成為最受歡迎的語(yǔ)言(之前幾年JAVA一直的老大)。
順便先給大家看看6月TIOBE指數(shù):
C語(yǔ)言已經(jīng)連續(xù)兩月位居榜首,超越JAVA了。
一、為什么IoT設(shè)備選用RTOS?
我們說(shuō)的IoT設(shè)備,通常指的是物聯(lián)網(wǎng)系統(tǒng)中的終端設(shè)備,我們將IoT設(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è)備的軟件應(yīng)該具備:
可擴(kuò)展:以適應(yīng)各種不同類(lèi)別的設(shè)備
模塊化:選擇所需的組件
可連接:通過(guò)Wi-Fi,以太網(wǎng),USB或藍(lán)牙將數(shù)據(jù)移入和移出設(shè)備。
可靠性:最好具有相關(guān)的安全認(rèn)證
1.可擴(kuò)展性
可擴(kuò)展的RTOS可以幫助你提高開(kāi)發(fā)效率,降低開(kāi)發(fā)成本并縮短上市時(shí)間。
盡管從歷史上看,嵌入式系統(tǒng)完全是圍繞8位和16位MCU構(gòu)建的,但是32位MCU的價(jià)格卻一直在迅速下降,銷(xiāo)量在快速增長(zhǎng),使其成為最受歡迎的MCU。
2.模塊化
想必大家都看到了眾多RTOS廠(chǎng)家都在不斷完善自家RTOS的生態(tài),各種中間件和組件越來(lái)越多,但有一個(gè)特點(diǎn)就是,模塊化。
大家熟悉的μC/OS、RT-Thread、FreeRTOS等都圍繞RTOS擴(kuò)展了許多組件。
3.可連接
網(wǎng)絡(luò)連接對(duì)于物聯(lián)網(wǎng)非常重要,關(guān)鍵的一點(diǎn)就是“連接”,否則就只是“物”,而不能叫物聯(lián)網(wǎng)了。
如果RTOS有配套的協(xié)議棧最好,這樣就能節(jié)省開(kāi)發(fā)時(shí)間,同時(shí),如果芯片自帶有所需的協(xié)議棧更好,這樣就能節(jié)省設(shè)備上的內(nèi)存并降低成本。
4.可靠性
可靠性這一點(diǎn)相信不用我說(shuō),做過(guò)開(kāi)發(fā)的都能理解。產(chǎn)品運(yùn)行一段時(shí)間出現(xiàn)bug是一件多么頭疼的事情。。。
所以,不光是看得到的實(shí)物需要認(rèn)證,“看不見(jiàn)”的軟件也是需要認(rèn)證。
二、為什么不使用Linux呢?
Linux是一種強(qiáng)大的,對(duì)開(kāi)發(fā)人員友好的操作系統(tǒng),作為物聯(lián)網(wǎng)設(shè)備的平臺(tái)已受到關(guān)注,Linux已成熟成為許多應(yīng)用程序的主流嵌入式操作系統(tǒng)。
Linux在嵌入式設(shè)備中有很多用途,尤其是那些提供圖形豐富的用戶(hù)界面的設(shè)備。
然而,與實(shí)時(shí)操作系統(tǒng)(RTOS)相比,Linux有一個(gè)“缺點(diǎn)”:內(nèi)存占用。即使可以通過(guò)刪除嵌入式系統(tǒng)不需要的工具和系統(tǒng)服務(wù)來(lái)縮小Linux,但它仍然非常龐大(相對(duì)RTOS)。
它根本無(wú)法在8位或16位MCU上運(yùn)行,甚至許多較新的32位MCU都沒(méi)有足夠的板載RAM用于Linux內(nèi)核。
ARM Cortex-M系列就是非常適合IoT的MCU,有數(shù)百種基于流行的Cortex-M架構(gòu)的MCU,通常只有幾百KB的內(nèi)存,Linux基本不能在這些芯片上運(yùn)行。
所以,為什么不使用Linux呢?總結(jié)來(lái)說(shuō)就是IoT設(shè)備的硬件(資源、性能)不適合Linux。
長(zhǎng)按前往圖中包含的公眾號(hào)關(guān)注
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!