当前位置: 首页 > article >正文

Windows 图形显示驱动开发-WDDM 1.2功能_WDDM 1.2 和 Windows 8

简介

WDDM 是随 Windows Vista 一起引入的,以取代 Windows XP 或 Windows 2000 显示驱动程序模型 (XDDM) 。 随着 Windows Vista 中的引入,WDDM 体系结构提供了启用新功能的功能,例如桌面组合、增强的容错、视频内存管理器、GPU 计划程序、Direct3D 图面的跨进程共享等。 WDDM 专为具有像素着色器 2.0 或更高版本的 Microsoft Direct3D 9 的新式图形设备而设计,具有支持 WDDM 功能所需的所有硬件功能。 适用于 Windows Vista 的 WDDM 称为“WDDM 1.0”。

Windows 7 对支持 Windows 7 特性和功能的驱动程序模型进行了增量更改,称为“WDDM 1.1”。WDDM 1.1 是 WDDM 1.0 的严格超集。 WDDM 1.1 引入了对 Microsoft Direct3D 11、Windows 图形设备接口 (GDI) 硬件加速、连接和配置显示器、DirectX 视频加速 (VA) High-Definition (DXVA-HD) 以及许多其他功能的支持。 有关这些功能的更多详细信息,请参阅 Windows 7 图形指南。

Windows 8引入了一系列需要更改图形驱动程序的特性和功能。 这些增量更改有利于最终用户和开发人员,并提高系统可靠性。 启用这些Windows 8功能的 WDDM 驱动程序模型称为“WDDM 1.2”。WDDM 1.2 是 WDDM 1.1 和 WDDM 1.0 的超集。 这些更改可以用简化的形式表示,如下表所示。

操作系统支持的驱动程序模型支持的 Direct3D 版本启用的功能
Windows VistaWDDM 1.0;服务器上的 XDDM 和受限 UMPCD3D9、D3D10计划, 内存管理, 容错, D3D9 & 10
Windows Vista SP1/Windows 7 客户端包WDDM 1.05;Server 2008 上的 XDDMD3D9、D3D10、D3D10.1+ D3D10、D3D 10.1 中的 BGRA 支持
Windows 7WDDM 1.1;Server 2008 R2 上的 XDDMD3D9、D3D10、D3D10.1、D3D11GDI 硬件加速,DXVA HD,D3D11
Windows 8WDDM 1.2
D3D9、D3D10、D3D10.1、D3D11、D3D11.1
平滑旋转、立体三维、D3D11 视频、D3D11.1 等

 备注

使用 Windows 8 和 WDDM 1.2 时,不再支持 XDDM,并且 XDDM 驱动程序不会在Windows 8客户端或服务器上加载。 对于传统上依赖于 XDDM 的方案,Windows 8 允许迁移到 WDDM,如下表所示。

独立硬件供应商 (IHV) 和系统构建者应采用最适合其客户的替代 WDDM 解决方案。 这意味着Windows 8系统将始终具有基于 WDDM 的驱动程序。

当前使用对 XDDM 方案的 WDDM 支持
XDDM VGA 驱动程序Microsoft 基本显示驱动程序
XDDM IHV 驱动程序系统构建者需要使用 IHV 来获取 Display-Only WDDM 驱动程序或完整图形 WDDM 驱动程序。 或者 Microsoft Basic 显示驱动程序
XDDM 虚拟化驱动程序系统构建者需要使用 IHV 来获取新的 Display-Only 虚拟化驱动程序
统一可扩展固件接口上的 CSM for Int10 (UEFI)不再需要 UEFI 图形输出协议 (GOP) 支持
远程桌面访问/协作桌面复制 API
远程会话驱动程序无更改; <不支持 32 bpp 模式

备注

Microsoft 提供了一个基于 WDDM 的基本显示驱动程序,该驱动程序取代了早期的内置 XDDM 标准 VGA 驱动程序,并提供基本的显示功能以及基于软件的 2-D 和 3-D 渲染。

WDDM 1.2 引入了新的图形驱动程序类型,针对特定方案,如下所述:

  • WDDM 完整图形驱动程序: 这是支持硬件加速二维和三维操作的 WDDM 图形驱动程序的完整版本。 此驱动程序完全能够处理所有呈现、显示和视频功能。 WDDM 1.0 和 WDDM 1.1 是完整的图形驱动程序。 所有Windows 8客户端系统都必须具有完整的图形 WDDM 1.2 设备作为主启动设备。
  • WDDM 仅显示驱动程序:此驱动程序仅支持作为 WDDM 1.2 驱动程序,并使 IHV 能够编写能够驱动仅显示设备的基于 WDDM 的内核模式驱动程序。 Windows 使用软件模拟 GPU 处理二维或三维渲染。 不允许仅显示设备作为客户端系统上的主要图形设备。
  • WDDM 仅呈现驱动程序:此驱动程序仅支持作为 WDDM 1.2 驱动程序,并使 IHV 能够编写仅支持呈现功能的 WDDM 驱动程序。 不允许仅呈现设备作为客户端系统上的主图形设备。

 下表汇总了驱动程序模型与支持的驱动程序类别。

驱动程序模型/驱动程序类别完整图形仅显示仅呈现
WDDM 1.0 (Windows Vista)
WDDM 1.1 (Windows 7)
WDDM 1.2 (Windows 8)

 下表说明了新驱动程序类型的方案用法:

驱动程序类别客户端服务器在虚拟环境中运行的客户端服务器虚拟
完整图形作为启动设备必需可选可选可选
Display-Only不允许可选可选可选
Render-Only可选为非主适配器可选可选可选
无外设不允许可选N/AN/A

 Windows 8附带的所有系统都需要 WDDM 1.2。 WDDM 1.0 和 WDDM 1.1 将继续用于Windows 8。 但是,只有 WDDM 1.2 驱动程序才能启用最佳体验和特定于Windows 8功能。

相关文章:

Windows 图形显示驱动开发-WDDM 1.2功能_WDDM 1.2 和 Windows 8

简介 WDDM 是随 Windows Vista 一起引入的&#xff0c;以取代 Windows XP 或 Windows 2000 显示驱动程序模型 (XDDM) 。 随着 Windows Vista 中的引入&#xff0c;WDDM 体系结构提供了启用新功能的功能&#xff0c;例如桌面组合、增强的容错、视频内存管理器、GPU 计划程序、D…...

数据可视化 —— 多边图应用(大全)

一、介绍&#xff1a; 多边形图&#xff0c;也就是在数据可视化中使用多边形来呈现数据的图表&#xff0c;在多个领域都有广泛的应用场景&#xff0c;以下为你详细介绍&#xff1a; 金融领域 投资组合分析&#xff1a;在投资组合管理中&#xff0c;多边形图可用于展示不同资…...

小张的工厂进化史——工厂模式

小张的工厂进化史——工厂模式 一、简单工厂模式&#xff1a;全能生产线二、工厂方法模式&#xff1a;分品牌代工三、抽象工厂模式&#xff1a;生态产品族四、三种模式核心对比表五、结合Spring实现简单工厂&#xff08;实践&#xff09; 小张从华强北起家&#xff0c;最初只有…...

AIP-217 不可达资源

编号217原文链接AIP-217: Unreachable resources状态批准创建日期2019-08-26更新日期2019-08-26 有时&#xff0c;用户可能会请求一系列资源&#xff0c;而其中某些资源暂时不可用。最典型的场景是跨集合读。例如用户可能请求返回多个上级位置的资源&#xff0c;但其中某个位置…...

C语言,原码、补码、反码

计算机是以补码来存储的 原码&#xff1a;正数最高位为&#xff1a;0&#xff1b;负数最高位为&#xff1a;1 &#xff08;最高位是符号位&#xff09; 正数&#xff1a;三码合一 如&#xff1a;2&#xff1a; 原码&#xff1a;0000 0000 0000 0000 0000 0000 0000 0010&#…...

2025年智能合约玩法创新白皮书:九大核心模块与收益模型重构Web3经济范式

——从国库管理到动态激励的加密生态全栈解决方案 一、核心智能合约架构解析 1. 国库合约&#xff1a;生态财政中枢 作为协议的金库守卫者&#xff0c;国库合约通过多签冷钱包与跨链资产池实现资金沉淀。其创新点包括&#xff1a; 储备资产动态再平衡&#xff1a;采用预言机实…...

【Android】Android 打包 Release 崩溃问题全解析:Lint 错误、混淆类丢失及解决方法大全

摘要&#xff1a; 在 Android 项目的 Release 打包过程中&#xff0c;经常遇到诸如 Lint 校验失败、程序闪退、类找不到等问题。本文将详细分析 Android 打包时常见的崩溃原因&#xff0c;特别是如何应对 Lint 报错、混淆引发的类丢失&#xff08;NoClassDefFoundError&#xf…...

C++ Cereal序列化库的使用

C Cereal 库使用指南 Cereal 是一个轻量级的 C 序列化库&#xff0c;用于将对象序列化为二进制、XML 或 JSON 格式&#xff0c;以及从这些格式反序列化。它支持标准库类型和用户自定义类型的序列化&#xff0c;且无需修改原有类定义。 基本用法 1. 安装与包含 #include <…...

热门面试题第15天|最大二叉树 合并二叉树 验证二叉搜索树 二叉搜索树中的搜索

654.最大二叉树 力扣题目地址(opens new window) 给定一个不含重复元素的整数数组。一个以此数组构建的最大二叉树定义如下&#xff1a; 二叉树的根是数组中的最大元素。左子树是通过数组中最大值左边部分构造出的最大二叉树。右子树是通过数组中最大值右边部分构造出的最大…...

如何查看linux history命令文件

在Linux系统中&#xff0c;history命令用于显示用户在终端会话中执行过的命令历史。默认情况下&#xff0c;这些命令被保存在用户的家目录下的一个隐藏文件中&#xff0c;通常是.bash_history&#xff08;对于bash shell&#xff09;或.zsh_history&#xff08;对于zsh shell&a…...

css易混淆的知识点

子选择器 (>) vs 后代选择器 (空格) 子选择器 (>) 只匹配直接子元素。后代选择器 (空格) 匹配所有后代元素&#xff08;无论嵌套多深&#xff09;。 绝对定位vs相对定位 布局&#xff1a; justify-content 的作用 控制子元素在主轴上的分布方式。常见值包括 flex-start、…...

Java对接智能客服:从0到1构建高并发对话系统的实战指南

引言&#xff1a;智能客服的进化与Java生态的融合 在数字化转型浪潮中&#xff0c;智能客服系统已成为企业服务升级的标配。当传统规则引擎逐步让位于NLP大模型&#xff0c;Java开发者如何构建高效稳定的对话系统&#xff1f;本文将结合阿里云通义千问、百度文心等最新AI能力&…...

【前缀和】矩阵区域和(medium)

矩阵区域和&#xff08;medium&#xff09; 题⽬描述&#xff1a;解法&#xff1a;代码Java 算法代码&#xff1a;C 算法代码&#xff1a; 题⽬描述&#xff1a; 题⽬链接&#xff1a;1314. 矩阵区域和 给你⼀个 m x n 的矩阵 mat 和⼀个整数 k &#xff0c;请你返回⼀个矩阵 …...

5分钟用Docker Desktop新功能搭建Python+AI开发环境

Docker Desktop 4.25版本通过预置AI开发模板与零配置GPU支持&#xff0c;彻底简化PythonAI环境搭建流程。无需手动安装CUDA、无需配置虚拟环境&#xff0c;3条命令完成从零到模型训练的完整工作流。 一、Docker Desktop新功能核心价值 1.1 预置AI开发镜像库 • 开箱即用的深度…...

一周学会Pandas2 Python数据处理与分析-Pandas2读取Excel

锋哥原创的Pandas2 Python数据处理与分析 视频教程&#xff1a; 2025版 Pandas2 Python数据处理与分析 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili Excel格式文件是办公使用和处理最多的文件格式之一&#xff0c;相比CSV文件&#xff0c;Excel是有样式的。Pandas2提…...

BERT-DDP

DDP 代码执行流程详解 这份代码执行的是一个典型的数据并行分布式训练流程&#xff0c;利用多个 GPU&#xff08;可能分布在多个节点上&#xff09;来加速模型训练。核心思想是每个 GPU 处理一部分数据&#xff0c;计算梯度&#xff0c;然后同步梯度并更新模型。 假设你使用 …...

【MySQL】002.MySQL数据库基础

文章目录 数据库基础1.1 什么是数据库1.2 基本使用创建数据库创建数据表表中插入数据查询表中的数据 1.3 主流数据库1.4 服务器&#xff0c;数据库&#xff0c;表关系1.5 MySQL架构1.6 SQL分类1.7 存储引擎1.7.1 存储引擎1.7.2 查看存储引擎1.7.3 存储引擎对比 前言&#xff1a…...

02-redis-源码下载

1、进入到官网 redis官网地址https://redis.io/ 2 进入到download页面 官网页面往最底下滑动&#xff0c;找到如下页面 点击【download】跳转如下页面&#xff0c;直接访问&#xff1a;【https://redis.io/downloads/#stack】到如下页面 ​ 3 找到对应版本的源码 https…...

大模型上下文协议MCP详解(1)—技术架构与核心机制

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl1. MCP概述 1.1 定义与目标 MCP(Model Context Protocol,模型上下文协议)是由Anthropic公司于2024年11月推出的开放标准协议。它旨在解决AI大模型与外部工具、数据源及API之间的标准化交互问题…...

Windows下安装depot_tools

一、引言 Chromium和Chromium OS使用名为depot_tools的脚本包来管理检出和审查代码。depot_tools工具集包括gclient、gcl、git-cl、repo等。它也是WebRTC开发者所需的工具集&#xff0c;用于构建和管理WebRTC项目。本文介绍Windows系统下安装depot_tools的方法。 二、下载depo…...

解决 vite.config.ts 引入scss 预处理报错

版本号&#xff1a; "sass": "^1.86.3","sass-loader": "^16.0.5","vite": "^6.2.0" 报错1&#xff1a;[plugin:vite:css] [SASS] Error&#xff1a;Cant find stylesheet to import vite.config.ts 开始文件错…...

MySQL学习笔记7【InnoDB】

Innodb 1. 架构 1.1 内存部分 buffer pool 缓冲池是主存中的第一个区域&#xff0c;里面可以缓存磁盘上经常操作的真实数据&#xff0c;在执行增删查改操作时&#xff0c;先操作缓冲池中的数据&#xff0c;然后以一定频率刷新到磁盘&#xff0c;这样操作明显提升了速度。 …...

分布式锁和事务注解结合使用

在分布式系统中&#xff0c;事务注解&#xff08;如 Transactional&#xff09;与分布式锁的结合使用是保障数据一致性和高并发安全的核心手段。以下是两者的协同使用场景及技术实现要点&#xff1a; 一、事务注解的局限性及分布式锁的互补性 维度事务注解&#xff08;Transac…...

全国产压力传感器常见的故障有哪些?

全国产压力传感器常见的故障如哪些呢&#xff1f;来和武汉利又德的小编一起了解一下&#xff0c;主要包括以下几类&#xff1a; 零点漂移 表现&#xff1a;在没有施加压力或处于初始状态时&#xff0c;传感器的输出值偏离了设定的零点。例如&#xff0c;压力为零时&#xff0c…...

使用nhdeep档案目录打印工具生成干部人事档案目录打印文件

打开nhdeep档案目录打印工具&#xff0c;在左侧的模版列表中选中"干部人事档案目录"模版。 然后点击右下角“批量导入行”按钮&#xff0c;选择事先准备好的人事目录数据excel文件完成导入。 人事目录数据excel文件的结构和内容如下&#xff1a; 导入完成后&#xf…...

工作记录 2015-08-24

工作记录 2015-08-24 序号 工作 相关人员 1 更新76.19的D:\FNEHRRD&#xff0c;更新的差不多了&#xff0c;还在测试中。具体情况见附件。 郝 识别引擎监控 Ps (iCDA LOG :剔除了204篇ASG_BLANK之后的结果): LOG_File 20150823.txt BLANK_CDA/ALL 102/947 (10.8%) TIME…...

在 Dev-C++中编译运行GUI 程序介绍(三)有趣示例一组

在 Dev-C中编译运行GUI程序介绍&#xff08;三&#xff09;有趣示例一组 前期见 在 Dev-C中编译运行GUI 程序介绍&#xff08;一&#xff09;基础 https://blog.csdn.net/cnds123/article/details/147019078 在 Dev-C中编译运行GUI 程序介绍&#xff08;二&#xff09;示例&a…...

Compose 适配 - 响应式排版 自适应布局

一、概念 基于可用空间而非设备类型来设计自适应布局&#xff0c;实现设备无关性和动态适配性&#xff0c;避免硬编码&#xff0c;以不同形态布局更好的展示内容。 二、区分可用空间 WindowSizeClasses 传统根据屏幕大小和方向做适配的方式已不再适用&#xff0c;APP的显示方式…...

光储充智能协调控制系统的设计与应用研究

摘要 随着化石能源枯竭与环境污染问题加剧&#xff0c;构建高效、稳定的新能源系统成为能源转型的关键。本文针对光伏发电间歇性、储能系统充放电效率及充电桩动态负荷分配等技术挑战&#xff0c;提出一种基于智能协调管理的光储充一体化解决方案。通过多源数据融合与优化控制算…...

UE4 踩坑记录

1、Using git status to determine working set for adaptive non-unity build 我删除了一个没用的资源&#xff0c;结果就报这个错&#xff0c;原因就是这条命令导致的&#xff0c; 如果这个项目是git项目&#xff0c; ue编译时会优先通过 git status检查哪些文件被修改&#…...