You are currently on the OS48 project site.
In short terms, OS48 (aka RTOS48) is an OS / RTOS kernel for your Arduino sketches. It can help you to improve your productivity to develop multitasking programs on your microcontroller. The kernel has been written to use it as a C++ library.
This library is designed for you if you:
- don't want to waste too much time to develop your own parallels routines
- want to focus on the functional aspect of your project
- don't know the ASM langage or the architecture of your microcontroller
- hesitate to use the concurrent libs because they are not always easy to understand
- want to have a complete and clear documentation with tutorials and examples
- Many preemtives scheduling algorithms including a cooperative mode (wikipedia definitions)
- Low power consumption if there is no activity
- Intelligent stack overflow detection
- Tasks management (suspend/resume/sleep a task)
- Messaging system between tasks (send/get/wait)
- Concurrency functions: semaphores, barriers
- Easily understandable source code
- Memory functions overview
- Statistics prints to have an overview of the usage of CPU/memory.
- "Safe code section" helpers to avoid interruptions
An Arduino board with an Atmega128 / Atmel Atmega328 / Atmega328p / Atmega32u4 / Atmega2560 (ex Arduino Nano, Uno, Leonardo, Mega). Let the timer0 with the output compare mode free (the OCR0A register will be used). Note that the time functions of the arduino lib works also with the timer0 but with the overflow mode.
OS48 project is released under the terms of the MIT license. You can read the terms here.