Contiki

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操作系统已被移植到以下系统中：

 电脑：
 Apple II family
 Atari 8-bit
 雅达利ST
 Atari Portfolio
 Casio Pocketview
 Commodore PET
 Commodore VIC-20
 Commodore 64 
 Commodore 128
 Oric
 PC-6001
 Sharp Wizard

 游戏机平台：
 PC Engine
 FC游戏机
 雅达利Jaguar

 手持游戏机平台：
 Game Boy
 Game Boy Advance
 GP32

 微型控制器：
 Atmel AVR
 LPC2103
 TI MSP430
 TI CC2430

参见

 
 
 RIOT
 
 TinyOS
 
 实时操作系统比较

参考资料

外部链接
 
 Contiki主页
 Contiki官方博客
  最全面的Contiki 6Lowpan物联网技术中文研究网站
 C64WEB.COM一个运行在一台未修改过的1982生产的Commodore 64上的网站
 1.x版本网站的非官方历史镜像
 关于IPv6的新信息
  移植到LPC2103的精简Contiki系统

嵌入式作業系統
自由網頁瀏覽器
自由作業系統
免費軟件
ARM操作系统
MIPS作業系統