Издательство: | Бином |
Дата выхода: | февраль 2009 |
ISBN: | 978-5-9518-0328-3 |
Тираж: | 3 500 экземпляров |
Объём: | 576 страниц |
Масса: | 640 г |
Размеры(В x Ш x Т), см: | 24 x 17 |
Обложка: | мягкая |
Книга представляет собой систематизированное введение в программирование драйверов Windows 2000/XP/Server 2003 и Windows 98/Ме с использованием Microsoft Windows DDK.
Начиная с рассмотрения базовых понятий и терминов программирования драйверов, автор затем подробно рассматривает набор программных средств, необходимых для разработки драйверов режима ядра в операционной системе Windows, а после реализации законченного драйвера, что дает накопление стартового опыта, переходит к детальному рассмотрению структуры драйверов модели WDM и "драйверов-в-стиле-NT". Подробно рассмотрены особенности работы с памятью в режиме ядра, вопросы взаимодействия с подсистемой ввода/вывода Windows, создания и синхронизации программных потоков, особенности работы с совместно используемыми данными, процедуры для работы с файлами, текстом, временем и Системным Реестром в режиме ядра. Рассмотрены разные способы инсталляции драйверов - от взаимодействия с системным Мастером Установки новой аппаратуры до динамической загрузки с использованием сервисов SCM Менеджера. Отдельная глава посвящена составлению и отладке inf-файлов - вопросу, крайне редко затрагиваемому в русскоязычной литературе по программированию. Затрагиваются также и общие вопросы работы с аппаратурой, включая обзор шин современного компьютера - PCI, USB, FireWire, PC Cards. Завершается книга рассмотрением методов тестирования и отладки драйверов. В приложениях приводится справочная информация, полезная разработчику драйверных систем как, впрочем, и всем профессиональным программистам в среде Windows. Третье издание дополнено развернутым описанием утилиты Build и введением в использование интегрированного дизассемблера IDA Pro.
Материал книги дает ясное представление об основных типах данных и структурах драйверов и механизмах их взаимодействия с операционной системой. Минимальным требованием к читателю является хорошее знание языка программирования С (без расширений C++).
Книга будет полезна студентам и специалистам, интересующимся программированием в режиме ядра Windows и разработкой модулей ядра, которыми, в частности, являются драйверы.