Accessing the Graphics Adapter

来源:互联网 发布:网络虚拟交易平台 编辑:程序博客网 时间:2024/06/06 02:46
Diagram illustrating display driver/video miniport driver communication
  1. Communicating IOCTLs to the Video Miniport Driver

  2. The following figure shows how the display driver communicates with the video miniport driver using IOCTLs.
  3. Diagram illustrating display driver/video miniport driver communication

  4. The display driver calls EngDeviceIoControl with an IOCTL to send a synchronous request to the video miniport driver. GDI uses a single buffer for both input and output to pass the request to the I/O subsystem. The I/O subsystem routes the request to the video port, which processes the request with the video miniport driver.
  5. (显示驱动调用EngDeviceIoControl来发送同步请求给video小端口驱动。GDI使用单缓存将输入和输出请求发送给I/O子系统。子系统推送请求给video port,最终由video小端口驱动处理该请求。

  6. Some IOCTL requests require the miniport driver to access video registers, and others store or retrieve information from the miniport driver

  1. Accessing the Frame Buffer and Hardware Registers

  2. There are several ways to reduce display driver size. For example, you can implement only those functions that the display driver can perform faster than GDI, and then specify GDI to perform all other operations. GDI often performs a substantial amount of the drawing to linear frame buffers to reduce the size of the driver. GDI cannot access banked memory directly; therefore, when the frame buffer is not linearly addressable, the display driver must divide the frame buffer into a series of banks and provide a means for GDI to perform its draw operations to the appropriate bank. See Supporting Banked Frame Buffers for details.

  3. The display driver has direct access to I/O-mapped and memory-mapped video registers. This access allows a display driver to achieve high performance. For example, the driver might need to access video hardware registers to send line-drawing commands at high throughput.

  4. Similarly, for graphics cards, such as the S3, many of the innermost loops in the graphics engine code require reads and writes of several video controller ports (for example, text output in graphics mode, bit block transfers, and line drawing). Rather than requiring the display driver to send an IOCTL to the miniport driver for each request, the display driver is permitted to access the video hardware directly.


<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script>
阅读(110) | 评论(0) | 转发(0) |
0

上一篇:Roadmap for Developing Drivers for the Windows 2000 Display Driver Model (XDDM)

下一篇:Video Miniport Driver Within the Graphics Architecture (Windows 2000 Model)

相关热门文章
  • LNK1123: 转换到 COFF 期间失...
  • WIN7访问共享:0x80070035 找不...
  • Delphi 2010下载+完美破解...
  • vs2010调试C++程序时提示 无...
  • VISIO,不规则封闭图形填充方...
  • linux dhcp peizhi roc
  • 关于Unix文件的软链接
  • 求教这个命令什么意思,我是新...
  • sed -e "/grep/d" 是什么意思...
  • 谁能够帮我解决LINUX 2.6 10...
给主人留下些什么吧!~~
原创粉丝点击