Организация ввода-вывода. Часть 1. Виртуальные драйверы и виртуальное окружение WINDOWS. Рощин А.В. - 59 стр.

UptoLike

Составители: 

59
4. СТРУКТУРА VXD
В этой главе представлен "скелет" VxD, который обеспечивает
немного функциональных возможностей, но определяет основную
структуру будущих VxD. Этот скелетный VxD будет лишь контролировать
создание и уничтожение VM и потоков, а также будет выводить на печать
информацию о VM и о потоках в ходе этих процессов. Эта выходная
информация будет посылаться отладчику и в
файлэта техника может
использоваться в VxD для того, чтобы сохранить информацию для
отладки.
Здесь представлено два различных подхода к разработке VxD на
языке Си: один использует DDK Windows 95, другойпродукт фирмы
Vireo Software VToolsD. VToolsD предоставляет большой стартовый задел,
автоматически производя файл сборки (makefile) и прототип файла Си.
VToolsD также не требует никаких модулей на языке ассемблера.
Напротив, DDK-технология
требует одного файла на языке ассемблера. В
этой главе больший акцент делается на DDK-технологию, так как он более
сложен.
4.1. Инструменты для создания VxD
Во времена Windows 3.x VxD почти всегда был написан на
ассемблере, просто потому, что VxD представляли собой программы с
плоской 32-разрядной моделью памяти, и имелось немного доступных 32-
разрядных компиляторов с языка
Си. Теперь, когда 32-разрядные
компиляторы являются нормой, можно писать VxD на Си. Однако,
стандартного набора 32-разрядного компилятора и компоновщика
недостаточно.
Необходимы также включаемые (.h) файлы для VMM и других VxD
функций, а также специальная библиотека для взаимодействия с VMM и
                                   59



     4.    СТРУКТУРА VXD

     В этой главе представлен "скелет" VxD, который обеспечивает
немного    функциональных    возможностей,   но   определяет   основную
структуру будущих VxD. Этот скелетный VxD будет лишь контролировать
создание и уничтожение VM и потоков, а также будет выводить на печать
информацию о VM и о потоках в ходе этих процессов. Эта выходная
информация будет посылаться отладчику и в файл – эта техника может
использоваться в VxD для того, чтобы сохранить информацию для
отладки.
     Здесь представлено два различных подхода к разработке VxD на
языке Си: один использует DDK Windows 95, другой – продукт фирмы
Vireo Software VToolsD. VToolsD предоставляет большой стартовый задел,
автоматически производя файл сборки (makefile) и прототип файла Си.
VToolsD также не требует никаких модулей на языке ассемблера.
Напротив, DDK-технология требует одного файла на языке ассемблера. В
этой главе больший акцент делается на DDK-технологию, так как он более
сложен.

     4.1. Инструменты для создания VxD

     Во времена Windows 3.x VxD почти всегда был написан на
ассемблере, просто потому, что VxD представляли собой программы с
плоской 32-разрядной моделью памяти, и имелось немного доступных 32-
разрядных компиляторов с языка Си. Теперь, когда 32-разрядные
компиляторы являются нормой, можно писать VxD на Си. Однако,
стандартного    набора   32-разрядного   компилятора   и   компоновщика
недостаточно.
     Необходимы также включаемые (.h) файлы для VMM и других VxD
функций, а также специальная библиотека для взаимодействия с VMM и