QP (Quantum Platform) is a family of embedded real-time event frameworks from Quantum Leaps. It structures software as independent Active Objects that communicate through events and use hierarchical state machines to describe behavior. Unlike a conventional thread-centered RTOS design, QP can provide its own kernel on bare-metal hardware or run alongside a third-party RTOS or a general-purpose operating system.
How QP is structured
A QP application is organized around Active Objects, also known as actors. Each Active Object owns its state and handles incoming events asynchronously, typically in an event loop. Objects communicate by sending events rather than relying on many threads to read and modify shared state.
Hierarchical state machines, also called UML statecharts, describe how an object responds to events. A state machine can represent nested states and transitions, helping keep behavior explicit as an application grows. The QP runtime delivers and dispatches events, manages memory for mutable events, provides timing services, and supports software tracing.
The overall stack includes the application’s Active Objects, the QP framework, a real-time kernel or operating-system integration, a board-support package, and the target hardware. Quantum Leaps describes QP as a lightweight implementation of the asynchronous, event-driven, non-blocking Active Object model for real-time embedded systems.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
#1 Best Overall
How QP differs from a traditional RTOS
An RTOS primarily supplies scheduling and synchronization primitives for tasks or threads. QP centers the application architecture on event-driven Active Objects and state machines. It is therefore better understood as an application framework with execution options, rather than simply as another thread scheduler.
| Approach | Application structure | Execution options | Useful distinction |
|---|---|---|---|
| Traditional RTOS design | Tasks or threads commonly coordinate through shared data and synchronization mechanisms. | Runs under the chosen RTOS. | The RTOS provides task scheduling and operating-system services; application architecture depends on how developers use them. |
| QP with a built-in kernel | Independent Active Objects process events and use state machines to specify behavior. | Can run directly on bare-metal MCUs using a QP kernel. | QP can replace a traditional RTOS for an application organized around its event framework. |
| QP integrated with an OS | Active Objects and event-driven behavior remain central. | Can run above a third-party RTOS, Linux/POSIX, or Windows. | QP does not require every project to abandon its existing operating system. |
QP’s built-in kernels cover different scheduling styles: QV is cooperative, QK is preemptive and non-blocking, and QXK is preemptive dual-mode. The right choice depends on the application’s execution and integration needs; the product documentation does not provide a universal performance ranking for these options.
Rank #2
Choosing between QP/C, QP/C++, and SafeQP
| Edition | Language target | Licensing and intended fit |
|---|---|---|
| QP/C | C11 | Standard edition with open-source and commercial licensing options. |
| QP/C++ | C++17 | Standard edition with open-source and commercial licensing options. |
| SafeQP/C | C | Commercial, safety-focused edition with additional safety functions and certification-kit artifacts; API-compatible with the corresponding standard edition. |
| SafeQP/C++ | C++ | Commercial, safety-focused edition with additional safety functions and certification-kit artifacts; API-compatible with the corresponding standard edition. |
Pick the language edition that fits the project
For a new project, choose QP/C when the codebase and toolchain are C-oriented, and QP/C++ when they are built around C++. Also consider the team’s familiarity with the language and the interfaces that must be maintained. The framework language target is not, by itself, a reason to migrate an established codebase.
Decide whether the standard or safety-focused edition fits
The standard editions are the starting point when their normal documentation and dual-licensing model suit the project. Evaluate SafeQP when the product needs the vendor’s safety functions and certification artifacts. Those materials do not certify the complete product automatically: the product manufacturer remains responsible for system-level certification.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Licensing terms and support arrangements depend on the selected edition and use case. Review Quantum Leaps’ current licensing information for the intended deployment rather than assuming that one licensing option applies to every project.
Where QP can run
- Bare-metal MCU: Use a built-in QP kernel when the application can run without a separate RTOS.
- Third-party RTOS: Integrate QP above an existing RTOS when the project needs its operating-system services or already depends on it.
- Linux/POSIX or Windows: Use these environments as QP execution targets where they fit the development, testing, or application needs.
These are alternative integration choices, not a promise that every combination is available for every board or toolchain. Check the platform support and examples for the specific target before committing to an integration.
Rank #4
Tools and a practical development workflow
QP can be used with manually written state-machine code or with model-based design tools. QM Modeler provides graphical UML-statechart modeling and automatic C or C++ code generation. QTools and QP/Spy provide development and tracing utilities, while QUTest supports trace-based testing.
- Model or define the state machines. Describe each Active Object’s states, events, and transitions in code or with QM Modeler.
- Assign behavior to Active Objects. Give each object private state and define how it handles incoming events.
- Select an execution environment. Choose a built-in QP kernel, integration with a third-party RTOS, or a supported Linux/POSIX or Windows target.
- Build and run on the target. Integrate the board-support package and confirm that the chosen toolchain and platform are supported.
- Inspect behavior and test. Use tracing and QUTest as appropriate to examine event flow, state-machine behavior, and timing.
The official QP/C repository recommends obtaining the QP bundle when you want the framework, QM, QTools, examples, and supporting components together. The described tools provide ways to model, trace, and test an application; they do not establish a particular speed or memory advantage over another design.
Best Value
Is QP-nano still maintained?
No. Quantum Leaps’ official QP-nano repository says QP-nano has been discontinued from active development and support and is not recommended for new designs. It is preserved for existing users. The repository identifies QM 5.2.3, released on November 18, 2022, as the last QM version that supported QP-nano.
For a new design, evaluate the actively maintained mainstream QP editions instead. If you maintain a QP-nano product, treat its discontinued status as a lifecycle and support constraint when planning changes or a migration.
When QP is a good fit
- Your embedded application has event-driven behavior that can be separated into objects with clear responsibilities.
- Explicit state machines would make complex or nested behavior easier to design, review, and test.
- You want the option of a built-in kernel or need to integrate the framework with an existing RTOS or supported general-purpose OS.
- Your project can use the relevant C or C++ edition, toolchain, platform support, and licensing arrangement.
QP is not automatically the best choice for every embedded product. First confirm that the event-driven Active Object model fits the application, then validate target support, integration effort, team workflow, and any safety or licensing requirements.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

