Applies ToGeneral

12 Temmuz 2011'desteği için Windows Vista Service Pack 1 (SP1) sona erer. Windows için güvenlik güncelleştirmelerini almaya devam etmek üzere Windows Vista Service Pack 2 (SP2) çalıştırdığınızdan emin olun. Daha fazla bilgi için şu Microsoft web sayfasına bakın: bazı Windows sürümleri için destek sona eriyor.

Özet

Çekirdek hata ayıklayıcısı başlattıktan sonra Windows hata ayıklama simgeleri doğrulanması gereken (I386kd.exe | WinDbg.exe). hata ayıklayıcısı yükleyin ve bir ileti görüntülenir, ancak simgeler doğru değilse, gelecekteki hata ayıklama komutları uygun işlevleri ve düzensiz aralıklarla sonuçlar verecektir değişkenleri, başvuru yapmayın. Aşağıda listelenen birkaç kırmızı bayraklar ve simgeler spot onay geçerliliğini yöntemlere birkaç'dır.

Ek Bilgi

Bu makalede, çekirdek hata ayıklayıcısı çalışıyor ve bir Memory.dmp dosyasını yükledi veya bir uzak makineye bağlı olduğunu varsayar. Sunulan komutların tam belgelenmemiştir ve yalnızca forumlarından alıntıları çıktı gösterilir.

Makale içeriği

  • Çekirdek Hata Ayıklayıcısı'nı yükleme

  • Oluşturulma saati ile denetimi! sürücüleri

  • Oluşturulma zamanı denetlemek için Link.exe kullanma

  • Bir İşlevi Parçalarına Ayırma

  • Hizmet paketi simgeler

Çekirdek Hata Ayıklayıcısı'nı yükleme

Çekirdek hata ayıklayıcısı normal yükü aşağıdaki sorular birini görüntüler:

kd > tek işlemcili sistem 0: kd > çok işlemcili sistemAşağıda gösterilen İstemi simgesi dosya Ntoskrnl.exe dosyasının hatalı olduğunu gösterir. Sembol ağaç yapısına uygun çok işlemcili veya tek işlemcili çekirdek ve HAL kopyalandığından emin olmak için denetleyin. Örnek:Symbol search path is: C:\symbolskd: crash dump initialized [c:\dump\memory.dmp]could not determine the current processor, using zeroKernel Version 1057 Free loaded @ 0x80100000Bugcheck 0000001e : c0000005 80151d5b 00000000 00000001*** Contents Deleted ***16kd> Çekirdek hata ayıklayıcısı Memory.dmp dosyası, çekirdek sürümü yanı sıra işlemci sayımı yüklediğinde, ilk birkaç satır görüntülenir. İşlemci sayısı uygun çekirdek ve HAL ile karşılık geldiğini onaylayın. Ya da simgeler yüklü veya ertelenmiş sürücü simgesi bilgileri görüntülenir. Örnek yükleme:Symbol search path is: C:\symbolskd: crash dump initialized [c:\dump\memory.dmp]Kernel Version 1057 Free loaded @ 0x80100000Bugcheck 0000001e : c0000005 80151d5b 00000000 00000001re-loading all kernel symbolsKD: unloading symbols for "ntoskrnl.exe"KD: deferring symbol load for "ntoskrnl.exe" at 80100000KD: Loaded (2248) fpo entries for image (ntoskrnl.exe)KD: "ntoskrnl.exe" loaded 4074 symbols (80100000-801bbb80)KD: loaded symbols for "ntoskrnl.exe"KD: deferring symbol load for "atapi.sys" at fc810000KD: deferring symbol load for "diskdump.sys" at fc800000KD: deferring symbol load for "hal.dll" at 80400000KD: deferring symbol load for "atapi.sys" at 80010000KD: deferring symbol load for "SCSIPORT.SYS" at 80013000KD: deferring symbol load for "Atdisk.sys" at 80001000KD: deferring symbol load for "Scsidisk.sys" at 8001b000KD: deferring symbol load for "Fastfat.sys" at 80372000Unable to read image header for Floppy.SYS at fc820000 - status c0000001*** Contents Deleted ***KD: deferring symbol load for "srv.sys" at fc9e0000KD: deferring symbol load for "ntdll.dll" at 77f80000finished re-loading all kernel symbolsNT!_PspUnhandledExceptionInSystemThread+0x18:80131ff8 b801000000 mov eax,0x1kd> Çekirdek hata ayıklayıcısı "görüntü başlığı için Floppy.sys fc820000 - durum c0000001 okunamıyor." olduğunu unutmayın. Belirli bir sürücü başlığı şu anda bellekte olmadığından bu ileti normaldir.

Oluşturulma saati ile denetimi! sürücüleri

Kullanım ! sürücüleri şu anda sürücülerini listelemek için komut bellekte yüklü. Not tarihleri ve saatleri sürücülerinin ve olup olmadığına onlar yüklenememe olun. (Aşağıdaki örnekteki kod boyutu ve veri boyutu sütun makale genişliğine sığacak şekilde kaldırılır).kd> !driversBase Code Size Data Size Driver Name Creation Time80100000 Ntoskrnl.exe Fri May 26 18:18:36 199580400000 Hal.dll Thu May 11 13:54:18 199580010000 Atapi.sys Tue May 23 21:01:41 199580013000 Scsiport.sys Fri May 05 23:11:06 199580001000 Atdisk.sys Fri May 05 23:10:40 19958001b000 Scsidisk.sys Fri May 05 23:11:01 199580372000 Fastfat.sys Mon May 22 23:57:13 1995fc820000 Floppy.sys Header Paged Outfc830000 Scsicdrm.sys Wed May 10 21:57:03 1995fc840000 Fs_Rec.sys Header Paged Outfc850000 Null.sys Header Paged Outfc860000 Beep.sys Header Paged Outfc870000 I8042prt.sys Fri May 05 23:10:42 1995fc880000 Mouclass.sys Fri May 05 23:10:45 1995fc890000 Kbdclass.sys Fri May 05 23:10:44 1995fc8b0000 Videoprt.sys Fri May 05 23:10:05 1995fc8a0000 S3.sys Fri May 19 21:18:06 1995fc8c0000 Vga.sys Fri May 05 23:10:10 1995fc8d0000 Msfs.sys Fri May 05 23:11:57 1995fc8e0000 Npfs.sys Fri May 05 23:11:40 1995fc900000 Ndis.sys Mon May 22 20:23:18 1995fc8f0000 El59x.sys Fri Feb 10 16:18:09 1995fc940000 Tdi.sys Fri May 05 23:13:09 1995fc920000 Nbf.sys Mon May 08 15:00:47 1995fc950000 Netbios.sys Fri May 05 23:13:19 1995fc960000 Parport.sys Header Paged Outfc970000 Parallel.sys Header Paged Outfc980000 Serial.sys Fri May 05 23:11:20 1995fc990000 Afd.sys Header Paged Outfc9a0000 Rdr.sys Wed May 17 17:18:16 1995fc9e0000 Srv.sys Wed May 24 21:56:59 1995TOTAL: 1ab460 (1709 kb) 3b7c0 ( 237 kb) ( 0 kb 0 kb)kd> Tarih dosya derlenmiş dosyanın oluşturulma zamanı unutmayın. Bu yakın Date\Time damgası gerçek dosyayı dosya Yöneticisi'ni kullanarak Winnt\System32\Drivers alt görüntülerken tarihidir. Microsoft Developers Network (MSDN) abone veya Windows Aygıt Sürücüsü Seti (DDK) varsa, Link.exe aracı Dbg dosya sürücüsü derlendiğinde, oluşturulan dosyanın olduğundan emin olmak için kullanılabilir. "Zaman tarih damgası" aşağıdaki örnekte yukarıdaki çıktı Netbios.sys "oluşturma saatini" ile eşleşir. Link.exe, "zaman tarih damgası" Dbg dosyasının denetlemek için kullanın:

BAĞLANTI - döküm - başlıkları \symbols\sys\netbios.dbgMicrosoft (R) COFF ikili dosya Dumper sürüm 3.00.5270 Telif Hakkı (C) Microsoft Corp 1992-1995. Tüm hakları saklıdır. Döküm dosyası Netbios.dbg

4944 imza 0 14 C makine (i386) 306 özellikleri bayrakları2FAAE94F zaman tarih damgası Cum May 05 23:13:19 1995

8D0B sağlama toplamı 10000 temel görüntüsü Görüntü 70A0 görüntü boyutunu** Silinen içeriği ** ise ! sürücüleri önemli bir döküm tablosunda bozuk, komut aşağıdaki gibi görünen satırları oluşturur. Daha fazla çözümleme dökümünün mümkün olmayabilir.

DosHeader 0583002a - durum 00000000 okunamıyor DosHeader 0587002a - durum 00000000 okunamıyor DosHeader 0588002a - durum 00000000 okunamıyor DosHeader 058a002a - durum 00000000 okunamıyor DosHeader 058c002a - durum okunamıyor 00000000

Bir İşlevi Parçalarına Ayırma

Fonksiyonlar ve genel değişkenler adlarıyla başvurmak çekirdek hata ayıklayıcısı simge dosyaları etkinleştirin. Nokta birkaç unassembled işlevlerinin düzgün görünüyorlar emin olmak için denetleyin. Derleyici en iyi duruma getirilmiş ve örnekler için mutlaka uymayan Bunun birçok işlevlerdir. Optimize derleyici işlevler işlev adı parantez içinde FPO tanımlanır. İşlevler normalde ya da "itme ebp" ile başlayan veya "mov eax, fs [000000000]." Bu işlevler tanımak bir makine dili ve deneyim temel bilgi sağlayacaktır.

  • Yüklü modüller listesi x *!

  • Belirli bir modül (örneğin, Ntoskrnl.exe) simgeleri listeler. nt x! *

  • Yani optimize derleyici unassemble için bir işlev seçin. u NT! _NtUnlockFile

İyi simgeler

kd> u NT!_NtUnlockFileu NT!_NtUnlockFileNT!_NtUnlockFile:80156bd8 64a100000000     mov     eax,fs:[00000000]80156bde 55               push    ebp80156bdf 8bec             mov     ebp,esp80156be1 6aff             push    0xff80156be3 68200d1080       push    0x80100d2080156be8 68304f1380       push    0x80134f3080156bed 50               push    eax80156bee 64892500000000   mov     fs:[00000000],espkd> 

Unassembly işlevinin yukarıdaki metin benzer olmalıdır; Ancak, unassembly değiştirilebilir değildir. Unassembly doğru görünüyorsa, simgeler için bu modülü düzgün yüklemiş olduğunuz kabul edilebilir. Aşağıdaki unassembly ile başlar "jnz NT! _NTUnlockFile + 0x22." Kuşkusuz, bir işlevin başına bir atlama yönergesi koduyla başlatılmayacaktır. Sembol ağacında bir kez daha denetleyin.

Bozuk simgeler

kd> u NT!_NTUnlockFileu NT!_NTUnlockFileNT!_NtUnlockFile:801574a4 7520             jnz     NT!_NtUnlockFile+0x22 (801574c6)801574a6 6a00             push    0x0801574a8 8d45dc           lea     eax,[ebp-0x24]801574ab 50               push    eax801574ac 53               push    ebx801574ad ff356c361480     push    dword ptr [NT!_CcNoDelay+0x4 (8014366c)]801574b3 6a01             push    0x1801574b5 ff7508           push    dword ptr [ebp+0x8] 

Hizmet paketi simgeler

Ne zaman simgeleri belirli bir yükleme ile eşleştirmek zor olduğu durumlar vardır. Zaman içinde bir noktada hizmet gereken bir hizmet paketiyle güncelleştirilen dosyaların üzerine kopyalanan Windows yükleme CD-ROM dosyaları kopyalayarak eklenmiş. Sistem Kurulumu, Windows yükleme CD-ROM'UNDAN dosyaları kopyalar değiştirdikten sonra hizmet paketini ve herhangi bir üçüncü taraf desteği diskleri yeniden emin olun. Simgeler yükleme aynı sırada uygulanması gerekir.

EK BİLGİ

Çekirdek hata ayıklama nasıl yapılır dizi makaleleri bulmak için arama anahtar sözcüğü: debugref. WinDbg 2.0.x sembol teknikleri Hata ayıklayıcı sürümünde 2.0.x ve büyük Microsoft Debuggers kullanılabilecek ek simge doğrulama adımları vardır. Daha fazla bilgi için aşağıdaki Microsoft Web sitesine başvurun:

Sürücü Geliştirme Seti

Daha fazla yardıma mı ihtiyacınız var?

Daha fazla seçenek mi istiyorsunuz?

Abonelik avantajlarını keşfedin, eğitim kurslarına göz atın, cihazınızın güvenliğini nasıl sağlayacağınızı öğrenin ve daha fazlasını yapın.

Topluluklar, soru sormanıza ve soruları yanıtlamanıza, geri bildirimde bulunmanıza ve zengin bilgiye sahip uzmanlardan bilgi almanıza yardımcı olur.