Contiki是一個小型、開源、極易移植的多任務(wù)電腦操作系統(tǒng)。它專門設(shè)計以適用于一系列的內(nèi)存受限的網(wǎng)絡(luò)系統(tǒng),包括從8位電腦到微型控制器的嵌入系統(tǒng)。它的名字來自于托爾·海爾達爾的康提基號。
Contiki只需幾千字節(jié)的代碼和幾百字節(jié)的內(nèi)存就能提供多任務(wù)環(huán)境和內(nèi)建TCP/IP支持。
作為基礎(chǔ)的內(nèi)核以及大部分的核心功能是瑞典計算機科學(xué)研究所的網(wǎng)絡(luò)內(nèi)嵌系統(tǒng)小組的Adam Dunkels開發(fā)的。
簡介
Contiki 是一個小型的,開源的,極易移植的多任務(wù)操作系統(tǒng)。它專門設(shè)計以適用于一系列的內(nèi)存受限的網(wǎng)絡(luò)系統(tǒng),包括8位微處理器的嵌入系統(tǒng)。它的名字來自于托爾·海爾達爾的康提基號。
Contiki只需幾kilobyte的代碼和幾百字節(jié)的內(nèi)存就能提供多任務(wù)環(huán)境和內(nèi)建TCP/IP支持。
特點
Contiki可以在每個進程內(nèi)選擇是否支持先占式多線程,進程間通訊通過事件利用消息來實現(xiàn)。Contiki中還包括一個可選的GUI子系統(tǒng),可以提供對本地終端、基于VNC的網(wǎng)絡(luò)化虛擬顯示或者Telnet的圖形化支持。
完整的Contiki系統(tǒng)包括以下特性:
??多任務(wù)內(nèi)核
??每個應(yīng)用程序中可選的先占式多線程
??Protothreads模型
??TCP/IP網(wǎng)絡(luò)支持,包括IPv6
??視窗系統(tǒng)與GUI
??基于VNC的網(wǎng)絡(luò)化遠程顯示
??網(wǎng)頁瀏覽器
??個人網(wǎng)絡(luò)服務(wù)器
??簡單的Telnet客戶端
??屏幕保護程序
設(shè)計
Contiki適用于只有極少量內(nèi)存的嵌入式系統(tǒng)。在一個較為典型的配置中,Contiki系統(tǒng)只需2Kb的RAM與40Kb的ROM。 Contiki包括了一個事件驅(qū)動的內(nèi)核,因此可以在運行時動態(tài)載入上層應(yīng)用程序。Contiki中使用輕量級的protothreads進程模型,可以在事件驅(qū)動內(nèi)核上提供一種線性的、類似于線程的編程風(fēng)格。
平臺比較
Contiki可運行于各種平臺上,包括嵌入式微控制器(例如TI MSP430及Atmel AVR)以及舊的家用電腦。程序代碼量只有幾K,存儲器的使用量也只有幾十Kb。
Contiki是一個專門針對物聯(lián)網(wǎng)或者無線傳感器網(wǎng)絡(luò)應(yīng)用的操作系統(tǒng)和協(xié)議棧,在科研以及產(chǎn)業(yè)化方面得到廣泛的應(yīng)用。在該領(lǐng)域,還有一個知名的類似的系統(tǒng)- TinyOS,兩者都實現(xiàn)了網(wǎng)絡(luò)協(xié)議,兩者的比較如下:
移植版本
Contiki操作系統(tǒng)已被移植到以下系統(tǒng)中:
??電腦:
??Apple II family
??Atari 8Bit
??雅達利ST
??Atari Portfolio
??Casio Pocketview
??Commodore 聚對苯二甲酸乙二醇酯
??Commodore VIC-20
??Commodore 64
??Commodore 128
??Oric
??PC-6001
??Sharp Wizard
??游戲機平臺:
??PC Engine
??FC游戲機
??雅達利捷豹
??手持游戲機平臺:
??Game Boy
??Game Boy Advance
??GP32
??微型控制器:
??Atmel AVR
??LPC2103
??TI 氣動式氣槍430
??TI CC2430
參見
??自由軟件主題
??BeRTOS
??Erika Enterprise
??拳頭游戲
??SymbOS
??TinyOS
??Wheels (operating system)
??Comparison of 巴西雷亞爾時間 operating systems
參考資料 >