Udostępnij przez


Zrozumienie okienka drzewa śledzenia

Okienko Drzewo śledzenia jest głównym elementem przeglądarki defektów. Zazwyczaj przechodzisz przez kod w okienku Drzewo śledzenia , obserwując jego wpływ na kod w okienku Kod źródłowy i wartości w okienku Stan .

Okienko Drzewo śledzenia jest zorganizowane w strukturę hierarchiczną z serią węzłów, które można rozszerzać i zwijać. Hierarchia wskazuje elementy kodu, które spowodowały wykonanie innych elementów. Ten format ułatwia interpretowanie poszczególnych gałęzi kodu oraz wyświetlanie i ukrywanie sekcji kodu w miarę przechodzenia przez ślad.

Poniższy zrzut ekranu przedstawia przykładowe okienko Drzewa śledzenia .

Zrzut ekranu przedstawiający okienko Drzewo śledzenia w podglądzie wad z węzłami rozwijanymi i zwijanymi.

Każdy element kodu w okienku Drzewo śledzenia jest poprzedzony numerem wiersza w pliku źródłowym. To numerowanie pomaga znaleźć element kodu w oknie Drzewo źródeł i w pliku źródłowym.

Niektóre wiersze kodu w okienku Kod źródłowy odpowiadają więcej niż jednemu elementowi w okienku Drzewo śledzenia . Taka sytuacja występuje, gdy wiersz kodu powoduje więcej niż jedną akcję. Jeśli na przykład parametr wywołania funkcji jest IRQL, wiersz kodu, który zawiera wywołanie funkcji, może również zawierać wywołanie w celu znalezienia bieżącego IRQL, na przykład:

IoReleaseCancelSpinLock(KeGetCurrentIrql());

W takiej sytuacji okienko Drzewo śledzenia będzie zawierać element krytyczny dla wywołania funkcji KeGetCurrentIrql, kilka wywołań modelu systemu operacyjnego SDV w celu losowego wygenerowania poziomu IRQL, a następnie wywołanie funkcji IoReleaseCancelSpinLock ze zwróconym poziomem IRQL.