RTOS-like frameworks based on active objects & state machinesRead More
RTOS-like, event-driven frameworks for building responsive and modular real-time embedded software as systems of active objects (concurrent state machines). The QP family consists of QP/C, QP/C++, and QP-nano frameworks, which are all strictly quality controlled, superbly documented, and commercially licensable.
The behavior of active objects (a.k.a. actors) is specified in QP by means of hierarchical state machines (UML statecharts). The frameworks support manual coding of UML state machines in C or C++ as well as automatic code generation by means of the free QM modeling tool.
All QP frameworks can run on bare-metal MCUs, completely replacing a traditional RTOS. Ports and ready-to-use examples are provided for major embedded CPUs, such as ARM Cortex-M, ARM7/9, MSP430, as well as Arduino and mbed. QP/C and QP/C++ can also work with a traditional OS/RTOS, such Linux (POSIX), Windows, ThreadX, embOS, and uC/OS-II.
- Modern event-driven frameworks based on active objects (actors), which are safer, more extensible and easier to understand than shared-state concurrency with a traditional RTOS
- Simple-to-use coding techniques for hierarchical state machines (UML statecharts), with which to implement the behavior of active objects
- Free, QM modeling tool for drawing UML statecharts and automatic code generation based on QP frameworks
- Efficient and thread-safe event-driven mechanisms for active objects to communicate, such as direct event passing and publish-subscribe
- Selection of built-in RTOS kernels to run the QP applications, such as the cooperative QV kernel, the preemptive non-blocking QK kernel, and the preemptive blocking QXK kernel
- Compliant with MISRA-C:2004 (QP/C and QP-nano) and MISRA-C++:2008 (QP/C++)
- Book "Practical UML Statecharts in C/C" with detailed design study of the QP framework, application notes, articles, user manuals, and blog
KEEP ME UPDATEDGet project updates, sponsored content from our select
partners, and more.
Be the first to write a review for QP state machine frameworks and tools!
Quantum Leaps offers an on-site training "Modern Embedded Systems Programming with QP™ Frameworks and QM™ Modeling Tool". This 2- to 3-day training uses hands-on exercises combined with instruction to illustrate the concepts underlying the QP active object frameworks and how they are applied in embedded systems programming requiring hard real-time performance. Upon completion of the two-day training, participants have good understanding of event-driven systems, skills in designing and implementing UML state machines manually in C or C++ and graphically with the QM modeling tool, and the ability to build their own QP applications. Additionally, upon completion of the three-day training, participants gain understanding of the real-time kernel options built-into the QP frameworks, learn how to reuse behavior with sub-machines, find out how to apply software tracing to debug and optimize their event-driven code and how to apply unit testing to active objects and state machines.