驱动开发学习笔记.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
驱动开发学习笔记 1 很久没有网了,出了一段时间的差,近来,莫名的就有点郁闷!前不久在大富翁上发了 一份帖子是关于 delphi 程序员的发展,大家的反应并不都是很好。于是开始觉得可以 考虑换个方向。以前我是做 MIS 开发的。换哪个方向呢?人越多的方向,好像越是没 有前途。想想当初上大学,那可是越多人考的学校,学费越贵啊!可现在的职业呢?越 多人干的事,越是没有前途了。考虑来考虑去,决定学习一下驱动程序的开发吧!于是 从网上查找了一些资料, 看的懂的觉得蛮不错适合我这种小学生的就贴了出来,算是学 习笔记吧! 用户模式与内核模式 从 Intel80386 开始,出于安全性和稳定性的考虑,该系列的 CPU 可以运行于 ring0~ring3 从高到低四个不同的权限级, 对数据也提供相应的四个保护级别。 运行 于较低级别的代码不能随意调用高级别的代码和访问较高级别的数据, 而且也只有运行 在 ring0 层的代码可以直接对物理硬件进行访问。由于 WindowsNT 是一个支持多平 台的操作系统,为了与其他平台兼容,它只利用了 CPU 的两个运行级别。一个被称为 内核模式 ,对应 80x86 的 ring0 层,是操作系统的核心部分,设备驱动程序就是运行 在该模式下;另一个被称为 用户模式 ,对应 80x86 的 ring3 层,操作系统的用户接口 部分(就是我们通常所说的 win32 API )以及所有的用户应用程序都运行在该级别。 操作系统对运行在内核模式下的代码是不设防的, 所以不管是建设还是破坏内核模式下 的编程都是值得去研究的。 图 1-WIN2000 系统的分层结构 在物理硬件与系统核心之间有一个硬件抽象层( HardwareAbstractionLayer ),它 屏蔽了不同平台硬件的差异, 向操作系统的上层提供了一套统一的接口。从图中我们还 可以看到,设备驱动程序( DeviceDriver )是被 I/O 管理器 (I/OManager) 包围起来 的,即驱动程序与操作系统上层的通信全部都要通过 I/O 管理器。 这给驱动程序的编写 带来了很大的便利,因为很多诸如接收用户的请求、与用户程序交换数据、内存映射、 挂接中断、同步等等麻烦的工作都由 I/O 管理器代劳了。 驱动程序的分类 驱动程序并不像所有人想的那样一定要和硬件打交道,我粗略的把他分为两类:硬驱动 和软驱动。 硬驱动就是对硬件直接编程进行控制, 这类驱动通常必须遵守硬件的通信协 议,直接对硬件进行端口访问、中断响应、 DMA 传输。它包括:串、并行口,键盘, 文件系统, SCSI ,网络等驱动程序;另外一种软驱动呢?不需要直接对硬件就行操作。 我认为他可以理解为它是在硬驱动之上的一层更为高级的驱动。 我想学习的主要是软驱 动。 一般来说,设备驱动程序的任务主要有两个:第一,接受来自用户程序的读写请求,把 用户的数据传送给设备,或把从设备接收到的数据传送给用户;第二,轮询设备或处理 来自设备的中断请求,完成数据传输。 驱动程序的结构 在这里,我主要介绍 WDM 的结构。WDM(Windows driver module) 是什么东西呢? 在 Windows98\95 下面,也许你听得最多的是 VXD ,我只知道 VXD 是一种驱动程序, 和 WDM 差不多的东西。 只是因为 Windows2000 是 WindowsNT 那条线过来的东西, 要加上两个主要的新功能: 即插即用 (Plug and Play )和电源管理 (Power Me

文档评论(0)

二哥 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档