什么是驱动程序开发中的新增功能

本部分提供有关新功能和更新 Windows 10 中的 Windows 驱动程序开发的信息。

下面是 Windows 10 中的驱动程序开发的新功能突出显示的列表。

下表显示的功能更新 Windows 10 中的驱动程序技术和版本。

驱动程序 1809 1803 1709 1703 1607 1507
音频 details details details details details 不可用
ACPI 不可用 details details 不可用 不可用 不可用
生物识别 不可用 不可用 details 不可用 不可用 不可用
蓝牙 details details 不可用 details 不可用 details
总线和端口 不可用 不可用 不可用 不可用 不可用 details
相机 不可用 details 不可用 details details details
手机网络 不可用 不可用 不可用 不可用 不可用 details
显示器 details details details 不可用 不可用 details
驱动程序安全 不可用 details 不可用 不可用 不可用 details
硬件通知 不可用 不可用 details 不可用 不可用 不可用
人体学接口设备 (HID) 不可用 不可用 不可用 不可用 不可用 details
内核 details details details details 不可用 不可用
位置 不可用 不可用 不可用 不可用 details details
移动宽带 details details details details 不可用 不可用
近场通信 不可用 不可用 不可用 不可用 不可用 details
网络 details details details details 不可用 details
POS 不可用 不可用 不可用 details 不可用 不可用
PCI 不可用 details details 不可用 不可用 不可用
打印 不可用 不可用 不可用 不可用 details details
脉冲宽度调制 不可用 不可用 details 不可用 不可用 不可用
传感器 details details 不可用 不可用 不可用 不可用
智能卡 不可用 不可用 不可用 不可用 不可用 details
存储 不可用 不可用 details 不可用 不可用 details
系统提供的驱动程序接口 不可用 不可用 不可用 不可用 不可用 details
USB details details details details 不可用 details
WI ‑ FI details details 不可用 不可用 不可用 不可用
WLAN 不可用 不可用 不可用 不可用 details details

什么是驱动程序开发适用于 Windows 10 中的新增功能

返回页首

本部分提供有关 Windows 10 中的驱动程序开发的新功能的高光。

Windows 硬件开发人员中心仪表板

在 Windows 10 版本 1809,我们添加了妨碍适用于开发人员、 Ihv 和 Oem 跟踪并提交驱动程序包添加到 Windows 硬件仪表板的硬件 Api的新增和改进功能。

使用发货标签 REST Api 创建和管理发货标签,依据分发你的驱动程序的方法。

使用自定义报表异步方法访问的驱动程序错误和 OEM 硬件错误报告数据。 你可以定义报告模板,具体取决于你的需求,设置了计划和会将定期传递给你的数据。

打开发布

我们要进行文档更社区驱动。 许多页上的 Windows 驱动程序文档中,你可以直接建议的更改。 查找在页面的右上角的参与按钮。 它如下所示:

参与按钮的屏幕截图

当你单击参与时,你将到达GitHub 存储库中的该主题的 Markdown 源文件。 你可以单击编辑,并建议进行这里更改。

有关更多详细信息,请参阅在存储库中的CONTRIBUTING.md 。 和花时间以提高文档谢谢 !

Windows 调试工具

本部分介绍 windows 调试工具中的更改。

在 Windows 10 版本 1809年中调试

  • 新的调试器数据模型 API – 新对象方向的调试器数据模型接口以支持调试器自动化现可使用 dbgmodel.h 标头。 调试程序数据模型是便利性的 (包括在 JavaScript 中,NatVis 和 c + +) 的新调试器扩展两种使用调试程序中的信息,生成可从访问的信息的方法是一个可扩展的对象模型调试程序,以及其他扩展。 构造这都被写入到数据模型 Api 均可在调试器的 dx 表达式计算器以及 JavaScript 扩展或 c + + 扩展。 文档都将显示在:调试器数据模型 c + + 接口的概述,以及dbgmodel.h标头参考主题。

  • IPv6 -我们已向 KDNET 中添加对 IPv6 支持。 若要使 IPv6 所需的较大的标头的房间,我们减少数据包的负载大小。 因此,我们在声明新版本的 KDNET 协议,以便运行调试器的最新版本的主机电脑可用于调试仅支持 IPv4 的目标电脑。 在可用是 WinDbg 预览版本http://aka.ms/windbgpreview支持 IPv6。 请按照 Windows 调试工具博客上 KDNET IPv6 的更新支持和的更多详细信息,请参阅KDNET 网络内核调试手动设置

在 Windows 10 版本 1803年中调试

WinDbg 预览时间旅行调试 (TTD) 动手实验室-此实验室中引入了时间旅行调试 (TTD),使用代码缺陷的小部分示例计划。 TTD 用于调试、 标识和根导致该问题。

在 Windows 10 版本 1709年中调试

下面是用于在调试程序在 Windows 10,版本 1709年中的新内容集的列表:

在 Windows 10 版本 1703年中调试

下表显示在 Windows 10 版本 1703年的调试器更改:

新主题 已更新的主题
JavaScript 调试程序脚本 dtx (显示类型-扩展调试器对象模型信息)命令
Bug 检查代码引用中的 40 未记录的停止代码 更新配置 tools.ini主题 tools.ini 文件中的命令行调试程序的附加选项
! ioctldecode 命令 Dx (显示调试器对象模型扩展)命令中的新命令功能

在 Windows 10 版本 1607年中调试

在 Windows 10 版本 1607 中,更改到调试程序包括有关调试使用 WinDbg 的 UWP 应用,一个新主题和更新到 30 大多数查看开发人员 bug 检查Bug 检查代码引用中的主题。

在 Windows 10 版本 1507年中调试

以下是有关 Windows 调试程序在 Windows 10 版本 1507年中的新命令的列表:

  • dx (显示 NatVis 表达式)的一个新的调试器命令,其中显示了使用 NatVis 扩展模型对象信息。
  • .settings -新的命令,设置,修改、 显示、 加载和保存 Debugger.Settings 命名空间中的设置。

设备和驱动程序安装

在 Windows 10 版本 1809,添加以下内容:

INF AddEventProvider 指令INF DDInstall.Events 部分

已更新以下:

驱动程序验证程序

驱动程序验证程序包括以下技术的新驱动程序验证规则:

Windows 驱动程序框架 (WDF)

在 Windows 10 版本 1809 WDF

在 Windows 10 版本 1809,Windows 驱动程序框架 (WDF) 包括内核模式驱动程序框架 (KMDF) 版本 1.27 和用户模式驱动程序框架版本 2.27。 有关这些框架版本中包含的内容的信息,请参阅WDF 驱动程序在 Windows 10 中的新增。 若要查看的 WDF 早期版本中增加了哪些功能,请参阅KMDF 版本历史记录UMDF 版本历史记录。 以下主题的 WDF 新增内容:

在 Windows 10,版本 1803年中的 WDF

在 Windows 10 版本 1803,Windows 驱动程序框架 (WDF) 包括内核模式驱动程序框架 (KMDF) 版本 1.25 和用户模式驱动程序框架版本 2.25 开始。 有关这些框架版本中包含的内容的信息,请参阅WDF 驱动程序在 Windows 10 中的新增

若要查看的 WDF 早期版本中增加了哪些功能,请参阅KMDF 版本历史记录UMDF 版本历史记录

下面的主题是 WDF 的新功能:

通用 Windows 驱动程序

本部分介绍通用 Windows 驱动程序在 Windows 10 中的新增和更新功能。

在 Windows 10 版本 1809年通用驱动程序

从 Windows 10 版本 1809,开始 Windows 支持灵活的链接,以便你可以使用目标 OneCore 和桌面 Sku 单个二进制文件。 若要启用灵活的链接,请使用以下新的 SDK API:

此现有主题已增强,以描述了如何使用灵活链接遵守DCHU 设计原则驱动程序的 U 要求:

在 Windows 10,版本 1803年中的通用驱动程序

请参阅在通用驱动程序入门的通用驱动程序的最新建议。

在 Windows 10,版本 1709年中的通用驱动程序

以下是 Windows 10 版本 1709年中的通用驱动程序的新功能的列表:

  • 使用 Windows 更新更新设备固件-介绍了如何通过使用 Windows 更新 (WU) 服务更新可移动或在机箱设备的固件。
  • 注册表项和它的值或 COM 和.dll 的一组 INF AddReg 指令到实现一个 DLL RegisterServer 例程,将转换Reg2inf -驱动程序包 INF 注册表转换工具 (reg2inf.exe)。 这些指令包括在驱动程序包的 INF 文件中。

以下是 Windows 10 版本 1709年中的通用驱动程序的更新列表:

Windows 10 中的通用驱动程序

从 Windows 10 开始,你可以编写适用于基于 OneCoreUAP 的 Windows,例如 Windows 10 桌面版 (家庭版、 专业版、 企业版和教育版) 版本,Windows 10 移动版和 Windows 10 IoT 核心版 (IoT 核心版) 的单个驱动程序。 此类驱动程序称为通用 Windows 驱动程序。 通用 Windows 驱动程序调用的接口,可供 Windows 驱动程序的子集。 有关如何生成、 安装、 部署和调试适用于 Windows 10 的通用 Windows 驱动程序的信息,请参阅开始使用通用 Windows 驱动程序

当你生成通用 Windows 驱动程序使用 Microsoft Visual Studio 2015 时,Visual Studio 将自动检查你的驱动程序调用的 Api 是否对通用 Windows 驱动程序有效。 你还可以使用 ApiValidator.exe 作为独立的工具来执行此任务。 ApiValidator.exe 工具是适用于 Windows 10 的 Windows 驱动程序工具包 (WDK)。 有关信息,请参阅验证通用 Windows 驱动程序

通用 Windows 驱动程序还需要一种特殊的名为通用 INF的 INF 文件。 通用 INF 可以使用传统的 INF 文件的一个子集指令和可用的部分。 若要了解详细信息,请参阅使用通用 INF 文件。 若要查看哪些部分和指令应用,请参阅INF 文件节和指令

当你准备就绪后时,使用InfVerif工具来测试驱动程序的 INF 文件。 除了报告 INF 语法问题,该工具报告的 INF 文件将使用通用 Windows 驱动程序。

你还可以找到有关哪些 Api 可以通过调用通用 Windows 驱动程序的信息。 此信息位于驱动程序参考页底部的要求块。

例如,你将看到列出类似于此可告知你如果给定的 DDI通用。

在“要求”区域将目标平台设置为“通用”

有关详细信息,请参阅驱动程序参考页面的目标平台

Windows 兼容硬件开发板

在多个经济实惠主板上,如 Raspberry Pi 2 现在支持 Windows。 成为早期采用者社区的一部分,并且该主板上加载 Windows。 有关详细信息,请参阅Windows 兼容硬件开发板

电源管理框架 (PoFx)

电源管理框架 (PoFx) 使驱动程序定义的设备中的个别组件可分别调节性能状态的一个或多个集。 驱动程序可以使用性能状态限制组件的工作负荷提供其当前需要正好性能。 有关详细信息,请参阅组件级别性能状态管理

WPP 软件跟踪

WPP 软件跟踪引入了一项新功能:即时跟踪记录器。 如果驱动程序启用 WPP 跟踪和 WPP 记录器,跟踪日志记录会自动打开,并且你可以轻松地查看消息,而无需在开始或停止跟踪会话。 对于更精细优化好地控制在日志,WPP 记录器允许 KMDF 驱动程序以创建和管理自定义的缓冲区。

什么是 Windows 10 版本 1809年中的新增功能 (最新)

本部分介绍了新功能和更新 Windows 10 版本 1809年中的驱动程序开发 (Windows 10 年 10 月 2018 年月更新)。

返回页首

音频

现在,提供新的sidebandaudiousbsidebandaudio标头上的文档。

蓝牙

  • 已更新 HCI_VS_MSFT_Read_Supported_Features 包含安全简单的配对过程的新标志。 请参阅Microsoft 定义蓝牙 HCI 命令和事件

  • 新 QDID 适用于 Windows 10 版本 1809年将提供以下: 108589。 有关所有版本 QD ID 的完整列表,请参阅蓝牙

显示器

显示驱动程序开发 Windows 10 中的更新,版本 1809年如下所示:

  • Raytracing才可支持硬件加速 raytracing 并行的 Direct3D API,创建新 Direct3D DDI。 示例 Ddi 包括: PFND3D12DDI_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_0054PFND3D12DDI_COPY_RAYTRACING_ACCELERATION_STRUCTURE_0054。 有关 raytracing 的详细信息,请参阅宣布推出 Microsoft DirectX Raytracing

  • 通用驱动程序要求WDDM 2.5 驱动程序将需要确保其 DirectX11 UMD、 DirectX12 UMD、 KMDs,以及任何其他 DLL 加载这些组件,通过遵循通用 API。

  • 仅 SRV 平铺资源第 3 层在 Windows 10 版本 1809,平铺资源第 3 层功能可以支持不太-以正交方式 gpu。 Direct3D12 现在支持稀疏体积纹理,而无需无序访问和呈现器目标的操作。 仅 SRV 平铺资源第 3 层是一个适合第 2 层和第 3 层之间的概念层。 硬件支持是可选的就像目前是正交平铺资源第 3 层支持。 但是,支持 SRV-Only 平铺资源第 3 层是需要支持的平铺资源第 2 层超设置的层。
    已不仅仅播发正交平铺资源第 3 层支持的驱动程序必须更新其驱动程序以支持的最新的"选项 caps"DDI 结构版本。 在运行时将播发 SRV-Only 平铺资源第 3 层支持添加到已支持正交平铺资源第 3 层的任何硬件的应用程序。

  • 呈现传递呈现传递功能已添加到:

    • 允许在现有驱动程序上运行的新 Api。
    • 允许用户模式驱动程序选择最佳的呈现路径,而无需大量 CPU 产生负面影响。
  • Meta 命令元命令是表示 IHV 加速算法 Direct3D12 对象。 它是由驱动程序实现的命令生成器不透明的引用。 元命令更新包括描述符表绑定和纹理绑定。 请参阅D3D12DDI_META_COMMAND_PARAMETER_TYPED3D12DDIARG_META_COMMAND_PARAMETER_DESC

    • 允许将计算算法使用纹理资源 (swizzled 内存)
    • 启用图形管道的算法
  • HDR 亮度补偿引入了新的 SDR 亮度提升来提高用户所需的值白色 SDR 内容的引用,从而允许 SDR 内容复制到一个典型 200 240 尼特,这相当于哪些用户具有预期 SDR 显示。 SDR 亮度提升影响两种方式的总体 Brightness3 行为:

    1. 这种提升应用仅在 SDR 内容上预混合。 HDR 内容不受影响。 同时,对于大多数笔记本电脑/brightness3 方案,用户期望所有内容 (SDR 和 HDR) 以进行调整。
    2. 当操作系统中的 Brightness3 堆栈确定所需的尼特值时,尚不了解已应用的 SDR 提升。

      然后,驱动程序必须将补偿应用于的 HDR 来自 Brightness3 Ddi 的所需的尼特值。 由于图形驱动程序 (和下游 TCON 等) 可以修改内容以获取所需的尼特值的像素值,还应应用于 HDR 内容元数据,如通过D3DDDI_HDR_METADATA_HDR10 应用程序提供补偿或通过DxgkDdiSetTargetAdjustedColorimetry操作系统默认设置。 图形驱动程序 (TCONs) 负责修改此像素数据,因为它是驱动程序的责任补偿 HDR 内容元数据。

  • HDR 像素格式支持此内核模式设备驱动程序接口 (DDI) 更改是 WDDM 2.5 公开报告的驱动程序/设备提供驱动程序/设备支持的 HDR 功能方面的信息的新功能的一部分。
    目前,操作系统将确定驱动程序/设备是否支持 HDR 为读取DdiUpdateMonitorLinkInfo具体取决于DXGK_MONITORLINKINFO_CAPABILITIES结构的HighColorSpace位。 HighColorSpace位提供了在 HDR 模式下运行的驱动程序/链接/监视器功能的组合。
    现在报告驱动程序的 HDR 功能包括功能级别的功能,这将让操作系统知道驱动程序/设备是否支持 true HDR (即 FP16HDR),或仅支持有限的形式的 HDR (即 ARGB10HDR),如所定义以下驱动程序/设备:

    • FP16HDR: 驱动程序/设备可以采取 scRGB/CCCS 色彩空间 FP16 像素格式图面和期间 scanout 管道将输出信号转换为 HDR10 应用 PQ/2084年编码和 BT.2020 初级。
    • ARGB10HDR: 驱动程序/设备可以采取 ARGB10 像素格式图面已 PQ/2084 编码和扫描出 HDR10 信号。 驱动程序/设备无法处理 FP16HDR 如上文所定义或无法处理 scRGB FP16 的扩展数字范围。

      图形驱动程序可以仅报告支持 FP16HDR 或 ARGB10HDR 它们并不是真正超集/子集配置以及操作系统将失败开始菜单适配器,如果同时报告为已支持在同一时间。 请参阅DXGK_MONITORLINKINFO_CAPABILITIES_DXGK_DISPLAY_DRIVERCAPS_EXTENSION

  • SDR 白色级别内核模式设备驱动程序接口更改包括将新参数添加到现有的 Ddi 让图形驱动程序知道正在通过操作系统合成器的所有 SDR 内容,对于显示在 HDR 模式下运行应用的"SDR 白色级别"值。 请参阅 _DXGK_COLORIMETRY。

Windows 内核

核心内核中增加了多个新 Api:

网络

NetAdapterCx

NDIS

接收方缩放版本 2 (RSSv2)已更新到版本 1.01。

移动宽带

  • 新的OID和 Ddi 以支持多个数据包数据协议 (MPDP) 接口 MBB 设备。
  • 针对 MBB 设备和驱动程序的更可靠重置恢复的新基于设备的重置和恢复功能。

移动宽带 WDF 类扩展 (MBBCx)

已简化了 MBBCx 电源管理方法。

但 MBBCx 预览内容已在 Windows 10 版本 1803年中可用 MBBCx 现在随附在 Windows 10 版本 1809年版本的 WDK 中。

移动运营商

桌面 COSA 现在支持AutoConnectOrder 设置

传感器

自动亮度功能的支持:

添加了 PKEY_SensorData_IsValid 数据字段,可在传感器中支持自动亮度。

有关详细信息,请参阅光传感器数据字段

USB

适用于 USB Type C 驱动程序开发人员的新功能:

如果你的硬件是 UCSI 兼容,并通过非 ACPI 传输要求通信,你可以利用新的类扩展—(UcmUcsiCx.sys)。 这将在传输过程中实现 UCSI 规范不可知的方式。 与最少数量的代码中,你的驱动程序,这是客户端加入 UcmUcsiCx,可以通过进行通信的 USB Type C 硬件非 ACPI 传输。 本主题介绍 UCSI 类扩展和客户端驱动程序的预期的行为提供的服务。

新功能的 USB Type C 驱动程序开发人员,使你监视的 USB Type C 连接器活动和/或 USB Type C 连接器上获取参与策略决策。

例如,控制其设备的充电的标志根据热条件,以便不会热设备。

类提供的扩展仿真的 USB 设备 (UDE)-1.1 和 USB 主控制器 (Ucx) 1.5 的新版本:

模拟的设备现在都支持通过函数 (FLDR) 的更好地重置恢复,并将重置 (PLDR) 平台。 客户端驱动程序可以立即通知系统的设备需要重置和重置的类型: 功能或平台。

主控制器也可以选择通过 FLDR 和 PLDR 重置为:

Wi ‑ fi

已更新到版本 1.1.7 WLAN 设备驱动程序接口 (WDI) 规范。

  • 添加了对最新 802.11ax 支持 PHY WDI 驱动程序类型。
  • 添加了对支持未经请求的设备服务迹象。

Windows 10 版本 1803 中的新增功能

本部分介绍了新功能和更新 Windows 10,版本 1803年中的驱动程序开发 (Windows 10 2018 年 4 月更新)。

ACPI

Windows 10 版本 1803年包括对 ACPI Ddi 以支持的平台功能和物理设备的位置更新。

音频

语音激活主题已更新为包括 APO 要求的其他信息。

蓝牙

Windows 10 版本 1803年引入了对 Swift 对支持。 用户不再需要导航设置应用,并查找与对其外围设备。 Windows 可以立即执行此操作为其新的外围设备在附近并且准备就绪时弹出通知。 有两组要求,以确保与 Swift 对你外围设备的工作原理。 一组用于外围设备的行为,而另一个用于的结构和 Microsoft 中的值定义供应商广告部分。 有关详细信息,请参阅:

Windows 10 版本 1803年支持蓝牙版本 5.0。 有关配置文件支持的信息,请参阅蓝牙版本和配置文件支持 Windows 10 中

相机

更新相机驱动程序开发包括:

  • UVC 设备 DShow (DirectShow) 桥实现指南-为相机和遵守 USB 视频类 (UVC) 规范的设备配置 DShow 桥实现指南。 该平台是使用从 USB 总线标准 Microsoft 操作系统描述符配置 DShow 桥。 扩展属性操作系统描述符是 USB 标准描述符的扩展,USB 设备用于返回未启用通过标准规范的 Windows 特定设备属性。
  • 360 相机视频捕获-与现有 MediaCapture Api 的 360 相机预览、 捕获和记录提供支持。 这使该平台来公开球面帧源 (例如,equirectangular 帧),从而应用能够检测和处理 360 视频相机流提供 360 捕获体验。

显示器

以下是对 Windows 10,版本 1803年中的显示驱动程序开发的更新:

  • 间接显示 UMDF 类扩展-间接显示驱动程序可以将 SRM 传递到 GPU 的呈现和具有查询 SRM 版本所使用的机制。

  • IOMMU 的基于硬件的 GPU 隔离支持-增加的安全性来限制到系统内存的 GPU 访问。

  • GPU 半虚拟化支持-允许显示驱动程序提供渲染功能 HYPER-V 虚拟化环境。

  • 亮度-新的亮度接口以支持多个可设置的显示校准基于 n 它的亮度级别。

  • D3D11 比特流加密的其他 GUID 和 D3D11 参数以支持 8 或 16 个字节初始化矢量公开的 CENC、 CENS、 CBC1,以及 CBC。

  • D3D11 和进行 D3D12 视频解码直方图-亮度直方图允许媒体团队利用直方图以提高 HDR/EDR 方案的音调映射质量的固定的函数硬件。 GPU 已饱和在这些情况下,若要启用并行处理时,固定的函数硬件非常有用。 此功能是可选的仅应使用固定的函数硬件是否可用。 此功能不应实现与 3D 或计算。

  • 进行 D3D12 视频解码现在支持解码第二层,用于指示使摊销分配的应用程序的驱动程序支持的纹理数组期间更改分辨率减少峰值内存使用量减少而引起成本。

  • 平铺资源层和 LDA 原子结构的新跨节点共享层以添加对链接的适配器 (LDA) 节点工作的原子着色器指令的支持。 这将提高 Isv 能够实现多个 GPU 呈现技术喜欢拆分帧呈现 (SFR),并明确什么是 D3D11 中可能通过前进功能。

  • GPU 抖动支持的驱动程序可以报告执行抖动在给定的时间模式的线信号的能力。 这允许对显式请求抖动比实际可用的监视器链接,例如通过 HDMI 2.0 HDR10 需要更高有效位深度的方案中的操作系统。

  • 后处理颜色增强重写-添加了请求的驱动程序临时禁用任何后续处理的增强或改变显示颜色,操作系统的功能。 这是为了支持特定应用程序想强制 colorimetrically 准确的颜色行为在屏幕上,并安全地与 OEM 或 IHV 专有显示颜色增强功能共存的方案。

  • Direct3D12 和视频-新的 API 和 DDI 提供以下功能的访问权限:

    • 硬件加速视频解码
    • 内容保护
    • 视频处理
  • DisplayID -新的 DDI,旨在使 VESA DisplayID 描述符,以从显示的图形适配器由控制查询,并应支持 DisplayID v1.3 和 DisplayID v2.0。 DDI 是现有 DxgkDdiQueryAdapterInfo DDI 的扩展,并且应支持所有驱动程序 DXGKDDI_INTERFACE_VERSION > = DXGKDDI_INTERFACE_VERSION_WDDM2_3,包括内核模式显示仅驱动程序和间接显示驱动程序。

  • GPU 性能数据的扩展到 DdiQueryAdapterInfo 将公开信息,例如温度,风扇速度、 时钟速度引擎内存,内存带宽、 电源绘制和电压

  • 杂项-新的 SupportContextlessPresent 驱动程序上限,以帮助 IHV 载入新驱动程序。

  • 在操作系统中支持外部/可移动 GPU 的改进。 若要添加更好地支持的第一步,Dxgkrnl 需要确定是否对 GPU"拆卸",即热-可插入。 有关 RS4 我们想要利用有关此而不是构建自己的基础结构的驱动程序的知识。 为此,我们将向 DXGK_ DRIVERCAPS 结构添加"Detachable"位。 如果适配器是可热插入,驱动程序将在适配器初始化期间设置此位。

  • 显示诊断-内核模式设备驱动程序接口 (DDI) 更改为允许显示控制器来报告诊断事件,以便操作系统的驱动程序。 这提供了驱动程序可以通过该记录事件,否则将看不到操作系统事件不会对操作系统请求的响应或某些操作系统需要作出响应的一个通道。

  • 共享图形电源组件-允许非图形驱动程序参与图形设备的电源管理。 非图形驱动程序将使用驱动程序接口管理一个或多个与图形驱动程序配合使用这些共享的电源组件。

  • 共享纹理改进-包括增加可以跨进程和 D3D 设备共享的纹理的类型。 此设计启用帧服务器操作系统组件以支持使用最少的内存复制单色。

驱动程序安全

Windows 驱动程序安全指南驱动程序安全清单,适用于驱动程序开发人员提供驱动程序安全清单的更新。

Windows 内核

本部分介绍 Windows 内核驱动程序开发 Windows 10,版本 1803年中的新增和更新功能。

一组新的 Api 已添加到工具包能够创建自己的 KDNET 扩展性模块或 KdSerial 传输层的第三方。 有关示例代码,请参阅"内核传输示例"(ddk\samples\kdserial 和 ddk\samples\kdnet) 的调试器文件夹中。

已添加了支持以驱动程序提供的认可位置 (操作系统知道) 它们可以在其中存储文件状态。 使用此方法,系统可以将该位置中的文件关联的设备或驱动程序。

有不同的位置来存储文件状态特定于内部的驱动程序和特定于设备。 对于具有文件状态的驱动程序,你可以决定如果状态写入到磁盘是:

  • 驱动程序状态 (IoGetDriverDirectory): 适用于可能被控制多台设备的驱动程序),或

  • 设备状态 (IoGetDeviceDirectory): 特定于驱动程序控制的单个设备和其他设备可能具有不同的值,类似的状态。

函数驱动程序 (FDO) 现在可以协商其他电源时,其各自的 PCIe 设备 D3Cold 状态。 这包括:

NT 服务和内核模式和用户模式驱动程序可以通过使用RtlRaiseCustomSystemEventTrigger函数来提升为设备的自定义触发器。 自定义触发器,拥有的驱动程序开发人员,通知系统事件代理开头关联的后台任务,这由自定义触发器标识符进行标识。

现在可以注册为活动会话更改通知,并触发通知时获取回调。 作为此通知的一部分,与调用方还共享某些数据。 此关联的数据并通过PO_SPR_ACTIVE_SESSION_DATA 结构提供。

网络

本部分概述了新功能和改进 Windows 10,版本 1803年中 Windows 网络驱动程序开发。

NDIS 和 NetAdapterCx

NDIS 更新包括:

下面的主题是网络适配器 WDF 类扩展 (NetAdapterCx) 的新功能:

此外,还有仅预览功能,移动宽带的类扩展 (MBBCx),它使用 NetAdapterCx 模型移动宽带连接可用的新主题。

移动宽带

移动宽带中详细介绍MB 较低的级别 UICC 访问一个新主题。

移动运营商

新的热点和 AppID 设置现在是桌面 COSA的一部分。 移动运营商强烈建议的转换从宽带体验的应用使用Sysdev 元数据包 MO UWP 应用COSA 数据库

PCIe

增加了新的 ACPI _DSD 方法来支持这些新型待机和 PCI 热即插即用方案:

  • 定向 PCIe 根端口上支持最深入运行时空闲电源状态 (DDRIPS)
  • 标识支持 D3 hot 即插即用 PCIe 根端口
  • 标识外部公开 PCIe 根端口

有关信息,请参阅ACPI 接口: 设备特定数据 (_DSD) PCIe 根端口

传感器

SENSOR_CONNECTION_TYPES 枚举已添加来阐明连接类型属性。

USB

添加了新的 Api,以模拟共享连接器分离。 如果 USB 设备连接到主机或具有共享连接器,而正在删除堆栈,当设备连接到主机或具有共享连接器时,你可以模拟分离事件。 到目前为止所有连接/分离的通知机制处于禁用状态。 有关详细信息,请参阅UfxDeviceNotifyFinalExit 函数

Wi ‑ fi

对 Wi ‑ fi 驱动程序开发的更新包括新的 Nic 自动电源节电模式 (NAPS) 高级的电源管理功能的 TLV和平台级别的设备恢复服务 (PLDR) 的更新。

Windows 10 版本 1709 中的新增功能

本部分介绍了新功能和更新 Windows 10,版本 1709年中的驱动程序开发。

返回页首

音频

以下是对 Windows 10,版本 1709年中的 Windows 音频驱动程序开发的更新的列表:

  • 新的配置和查询音频设备模块
  • 语音激活广泛更新
    • 更多详细信息链接和关键字仅激活
    • 新术语表
    • 培训和识别,例如 pin 和音频格式信息的其他信息
    • 更新的关键字系统概述
    • 唤醒语音聊天的更新的信息

ACPI

下面是新的高级配置和电源接口 (ACPI) Ddi 以支持输入/输出缓冲区的列表。

生物识别

有新签名要求 Windows 生物识别驱动程序。 有关详细信息,请参阅签名 WBDI 驱动程序

显示器

下面是 Windows 10,版本 1709年中的 Windows 显示驱动程序开发的新功能的列表。

  • 显示色彩空间转换 Ddi 提供更多控制应用在后合成显示管道中的颜色空间转换。
  • 进行 D3D12 复制队列时间戳查询功能将允许在复制命令列表/队列中对问题的时间戳查询的应用程序。 这些时间戳的指定到其他引擎上的时间戳功能完全相同。
  • 增强的视频集成到通过 Direct3D12 运行时:
    1. 硬件加速视频解码
    2. 内容保护
    3. 视频处理

硬件通知

在 Windows 10 版本 1709 中,没有硬件不可知支持通知组件,如指示灯和振动机制的支持。 有关详细信息,请参阅:

Windows 内核

在 Windows 10 版本 1709 中,添加了对 Windows 内核驱动程序的多个新程序例程。

移动宽带

以下是适用于 Windows 移动宽带和移动运营商方案的 Windows 10,版本 1709年中的驱动程序开发的新功能的列表:

在 Windows 10 版本 1709 中,桌面 COSA 文档已更新为包括新的品牌相关的字段。 查看移动运营商方案的其他更改已弃用的功能的列表。

网络

本部分概述了新功能和改进 Windows 10,版本 1709年中 Windows 网络驱动程序开发。

以下是新的和更新功能的 NDIS 列表:

虚拟化的 PCI

有新编程接口用于将物理函数驱动程序的设备的符合写入 PCI Express 单根 I/O 虚拟化 (SR-IOV) 规范。 Pcivirt.h 进行声明接口。 有关详细信息,请参阅PCI 虚拟化

脉冲宽度调制 (PWM) 控制器

在 Windows 10 版本 1709 中,提供对脉冲宽度调制 (PWM) 控制器访问属于 SoC 和内存的映射到 SoC 地址空间,你需要编写内核模式驱动程序。 有关详细信息,请参阅SoC 上的 PWM 模块 PWM 驱动程序

若要分析和验证 pin 路径提取引脚编号,内核模型驱动程序应使用PwmParsePinPath

应用可以请求发送至控制器驱动程序通过发送PWM Ioctl请求。

存储和文件系统

在文件系统和存储,Windows 10,版本 1709 来提供额外支持到通用闪存存储中添加了 ufs.h 标头。

Posix 更新包括删除的新功能和重命名

以下是在 Windows 10 版本 1709年中已更新的标头的列表:

  • ata.h
  • fltKernel.h
  • minitape.h
  • ntddscsi.h
  • ntddstor.h
  • ntddvol.h
  • ntifs.h
  • scsi.h
  • storport.h

USB

本部分介绍的 Windows 10,版本 1709年中的新功能。

媒体独立于 USB (MA USB) 协议

USB 驱动程序堆栈可使用媒体独立于 USB (MA USB) 协议通过 Wi-fi 等非 USB 物理媒介发送 USB 数据包。 若要实现此功能,已发布新的编程接口。 新的 Ddi 允许驱动程序以确定与_URB_GET_ISOCH_PIPE_TRANSFER_PATH_DELAYS相关联的延迟。 可以通过构建一个新的 URB 请求检索该信息。 有关此新功能的信息,请参阅以下主题:

若要支持 MA USB,主控制器驱动程序必须通过实现特定的回调函数提供的传输特征。 下表显示的回调函数和支持 MA USB 的结构。

回调函数 结构
EVT_UCX_USBDEVICE_GET_CHARACTERISTIC UCX_ENDPOINT_ISOCH_TRANSFER_PATH_DELAYS
EVT_UCX_USBDEVICE_RESUME UCX_CONTROLLER_ENDPOINT_CHARACTERISTIC_PRIORITY
EVT_UCX_USBDEVICE_SUSPEND UCX_ENDPOINT_CHARACTERISTIC
EVT_UCX_ENDPOINT_GET_ISOCH_TRANSFER_PATH_DELAYS UCX_ENDPOINT_CHARACTERISTIC_TYPE
EVT_UCX_ENDPOINT_SET_CHARACTERISTIC UCX_ENDPOINT_ISOCH_TRANSFER_PATH_DELAYS

使用 USB 帧和 microframes 同步的系统 QPC

有新编程接口,检索与框架和 microframe 同步的系统查询性能计数器 (QPC) 值。

仅当调用方启用中主控制器的功能时检索此信息。 若要启用该功能,主控制器驱动程序必须实现以下回调函数。

应用程序可以使用这些 Api 启用/禁用该功能并检索信息:

其他驱动程序可以发送这些 IOCTL 请求启用/禁用该功能并检索信息:

下面是支持同步 OPC USB 帧和系统 microframes 结构:

IOCTL_UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_DISPLAY_OUT_STATUS_CHANGED

IOCTL_UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_DISPLAY_OUT_STATUS_CHANGED请求是 USB Type C 端口控制器接口框架扩展中的新请求。 此请求通知显示出 DisplayPort 连接的状态已发生更改的客户端驱动程序。

下面是支持 IOCTL_UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_DISPLAY_OUT_STATUS_CHANGED 请求的结构:

Windows 10 版本 1703 中的新增功能

本部分介绍 Windows 10 版本 1703年中的驱动程序开发新的和改进功能。

返回页首

音频

以下是 Windows 10 版本 1703年中的音频驱动程序开发的新主题的列表:

  • 实现音频的模块通信-描述从通用 Windows 平台 (UWP) 应用到内核模式音频设备驱动程序进行通信的支持。
  • 新的 Ddi 和属性引用支持 APO 模块通信发现主题:

蓝牙

以下是对 Windows 10 版本 1703年中的蓝牙的更新的列表:

  • 使用 Windows 10 桌面版的宽带语音参与配置文件 (HFP) 1.6 规范。
  • 调用控件 Api在 Windows 10 桌面版的支持。
  • 支持 GATT 服务器、 蓝牙 LE 外围设备和非配对蓝牙 LE 的支持。 请参阅我们发布的开发人员更多详细信息。

有关新增功能对蓝牙的详细信息,请参阅蓝牙蓝牙 LE 预配对

相机

以下是对 Windows 10 版本 1703年中的相机驱动程序开发的更新的列表:

Windows 内核

Windows 内核模式进程和线程管理器-启动在 Windows 10 版本 1703 中,Windows 子系统 Linux (WSL) 使用户能够与其他 Windows 应用程序一起在 Windows 上,运行本机 Linux ELF64 二进制文件。 有关 WSL 体系结构和所需运行的二进制文件的用户模式和内核模式组件的详细信息,请参阅适用于 Linux 的 Windows 子系统博客上的文章。

移动宽带

移动宽带 (MB)的更新包括改进LTE 附加功能多 SIM 操作,到调制解调器,支持特定吸收费率平台预配上下文支持的支持并为网络黑名单支持。

移动运营商方案 (个月)的更新包括调用COSA 常见问题,MOs 预配 Windows 桌面 MB 设备的新数据库格式。 请参阅以下主题的更多的更新:

网络

更新为网络驱动程序开发 Windows 10 版本 1703年包含了一种新型的套接字调用流套接字,支持 Linux 网络 Windows 上的应用中。 有关详细信息,请参阅Winsock 内核。 新功能和结构包括WskConnectExWskListenWSK_CLIENT_STREAM_DISPATCH,以及WSK_PROVIDER_STREAM_DISPATCH

POS

以下是 Windows 10 版本 1703年中的 POS 的新主题的列表:

没有到BarcodeSymbology 枚举新 Gs1DWCode 标志。

USB

Windows 10 版本 1703 中提供了一个新类 (UcmTcpciCx.sys) 的扩展支持通用串行总线 Type C 端口控制器接口规范。 USB Type C 连接器驱动程序不需要维护任何内部 PD/类型-C 状态。 由系统处理管理的 USB Type C 连接器和 USB 电源传递 (PD) 状态机的复杂性。 只需编写客户端驱动程序通信通过类扩展系统硬件事件。 有关详细信息,请参阅USB Type C 控制器接口驱动程序类扩展引用

Windows 10 版本 1607 中的新增功能

返回页首

本部分介绍的新功能和改进 Windows 10 版本 1607年中的驱动程序开发。

音频

下面是 Windows 10 版本 1607年中的音频驱动程序开发的新主题的列表。

相机

Windows 10 中的相机驱动程序开发,版本 1607年包含新的和更新的主题,以支持 Windows Hello 和面部身份验证:

位置

Windows 10 中的位置驱动程序开发,版本 1607年包含以下新 GNSS 痕迹导航 Ddi:

Windows 10 中的打印机驱动程序开发,版本 1607年包含JSConstraintsDebug,开发第 4 版打印机驱动程序时将提供对 JavaScript 约束的调试支持一个命令行工具。

WLAN

在 Windows 10 版本 1607 中,有一些新的并且更新的 WLAN 设备驱动程序接口 (WDI) 版本 1.0.21 的主题。 有关详细信息,请参阅WDI 文档的更改历史记录

Windows 10 版本 1507 中的新增功能

返回页首

本部分介绍 Windows 10 中的驱动程序开发新的和更新功能。

蓝牙

在 Windows 10 中,添加了新Microsoft 定义蓝牙 HCI 扩展

总线和端口

驱动程序编程接口和内置驱动程序的简单外设总线 (SPB) 如 I2C 和 SPI 和 GPIO 是基于 OneCoreUAP 的 Windows 版本的一部分。 这些驱动程序将同时 Windows 10 桌面版和 Windows 10 移动版以及其他 Windows 10 上运行的版本。

相机

Ddi 的摄像头驱动程序已聚合到通用 Windows 驱动程序模型,包括新的相机 Ddi。 其他功能包括:

手机网络

已更新手机网络体系结构和实现适用于 Windows 10。

显示器

显示驱动程序模型从 Windows 8.1 和 Windows Phone 具有聚合到一个统一的模型适用于 Windows 10。

新的内存模型实现可为每个 GPU 的每个进程的虚拟地址空间。 直接寻址的视频内存仍受支持 WDDMv2 对于图形硬件需要它,但可被视为旧版情况。 Ihv 需要开发新的硬件支持虚拟寻址。 重大更改已对所做 DDI 若要启用此新的内存模型。

人体学接口设备 (HID)

新虚拟 HID 框架 (甚高频) 不需要编写的内核模式下传输微型驱动程序。 框架由 Microsoft 提供静态库 (Vhfkm.lib) 公开你的驱动程序所使用的编程元素组成。 它还包括 Microsoft 提供的内置驱动程序 (Vhf.sys) 枚举一个或多个子设备并继续生成虚拟人体学接口设备(HID) 树。

位置

全球导航卫星系统 (GNSS) 驱动程序 Ddi 具有聚合到GNSS 通用 Windows 驱动程序模型(UMDF 2.0)。

近场通信 (NFC)

NFC Ddi具有新的聚合驱动程序模型,以支持移动设备和桌面的解决方案。

NFC 类扩展: 新的 NFC 类扩展驱动程序是否可用。 NFC 类扩展驱动程序实现所有 Windows 定义 Ddi 与 NFC 控制器、 安全元素和远程射频终结点进行交互。

网络

作为现有 NDIS 微型端口驱动程序模型的扩展提供新PacketDirect 提供程序接口 (PDPI) 。 PDPI 提供允许的应用程序管理它们自己的缓冲区、 轮询处理器,以及直接管理通过发送和接收数据包的微型端口适配器的 I/O 模型。 这些功能的组合允许应用程序完全控制引导到更高的数据包每秒 (pps) 比其自己上下文。

打印驱动程序将 v4 打印驱动程序改进和更改以支持从移动设备,以及以下无线打印更新:

  • V4 驱动程序清单–提供对 v4 打印驱动程序清单,以支持 PWG 光栅呈现筛选器中,包括更新的 DriverConfig 和 DriverRender 指令,并更新的示例清单的更改的信息。
  • WS 发现移动打印支持–描述启用 Windows 10 移动版设备从 Windows 10 移动版兼容的打印机的移动打印的 WS 发现要求。
  • IXpsRasterizationFactory2 接口–支持打印机从 XPS 到 PWG 光栅使用 XPS 光栅化服务的内容转换。 PWG 光栅支持非方形 DPIs。
  • 打印管道属性包–新 PrintDeviceCapabilities 属性以启用 XPS 呈现筛选器从打印筛选器管道属性包中检索新 PrintDeviceCapabilities 的 XML 文件。
  • GetWithArgument 请求和响应架构–提供移动打印支持具有正式定义和示例 GetWithArgument 请求和响应双向通信架构。
  • IBidiSpl::SendRecv 方法–添加了对移动 GetWithArgument 双向架构值打印支持。

智能卡

在 Windows 10 中,没有新类扩展模块,Wudfsmcclassext.dll,处理复杂的驱动程序操作。 由你的客户端驱动程序处理,智能卡特定于硬件的任务。 有新编程接口,客户端驱动程序可用于在卡信息发送到类扩展,以便它可以处理请求。 这些驱动程序编程接口是基于 OneCoreUAP 的 Windows 版本的一部分。

存储

Windows 10 中新的存储固件更新 (IOCTL 接口) 允许合作伙伴先将其存储设备固件更新。 这些更新包括:

  • 存储协议通过–更新的存储直通 IOCTL 接口支持更高版本的协议,包括非易失性内存 express (NVMe)。
  • 扩展存储查询接口–扩展的存储查询接口允许应用程序查询依赖于协议的信息。

系统提供的驱动程序接口

GUID_DEVICE_RESET_INTERFACE_STANDARD接口定义要尝试重置和恢复发生故障的设备的函数驱动程序的标准方式。

USB

下面是用于 USB Windows 10 中的新增功能。 有关详细信息,请参阅Windows 10: 面向 USB 新增

WLAN

WDI (WLAN 设备驱动程序接口) 是融合在 Windows 10 桌面版上的 WLAN 驱动程序的新WLAN 通用 Windows 驱动程序模型,并且 Windows 10 移动版。

返回页首

已否决的功能

下表介绍了在 Windows 10 中已删除的 Windows 驱动程序开发功能。

驱动程序技术 功能 中已弃用
GNSS/位置 Windows 8.1 驱动程序示例,地理位置和相关的文档 Windows 10 版本 1709
移动运营商方案 (网络) AllowStandardUserPinUnlock Windows 10 版本 1709
扫描/图像 WSD (适用于设备的 Web 服务) 挑战者功能和相关的文档 Windows 10 版本 1709
移动运营商 移动宽带应用遇到与 Sysdev 元数据包被弃用,以支持 MO UWP 应用和 COSA 的应用。 Windows 10 版本 1803