第四篇(VidPN)中提到过MIRROR驱动.

在进入本篇的实际内容前, 带着好奇心, 想请教CSDN中的显卡驱动方面的大虾, 怎样才干把这个驱动玩起来, 这个驱动的作用是什么,等等, 敬请不吝赐教.

显卡的公司眼下有两家, A与N(嵌入式方面的, 听到过一些, 比方ARM的MALI, 不太清楚). 不论什么一家半导体公司, 其主要内容还是硬件的设计, 软件层面上来讲, 就可大可小了, 但不可否认, 半导体公司对软件的需求与要求, 也越来越多, 越来越高.

近期几天我对显卡以及相关方面的了解, 上层的应用程序, OpenGL, DirectX, 再到用户模式下的UMD, 与内核层的KMD miniport driver, 不论什么一个方面,都是显卡, 显示应用的一个慷慨向, 要深入不论什么一个方面,都须要时间与精力及努力.

前面7篇都是一些基础的知识, 也是我在曾经写AVSTREAM/BDA过程中,没有遇到过的, 特别是VidPN的概念.

光看文档, 是不可能有长进的, 做实际的项目, 带着问题去看文档, 看代码, 调试, 打印, ... 一系列的实践才干把别人的东西消化为自己的东西,  才干渐渐地理解深入, 最后, 提出自己的意见与观点, 提出改进的方法.

这次, 我带着一个实际问题在网上搜显卡驱动的Windows驱动样例代码.

Mirror没有搞明确, 后来, 找到了

Kernel mode display-only miniport driver (KMDOD) sample

http://code.msdn.microsoft.com/Kernel-mode-display-only-49adea58

从微软对这个样例的描写叙述来讲, 这个驱动实现了一个display-only 显卡驱动.

我的一贯作风, 就是先拿这个驱动的.sys文件, 在实际的系统上试一下,看看究竟有什么作用, 效果, 然后再伴随着实际须要解决的问题,去看代码,改代码.

从2006年開始Windows驱动编程, 那时候很easy,安装了DDK, WDK, 就能对代码进行编译, 如今不行了, 非得VS与WDK才干编译驱动程序了(当初为了在USB驱动中增加bulk stream的支持,也是这样, 下VS, 下WDK, 搞得很累, 主要原因,就是WDK不再带有编译, 链接的工具链了).

没办法, 仅仅能下一个免费的vs express 2013, 一个WDK 8.1 Update. 对样例编译出.sys, .inf, .cat.

令人头痛的是, 这个驱动仅仅能执行在 WDDM 1.2的环境下, 而我的WIN8 为

Win8 pro build 9200

在设备管理器中, 看到显卡安装的驱动为WDDM 1.1框架的: 例如以下:


intel(r) q45/q43 express chipse

依据代码的相关描写叙述, 在这个WIN8系统上, 我是不可能看到这个驱动的执行 情况了:

If the current display driver is not a WDDM 1.2 compliant driver, the sample driver might fail to install, with error code 43 displayed.
The KMDOD driver is actually installed, but it cannot be started. The workaround for this issue is to switch to the Microsoft Basic Display Adapter Driver before installing the KMDOD sample driver, or simply to reboot your system after installing the KMDOD
sample.

所以, 实践环境就此被实际原因给阻挡了.

大家有兴趣, 能够參考下这两篇内容, 我将在下一篇, 把代码分析呈现给大家:

http://www.yiiyee.cn/Blog/wddm1/

http://www.yiiyee.cn/Blog/wddm2/

最新文章

  1. IIS 6中mimemap属性的默认设置
  2. 暴力+降复杂度 BestCoder Round #39 1002 Mutiple
  3. TinyMCE在线编辑器使用方法初探
  4. Bluetooth SDP介绍
  5. 【BZOJ】【1662】/【POJ】【3252】 【USACO 2006 Nov】Round Number
  6. 《Python 学习手册4th》 第十七章 作用域
  7. 使用CSS修改HTML5 input placeholder颜色( 转载 )
  8. Python之创建单元素tuple
  9. phpcms:五、网站首页(index.html)
  10. 微信小程序的跨平台图表库开发
  11. mac中利用brew实现多版本php共存以及任意切换
  12. Java过滤XSS脚本, 可通过Appscan扫描
  13. [django1.6]跑批任务错误(2006, 'MySQL server has gone away')
  14. (七) Keras 绘制网络结构和cpu,gpu切换
  15. 常用sql语句总结(一)(查询)
  16. 16.vue-cli跨域,swiper,移动端项目
  17. 手机连得上WIFI,电脑连不上的情况
  18. vs2008内存泄露检測得到完美解决
  19. [转帖] linux下面 vim 数字键无法插入的解决办法
  20. python简说(十)json模块

热门文章

  1. linux cmd
  2. 教程:查找内存泄漏 (JavaScript)
  3. APEC计划指引我们前进:云计算服务将上升
  4. Collections在sort()简单分析法源
  5. c语言,数组和指针
  6. Xtrabackup全量备份与恢复mysql数据库
  7. 利用WebClient上传参数及文件流到远程ashx服务
  8. 三种java 去掉字符串中的重复字符函数
  9. 大白痴学习webmagic
  10. Debian/Ubuntu Linux 下安装LLVM/Clang 编译器