Analisis Data Layar Biru Pemeriksaan Bug
Catatan
Artikel ini untuk programmer. Jika Anda adalah pelanggan yang telah menerima kode kesalahan layar biru saat menggunakan komputer Anda, lihat Memecahkan masalah kesalahan layar biru.
Catatan
Jika Anda seorang profesional TI atau agen dukungan, lihat Pemecahan masalah tingkat lanjut untuk kesalahan layar berhenti atau biru untuk informasi selengkapnya.
Mengumpulkan parameter kode berhenti
Setiap kode pemeriksaan bug memiliki empat parameter terkait yang memberikan informasi. Parameter dijelaskan dalam Referensi kode pemeriksaan bug untuk setiap kode berhenti.
Ada beberapa cara untuk mengumpulkan empat parameter kode berhenti.
Periksa log sistem Windows di Pemantau Peristiwa. Properti peristiwa untuk pemeriksaan bug akan mencantumkan empat parameter kode berhenti. Untuk informasi selengkapnya, lihat Membuka Pemantau Peristiwa.
Muat file cadangan yang dihasilkan dan gunakan perintah !analyze dengan debugger terlampir. Untuk informasi selengkapnya, lihat Menganalisis file cadangan mode kernel dengan WinDbg.
Pasang debugger kernel ke PC yang rusak. Ketika kode berhenti terjadi, output debugger akan menyertakan empat parameter setelah nilai heksa kode berhenti.
******************************************************************************* * * * Bugcheck Analysis * * * ******************************************************************************* Use !analyze -v to get detailed debugging information. BugCheck 9F, {3, ffffe000f38c06a0, fffff803c596cad0, ffffe000f46a1010} Implicit thread is now ffffe000`f4ca3040 Probably caused by : hidusb.sys
Nama simbolis pemeriksaan bug
DRIVER_POWER_STATE_FAILURE adalah nama simbolis pemeriksaan bug, dengan kode pemeriksaan bug terkait 9F. Nilai heksa kode berhenti yang terkait dengan nama simbolis pemeriksaan bug tercantum dalam referensi Kode pemeriksaan bug.
Membaca informasi pemeriksaan bug dari debugger
Jika debugger terpasang, dan penelusuran kesalahan diaktifkan pada PC, pemeriksaan bug akan menyebabkan komputer target masuk ke debugger. Dalam hal ini, layar biru mungkin tidak segera muncul. Detail lengkap tentang crash ini akan dikirim ke debugger dan muncul di jendela debugger. Untuk melihat informasi ini untuk kedua kalinya , gunakan perintah .bugcheck (Tampilkan data pemeriksaan bug) atau perintah !analyze extension. Untuk informasi tentang mengaktifkan penelusuran kesalahan, lihat Mulai menggunakan WinDbg (Kernel-Mode).
Penelusuran kesalahan kernel dan analisis crash dump
Penelusuran kesalahan kernel sangat berguna ketika teknik pemecahan masalah lainnya gagal, atau untuk masalah berulang. Ingatlah untuk mengambil teks yang tepat di bagian informasi pemeriksaan bug dari pesan kesalahan. Untuk mengisolasi masalah yang kompleks dan mengembangkan solusi yang layak, berguna untuk merekam tindakan tepat yang menyebabkan kegagalan.
Ekstensi debug !analyze menampilkan informasi tentang pemeriksaan bug dan dapat membantu dalam menentukan akar penyebabnya.
Anda juga dapat mengatur titik henti dalam kode yang mengarah ke kode berhenti ini dan mencoba untuk maju satu langkah ke dalam kode yang rusak.
Untuk informasi lebih lanjut, baca artikel berikut:
Analisis crash dump menggunakan debugger Windows (WinDbg)
Menganalisis file cadangan mode kernel dengan WinDbg
Menggunakan ekstensi !analyze dan !analyze
Gunakan Pemverifikasi Driver untuk mengumpulkan informasi
Diperkirakan sekitar tiga perempat layar biru disebabkan oleh driver yang rusak. Driver Verifier adalah alat yang berjalan secara real time untuk memeriksa perilaku driver. Misalnya, Driver Verifier memeriksa penggunaan sumber daya memori, seperti kumpulan memori. Jika menemukan kesalahan dalam eksekusi kode driver, secara proaktif membuat pengecualian untuk memungkinkan bagian kode driver tersebut diteliti lebih lanjut. Manajer pemverifikasi driver dibangun ke dalam Windows dan tersedia di semua PC Windows. Untuk memulai manajer pemverifikasi driver, masukkan Verifier pada prompt perintah. Anda dapat mengonfigurasi driver mana yang ingin Anda verifikasi. Kode yang memverifikasi driver menambahkan overhead saat berjalan, jadi cobalah untuk memverifikasi jumlah driver terkecil mungkin. Untuk informasi selengkapnya, lihat Pemverifikasi Driver.
Tips untuk insinyur perangkat lunak
Ketika pemeriksaan bug terjadi sebagai akibat dari kode yang telah Anda tulis, Anda harus menggunakan debugger kernel untuk menganalisis masalah, lalu memperbaiki bug dalam kode Anda. Untuk detail selengkapnya, lihat kode pemeriksaan bug individual di bagian Referensi kode pemeriksaan bug.
Namun, Anda mungkin juga mengalami pemeriksaan bug yang tidak disebabkan oleh kode Anda sendiri. Dalam hal ini, Anda mungkin tidak akan dapat memperbaiki penyebab aktual masalah, jadi tujuan Anda harus mengatasi masalah tersebut. Jika memungkinkan, isolasi dan hapus komponen perangkat keras atau perangkat lunak yang salah.
Banyak masalah dapat diatasi melalui prosedur pemecahan masalah dasar, seperti memverifikasi instruksi, menginstal ulang komponen kunci, dan memverifikasi tanggal file. Selain itu, Pemantau Peristiwa, alat diagnostik Sysinternals, dan alat pemantauan jaringan mungkin mengisolasi dan mengatasi masalah ini.