Are you still struggling with complex RTOS in embedded system development? The emergence of Super-Simple-Tasker (SST) will completely change your development experience! It is a lightweight, efficient, and easy-to-use real-time operating system kernel designed specifically for ARM Cortex-M series processors, allowing you to easily control hardware resources and achieve high-performance real-time applications.
Lightweight Does Not Mean Poor Performance
SST is not just a simple task scheduler; it is a complete RTOS kernel that supports preemptive, priority-based task scheduling, fully compliant with Rate Monotonic Analysis/Scheduling (RMA/RMS) requirements. It adopts a non-blocking, run-to-completion task model (similar to basic tasks in the OSEK/VDX specification), which gives SST extremely high efficiency and determinism, perfectly matching the execution mode of event-driven state machines (Active Objects or Actors). This means faster response times, lower resource consumption, and more reliable system operation. You can choose between C or C++ versions and select either preemptive or non-preemptive versions based on your actual needs.
Rich Features to Meet Your Needs
SST provides all the core features you expect from an RTOS:
- • Preemptive, Priority-Based Scheduling: Efficiently handles tasks of different priorities, ensuring that high-priority tasks are executed in a timely manner.
- • Multiple Tasks Supported per Priority: Flexibly organize your tasks for better management of system resources.
- • Multiple Activations Supported per Task (Event Queue): Facilitates asynchronous communication and data exchange between tasks.
- • Selectively Scheduled Locking Based on Stack Resource Policy (SRP): Provides a non-blocking mutual exclusion mechanism to effectively protect shared resources.
Hardware-Level RTOS, Ultimate Performance
SST offers a unique hardware implementation version for ARM Cortex-M, which is its strongest advantage. This version is optimized for ARM Cortex-M series processors (M0, M0+, M3, M4, M7, M23, M33), delivering performance far superior to software-implemented RTOS. It is not only efficient but also extremely stable and reliable, which is crucial for demanding hard real-time applications. The same hardware-level implementation is also extended to Microchip dsPIC processors.
Easy to Get Started, Rapid Development
The API design of SST is straightforward and easy to learn and use. A wealth of example code, including the classic “blinky-button” example, can help you get started quickly and experience the powerful features of SST through practical projects. The “blinky-button” example demonstrates multiple SST tasks running concurrently and communicating with each other, allowing you to easily build and run these examples without a logic analyzer. The provided example projects support various development environments, including ARMCLANG, GNU ARM, and IAR EWARM, and are compatible with multiple mainstream development boards such as STM32 NUCLEO series and TivaC LaunchPad.
Non-Preemptive Version SST0, Simpler and Easier to Use
For applications with less stringent real-time requirements, SST also offers a non-preemptive version, SST0. SST0 is also priority-based, but scheduling is non-preemptive, occurring only after each task is completed, making it simpler and easier to understand, ideal for beginners to learn and use. Both SST and SST0 share the same API, making switching very convenient.
Comparison with Other RTOS
SST shares commonalities with other real-time operating systems such as OSEK VDX, QP/C, and QP/C++, but it is lighter, simpler, and easier to integrate into your projects. Compared to other modern RTOS like crect, Rust’s RTFM, and RTIC, SST has its own strengths. SST focuses on its core functionalities, pursuing ultimate performance and simplicity.
Long History, Durable
SST was first published in 2006 in the journal Embedded Systems Design and has remained active, continuously improving and refining. It has been applied to various embedded processors, including ARM7TDMI, ARM Cortex-M, ARM Cortex-R, MSP430, PIC24/dsPIC, PIC32, and more.
Conclusion
Super-Simple-Tasker is a powerful, easy-to-use, high-performance real-time operating system kernel that has brought revolutionary changes to ARM Cortex-M and dsPIC development. Whether you are an experienced embedded engineer or a beginner, you can easily master SST and quickly build efficient and reliable real-time applications. Choose SST to focus on business logic rather than getting bogged down in the complexities of RTOS details.
Project address: https://github.com/QuantumLeaps/Super-Simple-Tasker