Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом разделе перечислены версии Kernel-Mode Driver Framework (KMDF), соответствующие версии операционной системы Windows и изменения, внесенные в каждом выпуске.
В следующей таблице показана история выпуска библиотеки KMDF. Вы можете использовать В этой статье боковой панели справа, чтобы быстро перейти к определенной версии.
Версия KMDF | Начальный релиз | Включен в | Драйверы, работающие на этой версии KMDF, выполняются в |
---|---|---|---|
1.33 | Windows 11, версия 21H2 WDK; WDK для Windows Server 2022 | Windows 11 версии 24H2; Windows 11, версия 23H2; Windows 11 версии 22H2; Windows 11, версия 21H2; Windows Server 2022 | Windows 11, версия 21H2 и более поздние версии; Windows Server 2022 и более поздних версий |
1.31 | Windows 10 версии 2004 WDK | Windows 10 версии 2004 | Windows 10 версии 2004 и более поздних версий |
1.29 | Не выпущено в WDK | Windows 10 версии 1903 | Windows 10, версия 1903 и более поздние версии |
1.27 | Windows 10 версии 1809 WDK | Windows 10, версия 1809 | Windows 10, версия 1809 и более поздние версии |
1.25 | Windows 10 версии 1803 WDK | Windows 10 версии 1803 | Windows 10 версии 1803 и выше |
1.23 | Windows 10 версии 1709 WDK | Windows 10 версии 1709 | Windows 10 версии 1709 и более поздних версий |
1,21 | Windows 10 версии 1703 WDK | Windows 10 версии 1703 | Windows 10 версии 1703 и более поздних версий |
1.19 | Windows 10 версии 1607 WDK | Windows 10, версия 1607 | Windows 10 версии 1607, Windows Server 2016 и более поздних версий |
1.17 | Windows 10 версии 1511 WDK | Windows 10 версии 1511 | Windows 10 версии 1511, Windows Server 2016 и более поздних версий |
1.15 | Windows 10 WDK | Windows 10 версии 1507 | Windows 10 версии 1507, Windows Server 2016 и более поздних версий |
1.13 | Windows 8.1 WDK | Windows 8.1 | Windows 8.1 и более поздние версии |
1.11 | Windows 8 WDK | Windows 8 | Windows Vista и более поздние версии |
1.9 | Windows 7 WDK | Windows 7 | Windows XP и более поздние версии |
1,7 | Windows Server 2008 WDK | Windows Vista с пакетом обновления 1 (SP1); Windows Server 2008 | Windows 2000 и более поздних версий |
1.5 | Windows Vista WDK | Windows Vista | Windows 2000 и более поздних версий |
1.1 | Только скачивание | Нет | Windows 2000 и более поздних версий |
1.0 | Только скачивание | Нет | Windows XP и более поздние версии |
Пакет драйверов Windows (WDK) можно использовать с Microsoft Visual Studio 2022 для создания драйверов, работающих в Windows 10 и более поздних версиях.
Чтобы определить, какую версию WDF использовать, см. Какую версию фреймворка следует использовать?.
Полный список обратных вызовов и методов, а также платформ и версий, к которым они применяются, см. Сводка по обратным вызовам и методам WDF.
Сведения о новых функциях драйверов KMDF в Windows 10 см. в разделе Что нового для драйверов WDF.
Для каждого раздела версии KMDF ниже версия Windows, в которой она была выпущена, указана в скобках.
Последняя версия — KMDF 1.33 (Windows 11, версия 21H2; Windows Server 2022)
- Для устройств, указывающих SystemManagedIdleTimeout или SystemManagedIdleTimeoutWithHint в перечислении WDF_POWER_POLICY_IDLE_TIMEOUT_TYPE, при вызове макроса WdfDeviceStopIdle с WaitForD0 задано значение FALSE, если устройство по-прежнему находится в D0, а время ожидания простоя еще не истекло, WdfDeviceStopIdle возвращает STATUS_SUCCESS (в предыдущих версиях это привело к возврату значения STATUS_PENDING).
- структура WDF_POWER_FRAMEWORK_SETTINGS имеет два новых члена (PoFxDeviceFlags и DirectedPoFxEnabled).
KMDF 1.31 (Windows 10 версии 2004)
- Была добавлена новая функция API WdfDeviceSetDeviceInterfaceStateEx
- Улучшены существующие API WdfDeviceGetSystemPowerAction
- Добавлен новый API WdfPdoInitRemovePowerDependencyOnParent
- Введение в структуру управления электропитанием
KMDF 1.29 (Windows 10 версии 1903)
Без изменений в версии 1.25.
KMDF 1.27 (Windows 10 версии 1809)
Без изменений в версии 1.25.
KMDF 1.25 (Windows 10 версии 1803)
KMDF 1.23 (Windows 10 версии 1709)
- Функциональность компаньона добавлена только для внутреннего использования. Дополнительные сведения см. в разделе Wdfcompanion.h.
KMDF 1.21 (Windows 10 версии 1703)
- WdfFileObjectGetInitiatorProcessId ранее был доступен только для UMDF, теперь доступен в KMDF.
- WdfRequestGetRequestorProcessId ранее был доступен только для UMDF, теперь доступен в KMDF.
- WdfObjectDereferenceActual: тип параметра File изменен с PCHAR на PCCH.
- WdfObjectReferenceActual: тип параметра file изменен с PCHAR на PCCH.
- Добавлены значения реестра WDF ObjectLeakDetectionLimit и ObjectsForLeakDetection для отладки чрезмерного создания объектов. Дополнительные сведения см. в разделе Значения реестра для отладки драйверов WDF.
- Программа SleepStudy сообщает количество ссылок на энергопотребление, которые есть у драйвера KMDF, предотвращающего переход системы в спящий режим. Дополнительную информацию см. о Современном режиме ожидания SleepStudy.
KMDF 1.19 (Windows 10 версии 1607)
- Добавлен WdfDmaTransactionSetSingleTransferRequirement
- Добавлен флаг WDF_DMA_ENABLER_CONFIG_REQUIRE_SINGLE_TRANSFER в WDF_DMA_ENABLER_CONFIG_FLAGS
- Добавлено возвратное значение STATUS_WDF_TOO_MANY_TRANSFERS для WdfDmaTransactionInitialize и WdfDmaTransactionDmaCompleted
- Добавлены выходные сообщения для единого вывода передачи в !wdfkd.wdfdmatransaction и !wdfkd.wdfdmaenabler
- Дополнительные сведения об одной передаче DMA см. в разделе Использование одной передачи DMA.
KMDF 1.15 (Windows 10 версии 1507)
- Новый метод WdfDeviceOpenDevicemapKey позволяет драйверу получать доступ к вложенным ключам и значениям в HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP.
- Исходный код WDF доступен в Windows Driver Framework. Файлы частных символов для WDF доступны через сервер символов Майкрософт. См. также отладку с исходным кодом WDF и видео : отладка драйвера с исходным кодом WDF.
- Теперь доступен бортовой регистратор трассировки (IFR). Обратите внимание, что это отдельно от средства ведения журнала событий платформы. Дополнительные сведения см. в разделе Inflight Trace Recorder (IFR) для логирования трасс и использование Inflight Trace Recorder в драйверах KMDF и UMDF.
- Поддержка прерываний для устройств с поддержкой GPIO. Дополнительные сведения см. в разделе Создание объекта прерывания.
KMDF 1.13 (Windows 8.1)
KMDF версии 1.13 добавляет следующие функции:
- Добавлен элемент CanWakeDevice для WDF_INTERRUPT_CONFIG структуры для поддержки прерываний, которые можно использовать для возврата устройства из состояния Dx с низкой мощностью в полное состояние D0. Дополнительные сведения см. в разделе Использование прерывания для пробуждения устройства.
- Поддержка таймеров высокого разрешения. Дополнительные сведения см. в разделе Использование таймеров.
- Поддержка таймеров, которые не пробуждают систему, если они истекают, когда система находится в состоянии пониженного энергопотребления. Дополнительные сведения см. в разделе Использование таймеров.
- Следующие методы KMDF/UMDF, описанные в разделе «Доступ к модели свойств единого устройства»:
Сведения о версиях UMDF см. в истории версий UMDF.
KMDF 1.11 (Windows 8)
Версия 1.11 добавляет следующие функции:
Поддержка прерываний пассивного уровня
функциональные состояния питания для нескольких компонентов на одном устройстве
Следующие методы:
- 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.
Добавлены элементы IdleTimeoutType и ExcludeD3Cold в WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS.
Добавлен элемент ReportInactiveOnPowerDown для WDF_INTERRUPT_CONFIG.
Добавлено значение WdfIoTargetPurged для WDF_IO_TARGET_STATE.
Добавлено значение WdfSpecialFileBoot для WDF_SPECIAL_FILE_TYPE.
Добавлено DbgWaitForSignalTimeoutInSec для значений реестра для драйверов на базе отладочной платформы.
Добавлены примеры InstallWdf, MultiCompи SingleComp.
KMDF 1.9 (Windows 7)
Версия 1.9 добавляет следующие функции:
гарантированного прогресса для очередей ввода-вывода
Поддержка запросов ввода-вывода повторного ввода-вывода из очереди ввода-вывода дочернего устройства в очередь ввода-вывода родительского устройства
Возможность указывать синхронизацию на уровне очереди для отдельных объектов очереди.
Следующие методы:
Добавлен элемент NumberOfPresentedRequests в структуру WDF_IO_QUEUE_CONFIG, чтобы драйверы могли ограничить количество запросов ввода-вывода, которые платформа доставляет драйверу из параллельной очереди ввода-вывода.
Добавлен флаг WdfFileObjectCanBeOptional в структуру WDF_FILEOBJECT_CLASS.
Добавлен элемент TolerableDelay в структуру WDF_TIMER_CONFIG.
Добавлены значения реестра WdfDefaultIdleInWorkingState и WdfDefaultWakeFromSleepState.
KMDF 1.7 (Windows Vista с пакетом обновления 1; Windows Server 2008)
Метод WdfDeviceEnqueueRequest можно вызвать в irQL<=DISPATCH_LEVEL.
Метод WdfWorkItemEnqueue можно вызвать, если указанный рабочий элемент уже находится в очереди рабочих элементов.
Добавлена функция обратного вызова события EvtDeviceArmWakeFromSxWithReason.
Добавлены члены ArmForWakeIfChildrenAreArmedForWake и IndicateChildWakeOnParentWake в структуру WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS.
KMDF 1.5 (Windows Vista)
Добавлен элемент DriverPoolTag в WDF_DRIVER_CONFIG.
KMDF 1.1 (не выпущен в версии Windows)
- Следующие методы:
KMDF 1.0 (не выпущен в версии Windows)
Первый релиз.