Современные операционные системы

Современные операционные системы
Процессы и потоки  Категории алгоритмов планирования

Категории алгоритмов планирования

Неудивительно, что в различных условиях окружающей среды требуются разные алгоритмы планирования. Это обусловлено тем, что различные сферы приложений (и разные типы операционных систем) предназначены для решения разных задач. Иными словами, предмет оптимизации для планировщика не может совпадать во всех системах. При этом стоит различать три среды:

1) пакетную;

2) интерактивную;

3) реального времени.

Категории алгоритмов планирования читать полное описание.


Процессы и потоки  Задачи алгоритма планирования

Задачи алгоритма планирования

Чтобы создать алгоритм планирования, нужно иметь некое представление о том, с чем должен справиться толковый алгоритм. Некоторые задачи зависят от среды окружения (пакетная, интерактивная или реального времени), но есть и такие задачи, которые желательно выполнить в любом случае. Вот некоторые задачи алгоритма планирования, которых следует придерживаться при различных обстоятельствах, и которые нам вскоре предстоит рассмотреть.

Задачи алгоритма планирования читать полное описание.


Процессы и потоки  Производительность, оборотное время и степень задействования центрального процессора

Производительность, оборотное время и степень задействования центрального процессора

Руководители крупных вычислительных центров, в которых запускается множество пакетных заданий, обычно при оценке производительности своей системы берут в расчет три показателя: производительность, оборотное время и степень задействования центрального процессора. Производительность — это количество заданий, выполненных за один час. С учетом всех обстоятельств, выполнение 50 заданий в час считается лучшим показателем, чем выполнение 40 заданий в час. Оборотное время — это среднестатистическое время от момента передачи задания на выполнение и до момента завершения его выполнения. Им измеряется время, затрачиваемое среднестатистическим пользователем на вынужденное ожидание выходных данных. Здесь действует правило: чем меньше, тем лучше.

Производительность, оборотное время и степень задействования центрального процессора читать полное описание.


Процессы и потоки  Сначала самое короткое задание

Сначала самое короткое задание

Теперь рассмотрим другой неприоритетный алгоритм для пакетных систем, в котором предполагается, что сроки выполнения заданий известны заранее. К примеру, в страховой компании люди могут довольно точно предсказать, сколько времени займет выполнение пакета из 1000 исковых заявлений, поскольку подобная работа выполняется ежедневно. Когда в ожидании запуска во входящей очереди находится несколько равнозначных по важности заданий, планировщик выбирает сначала самое короткое задание. Рассмотрим изображение, приведенное на рис. 2.20. Здесь представлены четыре задания: А, В, С и D со сроками выполнения 8,4,4 и 4 минуты соответственно. Если их запустить в этом порядке, оборотное время для задания А составит 8 мин, для 5 — 12 мин, для С — 16 мин и для D — 20 мин, при среднем времени 14 мин.

Сначала самое короткое задание читать полное описание.


Процессы и потоки  Приоритет наименьшему времени выполнения

Приоритет наименьшему времени выполнения

Приоритетной версией алгоритма выполнения первым самого короткого задания является алгоритм первоочередного выполнения задания с наименьшим оставшимся временем выполнения. При использовании этого алгоритма планировщик всегда выбирает процесс с самым коротким оставшимся временем выполнения. Здесь, так же как и прежде, время выполнения заданий нужно знать заранее. При поступлении нового задания выполняется сравнение общего времени его выполнения с оставшимися сроками выполнения текущих процессов. Если для выполнения нового задания требуется меньше времени, чем для завершения текущего процесса, этот процесс приостанавливается и запускается новое здание. Эта схема позволяет быстро обслужить новое короткое задание.

Приоритет наименьшему времени выполнения читать полное описание.