- •1.Классификация программного обеспечения. Функции операционных систем.
- •2.Примеры операционных систем. Требования, предъявляемые к операционной системе на примере операционной системы управления химическим реактором.
- •3.Механизмы выполнения программ: понятия активности, контекста активности, точки наблюдения.
- •4.Механизмы выполнения программ: стек выполнения, алгоритм вызова процедур.
- •Приоритет и маскировка прерываний
- •Общая организация ввода/вывода
- •Адресация периферийных устройств
- •Управление периферийными устройствами
- •Принципы работы канала ввода-вывода. Буферный ввод-вывод.
- •Организация простейшей ос для одного пользователя исходя из метода нисходящей декомпозиции (мнд)
- •Система управления файлами.
- •Машина ввода вывода.
- •Стратегия выбора буфера.
- •Далее 4 и 5 работа
- •Взаимодействие совокупности процессов
- •Синхронизация процессов
- •Блокировка памяти
- •Проверка и установка
- •Монитор Хоара
- •Семафоры
- •Состав цепи доступа
- •Структура представлений. Дескрипторы
Машина ввода вывода.
Физическая организация.
Для упрощения будем считать, что формат диска фиксирован, диск разбит на N дорожек, каждая дорожка содержит n – секторов, каждый сектор содержит m байтов.
Сектор представляет собой единицу передачи информации. При обмене данными с диском используется буферизация в частности, удобно считать содержимое всей дорожки сразу. Т.к. в этом случае для всех секторов дорожки возникшей лишь одна задержка т.о. можно зарезервировать k буферов, имеющих объем одной дорожки каждый буфер.
Предположим, что необходимо причитать сектор с номером nсект на дорожке с номером нд. Если один из буферов содержит эту дорожку, чтение происходит без обращения к диску с использованием соответствующего сектора из буфера.
Операция записи выполняется немного сложнее. Для уменьшения числа передач буфер копируется на диск как можно позже. Все то время пока можно находится в буфере, буфер отражает текущее состояние секторов дорожки и последовательное обращение к сектору не влекут за собой обращение к диску. Предположим что надо произвести запись в сектор nсект дорожки нд. Если дорожка нд представлена в каком либо из буферов соответствующий сектор изменяется и на этом операция заканчивается, если дорожка не представлена в буфере она предварительно считывается в буфер и далее операция сводится к предыдущей операции.
Буфер копируется на диск только в 2 случаях:
когда буфер переназначается для загрузки новой дорожки в память
Когда происходит очистка буфера, вызываемая закрытием файла или требованием снятие тома (вынуть дискету из дисковода)
Стратегия выбора буфера.
Алгоритм переназначения буфера основан на свойстве локальности ссылок: вероятность обращения к некоторой инструкции тем больше, чем ближе по времени ее предшествующее использование. Т.о. буферы хронологический упорядочиваются по времени последних обращений к ним. Если нужен новый буфер, он выбирается по следующему порядку:
В первую очередь – выбирается свободный, еще неиспользованный буфер
Во вторую очередь заменяемый буфер ни изменявшийся во времени заполнения.
В третью очередь – буфер среди оставшихся, который имеет самую раннюю ссылку на обращение к нему (дольше всего не использовавшийся).
Далее 4 и 5 работа
Понятие процесса
Понятие процесса дает возможность моделировать активное состояние непрерывного выполнения программы на машине.
Пусть время, в течение которого
прослеживается изменение состояния
машины, представляется параметром
,
принимающим последовательность
возрастающих дискретных значений,
которые выбираются в начале и конце
выполнения каждой инструкции, т.е. в
точках наблюдения (Error: Reference source not found).
Определение 4.1
Событием назовем состояние машины, наблюдаемое в некоторый момент времени .
События позволяют отмечать изменения
состояния машины. Начало и конец каждого
действия
являются
событиями, соответствующие числовые
значения параметра
которых
обозначим
и
;
имеем
.
Определение 4.2
Последовательность действий
,
для каждого элемента которой
,
называется последовательным процессом
или просто процессом.
Процесс можно описать рядом следующих
друг за другом событий:
.
Такая последовательность данных и
состояний машины называется временным
следом (историей или трассой) процесса.
Определение 4.3
Контекстом процесса назовем ту информацию, которую действия процесса могут проверять или изменять.
Контекст процесса, связанного с выполнением программы, включает:
контекст процессора;
контекст памяти, или рабочее пространство;
совокупность атрибутов процесса, которая содержит следующие характеристики:
имя процесса, которое служит для его идентификации и обычно представляет некоторый уникальный номер;
приоритет процесса, который служит для упорядочения выделения процессора процессам;
права процесса, которые определяют перечень разрешенных операций, обеспечивающий защиту используемой информации.
