!obtrace
Расширение !obtrace отображает данные трассировки ссылок на объекты для указанного объекта.
!obtrace Object
Параметры
Объект
Указатель на объект или путь.
DLL-библиотеки
Kdexts.dll
Дополнительная информация
Дополнительные сведения о программе Global Flags (GFlags) см. в документации по комплекту драйверов Windows (WDK) и внутренних компонентах Microsoft Windows Марком Руссиновичем и Дэвидом Соломоном.
Замечания
Функция трассировки ссылок на объект для записей Windows записывает последовательные трассировки стека при добавочном или уменьшении счетчика ссылок на объект.
Перед использованием этого расширения для отображения данных трассировки ссылок на объект необходимо использовать GFlags , чтобы включить трассировку ссылок на объект для указанного объекта. Можно включить трассировку ссылок на объект в качестве параметра флага ядра (время выполнения), в котором изменение действует немедленно, но исчезает при завершении работы или перезапуске; или как параметр реестра, который требует перезапуска, но остается эффективным, пока не измените его.
Ниже приведен пример выходных данных расширения !obtrace :
kd> !obtrace 0xfa96f700
Object: fa96f700 Image: cmd.exe
Sequence (+/-) Stack
-------- ----- ---------------------------------------------------
2421d +1 nt!ObCreateObject+180
nt!NtCreateEvent+92
nt!KiFastCallEntry+104
nt!ZwCreateEvent+11
win32k!UserThreadCallout+6f
win32k!W32pThreadCallout+38
nt!PsConvertToGuiThread+174
nt!KiBBTUnexpectedRange+c
2421e -1 nt!ObfDereferenceObject+19
nt!NtCreateEvent+d4
nt!KiFastCallEntry+104
nt!ZwCreateEvent+11
win32k!UserThreadCallout+6f
win32k!W32pThreadCallout+38
nt!PsConvertToGuiThread+174
nt!KiBBTUnexpectedRange+c
2421f +1 nt!ObReferenceObjectByHandle+1c3
win32k!xxxCreateThreadInfo+37d
win32k!UserThreadCallout+6f
win32k!W32pThreadCallout+38
nt!PsConvertToGuiThread+174
nt!KiBBTUnexpectedRange+c
24220 +1 nt!ObReferenceObjectByHandle+1c3
win32k!ProtectHandle+22
win32k!xxxCreateThreadInfo+3a0
win32k!UserThreadCallout+6f
win32k!W32pThreadCallout+38
nt!PsConvertToGuiThread+174
nt!KiBBTUnexpectedRange+c
24221 -1 nt!ObfDereferenceObject+19
win32k!xxxCreateThreadInfo+3a0
win32k!UserThreadCallout+6f
win32k!W32pThreadCallout+38
nt!PsConvertToGuiThread+174
nt!KiBBTUnexpectedRange+c
---- ----------------------------------------------------------
References: 3, Dereferences 2
Основные индикаторы в отображении !obtrace 0xfa96f700 перечислены в следующей таблице.
Параметр | Значение |
---|---|
Последовательность |
Представляет порядок операций. |
+/- |
Указывает ссылку или операцию разыменования. +1 указывает на справочную операцию. -1 указывает операцию разыменования. +/- n указывает несколько операций ссылок и разыменовок. |
Трассировки ссылок на объекты на целевых компьютерах на основе x64 могут быть неполными, так как не всегда невозможно получить трассировки стека на уровнях IRQL выше, чем PASSIVE_LEVEL.
Вы можете остановить выполнение в любое время, нажав клавиши CTRL+BREAK (в WinDbg) или CTRL+C (в KD).