Bagikan melalui


Simulasi sumber daya rendah sistematis

Opsi simulasi sumber daya rendah sistematis menyuntikkan kegagalan sumber daya dalam driver mode kernel. Opsi ini menembus jalur penanganan kesalahan driver. Menguji jalur-jalur ini secara historis sangat sulit. Opsi simulasi sumber daya rendah sistematis menyuntikkan kegagalan sumber daya dengan cara yang dapat diprediksi, yang membuat masalah yang ditemukannya dapat direproduksi. Karena jalur kesalahan mudah direproduksi, juga memudahkan untuk memverifikasi perbaikan untuk masalah ini.

Untuk membantu Anda menentukan akar penyebab kesalahan, ekstensi debugger disediakan yang dapat memberi tahu Anda dengan tepat kegagalan mana yang telah disuntikkan dan dalam urutan apa.

Hati-hati Opsi ini tidak dimaksudkan untuk digunakan ketika Anda memverifikasi semua (atau kumpulan besar) driver pada komputer. Opsi ini harus digunakan hanya ketika Anda melakukan pengujian yang ditargetkan dari masing-masing driver atau driver filter yang terpasang. Menggunakan opsi ini pada sejumlah besar driver pada saat yang sama dapat menyebabkan hasil yang tidak dapat diprediksi, dan dapat memaksa crash pada komponen yang tidak terkait dengan driver yang Anda uji.

Catatan Untuk Windows 8.1, fitur Injeksi Kegagalan Berbasis Tumpukan, yang tersedia di WDK 8, telah diintegrasikan ke dalam Pemverifikasi Driver. Pada komputer yang menjalankan Windows 8.1, gunakan opsi simulasi sumber daya rendah sistematis.

Ketika opsi simulasi sumber daya rendah sistematis diaktifkan pada driver tertentu, opsi ini mencegat beberapa panggilan dari driver tersebut ke kernel dan Ndis.sys. Simulasi sumber daya rendah sistematis melihat tumpukan panggilan—khususnya, pada bagian tumpukan panggilan yang berasal dari driver tempatnya diaktifkan. Jika ini adalah pertama kalinya ia pernah melihat tumpukan itu, itu akan gagal panggilan sesuai dengan semantik panggilan itu. Jika tidak, jika telah melihat panggilan itu sebelumnya, itu akan melewatinya tanpa tersentuh. Simulasi sumber daya rendah sistematis berisi logika untuk menangani fakta bahwa driver dapat dimuat dan dibongkar beberapa kali. Ini akan mengenali bahwa tumpukan panggilan sama bahkan jika driver dimuat ulang ke lokasi memori yang berbeda.

Mengaktifkan opsi ini

Anda dapat mengaktifkan fitur simulasi sumber daya rendah sistematis untuk satu atau beberapa driver dengan menggunakan Driver Verifier Manager atau baris perintah Verifier.exe. Untuk detailnya, lihat Memilih Opsi Pemverifikasi Driver. Anda harus memulai ulang komputer untuk mengaktifkan atau menonaktifkan opsi simulasi sumber daya rendah Sistematis.

  • Pada baris perintah

    Windows 11

    Pada baris perintah, Simulasi sumber daya rendah sistematis diwakili oleh pemverifikasi /rc 19 36 atau pemverifikasi /dif 19, yang keduanya mencakup mode DIF yang diperlukan.

    Fitur ini akan aktif setelah boot berikutnya, atau segera jika /now ditambahkan ke string perintah.

    Windows 10 ke bawah

    Pada baris perintah, Simulasi sumber daya rendah sistematis diwakili oleh pemverifikasi /bendera 0x040000 (Bit 18). Untuk simulasi sumber daya rendah sistematis, gunakan nilai bendera 0x040000 atau tambahkan 0x040000 ke nilai bendera. Contohnya:

    verifier /flags 0x040000 /driver MyDriver.sys
    

    Fitur ini akan aktif setelah boot berikutnya.

    Umum

    Ketika Anda mengaktifkan opsi simulasi sumber daya rendah sistematis, Anda dapat menggunakan opsi baris perintah /faultssystematic OPTION untuk lebih mengontrol simulasi sumber daya rendah sistematis.

    OPTION Deskripsi

    enableboottime

    Mengaktifkan injeksi kesalahan di seluruh reboot komputer.

    disableboottime

    Menonaktifkan injeksi kesalahan di seluruh reboot komputer (ini adalah pengaturan default).

    recordboottime

    Mengaktifkan injeksi kesalahan dalam mode bagaimana jika di seluruh reboot komputer.

    resetboottime

    Menonaktifkan injeksi kesalahan di seluruh reboot komputer dan menghapus daftar pengecualian tumpukan.

    enableruntime

    Mengaktifkan injeksi kesalahan secara dinamis.

    disableruntime

    Secara dinamis menonaktifkan injeksi kesalahan.

    recordruntime

    Mengaktifkan injeksi kesalahan secara dinamis dalam mode bagaimana jika .

    resetruntime

    Secara dinamis menonaktifkan injeksi kesalahan dan menghapus daftar tumpukan yang rusak sebelumnya.

    querystatistics

    Memperlihatkan statistik injeksi kesalahan saat ini.

    incrementcounter

    Menaikkan penghitung lulus pengujian yang digunakan untuk mengidentifikasi kapan kesalahan disuntikkan.

    getstackid COUNTER

    Mengambil pengidentifikasi tumpukan yang diinjeksi yang ditunjukkan.

    excludestack STACKID

    Mengecualikan tumpukan dari injeksi kesalahan.

  • Menggunakan Driver Verifier Manager

    1. Mulai Manajer Pemverifikasi Driver. Ketik Pemverifikasi di jendela Prompt Perintah.
    2. Pilih Buat pengaturan kustom (untuk pengembang kode) lalu klik Berikutnya.
    3. Pilih Pilih pengaturan individual dari daftar lengkap.
    4. Pilih (periksa) Simulasi sumber daya rendah sistematis.
    5. Mulai ulang komputer.

Penelusuran kesalahan pemeriksaan bug yang disebabkan oleh simulasi sumber daya rendah sistematis

Sebagian besar masalah yang ditemukan dengan simulasi sumber daya rendah sistematis mengakibatkan pemeriksaan bug. Untuk membantu menentukan penyebab bug kode ini, Alat Debugging untuk Windows menyediakan ekstensi debugger (kdexts.dll) dan simbol yang diperlukan.

Untuk menjalankan ekstensi debugger

  • Dari perintah debugger, ketik perintah berikut:

    !verifier 0x800
    

Ini akan membuang informasi ke debugger Anda yang menunjukkan tumpukan panggilan dari kegagalan terbaru yang disuntikkan.