Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Режимы ядра_прочитайте на четверг _это следующа...docx
Скачиваний:
2
Добавлен:
27.11.2019
Размер:
74.73 Кб
Скачать

1. Программный интерфейс приложений ввода-вывода (I/o api)

По сути, этот компонент включает функции диспетчера ввода-вывода, предназначенные для более высоких уровней Windows NT, а также компо­ненты режима ядра, выполняющие операции, связанные с диспетчером печа­ти.

2. Диспетчер ввода-вывода (I/o Manager)

Это элемент выполняемого модуля Windows NT; свойственные ему функ­ции перечислены ниже.

  • Создание пакетов запроса ввода-вывода (IRP) и направление их соот­ветствующему драйверу, а также перенаправление пакетов запроса вво­да-вывода между драйверами.

  • Удаление и освобождение пакетов запроса ввода-вывода после заверше­ния операции ввода-вывода.

  • Взаимодействие с диспетчером кэша и другими компонентами NT Ex­ecutive.

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

  • Мониторинг загруженных файловых систем и их вызов по требованию.

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

  • Управление буферами для операций ввода-вывода.

3. Драйверы файловых систем

Операционная система предоставляет функции файловых систем с по­мощью драйверов режима ядра.

Система Windows NT поставляется вместе с такими файловыми системами:

NTFS (файловая система NT);

UDFS (универсальная дисковая файловая система);

CDFS (файловая система компакт-дисков);

FAT (таблица размещения файлов).

Драйверы файловой си­стемы являются логическими, так как не взаимодействуют непосредственно с аппаратным обеспечением; например, файловая система не делает различия между дисками с интерфейсом SCSI и с интерфейсом АТА (иногда называе­мым IDE). Тем не менее драйверы файловой системы отличаются от других драйверов.

Некоторые из этих отличий приведены ниже.

  • Драйверы файловой системы всегда вызываются в контексте потока,запрашивающего операцию ввода-вывода.

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

  • Драйверы файловой системы являются единственными драйверами, ко­торые обеспечивают работу методов ввода-вывода на основе IRP. Подоб­ный метод называется быстрым вводом-выводом (Fast I/O) и представ­ляет собой несколько входных точек драйвера.

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