Реализация ввода-вывода в Windows 2000

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

Чтоб гарантировать, что драйверы устройств отлично работают с Реализация ввода-вывода в Windows 2000 остальной час­тью системы Windows 2000, компания Microsoft обусловила для драйверов мо­дель Windows Driver Model, которой драйверы устройств должны соответство­вать. Более того, компания Microsoft также предоставляет набор инструментов, который должен посодействовать разработчикам драйверов в разработке драйверов, соответ­ствующих модели Windows Driver Model. Согласующиеся с ней драйверы должны удовлетворять всем Реализация ввода-вывода в Windows 2000 сле­дующим требованиям (также неким другим):

1. Обрабатывать входящие запросы ввода-вывода, поступающие в стандарт­ном формате.

2. Основываться на объектах, как и остальная часть системы Windows 2000.

3. Позволять динамическое добавление либо удаление устройств plug-and-play.

4. Допускать, когда это может быть, управление энергопотреблением.

5. Допускать реконфигурацию в определениях использования ресурсов.

6. Быть реентерабельными для Реализация ввода-вывода в Windows 2000 способности их использования на мультипро­цессорах.

Запросы ввода-вывода передаются драйверам в виде стандартизированных пакетов, именуемых IRP (Input/output Request Packet – пакет запроса ввода-вывода). Драйверы, согласующиеся с моделью Windows Driver Model, должны уметь обрабатывать пакеты IRP. Драйвер должен поддерживать работу с объекта­ми, другими словами поддерживать определенный Реализация ввода-вывода в Windows 2000 перечень способов, к которым может обра­щаться остальная система. Он также должен корректно работать с другими объек­тами операционной системы Windows 2000, доступ к которым осуществляется с помощью дескрипторов объектов.

Драйверы, согласующиеся с моделью Windows Driver Model, должны полнос­тью поддерживать устройства plug-and-play. Это значит, что если Реализация ввода-вывода в Windows 2000 устройство, управляемое драйвером, в один момент добавляется в систему либо удаляется из систе­мы, драйвер должен быть готов к получению данной инфы и корректной реакции на эту информацию, даже в этом случае, если устройство удаляется в момент воззвания к нему. Также драйверы должны поддерживать управление энергопот­реблением для тех устройств, для Реализация ввода-вывода в Windows 2000 которых это может быть. К примеру, если система решает, что сейчас пора перейти в режим низкого энергопотребления, все драйве­ры должны поддерживать этот режим, чтоб беречь энергию. Они также долж­ны поддерживать оборотный переход в режим обычного функционирования.

Драйвер должен быть настраиваемым, что значит отсутствие любых интегрированных Реализация ввода-вывода в Windows 2000 догадок о линиях прерываний либо портах ввода-выво­да, применяемых определенным устройством. Драйверы устройств также должны работать на многороцессорных машинах, потому что под­держка многопроцессорности была заложена в операционную систему Windows 2000 при разработке. Это требование значит, это во время обработки драйвером запро­са от 1-го центрального микропроцессора может придти запрос от другого Реализация ввода-вывода в Windows 2000 центрально­го микропроцессора. 2-ой центральный микропроцессор может начать выполнение програм­мы драйвера сразу с первым центральным микропроцессором. Драйвер должен работать корректно, даже когда он вызывается сразу 2-мя и поболее центральными микропроцессорами. Это значит, что доступ ко всем чувствитель­ным структурам данных должен предоставляться только снутри критичных об Реализация ввода-вывода в Windows 2000­ластей. Обычное предположение, что других воззваний к драйверу не будет, пока не закончится обработка текущего воззвания к нему, неприемлимо.

В операционной системе UNIX воззвание к драйверам делается по номеру головного устройства. В Windows 2000 применяется другая схема. Во время загруз­ки операционной системы либо тогда, когда в систему добавляется новое устройство Реализация ввода-вывода в Windows 2000 plug-and-play, поддерживающее установку системы без перезагрузки, операционная система Windows 2000 автоматом обнаруживает его и вызывает менеджер plug-and-play. Менеджер plug-and-play запрашивает у устройства назва­ние фирмы-производителя и номер модели устройства. Вооружившись данными сведениями, он отыскивает драйвер для данного устройства в определенном каталоге на жестком диске Реализация ввода-вывода в Windows 2000. Если этого драйвера нет, он показывает диалоговое окно, в каком юзеру предлагается воткнуть гибкий диск либо CD-ROM с драйвером. Ког­да драйвер найден, он загружается в память.

Каждый драйвер должен поставлять набор процедур, которые могут быть вы­званы для получения требуемого обслуживания. 1-ая процедура, именуемая DriverEntry Реализация ввода-вывода в Windows 2000, инициализирует драйвер. Она вызывается сходу после загрузки драйве­ра. Процедура может создавать таблицы и структуры данных, но не должна обращать­ся к самому устройству. Она также заполняет некие поля объекта драйвера, сделанного менеджером ввода-вывода при загрузке драйвера. Поля в объекте драй­вера включают указатели на все другие процедуры, предоставляемые Реализация ввода-вывода в Windows 2000 драйвером.

Не считая того, для каждого устройства, управляемого драйвером (к примеру, для каждо­го диска IDE, управляемого драйвером диска IDE), создается объект устройства и инициализируется так, чтоб он указывал на объект драйвера. При наличии объекта устройства можно просто отыскать объект драйвера и, таким макаром, обращаться к его способам Реализация ввода-вывода в Windows 2000.

2-ая процедура драйвера именуется AddDevice. Она вызывается менедже­ром plug-and-play всего один раз для каждого добавляемого устройства. После чего драйвер вызывается первым пакетом IRP, который устанавливает вектор прерываний и инициализирует аппаратуру. Не считая того, драйвер должен содержать функцию обработки прерываний, разные процедуры, управляющие таймера­ми, путь Реализация ввода-вывода в Windows 2000 резвого ввода-вывода, управление DMA, позволять оборвать исполня­ющийся текущий запрос и почти все другое.

В Windows 2000 драйвер должен сам делать всю работу. С другой сто­роны, в системе Windows 2000 могут существовать стеки драйверов. Это значит, что запрос может проходить через целую последовательность драйверов, любой из которых делает свою часть работы. Стеки Реализация ввода-вывода в Windows 2000 драйверов позволяют отделить управление шиной от управления соб­ственно устройством. К примеру, управление шиной PCI отличается большой сложностью, что вызвано огромным количеством режимов и транзакций шины. Таким макаром, отделение управления шиной от управления устройством, присоединенным к данной шине, упрощает работу по созданию драйвера. Программеру, пишущему драйвер Реализация ввода-вывода в Windows 2000 устройства, более не надо учить вопрос управления шиной. Он может просто использовать стандартный драйвер шины, находящийся в стеке драйверов. У драй­веров USB и SCSI есть части, специфичные для определенных устройств, и общая часть, для которой употребляются отдельные драйверы.

Не считая того, стеки драйверов позволяют добавлять в стек драйверы-фильтры Реализация ввода-вывода в Windows 2000. Фильтрующий драйвер делает некие преобразования проходящих через их данных. К примеру, фильтрующий драйвер может сжать данные по пути к дис­ку либо зашифровать их по дороге в сеть. Помещение драйверного фильтра в стек драйверов значит, что ни прикладная программка, ни реальный драйвер устрой­ства не должны знать о присутствии Реализация ввода-вывода в Windows 2000 фильтрующего драйвера и что фильтрующий драйвер работает автоматом для всех данных, поступающих с устройства либо на устройство.

8.5. Файловые системы Windows 2000


realizacii-proektov-po-napravleniyu-rasprostranenie-na-vsej-territorii-rossijskoj-federacii-sovremennih-modelej-uspeshnoj-socializacii-detej-na-2011-2012-godi.html
realizaciya-administrativnoj-reformi-informatizaciya-organov-socialnoj-zashiti-byulleten-za-2010-god.html
realizaciya-bazi-dannih-v-subd-access.html