ВУЗ:
Составители:
27
Поле DriverObject (PDRIVER_OBJECT) указывает на объект драйвера,
связанный с этим устройством. Обычно это тот драйвер, который и создал данный
объект устройства вызовом функции IoCreateDevice.
Поле NextDevice (PDEVICE_OBJECT) указывает на следующий объект
устройства, принадлежащий тому же драйверу, что и данный объект. Это поле
объединяет объекты устройств драйвера в связный список, начинающийся с
объекта
, указанного в поле DeviceObject объекта драйвера.
Type Size
ReferenceCount
DriverObject
NextDevice
AttachedDevice
CurrentIrp
Timer
Flags
Characteristics
DeviceExtension
DeviceType
StackSize
…
AlignmentRequirement
…
Рисунок 2.2 – Структура данных DeviceObject
Поле
CurrentIrp (PIRP) регистрирует последний пакет IRP, отправленный
функции StartIo. Это поле необходимо в том случае, если используются функции
StartPaket и StartNextPaket для работы с очередями IRP.
Поле Flags (ULONG) содержит набор битовых флагов (таблица 2.2).
Поле DriverObject (PDRIVER_OBJECT) указывает на объект драйвера,
связанный с этим устройством. Обычно это тот драйвер, который и создал данный
объект устройства вызовом функции IoCreateDevice.
Поле NextDevice (PDEVICE_OBJECT) указывает на следующий объект
устройства, принадлежащий тому же драйверу, что и данный объект. Это поле
объединяет объекты устройств драйвера в связный список, начинающийся с
объекта, указанного в поле DeviceObject объекта драйвера.
Type Size
ReferenceCount
DriverObject
NextDevice
AttachedDevice
CurrentIrp
Timer
Flags
Characteristics
DeviceExtension
DeviceType
StackSize
…
AlignmentRequirement
…
Рисунок 2.2 – Структура данных DeviceObject
Поле CurrentIrp (PIRP) регистрирует последний пакет IRP, отправленный
функции StartIo. Это поле необходимо в том случае, если используются функции
StartPaket и StartNextPaket для работы с очередями IRP.
Поле Flags (ULONG) содержит набор битовых флагов (таблица 2.2).
27
Страницы
- « первая
- ‹ предыдущая
- …
- 25
- 26
- 27
- 28
- 29
- …
- следующая ›
- последняя »
