Udostępnij przez


Budowanie sterowników Arm64 za pomocą WDK

Począwszy od zestawu WDK w wersji 10.0.26100.1 (wydanej 22 maja 2024 r.), zestaw WDK obsługuje teraz programowanie, testowanie i wdrażanie sterowników na maszynach arm64. Zestaw WDK można zainstalować i uruchomić natywnie na sprzęcie Arm64, oprócz wcześniej obsługiwanej emulacji sterowników x86 KMDF/UMDF2 na sprzęcie Arm64. Istnieje również obsługa debugowania i wdrażania sterowników dla maszyny docelowej Arm64 z maszyn hosta Arm64 i x64. Proces instalowania zestawu WDK na maszynach arm64 automatycznie zidentyfikuje i zainstaluje wszystkie niezbędne zależności, w tym narzędzia kompilacji, pliki binarne i biblioteki.

Na tej stronie opisano sposób tworzenia sterownika Arm64 za pomocą zestawu WDK.

Konfiguracja

  1. Pobierz program Visual Studio 2022. Potrzebujesz co najmniej wersji 17.0.0 lub nowszej. Upewnij się, że masz zainstalowane następujące składniki:

    • MSVC v143 — VS 2022 C++ ARM64/ARM64EC Biblioteki odporne na Spectre (najnowsze)
    • MSVC w wersji 143 — biblioteki zabezpieczone przed Spectre dla programu VS 2022 C++ x64/x86 (najnowsze)
    • C++ ATL dla najnowszych narzędzi kompilacyjnych wersji v143 z zabezpieczeniami Spectre (ARM64/ARM64EC)
    • C++ ATL dla najnowszych narzędzi kompilacji w wersji v143 z zabezpieczeniami przeciwko Spectre (x86 & x64)
    • C++ MFC dla najnowszej wersji narzędzi kompilacji v143 z mechanizmami mitygacji Spectre (ARM64/ARM64EC)
    • C++ MFC dla najnowszych narzędzi kompilacji v143 z zabezpieczeniami przed Spectre (x86 & x64)
    • Zestaw sterowników systemu Windows
  2. Zainstaluj i uruchom ponownie program Visual Studio.

  3. Pobierz zestaw Windows SDK. Upewnij się, że masz zestaw SDK w wersji 26100 (Windows 11, wersja 24H2) lub nowszą.

  4. Pobierz WDK. Upewnij się, że masz zestaw WDK w wersji 26100 lub nowszej.

Tworzenie sterownika Arm64 za pomocą WDK

  1. W programie Visual Studio otwórz rozwiązanie sterownika. Możesz użyć własnego repozytorium lub jednego z repozytorium Windows-driver-samples .

  2. Wybierz platformę Solutions i następnie wybierz Configuration Manager.

    Zrzut ekranu przedstawiający pasek narzędzi programu Visual Studio z opcją programu Configuration Manager w menu rozwijanym platformy rozwiązania.

  3. W obszarze Aktywna platforma rozwiązania wybierz pozycję Nowy.

    Zrzut ekranu przedstawiający okno dialogowe programu Configuration Manager z wyróżnioną opcją Nowa na liście rozwijanej Aktywna platforma rozwiązania.

  4. W obszarze Typ lub Wybierz nową platformę wybierz pozycję Arm64. Skopiuj ustawienia z win32. Wybierz przycisk OK i zamknij.

    Zrzut ekranu przedstawiający okno dialogowe Nowa platforma rozwiązania z wybraną platformą docelową Arm64.

  5. Wybierz arm64 jako platformę docelową i ponownie skompiluj.

Znane problemy

  • Integracja:

    • Po zainstalowaniu zarówno zestawu Windows 11 w wersji 24H2, jak i zestawu Windows 11 w wersji 22H2, kompilowanie sterownika KMDF dla ARM64 z TargetPlatformVersion ustawionym na Windows 11 w wersji 22H2 nie udaje się z powodu nierozwiązanych symboli zewnętrznych.
    • Debugowanie sterowników w programie Visual Studio 2022 w wersjach 17.2.0 i 17.3 z systemem Windows 11 w wersji 22H2 WDK nie jest możliwe.
  • Obejścia:

    • Zaktualizuj program Visual Studio do wersji 17.4.1 lub nowszej, aby rozwiązać problemy z debugowaniem.
    • Użyj windbg do debugowania, jeśli aktualizowanie programu Visual Studio nie jest opcją.
    • Rozważ użycie starszej wersji programu Visual Studio, jeśli problemy ze zgodnością będą nadal występować.

Korzystanie z zestawu sterowników systemu Windows dla przedsiębiorstw (EWDK)

  • Omówienie EWDK:

    • Zestaw EWDK zawiera wszystkie niezbędne zależności i może służyć do kompilowania sterowników bez konieczności instalowania programu Visual Studio.
  • Kompilowanie przy użyciu EWDK:

    • Użyj następującego polecenia, aby skompilować sterownik:

      Msbuild -p:Configuration=Release/Debug; Platform=ARM64
      

Aby uzyskać więcej informacji, zobacz Enterprise WDK (EWDK).

Rozwiązywanie problemów

  • Konfiguracja w programie Visual Studio:

    • W programie Visual Studio skonfiguruj rozwiązanie sterownika dla usługi Arm64, wybierając platformę Arm64 w programie Configuration Manager i kopiując ustawienia z systemu Win32.
  • Testowanie i debugowanie:

    • Testowanie i debugowanie sterowników na urządzeniu z systemem Windows na Arm lub na maszynie wirtualnej z systemem Windows 11 dla Arm64.

Zobacz także