FunkOS

FunkOS
Developer Funkenstein Software Consulting
OS family Custom
Working state Current
Source model Free for all purposes, with some conditions
Initial release 2009
Latest release R3 - Cactrot[1] / March 20, 2010
Marketing target Embedded system, Microcontroller, Real-time systems
Available in English
Platforms AVR, ARM, Texas Instruments MSP430
Kernel type Real-time Microkernel
Default user interface Fooey
License Open Source Software, (Modified Sleepycat License)
Official website funkos.sourceforge.net

FunkOS is a real-time operating system (RTOS) developed by Funkenstein Software Consulting, targeting a variety of microcontroller architectures. It is free to use in any project - commercial or otherwise - with few conditions. If the kernel is ported to a new target, that code must also be made available for inclusion in future releases. Also, if used in commercial projects, an attribution statement must be included in some form of product documentation.

Description

FunkOS is a fully preemptive multi-tasking environment, capable of running on a variety of modern microcontroller architectures.

The kernel supports an unlimited number of program "tasks" running from up to 255 different priority levels.

Tasks are independent programs, each with their own stack. At each RTOS tick, the highest-priority task is chosen for execution, with round-robin scheduling used when multiple tasks from the same priority level are ready to run.

An idle task must be defined for every application, and can be used to invoke power-saving functionality of the hardware platform.

Key features in the kernel include:

The kernel is highly customizable, allowing the developer to include or eliminate kernel features based on the application requirements. FunkOS is very lightweight as a result - the smallest useful kernel and application compiles to under 2 kilobytes of code space and 400 bytes of RAM on an AVR microcontroller.

The FunkOS++ kernel is currently the only open-source, preemptive RTOS for 8-bit microcontrollers written in C++.

Ports

Atmel:

Texas Instruments:

ARM:

Ports for other modern microcontrollers are planned for future releases.

Roadmap

Future releases will include the following features:

See also

References

External links

This article is issued from Wikipedia - version of the 6/2/2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.