A weblog focused on interesting circuits, ideas, schematics and other information about microelectronics and microcontrollers.
FemtoOS for AVRs
The Femto OS is a very concise portable preemptive operating system (RTOS) for embedded devices with minimal ram and flash, say 2KB .. 16KB flash and 128 .. 1024 bytes ram.
The typical footprint is between 1K and 4K flash, depending on the functions used. Somewhere around 2K for the OS itself is realistic figure for normal applications. The OS takes between 12 and 20 bytes of ram, tasks can take as little as 6 bytes of ram, but approximately 20 to 40 bytes is more realistic for real applications. Figures are including the stack. It is perfectly possible to run 4 or more tasks on an ATtiny261. There is no separate idle task and most api function calls run in OS space. The OS is interruptible most of the time, if needed. There are tools to watch and protect the use of the stack of the tasks and the OS.