更新时间:2022-08-25 19:01
Contiki 是一个小型的,开源的,极易移植的多任务操作系统。它专门设计以适用于一系列的内存受限的网络系统,包括8位微处理器的嵌入系统。它的名字来自于托尔·海尔达尔的康提基号。
Contiki只需几kilobyte的代码和几百字节的内存就能提供多任务环境和内建TCP/IP支持。
Contiki可以在每个进程内选择是否支持先占式多线程,进程间通讯通过事件利用消息来实现。Contiki中还包括一个可选的GUI子系统,可以提供对本地终端、基于VNC的网络化虚拟显示或者Telnet的图形化支持。
完整的Contiki系统包括以下特性:
Contiki适用于只有极少量内存的嵌入式系统。在一个较为典型的配置中,Contiki系统只需2Kb的RAM与40Kb的ROM。 Contiki包括了一个事件驱动的内核,因此可以在运行时动态载入上层应用程序。Contiki中使用轻量级的protothreads进程模型,可以在事件驱动内核上提供一种线性的、类似于线程的编程风格。
Contiki可运行于各种平台上,包括嵌入式微控制器(例如TI MSP430及Atmel AVR)以及旧的家用电脑。程序代码量只有几K,存储器的使用量也只有几十Kb。
Contiki是一个专门针对物联网或者无线传感器网络应用的操作系统和协议栈,在科研以及产业化方面得到广泛的应用。在该领域,还有一个知名的类似的系统- TinyOS,两者都实现了网络协议,两者的比较如下:
Contiki操作系统已被移植到以下系统中:
游戏机平台:
手持游戏机平台:
微型控制器: