Читайте также: |
|
В Windows NT NTFS и другие ФС — это загружаемые драйверы. Они могут загружаться или удаляться из ОС по мере необходимости. Все драйверы работают в контексте системы ввода-вывода Windows NT и неявно вызываются приложениями, которые используют Win32 или другие API ввода-вывода. Как показано на рис. 2-1, подсистемы окружения (environment subsystems) Windows NT вызывают системные сервисы NT, которые, в свою очередь, отыскивают подходящие загруженные драйверы и вызывают их.
Драйверы, расположенные на разных уровнях, передают друг другу запросы с помощью диспетчера ввода-вывода. Использование диспетчера ввода-вывода в качестве посредника позволяет каждому драйверу сохранять незави-
Рис. 2-1. Компоненты системы ввода-вывода Windows NT.
симость, так что его загрузка или выгрузка не влияет на другие драйверы. Кроме того, драйвер NTFS взаимодействует с тремя другими компонентами исполнительной системы Windows NT, показанными в левой части рис. 2-2, которые тесно связаны с ФС.
Сервис журнала транзакций (log file service, LFS), разработанный Брайаном Эндрю (Brian Andrew), — это системный модуль Windows NT, обеспечивающий протоколирование операций записи на диск. Он записывает информацию в журнал транзакций (log file), который используется для восстановления тома NTFS после сбоя системы.
Диспетчер кэша (cache manager) — это системный компонент Windows NT, написанный Томом Миллером (Tom Miller) и обеспечивающий общесистемную поддержку кэширования для NTFS и драйверов других ФС, включая драйверы сетевой ФС (серверы и редиректоры). Все ФС Windows NT осуществляют доступ к кэшированным файлам, отображая последние в виртуальную память1 и выполняя чтение и запись в нее. В этих целях диспетчер кэша обеспечивает для ФС специализированный интерфейс к диспетчеру виртуальной памяти Windows NT. Если программа пытается обратиться к части файла, которая не загружена в кэш, — так называемый промах кэша (cache miss), — диспетчер виртуальной памяти вызывает NTFS для обращения к драйверу диска и получения содержи-
1 Виртуальная память в Windows NT обсуждается в книге "Основы Windows NT", гл. 6, "Диспетчер виртуальной памяти".
Рис. 2-2. NTFS и взаимодействующие с ней компоненты исполнительной системы Windows NT.
мого файла с диска. Диспетчер кэша оптимизирует дисковый ввод-вывод при помощи средства отложенной записи (lazy writer) — набора системных потоков управления, вызывающих диспетчер виртуальной памяти для сброса содержимого кэша на диск в фоновом режиме (асинхронная запись на диск).
Взаимоотношения NTFS с другими компонентами системы (рис. 2-2) строятся так же, как и для других ФС, поддерживаемых Windows NT: FAT, HPFS и сетевых ФС. Единственное отличие состоит в том, что эти ФС не обращаются к сервису журнала транзакций для протоколирования последних.
Дата добавления: 2015-07-10; просмотров: 114 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Множественные потоки данных | | | Модели реляционной базы данных и обработки транзакций |