Системы реального времени.
Каждый тип ОС имеет специфические внутренние механизмы и особые области применения.
Т.О., ОС бывают:
· Однозадачные операционные системы выполняют функцию предоставления пользователю виртуальной машины, делая простым и удобным процесс его взаимодействия с компьютером.
· Многозадачные операционные системы дополнительно управляют разделением совместно используемых ресурсов. В первую очередь они дают возможность одновременно исполнять несколько задач на одном процессоре.
1. Мультипрограммирование в системах пакетной обработки
· Операционные системы пакетной обработки. Они работают с пакетами задач, причем переключение процессора с одной задачи на другую происходит лишь в том случае, если активная задача сама отказывается от процессора.
Цель мультипрограммирования – минимизация простоев всех устройств компьютера, и прежде всего ЦП. Такие простои могут возникать из-за приостановки задачи по ее внутренним причинам, связанным, например, с ожиданием ввода данных для обработки. Решением, ведущим к повышению эффективности использования процессора, является переключение процессора на выполнение другой задачи, у которой есть данные для обработки. Такая концепция мультипрограммирования положена в основу так называемых пакетных систем.
Системы пакетной обработки предназначались для решения задач в основном вычислительного характера, не требующих быстрого получения результатов.
«+»:Главной целью и критерием эффективности систем пакетной обработки является максимальная пропускная способность, то есть решение максимального числа задач в единицу времени.
Схема функционирования в системах пакетной обработки:
В начале работы формируется пакет заданий, каждое задание содержит требование к системным ресурсам; из этого пакета заданий формируется множество одновременно выполняемых задач. Для одновременного выполнения выбираются задачи, предъявляющие разные требования к ресурсам, так, чтобы обеспечивалась сбалансированная загрузка всех устройств вычислительной машины. Например, вычислительных задач + задач с интенсивным вводом-выводом. Таким образом, выбирается «выгодное» задание.
Но «–»: невозможно гарантировать выполнение того или иного задания в течение определенного периода времени.
П! Рассмотрим совмещение во времени операций ввода-вывода и вычислений.
Дан компьютер, в котором имеются = ЦП + специализированный процессор ввода-вывода (канал).
Канал имеет систему команд для управления внешними устройствами, отличающуюся от системы команд центрального процессора, П! «проверить состояние устройства», «напечатать строку». Программы канала и ЦП могут храниться в донной и той же оперативной памяти. В системе команд центрального процессора предусматривается специальная инструкция, с помощью которой каналу передаются параметры и указания на то, какую программу ввода-вывода он должен выполнить. Начиная с этого момента центральный процессор и канал могут работать параллельно (рис. 4.1, а).
Другой способ совмещения вычислений с операциями ввода-вывода реализуется в компьютерах, в которых внешние устройства управляются не процессором ввода-вывода, а контроллерами. При этом контроллер и центральный процессор работают асинхронно. Контроллер выполняет свои команды управления устройствами существенно медленнее, чем ЦП. => можно параллельно выполнять вычисления и операции ввода-вывода: в промежутке между передачей команд контроллеру центральный процессор может выполнять вычисления (рис. 4.1, б).
Максимальный эффект ускорения достигается при наиболее полном перекрытии вычислений и ввода-вывода.
П! когда процессор выполняет только одну задачу:
В задачах, в которых преобладают либо вычисления, либо ввод-вывод, ускорение почти отсутствует или для продолжения вычислений необходимо полное завершение операции ввода-вывода, например, когда дальнейшие вычисления зависят от вводимых данных. В таких случаях неизбежны простои центрального процессора или канала.
П! Если же в системе выполняются одновременно несколько задач, появляется возможность совмещения вычислений одной задачи с вводом-выводом другой. Пока одна задача ожидает какого-либо события, процессор не простаивает, а выполняет другую задачу.
Общее время выполнения смеси задач часто оказывается меньше, чем их суммарное время последовательного выполнения (рис. 4.2, а).
Однако выполнение отдельной задачи в мультипрограммном режиме может занять больше времени, чем при монопольном выделении процессора этой задаче. П! когда задача готова выполняться, но процессор занят выполнением другой задачи и задача вынуждена ждать освобождения процессора, и это удлиняет срок ее выполнения.
Так, из рис. 4.2 видно, что в однопрограммном режиме задача А выполняется за 6 единиц времени, а в мультипрограммном — за 7. Задача В также вместо 5 единиц времени выполняется за 6. Но зато время выполнения обеих задач в мультипрограммном режиме составляет всего 8 единиц, что на 3 единицы меньше, чем при последовательном выполнении.
В системах пакетной обработки переключение процессора с выполнения одной задачи на выполнение другой происходит по инициативе самой активной задачи; например, когда она отказывается от процессора из-за необходимости выполнить операцию ввода-вывода. Поэтому существует высокая вероятность того, что одна задача может надолго занять процессор и выполнение интерактивных задач станет невозможным. Взаимодействие пользователя с вычислительной машиной, на которой установлена система пакетной обработки, сводится к тому, что он приносит задание, отдает его диспетчеру-оператору, а в конце дня после выполнения всего пакета заданий получает результат. Очевидно, что такой порядок повышает эффективность функционирования аппаратуры, но снижает эффективность работы пользователя.
Дата добавления: 2020-03-21; просмотров: 576;