第4章 设备驱动 — 《Vxworks设备驱动开发详解》
  • ·  文件类别: 电子书
  • ·  图书作者:华清远见
  • ·  全书章节:共11章
  • ·  文件类型:PDF
  • ·  文件体积:0.39M
  • ·  发布时间:2013-06-14
  • 本章介绍

            简单地说,驱动程序就是设置某个硬件完成其固有功能的程序,如网卡设备驱动程序就是设置网卡相关寄存器,使其能够正常收发网络数据包的程序。驱动程序直接与硬件设备交互,其大多数的工作就是操作硬件相关寄存器。
            首先,寄存器也是一种RAM,在系统下电后,寄存器中的内容都会丢失,系统上电复位过程中,硬件寄存器一般都复位到一个默认值,默认状态下,硬件是不能正常工作的,如中断使能被屏蔽,工作使能位也被屏蔽,还有一些决定硬件工作情况的关键控制寄存器也需要被重新配置。而这些工作都有赖于设备驱动的完成。驱动一般都作为操作系统内核组成的一部分,即便现在很多系统支持驱动的动态加载,但是驱动代码在执行时,依然是以内核代码模式进行执行的。换句话说,驱动代码具有系统特权级,除了其自身资源对应的硬件设备资源,其还对操作系统资源具有完全的访问权。所以,一个驱动程序如果存在BUG,将直接会导致整个操作系统的崩溃。故调试驱动是一项十分关键的工作,必须对驱动进行仔细检查,并需要经受长时间的运行考验。应用层程序员往往对属于内核编程的外设驱动心存敬畏,认为驱动编程是一项非常复杂的工作。实际上,底层驱动编程往往比应用层编程具有更大的灵活性,就如没有调试不出来的硬件,也没有调试不出来的底层驱动,但是应用层BUG有时就是无法调试出来。底层驱动的调试过程是同时对硬件和驱动进行验证的过程。底层驱动很多时候用来定位硬件设计错误或者硬件芯片本身可能的问题,故底层驱动程序员必须对所要驱动的硬件设备有一个比较充分的了解,以及对与硬件交互的其他硬件或外界环境也需要有一个比较清楚的理解。

  • 相关资料

    ·《Vxworks设备驱动开发详解》- -第1章 VxWorks嵌入式操作系统的特点与应用
    ·《Vxworks设备驱动开发详解》- -第2章 VxWorks操作系统的基本组件
    ·《Vxworks设备驱动开发详解》- -第3章 VxWorks操作系统启动过程详解
    ·《Vxworks设备驱动开发详解》- -第5章 VxWorks下设备驱动的内核结构层次
    ·《Vxworks设备驱动开发详解》- -第6章 VxWorks设备驱动之字符设备驱动详解

  • 相关课程推荐

    ·VxWorks应用开发培训班
    ·VxWorks BSP开发高级班