基于WindowsNT的设备驱动程序开发 .pdfVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

维普资讯

2002年第3期声学与电子工程总第67期

基于WindowsNT的设备驱动程序开发

程剑钟钟

(1第七一五研究所富阳311400;2白石窑水电厂英德513000)

摘要介绍WindowsNT设备驱动程序的原理和组成,描述WindowsNT驱动程序模型,并

以实现内存缓冲区的共享为目标,浅议了设备驱动程序的开发。

关键词设备驱动程序I/O请求包共享内存缓冲区

1概述

WindowsNT操作系统属于多任务操作系统,在安全性和可靠性设计方面非常严谨,对底层

的内存缓冲区和I/O地址空间提供保护机制,其进程模式会使应用程序中的I/O访问指令产生

保护性失败,更有效地防止多任务环境下的非法操作导致的系统崩溃。设备驱动程序是提供访

问连接到计算机上的硬件的软件接口,用户应用程序只需以一种规范的方式访问硬件,而不必

考虑如何控制硬件。

Windows2o00(NT5.0)操作系统采用Win32驱动程序模型(即WDM--Win32DriverMode1)。

其设备驱动程序用于管理实际数据传输和控制特定类型物理设备的操作。它包括开始和完成I/0

操作,处理中断和执行特定设备要求的任何差错处理。

WindowsNT操作系统结构分为用户态模式和内核态模式。设备驱动程序工作于操作系统的

内核态,是操作系统的信任部分,所以开发的驱动程序代码要安全可靠,否则很容易破坏系统

的稳定性。

2设备驱动程序的原理

设备驱动程序的原理组成包括:初始化、创建和删除设备、处理Win32打开和关闭文件句

柄的请求、处理Win32输入/输出请求、串行化对设备的访问、访问硬件、访问其他驱动程序等。

个驱动程序完成一个或多个设备驱动,每个设备代表一个实际或虚拟硬件的实例。驱动

程序必须为它所管理的每个可能成为I,O请求的目标进行物理和逻辑上Device设备对象创建。

用户态程序和内核通过设备对象来访问驱动程序的设备。驱动程序由一系列相对独立的函数例

程组成,由I/O管理器根据需要调用这些函数例程。其中的初始化入El点例程是DriverEntryO

例程,驱动程序装入的时候,内核调用DriverEntryO例程。DriverEntry0例程除了必要的设备初

始化工作外,还初始化分发例程入口,这些分发例程用于处理来自Win32应用程序的请求。驱

动程序除了DriverEntry0以外,主要就是由如下分发例程组成的。部分例程说明如下:

DriverEntry0驱动程序入口点,用于定位硬件资源,建立初始化指针等

XxUnload0驱动程序卸载之前,释放占用的所有系统资源

XxIsr0中断服务程序

XxDpcForlsrO中断服务程序后处理程序,以排队方式执行

35—

您可能关注的文档

文档评论(0)

177****9497 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档