Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ha a felhasználói módú hibakeresést a kernel-hibakeresőből szabályozza, négy különböző módba ütközik, és különböző módokon válthat közöttük.
Megjegyzés A forgatókönyv leírásában célalkalmazás a hibakeresés alatt álló felhasználói módú alkalmazásra, célszámítógépre a célalkalmazást és a CDB- vagy NTSD-folyamatot tartalmazó számítógépre, gazdaszámítógépre a kernel-hibakeresőt tartalmazó számítógépre hivatkozik.
A következő négy mód jelenik meg:
Felhasználói módú hibakeresés
A célszámítógép és a célalkalmazás le van fagyasztva. A felhasználói módú hibakeresési kérés megjelenik a kernel-hibakereső Hibakereső parancsablakában . A WinDbg-ben a WinDbg ablak alsó panelén megjelenő üzenet megjeleníti a bemenetet>. Ebben a parancssorban úgy adhat meg parancsokat, mintha felhasználói módú hibakeresés során lennének megadva, hogy elemezze a célalkalmazás állapotát, vagy futtassa vagy végiglépkedjen a végrehajtáson. Szimbólumfájlok, bővítmény DLL-ek és egyéb fájlok, amelyeket a hibakereső elér, a célszámítógépen lévő fájlok lesznek, nem pedig a gazdaszámítógépen.
Célalkalmazás végrehajtása
A célszámítógép fut, a célalkalmazás fut, és a hibakereső várakozik. Ez a mód ugyanaz, mint a cél futtatásának engedélyezése a szokásos hibakeresés során.
Alvó mód
A célszámítógép fut, de a célalkalmazás le van fagyasztva, és mindkét hibakereső le van fagyasztva. Ez a mód akkor hasznos, ha valamit el kell végeznie a célszámítógépen, de nem szeretné módosítani a hibakeresési munkamenet állapotát.
Kernel módú hibakeresés
A célszámítógép és a célalkalmazás le van fagyasztva. A kernel módú hibakeresési jelzés kd> a kernel hibakereső Hibakereső parancsablakában jelenik meg. Ez a mód a kernel mód tipikus hibakeresési állapota.
A munkamenet felhasználói módú hibakeresési módban kezdődik. A következő műveletek és események hatására a mód megváltozik:
A felhasználói módú hibakeresésről a célalkalmazás-végrehajtásra való váltáshoz használja a g (Go) parancsot a
Input>parancssorban.Ha ideiglenesen át szeretne váltani a felhasználói módú hibakeresésről a célalkalmazás-végrehajtásra, majd vissza szeretne térni a felhasználói módú hibakeresésre, használjon egy lépést, nyomkövetést vagy más ideiglenes végrehajtási parancsot. Az ilyen parancsok listáját a Cél szabályozása című témakörben találja.
Ha a felhasználói módú hibakeresésről alvó módra szeretne váltani, használja a .sleep (Pause Debugger) parancsot. Ez a parancs időzített. Amikor lejár az idő, a rendszer visszatér a felhasználói módú hibakereséshez.
A felhasználói módú hibakeresésről kernel módú hibakeresésre való váltáshoz használja a .breakin (Break to the Kernel Debugger) parancsot. Ne feledje, hogy a .breakin sikertelen lehet hozzáférés-megtagadási hibával, ha a hívó folyamat nem rendelkezik rendszergazdai jogosultságokkal. Ebben az esetben váltson a KD-re egy rövid .sleep parancs kiadásával és a CTRL+C billentyűkombináció lenyomásával.
A célalkalmazás-végrehajtásról a felhasználói módú hibakeresésre csak bizonyos környezetekben válthat. Ha a célszámítógép a Microsoft Windows XP-t vagy a Windows operációs rendszer egy újabb verzióját futtatja, használhatja a !bpid bővítmény parancsot. Ha CDB-t (nem NTSD-t) használ, aktiválhatja a CDB-ablakot a célszámítógépen, és nyomja le a CTRL+C billentyűkombinációt.
Ha a célalkalmazás töréspontot ér el, kivételt tapasztal, más vezérelt eseménybe ütközik vagy véget ér, a rendszer a célalkalmazás-végrehajtásról a felhasználói módú hibakeresésre vált. Ezeket az eseményeket előre kell megterveznie, különösen akkor, ha NTSD-t használ. További információ ezekről az eseményekről: Töréspontok használata és Kivételek és események szabályozása.
Ha a célalkalmazás-végrehajtásról kernel módú hibakeresésre szeretne váltani, nyomja le a CTRL+C billentyűkombinációt a KD ablakban, nyomja le a CTRL+BREAK billentyűkombinációt, vagy kattintson a Hibakeresés menü Törés gombjára a WinDbg ablakban, vagy nyomja le a SYSRQ vagy AZ ALT+SYSRQ billentyűkombinációt a célszámítógép billentyűzetén. (Ha a kernel hibakeresője KD, és a CTRL+C billentyűkombinációt lenyomja, miközben a rendszermag-hibakereső kommunikál a felhasználói módú hibakeresővel, a felhasználói módú hibakereső rögzítheti a CTRL+C billentyűkombináció lenyomását.)
Ha a hibakereső kernelhibát tapasztal, vagy ha a Breakin.exe eszközt használja, a rendszer a célalkalmazás-végrehajtásról a kernel módú hibakeresésre vált.
Ha alvó üzemmódról felhasználói módú hibakeresésre szeretne váltani, várja meg az alvási időt, indítsa el az új CDB-folyamatot a célszámítógépen a -wake parancssori beállítással, vagy használja a .wake (Wake Debugger) parancsot a CDB vagy az NTSD másik példányában a célszámítógépen.
A kernel módú hibakeresés kikapcsolásához használja a g (Go) parancsot a
kd>parancssorban. Ez a parancs visszatér a felhasználói módú hibakereséshez vagy a célalkalmazás-végrehajtáshoz (a kettő közül melyik volt a legutóbb használt állapot).