Adaptive Partitioning: Secure. Realtime. Guaranteed.


Another breakthrough technology from QNX Software Systems, Adaptive Partitioning takes the current restrictive concepts of software partitioning and dramatically changes the rules so that embedded developers can guarantee realtime for their applications, contain threats and protect their systems.

Almost all embedded systems today are network connected devices that can be extended with untrusted add-on applications and content. With software complexity escalating so rapidly, developers are looking for better ways to cleanly and efficiently partition system resources without compromising the security and availability of their products. The answer? QNX® Neutrino® Adaptive Partitioning Technology Development Kit. It give customers the secure, realtime guarantees they need – without compromise.

Unlike the rigid, fixed-partitioning offerings of the past, QNX’s new adaptive partitioning solution – with its patent-pending scheduler - guarantees CPU time for partitioned applications when the system is heavily loaded. It can dynamically reassign resources from partitions not under full load to those that need additional processing time. This provides a higher overall level of performance by increasing CPU utilization. To maximize ease of use and application portability, adaptive partitioning uses industry-standard POSIX APIs and allows embedded developers to employ the exact same task-prioritization schemes that they use today. Existing POSIX/QNX Neutrino applications can benefit from QNX Adaptive Partitioning without recoding or redesign.

Adaptive partitioning offers several innovations, including the ability to:
  • use real-time, priority-based scheduling when the system is lightly loaded — this allows systems to use the same scheduling behavior that they do today
  • provide CPU time guarantees when the system is heavily loaded — this ensures that all partitions receive their fair budget of CPU time
  • “borrow” any unused CPU time from partitions that have free time, giving other partitions the extra processing time they need to handle peak demands
  • “repay” borrowed time to ensure scheduling fairness
  • overlay the adaptive partitioning scheduler onto existing systems — applications and system services can simply be launched in a partition, and the scheduler will ensure that partitions receive their allocated budget
  • dynamically add and configure partitions at runtime, enabling the system to adjust processor consumption in response to fault conditions or other scenarios
  • guarantee that recovery operations have the CPU cycles they need to repair system faults, enabling improved mean-time-to-repair for high availability systems
  • stop malicious code from stealing all the CPU time and launching a denial of service attack
The powerful combination of microkernel design, high availability, and partitioning solutions makes the QNX Neutrino Realtime Operating System unique in providing secure OS features for real-world problems.