Sdílet prostřednictvím


Přehled ladění NDIS

Dva primární nástroje pro ladění síťového ovladače jsou trasování ladění a rozšíření NDIS (Network Driver Interface Specification). Další informace o trasování ladění naleznete v tématu Povolení trasování ladění NDIS. Další informace o vylepšení pro ladění NDIS naleznete v tématu NDIS Rozšíření, které poskytuje úplný seznam příkazů rozšíření nalezených v modulu rozšíření Ndiskd.dll.

Pomocí příkazu ndiskd.netreport vygenerujte vizuální sestavu zobrazující aktuální adaptéry a protokoly.

snímek obrazovky s barevným výstupem ndiskd.netreport zobrazující dva sloupce představující různé síťové adaptéry

Potom je příkaz ndiskd.netadapter ladicího programu jádra dobrým místem k zahájení vyšetřování aktuální sady ovladačů.

1: kd> !ndiskd.netadapter
    Driver             NetAdapter          Name
    ffffdf8015a98380   ffffdf8015aa11a0    Microsoft ISATAP Adapter #2
    ffffdf801418d650   ffffdf80140c71a0    Microsoft Kernel Debug Network Adapter

Dalším nástrojem pro ladění síťového ovladače je sada běžných ladících rozšíření, která je užitečná k získání ladících informací. Pokud zadáte !stacks 2 ndis! , zobrazí se všechna vlákna ve zásobníku počínaje ndis!. Tyto informace mohou být užitečné pro ladění zablokování a zastavení. Obecné informace o tom, jak začít s WinDbg, naleznete v tématu Začínáme s laděním systému Windows.

Ověřitel ovladače

Dalším užitečným nástrojem pro testování ovladače NDIS je NDIS Verifier. Další informace naleznete v tématu Pravidla pro ovladače NDIS a Ověřovač statického ovladače.

Ladění prostředků NDIS

Epizoda 175 pořadu Defrag Tools se věnuje ladění NDIS - Defrag Tools #175 - Ladění ústřední sítě.

Archivy blogu týmu NDIS jsou k dispozici na blogu NDIS.

Kontroly chyb NDIS

Existuje také chybový kód kontroly specifický pro NDIS, kód kontroly chyb 0x7C (BUGCODE_NDIS_DRIVER). Úplný seznam parametrů najdete v tématu Kontrola chyb 0x7C.

Běžná kontrola chyb související s nesprávným chováním NDIS je kontrola chyb 0xD1: DRIVER_IRQL_NOT_LESS_OR_EQUAL, kterou může způsobovat kód ovladače. Pravděpodobně se jedná o chybu nebo poškození paměti, které se nakonec projevuje jako špatný ukazatel.

Dalším běžným problémem je kontrola chyb typu 0x9F: DRIVER_POWER_STATE_FAILURE.

Prvním krokem při všech kontrolách chyb je vyhledání vhodného souboru s výpisem paměti, jeho načtení do ladicího programu systému Windows a použití příkazu !analyze. Další informace naleznete v tématu Použití rozšíření !analyze.