Contiki
外觀
此條目需要補充更多來源。 (2017年5月8日) |
開發者 | Adam Dunkels |
---|---|
運作狀態 | 當前 |
原始碼模式 | 開放原始碼 |
首次發佈 | 2003年3月10日 |
目前版本 |
|
預設用戶介面 | CTK |
許可證 | BSD許可證 |
官方網站 | www |
Contiki是一個小型、開源、極易移植的多工電腦作業系統。它專門設計以適用於一系列的主記憶體受限的網絡系統,包括從8位元電腦到微型控制器的嵌入系統。它的名字來自於托爾·海爾達爾的康提基號。
Contiki只需幾千位元組的代碼和幾百位元組的主記憶體就能提供多工環境和內建TCP/IP支援。
作為基礎的內核以及大部分的核心功能是瑞典電腦科學研究所的網絡內嵌系統小組的Adam Dunkels開發的。
設計
[編輯]Contiki適用於只有極少量主記憶體的嵌入式系統。在一個較為典型的組態中,Contiki系統只需2Kb的RAM與40Kb的ROM。 Contiki包括了一個事件驅動的內核,因此可以在執行時動態載入上層應用程式。Contiki中使用輕量級的protothreads行程模型,可以在事件驅動內核上提供一種線性的、類似於線程的編程風格。
平台
[編輯]Contiki可執行於各種平台上,包括嵌入式微控制器(例如TI MSP430及Atmel AVR)以及舊的家用電腦。程式碼量只有幾K,記憶體的使用量也只有幾十Kb。
特點
[編輯]Contiki可以在每個行程內選擇是否支援先佔式多線程,行程間通訊通過事件利用訊息來實現。Contiki中還包括一個可選的GUI子系統,可以提供對本地終端、基於VNC的網絡化虛擬顯示或者Telnet的圖形化支援。
完整的Contiki系統包括以下特性:
- 多工內核
- 每個應用程式中可選的先佔式多線程
- Protothreads模型
- TCP/IP網絡支援,包括IPv6
- 視窗系統與GUI
- 基於VNC的網絡化遠端顯示
- 網頁瀏覽器
- 個人網絡伺服器
- 簡單的Telnet客戶端
- 螢幕保護裝置
移植版本
[編輯]Contiki作業系統已被移植到以下系統中:
- 電腦:
- 手持遊戲機平台: