Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Statik Sürücü Doğrulayıcı ("StaticDV" veya "SDV" olarak da bilinir), Windows çekirdek modu sürücülerinin kaynak kodunu sistematik olarak analiz eden statik bir doğrulama aracıdır. SDV, bir sürücüdeki hataları ve tasarım sorunlarını bulabilen bir derleme zamanı aracıdır. Bir dizi arabirim kuralına ve işletim sisteminin modeline bağlı olarak, SDV sürücünün Windows işletim sistemi çekirdeğiyle doğru etkileşim kurup kurmayacağını belirler.
Önemli
SDV artık desteklenmemektedir ve SDV, Windows 24H2 WDK veya EWDK sürümlerinde kullanılamaz. Derleme 26017'den daha yeni olan WDK'lerde kullanılamaz ve Windows 24H2 RTM WDK'ye dahil değildir.
SDV, Windows Sürücü Seti'ni (WDK) İndirme sayfasından Visual Studio derleme araçları 17.1.5 ile Windows 11, sürüm 22H2 EWDK (24 Ekim 2023'te yayımlandı) indirilerek kullanılabilir. SDV'yi çalıştırmak için yalnızca Enterprise WDK kullanılması önerilir. Visual Studio'nun son sürümleriyle birlikte standart WDK'nin eski sürümlerinin kullanılması önerilmez, bu da büyük olasılıkla analiz hatalarına neden olur.
Bundan sonra CodeQL, sürücüler için birincil statik analiz aracı olacaktır. CodeQL, kodu sorgulanacak bir veritabanı olarak değerlendiren ve belirli davranışlar, desenler ve daha fazlası için sorgu yazmayı basit hale getiren güçlü bir sorgu dili sağlar.
CodeQL kullanma hakkında daha fazla bilgi için bkz. CodeQL ve Statik Araçlar Logo Testi.
Statik Sürücü Doğrulayıcı yükleme
Statik Sürücü Doğrulayıcı, hem tam WDK deneyiminde hem de tek başına Enterprise WDK'de Windows Sürücü Seti'nin (WDK) bir parçası olarak kullanılabilir. Ayrıca, SDV'nin çalışması için Visual Studio için Visual C++ Yeniden Dağıtılabilir Paketleri gerekir. Aşağıdakilere bakın:
Visual Studio Tümleştirmesi
Statik Sürücü Doğrulayıcı, Visual Studio ile tümleşiktir. Visual Studio sürücü projenizde statik analiz çalıştırabilirsiniz. Visual Studio'daki Sürücü menüsünden Statik Sürücü Doğrulayıcı'yı başlatabilir, yapılandırabilir ve denetleyebilirsiniz.
Statik Sürücü Doğrulayıcı Belgeleri
- Statik Sürücü Doğrulayıcı Bilinen Sorunları: Statik Sürücü Doğrulayıcı için bilinen en son sorunları listeler
- Sürücülerdeki Hataları Bulmak için Statik Sürücü Doğrulayıcı'yı Kullanma: Visual Studio ortamında sürücü kodunuzu analiz etmeye başlamak için nelere ihtiyacınız olduğunu bildirir.
- Statik Sürücü Doğrulayıcı komutları (MSBuild): Visual Studio Komut İstemi penceresinde SDV'yi çalıştırmak için kullanılacak MSBuild komutlarını listeler.
- Statik Sürücü Doğrulayıcı tanıtımı: Statik çözümleme aracına genel bir bakış sağlar.
- Statik Sürücü Doğrulayıcıyı Kullanma: Statik çözümleme aracını kullanma ve yapılandırma hakkındaki ayrıntıları sağlar.
- Statik Sürücü Doğrulayıcı Raporu: Statik kod analizinin ayrıntılı izlemesini görüntüleyen görüntüleyiciyi açıklar.
- Statik Sürücü Doğrulayıcı Kuralları: Kurallar, bir sürücü modeli ile işletim sisteminin çekirdek arabirimi arasında doğru etkileşime yönelik gereksinimleri tanımlar.
- Statik Sürücü Doğrulayıcı Başvurusu: İşlev rolü türleri, SDV yapılandırma dosyaları, hata ve uyarı iletileri hakkında başvuru bilgileri sağlar.
Windows Sürücü Kodunda Hataları Bulma
Microsoft, Microsoft Windows işletim sistemine dahil edilen çekirdek modu sürücülerini test etmek ve WDK'deki örnek sürücüleri test etmek için SDV kullanır. SDV, belirli sürücü modelleri için DDI uyumluluk kurallarını kullanarak doğru sürücü davranışını doğrulayabilir. Örneğin, SDV sürücünün aşağıdaki koşulları sağladığını doğrulayabilir:
- Doğru IRQL'de işlevleri çağırır
- Kilitleri doğru sırayla alır ve serbest bırakır
- G/Ç istek paketlerini (IRP) işleyen işlevleri doğru şekilde kullanır
SDV, sürücü kodu aracılığıyla tüm olası yolları inceler. Kapsamlı testlerde bile karşılaşılma olasılığı düşük olan belirsiz yollarda ciddi hatalar bulmak için tasarlanmıştır.
Ek kaynaklar
SDV'nin doğrulayabildiği sürücüler hakkında belirli bilgiler için bkz . Desteklenen Sürücüler
Statik Sürücü Doğrulayıcı'yı kullanma hakkında daha fazla bilgi ve ipucu için aşağıdakilere bakın: