Введение

Адаптивные планировщики разделов – относительно новый тип планировщика разделов, который, в свою очередь, является разновидностью алгоритма планирования, впервые реализованного в самой последней версии операционной системы QNX. Адаптивное разделение, или AP, позволяет разработчику системы реального времени запросить резервирование определенного процента вычислительных ресурсов для конкретного раздела (группы потоков и/или процессов, составляющих подсистему). Приоритетный вытесняющий планировщик операционной системы будет работать аналогично системе без AP до тех пор, пока система не будет перегружена (то есть, когда общий объем вычислений превысит возможности процессора по устойчивой производительности в долгосрочной перспективе). В условиях перегрузки планировщик AP устанавливает жесткие ограничения на общее время выполнения подсистем внутри раздела, в соответствии с выделенной долей пропускной способности процессора для данного раздела. Если система не перегружена, раздел, которому выделено (например) 10% пропускной способности процессора, фактически может использовать и больше 10%, заимствуя ресурсы из резервного бюджета других разделов (но с обязательным последующим возвратом). Это особенно полезно для некритичных подсистем с переменной нагрузкой, поскольку они могут использовать резервные ресурсы от критических разделов реального времени для достижения большего прогресса, чем в фиксированном планировщике разделов, таком как ARINC 653, не нарушая при этом сроки выполнения критических подсистем. QNX Neutrino 6.3.2 и более поздние версии поддерживают эту функцию.