Jump to content

Adaptive partition scheduler

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Flonase (talk | contribs) at 02:28, 28 March 2006. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Adaptive Partition Schedulers are a relatively new type of partition scheduler, pioneered with the most recent version of the QNX operating system. Adaptive Partitioning (or AP) allows the real-time system designer to request that a percentage of processing resources be reserved for a particular subsystem (group of threads and/or processes). The operating systems priority driven pre-emptive scheduler will behave in the same way that a non-AP system would until the system is overloaded (i.e. system-wide there is more computation to perform, than the processor is capable of sustaining over the long term). During overload, the AP scheduler enforces hard limits on total run-time for the subsystems within a partition (as dictated by the allocated percentage of processor bandwidth for the particular partition).

If the system is not overloaded, a partition that is allocated (for example) 10% of the processor bandwidth, can, in fact, use more than 10%, as it will borrow from the spare budget of other partitions (but will be required to pay it back later). This is very useful for the non real-time subsystems that experience variable load, since these subsystems can make use of spare budget from hard real-time partitions in order to make more forward progress than they would in a Fixed Partition Scheduler such as ARINC-653, but without impacting the hard real-time subsystems deadlines.