课程设计实验报告_基于Linux的字符设备驱动程序的设计.docVIP

  • 19
  • 0
  • 约1.37万字
  • 约 25页
  • 2016-01-23 发布于贵州
  • 举报

课程设计实验报告_基于Linux的字符设备驱动程序的设计.doc

课程设计实验报告_基于Linux的字符设备驱动程序的设计

基于Linux的字符设备驱动程序的设计 1 选题意义 驱动程序在 Linux 内核里扮演着特殊的角色. 它们是截然不同的黑盒子, 使硬件的特殊的一部分响应定义好的内部编程接口. 它们完全隐藏了设备工作的细节. 用户的活动通过一套标准化的调用来进行,这些调用与特别的驱动是独立的; 设备驱动的角色就是将这些调用映射到作用于实际硬件的和设备相关的操作上. 这个编程接口是这样, 驱动可以与内核的其他部分分开建立, 并在需要的时候在运行时插入. 这种模块化使得 Linux 驱动易写, 以致于目前有几百个驱动可用. 尽管编写设备代码并不一定比编写应用程序更困难,但它需要掌握一些新函数库,并考虑一些新问题,而这些问题是在应用程序空间里不曾遇到的。在应用程序空间写程序,内核能够为犯的一些错误提供一张安全网,但当我们工作在内核空间时,这张安全网已不复存在。因为内核代码对计算机有绝对的控制权,它能够阻止其他任何进程的执行,所以编写的设备代码绝对小心不能滥用这种权利。 在 Linux 设备驱动中,字符设备驱动较为基础,所以本次实验设计一个简单的字符设备驱动程序,然后通过模块机制加载该驱动,并通过一个测试程序来检验驱动设计的正确与否,并对出现的问题进行调试解决。 2 技术路线 模块实际上是一种目标对象文件(后缀名为ko ),没有链接,不能独立运行,但是其代码可以在运行时链接到系统中作为内核的一部分运行或从

文档评论(0)

1亿VIP精品文档

相关文档