| |||||
3.4.4. Ведущие и разделяемые процессами планировщики-диспетчеры
S - планировщик; Pri - процесс. Планировщик-диспетчер может разделяться процессами, т.е. планировщик вызывается путем обращений i-го прцесса к данной системной программе S, что является косвенным результатом операции ядра ОС. Ядро и планировщик тогда потенциально содержатся в адресном пространстве всех процессов и выполняются в составе любого процесса.
Этот тип планировщика считается отдельным процессом, он может непрерывно проверять заявки системы на планирование или может активизироваться соответствующими сигналами.
Список процессов (см. ниже) построен на приоритетном базисе и содержит все процессы в состояниях от1 до 9 (для UNIX). Планировщик вызывается примитивами ядра, при этом учитывается состояние дескрипторов процессов и структура процесса. Список готовности процессов построен на приоритетном базисе и содержит все процессы в состояниях, соответствующих уровню их исполнения.
Планировщик работает со списком готовности процессов на основе дисциплины диспетчеризации с вытеснением. Эта дисциплина предполагаем, что планировщик гарантирует, что приоритет любого процесса, находящегося в состоянии "Развивающийся", больше или равен приоритету любого процесса, находящегося в состоянии "Готовый - Активный". Пример планирования и диспетчеризации в системе разделения времени. Предполагается наличие следующих структур:
Графическая интерпретация планирования и диспетчеризации представлена на рисунке 8.
Примечание: для того, чтобы не загромождать диаграмму на ней приведена только часть используемых при планировании и диспетчировании структур. | |||||
|