В. Столлингс - Операционные системы (1114679), страница 88
Текст из файла (страница 88)
Планировиние-в системах с одним процессором ;редствен но, либо качественны по своей природе, либо трудно поддаются измере дм и анализу. Примером такого критерия служит предсказуемость. Желате ~тобы предоставляемые пользователю сервисы в разное время имели одни и тв <арактеристики, не зависящие от других задач, выполняемых в настоящее врМ~~с', .„истемой. До некоторой степени этот критерий является измеримым — путем вь,: ~исления отклонений как функции от загрузки системы.
Однако провести такие из, =.у иерения оказывается вовсе не просто. В табл. 9.2 приведены ключевые критерии планирования. Все они взаимозяви.,',.- .имы и достичь оптимального результата по каждому из них одновременно невов-,'-,' можно. Например обеспечение удовлетворительного отклика может потребощщ,:.„,'"'- 9 ф применения алгоритма с высокой частотой переключения процессов, что пов накладные расходы и, соответственно, снизит пропускную способность си Следовательно, разработка стратегии планирования представляет собой поиск каЯ)~. промисса среди противоречивых требований; относительный вес каждого из крщф~~,,:, риев определяется природой и предназначением разрабатываемой системы.
В большинстве интерактивных операционных систем с одним пользователем::::„" или с разделяемым временем критичным требованием является время отклика'. ' связи с важностью этого критерия и тем, что определение ега величины меняется, одной программы к другой, этот вопрос вынесен в приложение к данной главе. Таблица 9.2.
Критерии планирования Время оборота Время отклика Предельный срок Пользовательские, связанные с праиэвадктельвастью Интервал времени между подачей процесса и ега завершением. ', В лючает время выполнения, а также время, затраченное на ажв'-',, к дание ресурсов, в там числе н процессора, Критерий вполне пр ним для пакетных заданий В интерактивных процессах эта время, истекшее между и д па ачей'' запроса и началом получения ответа на него, Зачастую працеса -".,': может начать вывод информации пользователю, еще не аксйяив полной обработки запроса, так чта описанный критерий — яаиба.;„ лее подходящий с точки зрения пользователя. Стратегия планнра,:" вавка должна пытаться сократить время получения ответа при ма с к имизации количества интерактивных пальзавател, ре ей время Ф отклика для которых не выходит за заданные пределы асса пл пярава- ' „ При указании предельного срока завершения процесса ''~~ра ние должно подчинить ему все прочие цели максимн ц за ии количества процессов, завершающихся в срок Пальзаэатсльскне, иные Окончание табл р„р Этот показатель представляет собой процент времени, в течение ката рого процессор оказывается занят.
Для дорогих совместно используе мых систем этот критерий достаточно вюкен; в однопользовательских же и некоторых других системах (типа систем реэльнага времени) этот критерий менее важен па сравнению с рядом других Использование процессора Системные, иные Прк отсутствии дополнительных указаний ат пользователя или системы эсе процессы должны рассматриваться как равнозначные н ни один процесс не должен подвергнуться голоданию Беспристрастность Если процессам назначены приоритеты, стратегия планнрававня должна отдавать предпочтение процессам с более высоким приоритетом Использование прнарктетав Стратегия планирования должна поддерживать занятость системных ресурсов.
Предпочтение должна быть отдано процессу, который недос- таточна использует важные ресурсы. Этот критерий включает исполь- зование долгосрочного и среднесрочного планирования Баланс ресурсов ~РиоРип~~п~р01~ > П~зио~пйлеш~Юя~ при у < у .з При выборе процесса планировщик начинает с очереди процессов с наивысшим приоритетом (ВЦО). Если в очереди имеются один или несколько процессов, процесс для работы выбирается с использованием некоторой стратегии ~ланирования.
Если очередь ВЯО пуста, рассматривается очередь ВЯ1 и т.д. Одна из основных проблем в такой чисто приоритетной схеме планирования состоит в том, что процессы с низким приоритетом могут оказаться в состоянии голодания. Это будет происходить при постоянном поступлении новых готовых к выполнению процессов с высоким приоритетом.
Если такое поведение нежелательно, приоритет процесса может снижаться при его выполнении (пример такой ~тратегии планирования будет приведен позже). Использование приоритетов Во многих системах каждому процессу присвоен некоторый приоритет, и планировщик всегда должен среди процессов выбирать тот, у которого приоритет наибольший.
На рис. 9.4 показано использование приоритетов. Для большей ясности диаграмма упрощена и игнорирует существование нескольких очередей заблокированных или приостановленных процессов (ср. с рис. З.б,а). Вместо одной очереди готовых к исполнению процессов у нас имеется их множество, упорядоченное по убыванию приоритета: ВЯО, ВЯ1, ..., ВЯп, т.е. Предсказуемость Прапускиая способность 'Часть 4. ПлннирОВ Данное задание должно выполняться примерно эа одно и та же количество времени и с одной и так же стоимостью„независим зэгр яма ат загрузки системы. Большие вариации времени испалкевия илк ре в меви отклика дезориентируют пальзавателеи. Эта явление мажет си сигяалиэкааэать а больших колебаниях загрузки клк а необходимости д апалявтельной настройки системы для устранения нестабильности ее рабаты уЪ' Системные, связанные с праиэвадктельвастью Стратегия планирования должна пытаться максимя р мязи авать количества процессов„завершающихся за единицу време мени чта является мерой количества выполненной системой работы.
Очевидна, чта ' эта величина зависит ат средней продолжительности р п апесса; ад".,' века на нее влияет и используемая стратегия планирования Альтернативные стратегии планирования В табл. 9.3 представлена некоторая информация о различных стратегиях планирования, рассматриваемых в данном подразделе. Функция выбора определяет, какай из готовых к выполнению процессов будет выбран следующим для г В УФХХ и многих других системах большие значения приоригпетав соотеетстаооцеосам с низким приаритеюпам; если ке указано иное, мы придерживаемся име ~екко этого соглашения. Некоторые системы. такие, как Оя/2 или Хап4ошэ. иопаль еуж "к'т обратное соглашение: баяыиее значение указывает на 6олее высокий лриаритет. " ~лава 9.
Планирование в системах с одним процессором ° Э В " ° ° е а ° ° ° В ' ° ° ' ."!1 ° ° -- Ва. ° а ° ° Ф В ° " ' ° Ф ° ° ° 1 1 ° $ ° ° а" ° ИИИИИ Фа ае ° ИИИИИ а - 1, ° 1 В1 ° ° 1 ФФ с с!Вс Ф ° 1 ° Э ° Э ° $1 а- ° :. ее ° ' 11 Ф ° ! ° Э ° ° $1 °, ! ' ° ° е '1 ° 1 Э Ф ° В !!Э!1 '; ° 1 ° ° ° ° ° В 1 ° ° 11 В се ! ° Ф ° $ Ф а 1 а ° ' В' Э Ф ° * ' Э ' В ° ИИИИИ ' ° ИИИИИ ° Е ° Э 1 ° ° ° ° ° Ф 1 Е ° ° ФФ ° 1$1 ! ° Ф ° с с ° ' с $1 .
° В.Ь:. * ' Ф аа',,',-.$с ".~ас1:,! 11! В ° ' ° 1 В ! ~ Е, ~*!се ° . °- Е ° ' Е Е 1 Е В 1 ° ° - ° Ф э ° ! ~а Ф' ° 'а ° 1 О'' А В 0 Е 1 $ « а < $ $ $1 $ $ А В С 0 Е 1 1 3 1 1 < 1 $1 1 1 $ 1 1 < < 1 1 < ! 1 1 $3 а ! 1 а 3 3 а а 3 3 1 ! $ 3 $ $1 1 < 1 $ $ ! $ ! 1 1 а 1 1 < 1 < ! 1 $ $ $ 1 $1 ! 3 1 1 1 а В $ В 3 $ ! а 3 1 ! 1 $1 1 1 ! 1 $1 3 1 1 1 1 В ! ! 1 < ! 4 3 ! < ! 1 1 < 3 1 Время обслуживания Время запуска 0 2 1 В 1 В 1 1 1 1 В 1 $ $1 В < 1 1 3 4 1 а 3 1 < $1 1 $ 1 $ 1 < ! В < 1 в 1 а ! ! 1 1 3 3 $ 1 $ 1 В < $1 $ $ < ! В ! 1 < 1 $ 1 1 $ ! 1 ! ! 1 1 3 $1 4 ! 1 ! < $1 $ 1 < 3 1 В ! 1 1 < $1 < $ $ 3 3 $1 $1 1 < $ $ $1 1 < 1 1 < $1 < 1 ! 1 5ВТ $ ! 1 В 1 3 1 $ ! ! ! а $ ! $1 ) В ! < 3 С « < 3 В 3 < $ 1 1 В < 1 $ в а 1 1 в < 1 1 1 $ $ В 3 В 1 < Н П () $3 0 1 1 3 1 1 $1 3 $ $3 3 3 3 1 ! 1 1 1 ! 3 1 < 1 ! 1 $ < ! ! 1 1 а 1 3 1 ! < $ $1 $ $ $ $ $ ! 1 ! $1 В 3 $1 с, $3 1 ! $ < < 1 $1 $3 1 ! $ ! 3 $ 1 3 ! $3 ! 3 3 4 $ Е 3 ! $ 1 1 3 1 $ $ Часть 4.
Плани Вытесняющие стратегии приводят к повышенным накладным расходам,," равнению с нев с невытесняющими но при этом обеспечивают лучший уровень, '" а л~живаиия всего множества процессов, поскольку предотвращают монопо спользование процессора в течение продолжительного времени одним из ,ессов, роме того, , К м того использование аФФективных механизмов переключения ессов (по возможности реализованное аппаратно) и большой объем основ~ ' ° ' ;амяти (для хра ( ля хранения в ней как можно большего количества процессов) позв ", яют поддерживать относительно небольшую стоимость вытеснения. При описании различных стратегий планирования в качестве примера ,удем использовать набор процессов из табл. 9.4.