Sdílet prostřednictvím


Metody ovládání bodů přerušení

Zarážka je umístění ve spustitelném kódu, ve kterém operační systém zastaví provádění a rozdělí se do ladicího programu. To vám umožní analyzovat příkazy cílového a problémového ladicího programu.

Umístění zarážky můžete zadat podle virtuální adresy, modulu a rutinního posunu nebo zdrojového souboru a čísla řádku (v režimu zdroje). Pokud umístíte zarážku na rutinu bez posunu, zarážka se aktivuje při vstupu do této rutiny.

Existuje několik dalších druhů příkazových přerušení.

  • Bod přerušení může být přidružen k určitému vláknu.

  • Zarážka může před aktivací povolit pevný počet průchodů adresou.

  • Bod přerušení může při aktivaci automaticky vydávat určité příkazy.

  • Zarážku lze nastavit na nespustitelnou paměť a sledovat, zda je na toto umístění čteno nebo zapisováno.

Pokud ladíte více než jeden proces v uživatelském režimu, závisí sada zarážek na aktuálním procesu. Pokud chcete zobrazit nebo změnit zarážky procesu, musíte tento proces vybrat jako aktuální proces. Další informace o aktuálním procesu naleznete v tématu Řízení procesů a vláken.

Příkazy ladicího programu pro řízení a zobrazení zarážek

K řízení nebo zobrazení zarážek můžete použít následující metody:

Ve WinDbg existuje několik prvků uživatelského rozhraní, které usnadňují ovládání a zobrazení zarážek. Viz Nastavení zarážek v WinDbg (Classic).

Každá zarážka má desetinné číslo, které se nazývá ID zarážky. Toto číslo identifikuje bod přerušení v různých příkazech.

Příkazy zarážek

Můžete zahrnout příkaz do bodu přerušení, který se automaticky provede, když je bod přerušení zasažen. Například následující příkaz nastaví bod přerušení na MyFunction+0x47, vytvoří soubor s výpisem (dump soubor) a poté obnoví provádění.

0:000> bu MyFunction+0x47 ".dump c:\mydump.dmp; g" 

Poznámka Pokud řídíte ladicí program uživatelského režimu z ladicího programu jádra, nepoužívejte v řetězci příkazu zarážky g (Go ). Sériové rozhraní nemusí být schopné s tímto příkazem držet krok, a proto se možná nebudete moci vrátit do CDB. Pro více informací o této situaci viz Ovládání ladicího programu User-Mode z prostředí ladicího programu jádra.

Počet zarážek

V režimu jádra můžete použít maximálně 32 softwarových bodů přerušení. V uživatelském režimu můžete použít libovolný počet zarážek softwaru.

Počet podporovaných zarážek procesoru závisí na architektuře cílového procesoru.

Podmíněné přerušení programu

Můžete nastavit bod přerušení, který se aktivuje jen za určitých podmínek. Další informace o těchto typech zarážek naleznete v tématu Nastavení podmíněné zarážky.

Nejednoznačné zarážky

Ve verzi 10.0.25310.1001 a novějších ladicího modulu je nyní podporováno řešení nejednoznačných zarážek. Nejednoznačné zarážky umožňují ladicímu programu nastavit zarážky v určitých scénářích, kdy se výraz zarážky vyřeší na více míst. Další informace naleznete v tématu řešení nejednoznačného breakpointu.

Viz také

Použití zarážek

Syntaxe zarážek

bp, bu, bm (Nastavení bodu přerušení)

Nevyřešené zarážky (bu Breakpoints)