!арбитр
Расширение !arbiter отображает текущие системные arbiters и диапазоны арбитража.
!arbiter [Flags]
Параметры
Флаги
Указывает, какие классы арбитеров отображаются. Если опущено, отображаются все arbiters. Эти биты можно объединять свободно.
Bit 0 (0x1)
Отображение arbiters ввода-вывода.
Бит 1 (0x2)
Отображение arbiters памяти.
Бит 2 (0x4)
Отображение arbiters IRQ.
Бит 3 (0x8)
Отображение arbiters DMA.
Бит 4 (0x10)
Отображение arbiters номера шины.
Бит 8 (0x100)
Не отображайте псевдонимы.
DLL-библиотеки
Kdexts.dll
Дополнительная информация
См. самонастраивающийся отладку приложений этой команды расширения.
Замечания
Для каждого arbiter !arbiter отображает каждый выделенный диапазон системных ресурсов, некоторые необязательные флаги, PDO, присоединенные к этому диапазону (другими словами, владелец диапазона) и имя службы этого владельца (если известно).
Флаги имеют следующие значения:
Флаг | Значение |
---|---|
S |
Диапазон общий |
C |
Диапазон в конфликте |
Б |
Диапазон выделен загрузочным |
D |
Диапазон является драйвером эксклюзивным |
а |
Псевдоним диапазона |
P |
Положительное декодирование диапазона |
Рассмотрим пример:
kd> !arbiter 4
DEVNODE 80e203b8 (HTREE\ROOT\0)
Interrupt Arbiter "" at 80167140
Allocated ranges:
0000000000000000 - 0000000000000000 B 80e1d3d8
0000000000000001 - 0000000000000001 B 80e1d3d8
.....
00000000000001a2 - 00000000000001a2
00000000000001a2 - 00000000000001a2 CB 80e1d3d8
00000000000001a2 - 00000000000001a2 CB 80e52538 (Serial)
00000000000001a3 - 00000000000001a3 80e52778 (i8042prt)
00000000000001b3 - 00000000000001b3 80e1b618 (i8042prt)
Possible allocation:
< none >
В этом примере в следующей строке показан диапазон ресурсов (который состоит из 0x1A3 только), PDO 0x80E52778 и службы i8042prt.sys. В этой строке нет флагов.
Теперь вы можете использовать !devobj с этим адресом PDO, чтобы найти адреса расширения устройства и узла устройства:
kd> !devobj 80e52778
Device object (80e52778) is for:
00000034 \Driver\PnpManager DriverObject 80e20610
Current Irp 00000000 RefCount 1 Type 00000004 Flags 00001040
DevExt 80e52830 DevObjExt 80e52838 DevNode 80e52628
ExtensionFlags (0000000000)
AttachedDevice (Upper) 80d78b28 \Driver\i8042prt
Device queue is not busy.