
- •Глава 10
- •10.1. Многопроцессорное планирование
- •Назначение процессов процессорам
- •10.2. Планирование реального времени
- •10.3 Планирование в linux
- •10.4. Планирование в unix svr4
- •10.5. Планирование windows 2000
- •Многопроцессорное планирование
- •10.6. Резюме, ключевые термины и контрольные вопросы
- •10.7. Рекомендуемая литература
- •10.8. Задачи
Многопроцессорное планирование
При работе W2K в системе с одним процессором поток с наивысшим приоритетом всегда активен (если только не ожидает наступления какого-либо события). Если имеется несколько потоков с наивысшим приоритетом, то процессор работает с ними с использованием кругового планирования. В многопроцессорной системе с N процессорами всегда активны N-1 потоков с наивысшими приоритетами, работающими на дополнительных N-1 процессорах. С остальными потоками с более низким приоритетом работает единственный оставшийся процессор. Например, если в системе три процессора, то два потока с наивысшими приоритетами будут выполняться на двух процессорах, в то время как третий процессор будет работать со всеми остальными потоками с более низкими приоритетами.
Описанный принцип управляется свидетельством сродства потока с процессором. Если поток готов к выполнению, но доступные процессоры не находятся во множестве сродства потока, такой поток вынужден находиться в состоянии ожидания, в то время как планировщик запускает другой доступный поток.
10.6. Резюме, ключевые термины и контрольные вопросы
В сильносвязанной многопроцессорной системе доступ к одной и той же основной памяти получают несколько процессоров. В такой конфигурации структура планирования должна быть несколько более сложной, чем в однопроцессорной системе. Изучение производительности многопроцессорных систем показывает, что отличия в производительности при использовании различных стратегий планирования в многопроцессорных системах не так значительны, как в однопроцессорной системе.
Процессами реального времени являются такие процессы, которые выполняются в связи с некоторыми процессами, функциями или множествами событий, внешних по отношению к вычислительной системе, и для которых с целью эффективного и корректного взаимодействия с внешней средой заданы предельные сроки начала или окончания работы. Операционная система реального времени представляет собой операционную систему, которая способна управлять процессами реального времени. В этом случае традиционные критерии алгоритмов планирования неприменимы, и ключевым фактором для системы планирования становятся предельные сроки, что приводит к использованию специализированных алгоритмов планирования.
Ключевые термины
Бригадное планирование Непериодическое задание Планирование реального Детерминированная Операционная система времени
операционная система реального времени Разделение загрузки Жесткие задания Периодическое задание Частотно-монотонное
реального времени Планирование потоков планирование Зернистость Планирование Чувствительность Мягкие задания предельных сроков
реального времени
Контрольные вопросы
10.1. Перечислите и кратко опишите пять категорий зернистости синхронизации.
10.2. Перечислите и кратко опишите четыре метода планирования потоков.
10.3. Перечислите и кратко опишите три версии разделения загрузки.
10.4. В чем заключается отличие между жесткими и мягкими заданиями реального времени?
10.5. В чем заключается отличие между периодическими и непериодическими заданиями реального времени?
10.6. Перечислите и кратко опишите пять общих типов требований к операционным системам реального времени.
10.7. Перечислите и кратко опишите четыре класса алгоритмов планирования реального времени.
10.8. Какая информация о задании может использоваться в планировании реального времени?