RIOT (作業系統)
RIOT 是一個適用於物聯網裝置的低主記憶體佔用作業系統。它是一個在LGPLv2下釋出的開源軟件。
開發者 | Martin Lenders、Benjamin Valentin、Alexandre Abadie |
---|---|
程式語言 | C語言、C++ |
作業系統家族 | 嵌入式作業系統 |
運作狀態 | 活躍 |
原始碼模式 | 開放原始碼 |
目前版本 |
|
支援平台 | TI MSP430, ARM7, ARM Cortex-M0-M0+-M3-M4, Atmel AVR, MIPS32r2 |
內核類別 | 微內核 |
許可證 | LGPLv2 |
官方網站 | www |
倉庫 |
背景
它最初是由柏林自由大學(FU Berlin),法國國家資訊與自動化研究所(INRIA)和漢堡應用科技大學(HAW Hamburg)一同開發的。RIOT的內核基本上是從FireKernel繼承的;[2] 這個內核原本是為感測器網絡開發的。
技術資訊
RIOT是基於微內核架構的。[3] 和其他低主記憶體佔用的系統(如TinyOS和Contiki)不同, RIOT允許使用C語言和C++語言編寫應用程式,而且提供完整的多線程和即時響應解決方案。[4]
RIOT可以在8位元單晶片(比如AVR ATMega),16位元單晶片(比如MSP430)和32位元單晶片(比如ARM Cortex)上執行。[5] RIOT也可以作為一個Linux或macOS行程執行,這樣就能使用諸如GNU編譯器合集(GCC),GNU除錯器,Valgrind,Wireshark等標準除錯工具。RIOT符合一部分POSIX標準。
RIOT提供多種通訊協定棧,[6]包括了IPv6、6LoWPAN和內容中心網絡。它還支援RPL、[7]UDP、TCP和CoAP。
原始碼
RIOT的原始碼在GitHub可見。一個國際化的開源社區負責其原始碼維護。
另請參見
參考文獻
- ^ https://github.com/RIOT-OS/RIOT/releases/tag/2024.04.
- ^ A Real-Time Kernel for Wireless Sensor Networks Employed in Rescue Scenarios, in Proceedings of the IEEE 34th Conference on Local Computer Networks (LCN), October 2009.. IEEE. 2013-10-20 [2014-05-18]. (原始內容存檔於2013-11-09).
- ^ RIOT OS: Towards an OS for the Internet of Things, in Proceedings of the 32nd IEEE International Conference on Computer Communications (INFOCOM), April 2013 (PDF). IEEE. 2013-04-15 [2014-05-18]. (原始內容存檔 (PDF)於2014-05-19).
- ^ Betriebssysteme für eingebettete Systeme im Internet der Dinge: Freie Fahrt für Experimentierfreudige, published in iX Developer Magazine, Special Issue on Embedded Software. Heise.de. 2014-02-14 [2014-05-18]. (原始內容存檔於2014-06-17).
- ^ Avec RIOT, l’Internet des objets tient son OS temps reel open source. lembarque.com. 2014-04-09 [2014-05-18]. (原始內容存檔於2014-05-16).
- ^ Simply RIOT: Teaching and Experimental Research in the Internet of Things, in Proceedings of the 13th ACM/IEEE International Conference on Information Processing in Sensor Networks (IPSN), April 2014. ACM. 2014-04-15 [2014-05-18].
- ^ "RPL: IPv6 Routing Protocol for Low-Power and Lossy Networks", IETF Request For Comments 6550, March 2012. IETF. 2012-03-01 [2014-05-18]. (原始內容存檔於2014-09-20).