摘 要:WinDriver 是一套 PCI 驱动程序开发包。它改变了传统驱动程序开发的方法与思路,极在地简化了驱动
程序的编制;同时,又没有牺牲驱动程序的性能,是一套高效、快捷的 PCI 驱动程序开发软件包。特别适合专
业硬件人员的使用。
关键词:设备驱动程序WinDriver PCI
WinDriver 是 Jungo 公司出版的一个设备驱动程序开发组件,它可以大大加速 PCI 设备驱动程序的开发。作者在
实际的项目中采用了 WinDriver 来开发设备驱动程序,取得了相当好的运行效果。从目前国内的资料上来看,大
多数设计人员还是在用 DDK、Wtools 开发设备驱动程序,因而作者觉得有必要向大家介绍与推荐这个软件。
WinDriver 是一套设备驱动程序开发组件,它的目的就是方便 Windows 程序员快速开发出 PCI/ISA 设备的
Windows 驱动程序(目前最新的版本 V4.32 还支持 PCMCIA、USB 设备的驱动程序的开发,并且除了支持
Windows9X/NT 系统外,还有支持 Unix、Windows CE 的版本推出)。利用 WinDriver 开发设备驱动程序,不
需要熟悉操作系统的内核,整个驱动程序中的所有函数都是工作在用户态下的,通过与 WinDriver 的.Vxd 或
者.Sys 文件交互来达到驱动硬件的目的。由于是一个用户态程序,效率的高低也就成了人们选择 WinDriver 时
关心的一个问题。大量实践数据表明,WinDriver 并没有通过牺牲系统性能来换取驱动程序的快速开发,的确是
一个“像开发用户态程序那样简单,像核心态程序那样高效”[1]的开发工具。
图 1 是 WinDriver 的体系结构图。
1 WinDriver 主要特征
·提供了从用户层访问硬件的简单方法;
·能够方便地将性能要求特别苛刻的部分通过 Windriver 提供的 API 插入到核心态模式运行,提高执行效率;
·对主流 PCI 接口芯片(AMCC、PLX、V3 系列)提供了很好的支持;
·可以利用常见的软件开发平台(Visual C++、Borland C++、VB4、Java、Delphi);