Tutorial Windbg Minidump – Menyiapkan & Membaca File Minidump

By :

Ini adalah tutorial tentang cara mengatur dan membaca file minidump Anda ketika Anda menerima BSOD (layar biru kematian) dalam upaya untuk mendapatkan wawasan lebih lanjut mengenai penyebab masalah. Hal pertama adalah yang pertama. Unduh alat debugging terbaru dari situs Microsoft.

Lalu pergi ke Start / Mulai Pencarian. Ketik i

perintah cmd.

Kemudian ubah direktori ke:

C: Program FilesDebugging Tools untuk Windows (x86)

dengan menggunakan perintah:

cd c: program filesdebugging tools untuk windows (x86)

Tidak peka huruf besar saat menggunakan CD perintah.

Kemudian ketik:

windbg.exe z c: windowsminidumpmini06190901.dmp c "! analyze v"

File minidump Anda terletak di C: WindowsMinidumpMini06200901.dmp. Ini akan dalam bentuk "MiniMMDDYY01.dmp".

SIMBOL KERNEL ADALAH SALAH. MOHON PERBAIKI SIMBOL UNTUK MELAKUKAN ANALISIS

Jika suatu tempat di output Analisis Bugcheck Anda melihat kesalahan seperti:

Simbol Kernel SALAH. Mohon perbaiki simbol untuk melakukan analisis.

Maka kemungkinan besar Anda menggunakan simbol sebelumnya atau tidak kompatibel atau file korup atau Anda tidak memiliki simbol yang tepat di lokasi yang ditentukan ketika program Windbg sedang mencoba untuk menganalisis file minidump. Jadi apa yang saya lakukan adalah membuka program Windbg yang terletak di C: Program FilesDebugging Tools untuk Windows (x86) (di Vista dan saya percaya itu adalah lokasi yang sama untuk XP).

MENYETEL FILE PATH MELALUI VIA WINDBG COMMAND LINE:

Ini adalah langkah penting, jadi pastikan bahwa file jalur simbol Anda disetel dengan benar agar Anda tidak mendapatkan simbol kernel berupa kesalahan SALAH atau jenis kesalahan lainnya. Sekarang atur Symbol File Path (File / Symbol File Path) ke:

SRVe: simbol[path to microsoft symbols path]

Namun, untuk beberapa alasan saya menemukan bahwa untuk menetapkan Simbol File Path di bidang "File / Simbol File Path" Anda tidak dapat mengubahnya langsung dengan bidang "File / Simbol File Path". Jadi apa yang saya temukan bahwa Anda perlu mengubahnya melalui jendela perintah Windbg dengan pergi ke:

"Lihat / Perintah"

Di bagian bawah jendela perintah di samping prompt "kd>" ketik ini di:

.sympath SRVe: simbol[path to microsoft symbols path].

Bagian antara dua tanda bintang () adalah tempat simbol-simbol dari server Microsoft akan diunduh. Ini cukup besar (sekitar 22MB) jadi pastikan Anda memiliki ruang disk yang cukup.

SETTING SYBOL FILE PATH DI VARIABEL LINGKUNGAN:

Atau, Anda dapat mengaturnya dalam variabel lingkungan Anda baik dalam sistem Anda atau variabel lingkungan pengguna. Untuk melakukan ini, klik tombol WINDOWS + e. Tombol WINDOWS adalah kunci di sebelah kanan tombol KIRI KIRI dari keyboard. Ini akan membuka Windows Explorer.

Kemudian klik pada "Pengaturan sistem lanjutan" di kiri atas jendela. Langkah ini hanya berlaku untuk Vista. Untuk pengguna XP, cukup klik pada tab Advanced.

Kemudian klik pada tombol "Variabel Lingkungan" di bagian bawah jendela.

Kemudian klik tombol "Baru" di bawah Sistem Variabel. Sekali lagi Anda dapat membuat lingkungan sebagai variabel lingkungan pengguna sebagai gantinya.

Dalam jenis "Nama Variabel":

_NT_SYMBOL_PATH

Dalam jenis "Variabel Nilai":

symsrvsymsrv.dlle: simbol[path to microsoft symbols path]

Jika Anda menetapkan lintasan file simbol sebagai variabel lingkungan sistem, saya yakin Anda mungkin harus me-reboot komputer Anda agar dapat berfungsi.

OUTPUT OF WINDBG COMMAND

Jadi berikut ini adalah output untuk crash saya:

Microsoft (R) Windows Debugger Versi 6.11.0001.404 X86

Hak Cipta (c) Microsoft Corporation. Seluruh hak cipta.

Memuat File Dump [c:windowsminidumpmini06260901.dmp]

File Kernel Dump Mini: Hanya register dan jejak stack yang tersedia

Lintasan pencarian simbol adalah: SRVe: simbol[path to microsoft symbols]

Jalur pencarian yang dapat dieksekusi adalah:

Windows Server 2008 / Windows Vista Kernel Versi 6001 (Service Pack 1) MP (2 procs) Kompatibel x86 gratis

Produk: WinNt, suite: TerminalServer SingleUserTS Personal

Dibangun oleh: 6001.18226.x86fre.vistasp1_gdr.0903021506

Nama mesin:

Basis kernel = 0x8201d000 PsLoadedModuleList = 0x82134c70

Waktu sesi debug: Jumat 26 Jun 16: 25: 11.288 2009 (GMT7)

Sistem Uptime: 0 hari 21: 39: 36.148

Memuat Simbol Kernel

………………………………………….. ………….

………………………………………….. …………..

………………………………………….. ………

Memuat Simbol Pengguna

Memuat daftar modul yang tidak dimuat

……………………….

Analisis Bugcheck

Gunakan! Analisis v untuk mendapatkan informasi debugging mendetail.

BugCheck A, {8cb5bcc0, 1b, 1, 820d0c1f}

Tidak dapat memuat gambar SystemRootsystem32DRIVERSSymIMv.sys, Win32 error 0n2

PERINGATAN: Tidak dapat memverifikasi stempel waktu untuk SymIMv.sys

KESALAHAN: Beban modul selesai tetapi simbol tidak dapat dimuat untuk SymIMv.sys

Tidak dapat memuat gambar SystemRootsystem32DRIVERSNETw3v32.sys, Win32 error 0n2

PERINGATAN: Tidak dapat memverifikasi stempel waktu untuk NETw3v32.sys

KESALAHAN: Beban modul selesai tetapi simbol tidak dapat dimuat untuk NETw3v32.sys

Memproses perintah awal '! Menganalisis v'

Mungkin disebabkan oleh: tdx.sys (tdx! TdxMessageTlRequestComplete + 94)

Tindak lanjut: MachineOwner

0: kd>! Analisa v

Analisis Bugcheck

IRQL_NOT_LESS_OR_EQUAL (a)

Upaya dilakukan untuk mengakses alamat yang dapat diberi halaman (atau sepenuhnya tidak valid) di

tingkat permintaan interrupt (IRQL) yang terlalu tinggi. Ini biasanya

disebabkan oleh driver menggunakan alamat yang tidak tepat.

Jika debugger kernel tersedia, dapatkan stack backtrace.

Argumen:

Arg1: 8cb5bcc0, referensi memori

Arg2: 0000001b, IRQL

Arg3: 00000001, bitfield:

bit 0: nilai 0 = baca operasi, 1 = tulis operasi

bit 3: nilai 0 = bukan operasi eksekusi, 1 = eksekusi operasi (hanya pada chip yang mendukung level status ini)

Arg4: 820d0c1f, alamat yang mengacu pada memori

Detail Debug:

WRITE_ADDRESS: GetPointerFromAddress: tidak dapat dibaca dari 82154868

Tidak dapat membaca memori MiSystemVaType di 82134420

8cb5bcc0

CURRENT_IRQL: 1b

FAULTING_IP:

nt! KiUnwaitThread + 19

820d0c1f 890a mov dword ptr [edx], ecx

CUSTOMER_CRASH_COUNT: 1

DEFAULT_BUCKET_ID: VISTA_DRIVER_FAULT

BUGCHECK_STR: 0xA

PROCESS_NAME: Sistem

TRAP_FRAME: 4526c4 (.trap 0xffffffff4526c4)

ErrCode = 00000002

eax = 85c5d4d8 ebx = 00000000 ecx = 8cb5bcc0 edx = 8cb5bcc0 esi = 85c5d420 edi = ed9c7048

eip = 820d0c1f esp = 452738 ebp = 45274c iopl = 0 nv up ei pl nz na pe nc

cs = 0008 ss = 0010 ds = 0023 es = 0023 fs = 0030 gs = 0000 efl = 00010206

nt! KiUnwaitThread + 0x19:

820d0c1f 890a mov dword ptr [edx], ecx ds: 0023: 8cb5bcc0 = ????????

Mengatur ulang ruang lingkup default

LAST_CONTROL_TRANSFER: dari 820d0c1f hingga 82077d24

STACK_TEXT:

4526c4 820d0c1f badb0d00 8cb5bcc0 87952ed0 nt! KiTrap0E + 0x2ac

45274c 8205f486 00000002 85c5d420 ed9c7048 nt! KiUnwaitThread + 0x19

452770 8205f52a ed9c7048 ed9c7008 00000000 nt! KiInsertQueueApc + 0x2a0

452790 8205742b ed9c7048 00000000 00000000 nt! KeInsertQueueApc + 0x4b

4527c8 8f989cd0 e79e1e88 e79e1f70 00000000 nt! IopfCompleteRequest + 0x438

4527e0 8a869ce7 00000007 00000000 00000007 tdx! TdxMessageTlRequestComplete + 0x94

452804 8a869d33 e79e1f70 e79e1e88 00000000 tcpip! UdpEndSendMessages + 0xfa

45281c 8a560c7f e79e1e88 00000001 00000000 tcpip! UdpSendMessagesDatagramsComplete + 0x22

STACK_COMMAND: kb

FOLLOWUP_IP:

tdx! TdxMessageTlRequestComplete + 94

8f989cd0 6804010000 tekan 104h

SYMBOL_STACK_INDEX: 5

SYMBOL_NAME: tdx! TdxMessageTlRequestComplete + 94

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: tdx

IMAGE_NAME: tdx.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 479190ee

FAILURE_BUCKET_ID: 0xA_tdx! TdxMessageTlRequestComplete + 94

BUCKET_ID: 0xA_tdx! TdxMessageTlRequestComplete + 94

Tindak lanjut: MachineOwner

Ini terlihat seperti sekelompok omong kosong hieroglif. Namun, jika Anda melihat lebih dekat Anda dapat memperoleh beberapa wawasan lebih jauh ke dalam kemungkinan masalah atau penyebabnya. PROCESS_NAME adalah Sistem yang menyarankan proses sistem. MODULE_NAME adalah tdx.

OUTPUT KD COMMAND: LMVM TDX

Tdx dapat diklik untuk saya yang menjalankan perintah:

kd> lmvm tdx

sebagai perintah kd. The 'lm' dalam "lmvm" adalah Loaded Module. The 'v' adalah Verbose. The 'm' adalah pencocokan pola. Dari panduan chm debugger itu menyatakan sebagai:

Pola m

Menentukan pola yang harus cocok dengan nama modul. Pola dapat berisi berbagai karakter wildcard dan penentu. Untuk informasi lebih lanjut tentang sintaks informasi ini, lihat String Wildcard Syntax.

Anda dapat menemukan banyak informasi dari manual chm saat mengunduh windbg dari Microsoft. Ini akan berlokasi di sini:

C: Program FilesDebugging Tools untuk Windows (x86) debugger.chm

Output dari perintah di atas adalah:

0: kd> lmvm tdx

mulai nama modul akhir

8f97f000 8f995000 tdx (pdb symbols) c: Program FilesDebugging Tools untuk Windows (x86) symtdx.pdbCFB0726BF9864FDDA4B793D5E641E5531tdx.pdb

Memuat file gambar simbol: tdx.sys

Memetakan file gambar memori: c: Program FilesDebugging Tools untuk Windows (x86) symtdx.sys479190EE16000tdx.sys

Jalur gambar: SystemRootsystem32DRIVERStdx.sys

Nama gambar: tdx.sys

Timestamp: Jumat Jan 18 21:55:58 2008 (479190EE)

CheckSum: 0001391F

ImageSize: 00016000

Versi file: 6.0.6001.18000

Versi produk: 6.0.6001.18000

Bendera file: 0 (Mask 3F)

File OS: 40004 NT Win32

Jenis file: 3,6 Pengandar

Tanggal file: 00000000.00000000

Terjemahan: 0409.04b0

Nama Perusahaan: Microsoft Corporation

ProductName: Sistem Operasi Microsoft® Windows®

InternalName: tdx.sys

OriginalFilename: tdx.sys

ProductVersion: 6.0.6001.18000

FileVersion: 6.0.6001.18000 (longhorn_rtm.0801181840)

FileDescription: Driver TDI Translation

LegalCopyright: © Microsoft Corporation. Seluruh hak cipta.

Jadi kami mengumpulkan lebih banyak wawasan. Siapa yang membuat modul dan kemungkinan penyebab masalah.

Saya melihat STACK_TEXT dan ada referensi ke tcpip dan NETIO yang sepertinya menyinggung masalah jaringan. Jadi saya googled orang lain dengan masalah BSOD dan tdx.sys dan ada perbaikan terbaru untuk masalah ini. Namun, kata peringatan BESAR jangan unduh hotfix jika masalah khusus ini tidak berlaku untuk Anda. Microsoft menyarankan untuk menggunakan prosedur Pembaruan Microsoft yang akan mencakup semua perbaikan terbaru.

Untuk mendapatkan tautan ke perbaikan terbaru untuk masalah jaringan Google "Microsoft perbaikan terbaru 934611".

Saya tidak mengunduh perbaikan terbaru ini tetapi memilih untuk memperbarui paket layanan saya. Saat ini, Vista ada di Service Pack 2. Saya hanya memiliki Paket Layanan 1. Jadi saya akan melihat apakah ini memperbaiki masalah.

Untuk memeriksa Paket Layanan apa yang telah Anda instal dan versi bit apa (32bit atau 64bit), buka:

"Mulai / Komputer". Klik kanan "Komputer" dan kemudian klik "Properties". Anda akan melihat informasi Paket Layanan di bawah judul "Windows Edition". Di bawah judul "Sistem" (sekitar pertengahan halaman) Anda akan melihat "Jenis Sistem:" yang akan menampilkan apakah Anda memiliki versi 32 bit atau 64bit yang diinstal.

Untuk mendapatkan Paket Layanan 2 untuk Vista Google "sp2 Vista Microsoft".


Leave a Reply

Your email address will not be published. Required fields are marked *