Bagikan melalui


Mengunci seperangkat aturan (NDIS)

Gunakan aturan ini untuk memverifikasi bahwa driver Anda mengelola sumber daya bersama dengan benar.

Di bagian ini

Topik Deskripsi

SpinLock

Aturan SpinLock memverifikasi penggunaan antarmuka kunci putar NDIS yang benar. Aturan ini menentukan bahwa panggilan ke NdisAcquireSpinLock hanya dilakukan ketika SpinLock dalam keadaan tidak terkunci. Aturan ini juga memverifikasi bahwa SpinLock dirilis sebelum handler miniport rutin keluar.

SpinLockBalanced

Aturan SpinLockBalanced memverifikasi bahwa jumlah panggilan ke fungsi yang memperoleh SpinLock sama dengan jumlah panggilan ke fungsi yang merilis SpinLock yang sama.

SpinLockDpr

Aturan SpinLockDpr memverifikasi penggunaan antarmuka kunci putar NDIS yang benar.

Aturan ini menentukan bahwa panggilan ke NdisDprAcquireSpinLock dibuat hanya ketika kunci putar dalam status tidak terkunci. Aturan ini juga memverifikasi bahwa kunci putar dilepaskan sebelum handler miniport rutin keluar.

SpinLockDprRelease

Aturan SpinLockDprRelease memverifikasi bahwa panggilan ke NdisAcquireSpinLock atau NdisDprAcquireSpinLock hanya dipanggil ketika SpinLock adalah status "tidak terkunci". Aturan ini juga memeriksa bahwa sebelum keluar dari handler miniport rutin SpinLock telah dirilis.

SpinLockRelease

Aturan SpinLockRelease menentukan bahwa driver tidak boleh melepaskan kunci putar (NdisReleaseSpinLock) tanpa terlebih dahulu memperolehnya.

Untuk memilih seperangkat aturan Penguncian

  1. Pilih proyek driver Anda (.vcxProj) di Microsoft Visual Studio. Dari menu Driver , klik Luncurkan Pemverifikasi Driver Statis....

  2. Klik tab Aturan . Di bawah Seperangkat Aturan, pilih Penguncian.

    Untuk memilih seperangkat aturan default dari jendela prompt perintah pengembang Visual Studio, tentukan Locking.sdv dengan opsi /check . Contohnya:

    msbuild /t:sdv /p:Inputs="/check:Locking.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32
    

    Untuk informasi selengkapnya, lihat Menggunakan Pemverifikasi Driver Statis untuk Menemukan Cacat dalam perintah Driver dan Verifier Driver Statis (MSBuild).