ВУЗ:
Составители:
42
владельцем IRP, и пакет не находится в очереди, использующей этот элемент, все
четыре указателя в массиве могут быть использованы произвольно.
Поле Taile.Overlay.ListEntry (LIST_ENTRY) может использоваться для
организации частных очередей.
3.2 Стек ввода-вывода
При создании IRP диспетчер ввода-вывода создает также массив структур
IO_STACK_LOCATION. В стеке содержится столько таких структур, сколько
драйверов будет обрабатывать данный IRP (рисунок 3.3).
Рисунок 3.3 – Соответствие между драйверами и стеком ввода-вывода
Структура каждого элемента стека показана на рисунке 3.4.
Рисунок 3.4 – Структура элемента стека ввода-вывода
Поле MajorFunction (UCHAR) содержит основной код (значение) функции,
связанной с IRP. Этот код, например, IRP_MJ_READ соответствует одному из
элементов таблицы функций MajorFunction объекта драйвера.
владельцем IRP, и пакет не находится в очереди, использующей этот элемент, все четыре указателя в массиве могут быть использованы произвольно. Поле Taile.Overlay.ListEntry (LIST_ENTRY) может использоваться для организации частных очередей. 3.2 Стек ввода-вывода При создании IRP диспетчер ввода-вывода создает также массив структур IO_STACK_LOCATION. В стеке содержится столько таких структур, сколько драйверов будет обрабатывать данный IRP (рисунок 3.3). Рисунок 3.3 – Соответствие между драйверами и стеком ввода-вывода Структура каждого элемента стека показана на рисунке 3.4. Рисунок 3.4 – Структура элемента стека ввода-вывода Поле MajorFunction (UCHAR) содержит основной код (значение) функции, связанной с IRP. Этот код, например, IRP_MJ_READ соответствует одному из элементов таблицы функций MajorFunction объекта драйвера. 42
Страницы
- « первая
- ‹ предыдущая
- …
- 40
- 41
- 42
- 43
- 44
- …
- следующая ›
- последняя »