В. Столлингс - Операционные системы (1114679), страница 102
Текст из файла (страница 102)
~ен 1, то начальный приоритет этого потока равен 3. После активации потока из класса переменных приоритетов его действа тел ный приоритет (именуемый динамическим приоритетом потока) может котебаться в определенных пределах — он не может упасть ниже наименьшего 1азового приоритета потока или .подняться выше максимально возможного тначения приоритета данного класса, т.е.
15. На рис. 10.13 приведен пример процесса с базовым приоритетом, равным 4. Каждый поток, связанный с дан аым процессом, должен иметь начальный приоритет от 2 до 6, и в проц Работы значения динамических приоритетов потоков могут колебаться в пазоне от 2 до 15. Если поток прерывается в связи с тем, что он полностью пользовал отпущенный ему квант времени, исполнительная система Ж снижает его приоритет; если же поток прерван в связи с ожиданием заве ния операции ввода-вывода, его приоритет повышается.
Таким образом, ется тенденция повышения приоритетов, ориентированных на ввод-выво снижения приоритетов, ориентированных на вычисления. В потоках, орие рованных на ввод-вывод, приоритет потоков, ожидающих завершения и рактивной операции (например, вывод на экран или ввод с клавиатуры) вышается больше, чем для других операций ввода-вывода (например, ди вых).
Следовательно, в пределах класса переменных приорите интерактивные потоки стремятся к получению наивысшего приоритета. 15 ~4 13 12 11 10 Я 8 7 б 8 4 3 2 ! 0 Приоритет Бааоацй Динамический процесса приоритет потока приоритет потока Рис. 10,18. 17ример отноитеиия приоритетпое е ЪЧ1пйта )ттТ Многопроцессорное планирование При работе %"2К в системе с одним процессором поток с наивысшим пр м приоритетом всегда активен (если только не ожидает наступления какого-либо события). Если имеется несколько потоков с наивысшим приоритетом, то процессор работает с ними с использованием кругового планирования.
В многопроцессорной систем 1ч е с процессорамн Всегда активны 1т'-1 потоков с наивысшими приоритетами рабо , ра тающими на дополнительных Ж-1 процессорах. С остальными потоками с более ни изким при оритетом работает единственный оставшийся процессор. Например, если в системе три процессора, то два потока с наивысшими приоритетами будут выполнят нятъся на двух процессорах, в то время как третий процессор будет работать со всеми остзль. ными потоками с более низкими приоритетами.
Описанный принцип управляется свидетельством сродства потока с процес сором. Если поток готов к выполнению, но доступные процессоры не находятся во множестве сродства потока, такой поток вынужден находиться в состоянии ожидания, в то время как планировщик запускает другой доступный поток. В сильносвязанной многопроцессорной системе доступ к одной и той же основной памяти получают несколько процессоров. В такой конФигурации структура планирования должна быть несколько более сложной, чем в однопроцессорной системе. Изучение производительности многопроцессорных систем показывает, что отличия в производительности при использовании различных стратегий планирования в многопроцессорных системах не так значительны, как в однопроцессорной системе.
Процессами реального времени являются такие процессы, которые выполняются в свяби с некоторыми процессами, функциями или множествами событий, внешних по отношению к вычислительной системе, и для которых с целью эффективного и корректного взаимодействия с внешней средой заданы предельные сроки начала или окончания работы. Операционная система реального времени представляет собой операционную систему, которая способна управлять т'Роцессамн реального времени. В этом случае традиционные критерии алгоритмов планирования неприменимы, и ключевым фактором для системы планироВаякя стапо становятся предельные сроки, что приводит к использованию специализиРованных алгоритмов планирования.
Ключевые термины Врнгадное планирование Детерминированная операционная система жесткие задания реального времени Зернистость Мягкие задания Реального времени Планирование реального времени Разделение загрузки Частотно монотонное Непериодическое задание Операционная система реального времени Периодическое задание Планирование потоков Планирование предельных сроков планирование Чувствительность Часть 4.
Планиро 1'лав ава 10. Многопроцессорное планирование и планирование... 539 А(1) А(2) 10 20 20 10 В(1) В(2) О 10 50 10 С(1) С(2) О 50 15 100 Процесс Время поступления Время выполнения Предельныи срок завершения В С В Е 10 20 20 20 20 20 20 100 30 60 80 70 40 50 60 Ч:асть 4. Пл Н ОДЕЖНЫЕ ВОПРОСЫ О 1. Перечислите и кратко опишите пять категорий зернистости синхронизации. 0.2. Перечислите и кратко опишите четыре метода планирования потоков. 0.3. Перечислите и кратко опишите три версии разделения загрузки. О.4, В чем заключается отличие между жесткими и мягкими заданиями ре ального времени? О.". В чем заключается отличие между периодическими и непериодическими %У.Э. заданиями реального времени? 0.6.
Перечислите и кратко опишите пять общих типов требований к операци- онным системам реального времени. ,0,7. Перечислите и кратко опишите четыре класса алгоритмов планирования реального времени. ~0.8. Какая информация о задании может использоваться в планировании ре ального времени? В ~%'ЕХВ891 представлено интересное обсуждение различных мопроцессорному планированию. В работах 1КВ1Б94, БТАХ9 ,В9Ц содержится важный материал, посвященный операционным гнированию реального времени.
И 12ЕА1)971 выполнен анализ про .ти планировщика реального времени ЯЧВ4. В1894 Кг)зЬпа С., 1.ее У., едз. Брес1а1 1ззце оп Веа1-Т1гпе БузФегпз. — Р о~ 1ЕЕЕ, дапнагу 1994. ЕЕ93 1.ее г., Кг)зЬпа С., ес)з. Веса)пуз (п Веа1-Т)те Яузгетз. — 1оз СА. "1ЕЕЕ Согпри$ег Бос1е(у Ргезз, 1993. ТАХ93 81ап)ссай Х., Вагвагаг)ФЬап~ К., ес)з. Аг1иапсев гп Веа1-Тине Бузине А1агн1$оз, СА: 1ЕЕЕ Согвро1ег Яос1еФу Ргезз, 1993. П.В91 Т11)юга А., КооЬ С., ес(з. Роллс(анапа о1 Веа(-Т(те Сотриг(па: апг( Везоигсе Мапауетепг. — ВовФоп: К1~жег Асас)апис РиЫ1вЬегз, 19 ~Е)ЧП89%гепс)огХ д., Жепс1ог1 В„То)сиба, Н. ЯсЬедиИпд Орегабпд Бузине 1пд оп Ягва)1-Яса1е М)сгоргосеззогз.
— РгосееЖпуз. 22пс( Аппиа1 На(в с)опа( Соп~етепсе оп Яуз(ет Яс)епсе, двппагу 1989. ЕА1)97 Ееада11у Б. Ап Еъа)на11оп о1 ФЬе Веа1-Т1гпе РегГогшапсе оХ ЯУВ БЪ"В4.2. — Орегаг1пу Яузгетз Вепеи, Лалпагу 1977. Рассмотрим множество из трех периодических заданий, профи ния которых приведены в табл. 10.5. Разработайте для этого мне грамму планирования„аналогичную диаграмме, приведенной на р Таблица 10.5. Профили выполнения процессов из задачи 10.1 Процесс Время Время Предельный срок завершения поступления выполнения Таблица 10.6. Профили выполнения процессов из задачи 10.2 Рассмотрим множество из пяти непериодических заданий, профили вь1полнения которых приведены в табл.
10.6. Разработайте для этого множества диаграмму планирования, аналогичную той. которая приведена на рис. 10.6. Эта задача демонстрирует, что формула (10.2) является достаточным, но'не необходимым условием — т.е. иногда успешное планирование возможно в ситуации, когда условие (10.2) не выполняется. а. Рассмотрим множество следующих непериодических заданий: а задание Р1. С, = 20", Т1 100: ° задание Рз..
С2 = 30; Тз 145. Могут ли эти задания быть успешно выполнены с использованием частотно- монотонного планирования? б. Добавим к рассматриваемому множеству еще одно задание: ° задание Рз: Сз = 68; Тз - 150. Удовлетворяется ли при этом условие (10.2)? в. Предположим, что первые задания рассмотренных трех типов поступают в систему в момент ~-0, а первые предельные сроки заданий В1 100; .0в 145;.0з = 150.
Будут ли выполнены все три ограничения при исполь- 1'лава 10. Многопроцессорное планирование и планирование... 541 зовании частотно-монотонного планирования? Что можно сказать о пре. дельных сроках последующих повторений заданий? К многопроцессорной системе с 8 процессорами подключены 20 лентопро мно тяжных устройств. В систему поступает большое количество зад, ричем для завершения каждого из них требуется максимум 4 лентопротяжных уст ройства. Предположим, что каждое задание начинает выполняться с требова нием лишь трех устройств; четвертое ему потребуется только через довольно большой срок, причем будет использоваться очень недолго.