Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Driver Verifier adalah alat pengujian Windows yang membantu Anda mengidentifikasi masalah driver sebelum menyebabkan crash atau kerusakan sistem. Dengan memantau driver mode kernel dan driver grafis secara real time, Driver Verifier mendeteksi panggilan fungsi ilegal dan tindakan bermasalah yang dapat merusak sistem Anda.
Baik Anda mengembangkan driver baru atau memecahkan masalah yang ada, Driver Verifier menyediakan kemampuan deteksi dan debugging dini yang Anda butuhkan untuk membangun driver yang andal dan berkualitas tinggi. Panduan komprehensif ini mencakup segala sesuatu mulai dari penyiapan dasar hingga teknik debugging tingkat lanjut.
- Pelajari kapan dan mengapa menggunakan Driver Verifier
- Menyiapkan Driver Verifier untuk lingkungan pengujian Anda
- Mengonfigurasi opsi verifikasi untuk kebutuhan spesifik Anda
- Men-debug pelanggaran dan menafsirkan hasil
- Menerapkan praktik-praktik terbaik untuk alur kerja pengujian driver
Penting
- Menjalankan Pemverifikasi Driver dapat menyebabkan komputer lumpuh.
- Hanya jalankan Pemverifikasi Driver pada komputer yang Anda gunakan untuk pengujian dan debugging.
- Anda harus berada dalam grup Administrator pada komputer untuk menggunakan Pemverifikasi Driver.
Di mana saya bisa mendapatkan Driver Verifier?
Anda tidak perlu mendapatkan Driver Verifier, karena sebagian besar versi Windows menyertakannya dalam %WinDir%\system32\ as Verifier.exe. (Driver Verifier tidak disertakan dengan Windows 10 S, jadi sebaiknya uji perilaku driver pada Windows 10 sebagai gantinya.) Driver Verifier tidak didistribusikan secara terpisah sebagai paket unduhan.
Untuk informasi tentang perubahan di Driver Verifier untuk Windows 10 dan versi Windows sebelumnya, lihat Pemverifikasi Driver: Apa yang Baru.
Kapan menggunakan Pemverifikasi Driver
Gunakan Driver Verifier di seluruh proses pengembangan dan pengujian driver Anda:
Pengembangan awal
- Temukan masalah di awal siklus pengembangan ketika lebih mudah dan lebih murah untuk memperbaikinya
- Mencegah penundaan yang mahal dengan menangkap masalah sebelum mencapai produksi
Troubleshooting
- Kegagalan pengujian debug dan komputer mengalami crash dengan cepat
- Mengidentifikasi akar penyebab ketidakstabilan sistem yang disebabkan oleh driver
Pengujian dan penyebaran
- Memantau perilaku driver ketika mengimplementasikan untuk pengujian dengan WDK, Visual Studio, dan Windows Hardware Lab Kit (Windows HLK)
- Memastikan kompatibilitas dengan persyaratan Kit Sertifikasi Perangkat Keras Windows
Untuk panduan pengujian driver yang komprehensif, lihat Menguji Driver.
Penting
Program Kompatibilitas Perangkat Keras Windows memerlukan CodeQL untuk Pengujian Logo Alat Statis (STL) pada Sistem Operasi Klien dan Server kami. Kami terus mempertahankan dukungan untuk SDV dan CA pada produk yang lebih lama. Mitra sangat didorong untuk meninjau persyaratan CodeQL untuk Uji Logo Alat Statis. Untuk informasi selengkapnya tentang menggunakan CodeQL, lihat CodeQL dan Uji Logo Alat Statis.
Cara memulai Pemverifikasi Driver
Jalankan Pemverifikasi Driver hanya pada komputer pengujian, atau di komputer yang Sedang Anda uji dan debug. Untuk mendapatkan manfaat maksimal dari Driver Verifier, gunakan debugger kernel untuk menyambungkan ke komputer pengujian. Untuk informasi selengkapnya tentang alat penelusuran kesalahan, lihat Alat Penelusuran Kesalahan untuk Windows (WinDbg, KD, CDB, NTSD).
Mulai jendela Prompt Perintah dengan memilih Jalankan sebagai administrator, dan ketik pemverifikasi untuk membuka Driver Verifier Manager.
Pilih Buat pengaturan standar (tugas default), dan pilih Berikutnya.
Anda juga dapat memilih Buat pengaturan kustom untuk memilih dari pengaturan yang telah ditentukan sebelumnya, atau untuk memilih opsi individual. Untuk informasi selengkapnya, lihat Opsi Pemverifikasi Driver dan kelas aturan dan Memilih Opsi Pemverifikasi Driver.
Di bawah Pilih driver apa yang akan diverifikasi, pilih salah satu skema pilihan yang dijelaskan dalam tabel berikut ini:
Opsi Penggunaan yang disarankan Otomatis pilih driver yang tidak ditandatangani Berguna untuk pengujian pada komputer yang menjalankan versi Windows yang tidak memerlukan driver yang ditandatangani. Secara otomatis memilih driver yang dibuat untuk versi Windows yang lebih lama Berguna untuk menguji kompatibilitas driver dengan versi Windows yang lebih baru. Secara otomatis pilih semua driver yang diinstal di komputer ini Memberikan cakupan maksimum dalam hal jumlah driver yang diuji pada sistem. Opsi ini berguna untuk skenario pengujian di mana driver dapat berinteraksi dengan perangkat atau driver lain pada sistem.
Opsi ini juga dapat menghabiskan sumber daya yang tersedia untuk Kumpulan Khusus dan beberapa pelacakan sumber daya. Menguji semua driver juga dapat berdampak buruk pada performa sistem.Pilih nama driver dari daftar Dalam kebanyakan kasus, Anda ingin menentukan driver mana yang akan diuji.
Memilih semua driver dalam tumpukan perangkat memungkinkan opsi Verifikasi I/O yang Ditingkatkan untuk melacak objek dan memeriksa kepatuhan karena paket permintaan I/O (IRP) diteruskan di antara setiap driver dalam tumpukan, yang memungkinkan tingkat detail yang lebih besar disediakan ketika kesalahan terdeteksi.
Pilih satu driver jika Anda menjalankan skenario pengujian yang mengukur metrik performa sistem atau driver, atau jika Anda ingin mengalokasikan sejumlah besar sumber daya yang tersedia untuk mendeteksi kerusakan memori atau masalah pelacakan sumber daya (seperti kebuntuan atau mutex). Opsi Kumpulan Khusus dan Verifikasi I/O lebih efektif ketika digunakan pada satu driver sekaligus.Jika Anda memilih Pilih nama driver dari daftar, pilih Berikutnya, lalu pilih satu atau beberapa driver tertentu.
Pilih Selesai, lalu mulai ulang komputer.
Nota
Saat menggunakan pemverifikasi driver dengan Windows versi 20150 hingga 25126, jika Anda memilih ntoskrnl , Anda mungkin menerima kesalahan status yang tidak valid.
Untuk menghindari masalah ini, batalkan pilihan ntoskrnl atau tingkatkan ke versi Windows setelah build 25126.
Jalankan verifikasi driver di command prompt
Anda juga dapat menjalankan Driver Verifier di jendela Prompt Perintah tanpa memulai Driver Verifier Manager. Misalnya, untuk menjalankan Pemverifikasi Driver dengan pengaturan standar pada driver yang disebut myDriver.sys, gunakan perintah berikut:
verifier /standard /driver myDriver.sys
Untuk informasi selengkapnya tentang opsi baris perintah, lihat Sintaks Perintah Pemverifikasi Driver.
Cara mengontrol Pemverifikasi Driver
Pilih metode pilihan Anda untuk mengontrol Pemverifikasi Driver:
- Driver Verifier Manager (GUI) - Lebih mudah untuk pemula, antarmuka visual
- Baris perintah - Lebih cepat untuk pengguna berpengalaman, dapat ditulis
Nota
Untuk memulai Driver Verifier Manager, lihat Bagian sebelumnya Cara memulai Driver Verifier .
Tugas Pemverifikasi Driver Umum
Untuk setiap tindakan berikut, Anda dapat menggunakan Driver Verifier Manager atau memasukkan baris perintah.
Untuk menghentikan atau mengatur ulang Pemverifikasi Driver
Di Driver Verifier Manager, pilih Hapus pengaturan yang ada, lalu pilih Selesai.
atau
Masukkan perintah berikut pada prompt perintah:
verifier /resetMulai ulang komputer.
Untuk melihat statistik Driver Verifier
Di Driver Verifier Manager, pilih Tampilkan informasi tentang driver yang saat ini diverifikasi, lalu pilih Berikutnya. Melanjutkan untuk memilih Berikutnya menampilkan informasi tambahan.
atau
Masukkan perintah berikut pada prompt perintah:
verifier /query
Untuk melihat pengaturan Pemverifikasi Driver
Di Driver Verifier Manager, pilih Tampilkan pengaturan yang sudah ada, lalu pilih Berikutnya.
atau
Masukkan perintah berikut pada prompt perintah:
verifier /querysettings
Cara mendeteksi kesalahan pelanggaran Driver Verifier
Untuk mendapatkan manfaat maksimal dari Driver Verifier, gunakan debugger kernel dan sambungkan ke komputer pengujian. Untuk gambaran umum alat penelusuran kesalahan untuk Windows, lihat Alat Penelusuran Kesalahan untuk Windows (WinDbg, KD, CDB, NTSD).
Jika Pemverifikasi Driver mendeteksi pelanggaran, maka akan menghasilkan pemeriksaan bug untuk menghentikan komputer. Tindakan ini memberi Anda informasi sebanyak mungkin untuk memecahkan masalah debug. Ketika Anda menyambungkan debugger kernel ke komputer uji yang menjalankan Pemverifikasi Driver dan Pemverifikasi Driver mendeteksi pelanggaran, Windows memasuki mode debugger dan menampilkan deskripsi singkat tentang kesalahan tersebut.
Semua pelanggaran yang terdeteksi oleh Driver Verifier berujung pada pemeriksaan kesalahan. Pemeriksaan bug ini biasanya adalah Bug Check 0xC4. Untuk informasi selengkapnya, lihat Pemeriksaan Bug 0xC4: DRIVER_VERIFIER_DETECTED_VIOLATION dan Pemeriksaan Bug 0xC4: DRIVER_VERIFIER_DETECTED_VIOLATION.
Kode pemeriksaan bug umum lainnya termasuk kode berikut:
- Pengecekan Bug 0xC1: SPECIAL_POOL_DETECTED_MEMORY_CORRUPTION
- Pemeriksaan Kesalahan 0xC6: DRIVER_CAUGHT_MODIFYING_FREED_POOL
- 0xC9 Pemeriksaan Bug: DRIVER_VERIFIER_IOMANAGER_VIOLATION
- 0xD6 Pemeriksaan Kesalahan: DRIVER_PAGE_FAULT_BEYOND_END_OF_ALLOCATION
- 0xE6 Pemeriksaan Bug: DRIVER_VERIFIER_DMA_VIOLATION
Untuk informasi selengkapnya, lihat Menangani Pemeriksaan Bug Saat Pemverifikasi Driver Diaktifkan.
Saat Anda memulai sesi debugging baru, gunakan perintah ekstensi debugger, !analyze. Dalam mode kernel, perintah !analyze menampilkan informasi tentang pemeriksaan bug terbaru. Untuk menampilkan informasi tambahan untuk membantu mengidentifikasi driver yang rusak, tambahkan opsi -v ke perintah pada prompt kd> :
kd> !analyze -v
Selain !analyze, Anda dapat memasukkan ekstensi debugger berikut pada prompt kd> untuk melihat informasi yang khusus untuk Driver Verifier:
!verifier menampilkan statistik Driver Verifier yang telah ditangkap. Gunakan !verifier -? untuk menampilkan semua opsi yang tersedia.
kd> !verifier!deadlock menampilkan informasi yang terkait dengan kunci atau objek yang dilacak oleh fitur deteksi kebuntuan Driver Verifier. Gunakan !deadlock -? untuk menampilkan semua opsi yang tersedia.
kd> !deadlock!iovirp [alamat] menampilkan informasi yang terkait dengan IRP yang dilacak oleh I/O Verifier. Contohnya:
kd> !iovirp 947cef68Cari aturan pemeriksaan kepatuhan DDI yang dilanggar. (RuleID selalu merupakan argumen pertama untuk pemeriksaan bug.) Semua ID aturan dari pemeriksaan kepatuhan DDI ada dalam formulir 0x200nn.
Langkah selanjutnya
Sekarang setelah Anda memahami dasar-dasar Driver Verifier, jelajahi topik terkait ini:
- Opsi Pemverifikasi Driver - Mengonfigurasi skenario pengujian tingkat lanjut
- Menggunakan Pemverifikasi Driver - Pola penggunaan tingkat lanjut dan praktik terbaik
- Pemeriksaan kepatuhan DDI - Memahami aturan dan pelanggaran kepatuhan
- Alat Debugging untuk Windows - Menyiapkan debugging kernel untuk Pemverifikasi Driver
Dapatkan Bantuan
- Sintaks Perintah Pemverifikasi Driver - Referensi perintah lengkap
- Mengontrol Pemverifikasi Driver - Teknik kontrol tingkat lanjut