KMDF-Versionsverlauf
In diesem Thema werden versionen von Kernel-Mode Driver Framework (KMDF), die entsprechenden Versionen des Windows-Betriebssystems und die in den einzelnen Versionen vorgenommenen Änderungen aufgeführt.
Die folgende Tabelle zeigt den Releaseverlauf der KMDF-Bibliothek. Sie können die Randleiste In diesem Artikel auf der rechten Seite verwenden, um schnell zu einer bestimmten Version zu navigieren.
KMDF-Version | Erste Veröffentlichung | Teil von | Treiber, die diese KMDF-Version verwenden, werden unter ausgeführt. |
---|---|---|---|
1.33 | Windows 11, Version 21H2 WDK; WDK für Windows Server 2022 | Windows 11, Version 23H2; Windows 11, Version 22H2; Windows 11, Version 21H2; Windows Server 2022 | Windows 11, Version 21H2 und höher; Windows Server 2022 und höher |
1.31 | Windows 10, Version 2004 WDK | Windows 10, Version 2004 | Windows 10, Version 2004 und höher |
1.29 | Nicht im WDK veröffentlicht | Windows 10, Version 1903 | Windows 10, Version 1903 und höher |
1,27 | Windows 10, Version 1809 WDK | Windows 10, Version 1809 | Windows 10, Version 1809 und höher |
1,25 | Windows 10, Version 1803 WDK | Windows 10, Version 1803 | Windows 10, Version 1803 und höher |
1.23 | Windows 10, Version 1709 WDK | Windows 10, Version 1709 | Windows 10, Version 1709 und höher |
1.21 | Windows 10, Version 1703 WDK | Windows 10, Version 1703 | Windows 10, Version 1703 und höher |
1.19 | Windows 10, Version 1607 WDK | Windows 10, Version 1607 | Windows 10 Version 1607, Windows Server 2016 und höher |
1.17 | Windows 10, Version 1511 WDK | Windows 10, Version 1511 | Windows 10 Version 1511, Windows Server 2016 und höher |
1.15 | Windows 10 WDK | Windows 10, Version 1507 | Windows 10, Version 1507, Windows Server 2016 und höher |
1.13 | Windows 8.1 WDK | Windows 8.1 | Windows 8.1 und höher |
1.11 | Windows 8 WDK | Windows 8 | Windows Vista und höher |
1.9 | Windows 7 WDK | Windows 7 | Windows XP und höher |
1.7 | Windows Server 2008 WDK | Windows Vista mit Service Pack 1 (SP1); Windows Server 2008 | Windows 2000 und höher |
1.5 | Windows Vista WDK | Windows Vista | Windows 2000 und höher |
1.1 | Nur Herunterladen | Keine | Windows 2000 und höher |
1.0 | Nur Herunterladen | Keine | Windows XP und höher |
Sie können das Windows Driver Kit (WDK) mit Microsoft Visual Studio 2019 verwenden, um Treiber zu erstellen, die unter Windows 10 und höher ausgeführt werden.
Hilfe zum Bestimmen der zu verwendenden Version von WDF finden Sie unter Welche Frameworkversion sollte ich verwenden?.
Eine vollständige Liste der Rückrufe und Methoden sowie deren Frameworks und Versionen finden Sie unter Zusammenfassung von WDF-Rückrufen und -Methoden.
Informationen zu den neuen Features für KMDF-Treiber in Windows 10 finden Sie unter Neues für WDF-Treiber.
Für jede KMDF-Version unten wird die Windows-Version, in der sie veröffentlicht wurde, in Klammern aufgeführt.
Neueste Version: KMDF 1.33 (Windows 11, Version 21H2; Windows Server 2022)
- Für Geräte, die SystemManagedIdleTimeout oder SystemManagedIdleTimeoutWithHint in der WDF_POWER_POLICY_IDLE_TIMEOUT_TYPE-Enumeration angeben, gibt WdfDeviceStopIdle beim Aufrufen des WdfDeviceStopIdle-Makros , bei dem WaitForD0 auf FALSE festgelegt ist, wenn sich das Gerät noch in D0 befindet und der Leerlauftimeoutzeitraum noch nicht abgelaufen ist, WdfDeviceStopIdle STATUS_SUCCESS zurück (in früheren Versionen hat dies zu einem Rückgabewert von STATUS_PENDING geführt).
- WDF_POWER_FRAMEWORK_SETTINGS Struktur verfügt über zwei neue Member (PoFxDeviceFlags und DirectedPoFxEnabled).
KMDF 1.31 (Windows 10, Version 2004)
- Neue API WdfDeviceSetDeviceInterfaceStateEx hinzugefügt
- Verbesserte vorhandene API WdfDeviceGetSystemPowerAction
- Neue API WdfPdoInitRemovePowerDependencyOnParent hinzugefügt
- Einführung in das Framework zur gesteuerten Energieverwaltung
KMDF 1.29 (Windows 10, Version 1903)
Unverändert gegenüber Version 1.25.
KMDF 1.27 (Windows 10, Version 1809)
Unverändert gegenüber Version 1.25.
KMDF 1.25 (Windows 10, Version 1803)
KMDF 1.23 (Windows 10, Version 1709)
- Begleitfunktionen wurden nur für die interne Verwendung hinzugefügt. Weitere Informationen finden Sie unter Wdfcompanion.h.
KMDF 1.21 (Windows 10, Version 1703)
- WdfFileObjectGetInitiatorProcessId war zuvor nur UMDF und jetzt in KMDF verfügbar.
- WdfRequestGetRequestorProcessId war zuvor nur UMDF und jetzt in KMDF verfügbar.
- WdfObjectDereferenceActual: Typ des File-Parameters wurde von PCHAR in PCCH geändert.
- WdfObjectReferenceActual: Typ des File-Parameters wurde von PCHAR in PCCH geändert.
- Die WDF-Registrierungswerte ObjectLeakDetectionLimit und ObjectsForLeakDetection zum Debuggen der übermäßigen Objekterstellung wurden hinzugefügt. Weitere Informationen finden Sie unter Registrierungswerte zum Debuggen von WDF-Treibern.
- Das Softwaretool SleepStudy meldet die Anzahl der Energieverweise eines KMDF-Treibers, die verhindern, dass das System in den Standbymodus wechselt. Weitere Informationen finden Sie unter Modern standby SleepStudy.
KMDF 1.19 (Windows 10, Version 1607)
- WdfDmaTransactionSetSingleTransferRequirement hinzugefügt
- WDF_DMA_ENABLER_CONFIG_REQUIRE_SINGLE_TRANSFER-Flag in WDF_DMA_ENABLER_CONFIG_FLAGS hinzugefügt
- STATUS_WDF_TOO_MANY_TRANSFERS Rückgabewert für WdfDmaTransactionInitialize und WdfDmaTransactionDmaCompleted hinzugefügt
- Ausgabemeldungen für die einzelne Übertragungsausgabe zu !wdfkd.wdfdmatransaction und !wdfkd.wdfdmaenabler hinzugefügt
- Weitere Informationen zu DMA für einmalige Übertragungen finden Sie unter Verwenden von Single Transfer DMA.
KMDF 1.15 (Windows 10, Version 1507)
- Die neue WdfDeviceOpenDevicemapKey-Methode ermöglicht einem Treiber den Zugriff auf Unterschlüssel und Werte unter HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP.
- WDF-Quellcode ist unter Windows-Treiberframeworks öffentlich verfügbar. Die privaten Symboldateien für WDF sind über den Microsoft-Symbolserver verfügbar. Weitere Informationen finden Sie unter Debuggen mit WDF-Quelle und Video: Debuggen ihres Treibers mit WDF-Quellcode.
- Inflight Trace Recorder (IFR) jetzt verfügbar. Beachten Sie, dass dies von der Ereignisprotokollierung des Frameworks getrennt ist. Weitere Informationen finden Sie unter Inflight Trace Recorder (IFR) zum Protokollieren von Ablaufverfolgungen und Verwenden des Inflight Trace Recorder in KMDF- und UMDF-Treibern.
- Unterstützung für Interrupts für GPIO-gestützte Geräte. Weitere Informationen finden Sie unter Erstellen eines Interruptobjekts.
KMDF 1.13 (Windows 8.1)
Die KMDF-Version 1.13 fügt die folgenden Funktionen hinzu:
- CanWakeDevice-Member wurde WDF_INTERRUPT_CONFIG-Struktur hinzugefügt, um Interrupts zu unterstützen, die verwendet werden können, um ein Gerät aus einem Dx-Low-Power-Zustand wieder in den Zustand "Vollständig D0" zu versetzen. Weitere Informationen finden Sie unter Verwenden eines Interrupts zum Aktivieren eines Geräts.
- Unterstützung für Timer mit hoher Auflösung. Weitere Informationen finden Sie unter Verwenden von Timern.
- Unterstützung für Zeitgeber, die das System nicht reaktivieren, wenn sie ablaufen, wenn sich das System in einem Energiesparzustand befindet. Weitere Informationen finden Sie unter Verwenden von Timern.
- Die folgenden KMDF/UMDF-Methoden, die unter Zugreifen auf das Unified Device Property Model beschrieben werden:
Informationen zu UMDF-Versionen finden Sie unter UMDF-Versionsverlauf.
KMDF 1.11 (Windows 8)
Version 1.11 fügt die folgenden Funktionen hinzu:
Unterstützung für Unterbrechungen auf passiver Ebene
Funktionsenergiezustände für mehrere Komponenten innerhalb eines einzelnen Geräts
Die folgenden Methoden:
- WdfDeviceConfigureWdmIrpDispatchCallback
- WdfDeviceInitSetReleaseHardwareOrderOnFailure
- WdfDeviceInitSetRemoveLockOptions
- WdfDeviceWdmDispatchIrp
- WdfDmaEnablerConfigureSystemProfile
- WdfDmaTransactionAllocateResources
- WdfDmaTransactionCancel
- WdfDmaTransactionFreeResources
- WdfDmaTransactionGetTransferInfo
- WdfDmaTransactionInitializeUsingOffset
- WdfDmaTransactionSetChannelConfigurationCallback
- WdfDmaTransactionSetDeviceAddressOffset
- WdfDmaTransactionSetImmediateExecution
- WdfDmaTransactionSetTransferCompleteCallback
- WdfDmaTransactionWdmGetTransferContext
- WdfInterruptQueueWorkItemForIsr
- WdfInterruptReportActive
- WdfInterruptReportInactive
- WdfInterruptTryToAcquireLock
- WdfIoQueueStopAndPurge
- WdfIoQueueStopAndPurgeSynchronously
- WdfIoTargetPurge
- WdfUsbTargetDeviceCreateIsochUrb
- WdfUsbTargetDeviceCreateUrb
- WdfUsbTargetDeviceCreateWithParameters
- WdfUsbTargetDeviceQueryUsbCapability
EvtDeviceUsageNotificationEx hinzugefügt.
Die Elemente IdleTimeoutType und ExcludeD3Cold wurden WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS hinzugefügt.
ReportInactiveOnPowerDown-Member zu WDF_INTERRUPT_CONFIG hinzugefügt.
Der Wert WdfIoTargetPurged wurde WDF_IO_TARGET_STATE hinzugefügt.
Der Wert WdfSpecialFileBoot wurde WDF_SPECIAL_FILE_TYPE hinzugefügt.
DbgWaitForSignalTimeoutInSec zu Registrierungswerten für das Debuggen von Framework-basierten Treibern hinzugefügt.
Beispiele für InstallWdf, MultiComp und SingleComp wurden hinzugefügt.
KMDF 1.9 (Windows 7)
Version 1.9 fügt die folgenden Funktionen hinzu:
Garantierter Vorwärtsfortschritt für E/A-Warteschlangen
Unterstützung für die erneute Warteschlange von E/A-Anforderungen aus der E/A-Warteschlange eines untergeordneten Geräts in die E/A-Warteschlange eines übergeordneten Geräts
Möglichkeit zum Angeben der Synchronisierung auf Warteschlangenebene für einzelne Warteschlangenobjekte.
Die folgenden Methoden:
Das NumberOfPresentedRequests-Element wurde der WDF_IO_QUEUE_CONFIG-Struktur hinzugefügt, damit Treiber die Anzahl der E/A-Anforderungen begrenzen können, die das Framework aus einer parallelen E/A-Warteschlange an den Treiber übermittelt.
Das WdfFileObjectCanBeOptional-Flag wurde der WDF_FILEOBJECT_CLASS-Struktur hinzugefügt.
Das TolerableDelay-Element wurde der WDF_TIMER_CONFIG-Struktur hinzugefügt.
Die Registrierungswerte WdfDefaultIdleInWorkingState und WdfDefaultWakeFromSleepState wurden hinzugefügt.
KMDF 1.7 (Windows Vista mit Service Pack 1; Windows Server 2008)
Die WdfDeviceEnqueueRequest-Methode kann unter IRQL<=DISPATCH_LEVEL aufgerufen werden.
Die WdfWorkItemEnqueue-Methode kann aufgerufen werden, wenn sich das angegebene Arbeitselement bereits in der Arbeitselementwarteschlange befindet.
Die Ereignisrückruffunktion EvtDeviceArmWakeFromSxWithReason wurde hinzugefügt.
ArmForWakeIfChildrenAreArmedForWake- und IndicateChildWakeOnParentWake-Member zur WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS-Struktur hinzugefügt.
KMDF 1.5 (Windows Vista)
Das DriverPoolTag-Element wurde WDF_DRIVER_CONFIG hinzugefügt.
KMDF 1.1 (nicht in einer Windows-Version veröffentlicht)
- Die folgenden Methoden:
KMDF 1.0 (nicht in einer Windows-Version veröffentlicht)
Erste Veröffentlichung
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für