Bagikan melalui


Pemverifikasi Driver

Driver Verifier memantau driver mode kernel Windows dan driver grafis untuk mendeteksi panggilan atau tindakan fungsi ilegal yang mungkin merusak sistem. Driver Verifier dapat membuat driver Windows mengalami berbagai stres dan tes untuk menemukan perilaku yang tidak tepat. Anda dapat mengonfigurasi pengujian mana yang akan dijalankan, yang memungkinkan Anda menempatkan driver melalui beban stres berat atau melalui pengujian yang lebih efisien. Anda juga dapat menjalankan Driver Verifier pada beberapa driver secara bersamaan, atau pada satu driver sekaligus.

Perhatian

  • Menjalankan Pemverifikasi Driver dapat menyebabkan komputer lumpuh.
  • Anda seharusnya hanya menjalankan Pemverifikasi Driver pada komputer yang Anda gunakan untuk pengujian dan penelusuran kesalahan.
  • Anda harus berada dalam grup Administrator pada komputer untuk menggunakan Pemverifikasi Driver.

Di mana saya dapat mengunduh Driver Verifier?

Anda tidak perlu mengunduh Driver Verifier, karena disertakan dengan sebagian besar versi Windows di %WinDir%\system32\ sebagai Verifier.exe. (Driver Verifier tidak disertakan dengan Windows 10 S, jadi kami sarankan menguji perilaku driver pada Windows 10 sebagai gantinya.) Pemverifikasi Driver 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

Jalankan Driver Verifier sepanjang pengembangan dan pengujian driver Anda. Lebih khusus lagi, gunakan Driver Verifier untuk tujuan berikut:

  • Untuk menemukan masalah di awal siklus pengembangan, ketika mereka lebih mudah dan lebih murah untuk memperbaikinya.

  • Untuk pemecahan masalah dan penelusuran kesalahan kegagalan pengujian dan crash komputer.

  • Untuk memantau perilaku saat Anda menyebarkan driver untuk pengujian menggunakan WDK, Visual Studio, dan pengujian dari Windows Hardware Lab Kit (Windows HLK) atau Windows Hardware Certification Kit (untuk Windows 8.1). Untuk informasi selengkapnya tentang driver pengujian, 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 akan 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

Anda seharusnya hanya menjalankan Pemverifikasi Driver pada komputer pengujian, atau pada komputer yang Sedang Anda uji dan debug. Untuk mendapatkan manfaat maksimal dari Driver Verifier, Anda harus menggunakan debugger kernel dan terhubung ke komputer pengujian. Untuk informasi selengkapnya tentang alat penelusuran kesalahan, lihat Alat Penelusuran Kesalahan untuk Windows (WinDbg, KD, CDB, NTSD).

  1. Mulai jendela Prompt Perintah dengan memilih Jalankan sebagai administrator, dan ketik pemverifikasi untuk membuka Driver Verifier Manager.

  2. 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.

  3. Di bawah Pilih driver apa yang akan diverifikasi, pilih salah satu skema pilihan yang dijelaskan dalam tabel berikut ini.

    Opsi Penggunaan yang disarankan
    Pilih driver yang tidak ditandatangani secara otomatis

    Berguna untuk pengujian pada komputer yang menjalankan versi Windows yang tidak memerlukan pengandar 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.

    Otomatis pilih semua pengandar yang terinstal pada 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 Verifikasi Kumpulan Khusus dan I/O lebih efektif ketika digunakan pada satu driver pada satu waktu.

  4. Jika Anda memilih Pilih nama driver dari daftar, pilih Berikutnya, lalu pilih satu atau beberapa driver tertentu.

  5. Pilih Selesai, lalu mulai ulang komputer.

Catatan

Saat menggunakan pemverifikasi driver dengan Windows versi 20150 hingga 25126, jika Anda telah memilih ntoskrnl , Anda mungkin menerima kesalahan status yang tidak valid.
Untuk menghindari masalah ini, batal pilih ntoskrnl atau tingkatkan ke versi Windows setelah build 25126.

Jalankan pemverifikasi driver pada prompt perintah

Anda juga dapat menjalankan Driver Verifier di jendela Prompt Perintah tanpa memulai Driver Verifier Manager. Misalnya, untuk menjalankan Driver Verifier dengan pengaturan standar pada driver yang disebut myDriver.sys, Anda akan menggunakan perintah berikut:

verifier /standard /driver myDriver.sys

Untuk informasi selengkapnya tentang opsi baris perintah, lihat Sintaks Perintah Pemverifikasi Driver.

Cara mengontrol Pemverifikasi Driver

Anda dapat menggunakan Driver Verifier Manager atau baris perintah untuk mengontrol Driver Verifier. Untuk memulai Driver Verifier Manager, lihat Cara memulai Driver Verifier, sebelumnya dalam topik ini.

Untuk setiap tindakan berikut, Anda dapat menggunakan Driver Verifier Manager atau memasukkan baris perintah.

Untuk menghentikan atau mengatur ulang Pemverifikasi Driver

  1. Di Driver Verifier Manager, pilih Hapus pengaturan yang sudah ada, lalu pilih Selesai.

    or

    Lalu masukkan perintah berikut pada perintah:

    verifier /reset
    
  2. Mulai ulang komputer.

Untuk melihat statistik Pemverifikasi Driver

Di Driver Verifier Manager, pilih Tampilkan informasi tentang driver yang saat ini diverifikasi, lalu pilih Berikutnya. Melanjutkan untuk memilih Berikutnya menampilkan informasi tambahan.

or

Lalu masukkan perintah berikut pada perintah:

verifier /query

Untuk melihat pengaturan Pemverifikasi Driver

Di Driver Verifier Manager, pilih Tampilkan pengaturan yang sudah ada, lalu pilih Berikutnya.

or

Lalu masukkan perintah berikut pada perintah:

verifier /querysettings

Cara men-debug pelanggaran Driver Verifier

Untuk mendapatkan manfaat maksimal dari Driver Verifier, Anda harus menggunakan debugger kernel dan menghubungkannya 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. Ini untuk memberi Anda informasi terbanyak yang mungkin untuk men-debug masalah. Ketika Anda memiliki debugger kernel yang terhubung ke komputer uji yang menjalankan Driver Verifier, dan Driver Verifier mendeteksi pelanggaran, Windows masuk ke debugger dan menampilkan deskripsi singkat tentang kesalahan tersebut.

Semua pelanggaran yang terdeteksi oleh Driver Verifier mengakibatkan pemeriksaan bug. Ini biasanya 0xC4 Pemeriksaan Bug. Untuk informasi selengkapnya, lihat 0xC4 Pemeriksaan Bug Penelusuran Kesalahan: DRIVER_VERIFIER_DETECTED_VIOLATION dan 0xC4 Pemeriksaan Bug: DRIVER_VERIFIER_DETECTED_VIOLATION.

Kode pemeriksaan bug umum lainnya meliputi yang berikut ini:

Untuk informasi selengkapnya, lihat Menangani Pemeriksaan Bug Saat Pemverifikasi Driver Diaktifkan.

Saat Anda memulai sesi penelusuran kesalahan 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 salah, 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 dump menangkap statistik Driver Verifier. 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 947cef68
    
  • Cari 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.

Opsi Pemverifikasi Driver

Sintaks Perintah Pemverifikasi Driver

Menggunakan Pemverifikasi Driver

Mengontrol Pemverifikasi Driver

Pemeriksaan kepatuhan DDI