Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС / Тема_4.ppt
Скачиваний:
252
Добавлен:
11.04.2015
Размер:
5.04 Mб
Скачать

4.2.6. Поддержка широкого спектра драйверов

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

Наконец, драйвер возвращает информацию о состоянии для информирования вызывающей программы о статусе завершения операции. Если в очереди находились другие запросы, один из них теперь может быть выбран и запущен. В противном случае драйвер блокируется в ожидании следующего запроса.

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

91

4.2.6. Поддержка широкого спектра драйверов

Для поддержки процесса разработки драйверов операционной системы выпускается так называемый пакет DDK (Driver Development Kit), представляющий собой набор инструментальных средств-библиотек, компиляторов и отладчиков.

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

92

4.2.7. Динамическая выгрузка и загрузка драйверов

Так как набор потенциально поддерживаемых данных ОС периферийных устройств всегда шире набора устройств, которыми ОС должна управлять при установке на конкретной машине, то ценным свойством ОС является возможность динамически загружать в оперативную память требуемый драйвер

(без остановки ОС ) и выгружать его, если надобность в драйвере отпала. Такое свойство ОС может существенно сэкономить системную область памяти.

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

93

4.2.7. Динамическая выгрузка и загрузка драйверов

Альтернативой динамической загрузке драйверов при изменении текущей конфигурации внешних устройств компьютера является повторная компиляция кода ядра с требуемым набором драйверов, что создает между всеми компонентами ядра статические связи вместо динамических.

Пример: ранние версии ОС UNIX. При статических вызовах между ядром и драйверами структуры ОС упрощается, но этот подход требует наличие исходных кодов модулей ОС. Кроме того, в этом варианте работающую версию ОС надо остановить и заменить новой, что не всегда допустимо в некоторых применениях.

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

94

4.2.7. Динамическая выгрузка и загрузка драйверов

Поэтому поддержка динамической загрузки драйверов является практически обязательным требованием для современных универсальных ОС.

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

95

4.2.8. Основные системные таблицы ввода вывода

Для управления всеми операциями ввода-вывода и отслеживания состояния всех ресурсов, занятых в обмене данными, операционная система должна иметь соответствующие информационные структуры.

Эти информационные структуры, прежде всего, призваны отображать следующую информацию:

состав устройств ввода-вывода и способы их подключения;

аппаратные ресурсы, закрепленные за имеющимися в системе устройствами ввода-вывода;

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

96

4.2.8.Основные системные таблицы ввода вывода

адреса размещения драйверов устройств ввода- вывода и области памяти для хранения текущих значений переменных, определяющих работу с этими устройствами;

области памяти для хранения информации о текущем состоянии устройства ввода-вывода и параметрах, определяющих режимы работы устройства;

данные о текущем процессе, который работает с данным устройством;

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

97

4.2.8.Основные системные таблицы ввода вывода

адреса тех областей памяти, которые содержат данные, собственно и участвующие в операциях ввода-вывода (получаемые при операциях ввода данных и выводимые на устройство при операциях вывода данных).

Эти информационные структуры часто называют таблицами ввода-вывода, хотя они, в принципе, могут быть организованы и в виде списков.

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

98

4.2.8. Основные системные таблицы ввода вывода

Каждая операционная система ведет свои таблицы ввода-вывода, их состав (и количество, и назначение каждой таблицы) может сильно отличаться.

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

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

99

4.2.8. Основные системные таблицы ввода вывода

Первая таблица (или список) - таблица оборудования (equipment table) содержит информацию обо всех устройствах ввода-вывода, подключенных к вычислительной системе.

Каждый элемент этой таблицы называется UСВ (Unit Control Block — блок управления устройством ввода- вывода).

Каждый элемент UCB таблицы оборудования, как правило, содержит следующую информацию об устройстве:

тип устройства, его конкретная модель,

символическое имя и характеристики устройства;

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

100

Соседние файлы в папке ОС