Contiki

Contiki was created by Adam Dunkels in 2002[2] and has been further developed by a worldwide team of developers from Texas Instruments, Atmel, Cisco, ENEA, ETH Zurich, Redwire, RWTH Aachen University, Oxford University, SAP, Sensinode, Swedish Institute of Computer Science, ST Microelectronics, Zolertia, and many others.

[3] Contiki gained popularity because of its built in TCP/IP stack and lightweight preemptive scheduling over event-driven kernel[4] which is a very motivating feature for IoT.

[5] A new branch has recently been created, known as Contiki-NG: The OS for Next Generation IoT Devices Contiki is designed to run on types of hardware devices that are severely constrained in memory, power, processing power, and communication bandwidth.

The Rime stack provides a set of communication primitives for low-power wireless systems.

Contiki provides a set of mechanisms to reduce the power consumption of systems on which it runs.

To run efficiently on small-memory systems, the Contiki programming model is based on protothreads.

Contiki supports per-process optional preemptive multithreading, inter-process communication using message passing through events, as well as an optional graphical user interface (GUI) subsystem with either direct graphic support for locally connected terminals or networked virtual display with Virtual Network Computing (VNC) or over Telnet.

Screenshot of the VNC server running on the Atmel AVR port of Contiki
Contiki on the Commodore 64