Ochkarik
|
|
« Ответ #1 : 16-07-2008 13:03 » |
|
это структура для хранения необходимых для работы драйвера переменных. ВАШИХ переменных.
грубо говоря, если вы пишите пользовательское приложение под windows, то для хранения переменных вы можете использовать глобальную память процесса. то есть объявили пару переменных в начале кода - и порядок.
драйвер же, во-первых, не привязан к конкретному процессу, поэтому вопрос - а где собственно переменные размещать?.... во-вторых, один и тот же драйвер может создать несколько объектов.... в общем DeviceExtension у этих объектов - будет разный)
PS а описания как такового и нет. это же ваши переменные) единственное что - структура размещается в NonPagedPool b доступна на любом IRQL. создается после IoCreateDevice, существует до...
блин. там все есть... в DDK. ищите IoCreateDevice, там в гипертексте.
|