Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции (ОС).doc
Скачиваний:
7
Добавлен:
11.09.2019
Размер:
716.29 Кб
Скачать

Удобный логический интерфейс

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

На этой базе строится более сложная модель устройств ввода-вывода, с учетом их специфики.

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

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

Существуют два типа интерфейсов:

1) “драйвер-ядро” (Driver Kernel Interface, DKI) для взаимодействия с ядром ОС

2) интерфейс “драйвер-устройство” (Driver Device Interface, DDI) для взаимодействия с контроллером

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

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

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

Поддержка нескольких файловых систем

Данные на дисках организуются в файловые системы (ФС). Свойства ФС во многом определяют свойства ОС (отказоустойчивость, быстродействие, емкость и пр.).

Популярные файловые системы переходят из одной ОС в другую (например, FAT из MS DOS в OS/2, MS Windows, Unix).

Обычно в ОС имеется слой программного обеспечения, отвечающий за простоту подключения новой файловой системы. Например, слой VFS (Virtual File System) в версиях Unix.

Поддержка синхронных и асинхронных операций ввода-вывода

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

Многослойная модель подсистемы ввода-вывода

В представленной модели приведены 3 вертикальные подсистемы, управляющие дисками, графическими устройствами и сетевыми адаптерами. В каждой вертикальной подсистеме существует несколько слоев модулей.

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