Sdílet prostřednictvím


Řízení debuggeru User-Mode z jádrového debuggeru

Vstup a výstup z ladicího programu v uživatelském režimu můžete přesměrovat na ladicí program jádra. Toto přesměrování umožňuje ladicímu programu jádra řídit konkrétní relaci ladění v uživatelském režimu, ke které dochází v cílovém počítači.

Jako ladicí program jádra můžete použít KD nebo WinDbg. Všimněte si, že v tomto scénáři není k dispozici mnoho známých funkcí WinDbg. Nemůžete například použít okno Místní hodnoty, okno dekompilace, okno Zásobníku volání, a nemůžete procházet krokově zdrojový kód. Důvodem je to, že WinDbg funguje pouze jako prohlížeč ladicího programu (NTSD nebo CDB) spuštěného na cílovém počítači.

Jako ladicí program v uživatelském režimu můžete použít CDB nebo NTSD. NTSD je lepší volbou, protože vyžaduje minimální prostředky z procesoru a operačního systému počítače, na kterém se ladí aplikace. Ve skutečnosti, když je NTSD spuštěn pod kontrolou jádrového ladicího programu, není vytvořeno žádné okno NTSD. S NTSD můžete provádět ladění uživatelského režimu prostřednictvím sériového portu v rané fázi spouštění a pozdní fázi vypínání.

Poznámka Příkaz .shell není podporován, pokud je výstup ladicího programu v uživatelském režimu přesměrován do ladicího programu jádra.

Tato část obsahuje následující:

  • Spuštění ladicí relace popisuje, jak zahájit relaci, ve které je ladicí program v uživatelském režimu řízen z ladicího programu jádra.

  • Přepínání režimů popisuje čtyři různé režimy, které jsou součástí, a způsob, jak mezi nimi střídat.

  • Kdy použít tuto techniku popisuje scénáře, ve kterých je tato technika obzvláště užitečná.

  • Kombinace této metody se vzdáleným laděním popisuje, jak řídit ladicí program v uživatelském režimu z ladicího programu jádra a používat ji ve stejnou dobu jako ladicí server. Tato kombinace může být užitečná, pokud se symboly uživatelského režimu nacházejí na serveru symbolů.