Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Расширение !poolfind находит все экземпляры определенного тега пула в непагированных или страничных пулах памяти.
!poolfind TagString [PoolType]
!poolfind TagValue [PoolType]
Параметры
TagString
Указывает тег пула. TagString — это строка ASCII с учетом регистра. Звездочка (*) может использоваться для представления любого числа символов; Вопросительный знак (?) можно использовать для представления точно одного символа. Если звездочка не используется, TagString должен иметь ровно четыре символа в длину.
TagValue
Указывает тег пула. TagValue должен начинаться с "0x", даже если по умолчанию радикс равен 16. Если этот параметр начинается с любого другого значения (включая "0X"), он будет интерпретирован как строка тега ASCII.
PoolType
Указывает тип пула для поиска. Разрешены следующие значения:
0
Указывает непагаченный пул памяти. Это значение по умолчанию.
1
Указывает пул памяти с страницами.
2
Указывает специальный пул.
4
Указывает пул сеансов.
DLL-библиотеки
Kdexts.dll
Дополнительная информация
Сведения о пулах памяти и тегах пула см. в документации по комплекту драйверов Windows (WDK) и внутренних компонентах Microsoft Windows, по Марку Руссиновичу и Дэвиду Соломону.
Замечания
Эта команда может занять значительное время для выполнения, в зависимости от размера памяти пула, который необходимо выполнить. Чтобы ускорить это выполнение, увеличьте скорость COM-порта с помощью клавиш CTRL+A (переключение скорости Baud) или используйте команду кэша (задать размер кэша) для увеличения размера кэша (примерно до 10 МБ).
Тег пула является тем же тегом, который передается в семейство подпрограмм ExAllocateXxx .
Ниже приведен пример. Весь непагированный пул выполняется поиск, а затем выполняется поиск по страницам пула, но команда завершается до завершения (после часа операции):
kd> !poolfind SeSd 0
Scanning large pool allocation table for Tag: SeSd (827d1000 : 827e9000)
Searching NonPaged pool (823b1000 : 82800000) for Tag: SeSd
826fa130 size: c0 previous size: 40 (Allocated) SeSd
82712000 size: c0 previous size: 0 (Allocated) SeSd
82715940 size: a0 previous size: 60 (Allocated) SeSd
8271da30 size: c0 previous size: 10 (Allocated) SeSd
82721c00 size: 10 previous size: 30 (Free) SeSd
8272b3f0 size: 60 previous size: 30 (Allocated) SeSd
8272d770 size: 60 previous size: 40 (Allocated) SeSd
8272d7d0 size: a0 previous size: 60 (Allocated) SeSd
8272d960 size: a0 previous size: 70 (Allocated) SeSd
82736f30 size: a0 previous size: 10 (Allocated) SeSd
82763840 size: a0 previous size: 10 (Allocated) SeSd
8278b730 size: 100 previous size: 290 (Allocated) SeSd
8278b830 size: 10 previous size: 100 (Free) SeSd
82790130 size: a0 previous size: 20 (Allocated) SeSd
82799180 size: a0 previous size: 10 (Allocated) SeSd
827c00e0 size: a0 previous size: 30 (Allocated) SeSd
827c8320 size: a0 previous size: 60 (Allocated) SeSd
827ca180 size: a0 previous size: 50 (Allocated) SeSd
827ec140 size: a0 previous size: 10 (Allocated) SeSd
Searching NonPaged pool (fe7c3000 : ffbe0000) for Tag: SeSd
kd> !poolfind SeSd 1
Scanning large pool allocation table for Tag: SeSd (827d1000 : 827e9000)
Searching Paged pool (e1000000 : e4400000) for Tag: SeSd
e10000b0 size: d0 previous size: 20 (Allocated) SeSd
e1000260 size: d0 previous size: 60 (Allocated) SeSd
......
e1221dc0 size: a0 previous size: 60 (Allocated) SeSd
e1224250 size: a0 previous size: 30 (Allocated) SeSd
...terminating - searched pool to e1224000
kd>