- Contiki
-
This article is about the embedded operating system. For other uses, see Contiki (disambiguation).Not to be confused with Kontiki.
Contiki
Screenshot of the VNC server running on the Atmel AVR port of Contiki.Company / developer Adam Dunkels Working state Current Source model Open source Latest stable release 2.5 / September 8, 2011 Default user interface CTK License BSD License Official website http://www.sics.se/contiki/ Contiki is a small, open source, highly portable multitasking computer operating system developed for use on a number of memory-constrained networked systems ranging from 8-bit computers to embedded systems on microcontrollers, including sensor network motes. The name Contiki comes from Thor Heyerdahl's famous Kon-Tiki raft.
Despite providing multitasking and a built-in TCP/IP stack, Contiki only needs a few kilobytes of code and a few hundred bytes of RAM. A full system, complete with a graphical user interface, needs about 30 kilobytes of RAM.[citation needed]
The basic kernel and most of the core functions were developed by Adam Dunkels at the Networked Embedded Systems group at the Swedish Institute of Computer Science.
Contents
Design
Contiki is designed for embedded systems with small amounts of memory. A typical Contiki configuration consumes 2 kilobytes of RAM and 40 kilobytes of ROM.
Contiki consists of an event-driven kernel on top of which application programs are dynamically loaded and unloaded at runtime. Contiki processes use light-weight protothreads that provide a linear, thread-like programming style on top of the event-driven kernel.
Platforms
Contiki runs on a variety of platforms ranging from embedded microcontrollers such as the TI MSP430 and the Atmel AVR to old home computers. Code footprint is on the order of kilobytes and memory usage can be configured to be as low as tens of bytes.
Features
Contiki supports per-process optional preemptive multi-threading, inter-process communication using message passing through events, as well as an optional GUI subsystem with either direct graphic support for locally connected terminals or networked virtual display with VNC or over Telnet.
A full installation of Contiki includes the following features:
- Multitasking kernel
- Optional per-application pre-emptive multithreading
- Protothreads
- TCP/IP networking, including IPv6
- Windowing system and GUI
- Networked remote display using Virtual Network Computing
- A web browser (claimed to be the world's smallest)
- Personal web server
- Simple telnet client
- Screensaver
Ports
The Contiki operating system has been or is being ported to the following systems:
- Computers:
- Apple II family[1]
- Atari 8-bit[1]
- Atari ST
- Atari Portfolio
- Casio Pocket Viewer
- Commodore PET[1]
- Commodore VIC-20[1]
- Commodore 64[1]
- Commodore 128[1]
- Oric[1]
- PC-6001
- Sharp Wizard
- x86-based Unix-like systems, on top of GTK+ as well as directly using the X Window System[2]
- Video game consoles:
- Handheld game consoles:
See also
References
External links
- Official website
- C64WEB.COM A web site run from a unmodified 1982 Built Commodore 64
- Inofficial Website for historic ports of the 1.x version
- The news about IPv6 stack
- Minimal Contiki OS for LPC2103
- Contiki 2.5 config file and disk image generator
Wireless Sensor Network Operating systems Industry standards Programming languages Hardware Software Applications Protocols Conferences/Journals Real-time operating systems (RTOS) BeRTOS · ChibiOS/RT · Contiki · DioneOS · DNIX · DSOS · eCos · Embedded Linux · ERIKA Enterprise · EROS · FreeRTOS · FunkOS · Integrity · Junos · LynxOS · MenuetOS · MQX · MERT · Nano-RK · Nucleus RTOS · OpenComRTOS · OS-9 · OSE · PikeOS · pSOS · Prex · QNX · RMX · RSX-11 · RT-11 · RTEMS · RTLinux · RT-Thread · SINTRAN III · Symbian · Talon DSP RTOS · THEOS · ThreadX · TPF · TRON · µC/OS-II · VRTX · VxWorks · Windows CECategories:- Wireless sensor network
- Embedded operating systems
- Free web browsers
- Home computer software
- Free software operating systems
- Retrocomputing
- TRS-80 Color Computer
- Commodore 64 software
- Commodore 128 software
- Apple II software
- Atari 8-bit family software
- Atari ST software
- Commodore VIC-20 software
Wikimedia Foundation. 2010.