软件系统分析与设计07.pptVIP

  • 4
  • 0
  • 约2.44万字
  • 约 96页
  • 2018-02-07 发布于河南
  • 举报
软件系统分析与设计07

LINUX设备驱动 武汉大学计算机学院 郑鹏 Email:pzheng51@163.com 设备驱动 Linux设备管理的主要任务是控制设备完成输入输出操作,所以又称输入输出(I/O)子系统。它的任务是把各种设备硬件的复杂物理特性的细节屏蔽起来,提供一个对各种不同设备使用统一方式进行操作的接口。 设备管理是Linux操作系统管理中最复杂的部分。 设备驱动 要支持某种设备,就必须提供这种设备的控制代码,而要把所有设备的控制代码都写到操作系统内核中,又必然会使内核变得过分庞大以至无法使用。这就提出了一个问题:必须为每种硬件设备提供控制代码,而又不能使操作系统内核过大。解决这个问题的思路是: 把与设备相关的控制代码从内核中分离出来,称这些代码为驱动程序。 在内核与驱动程序之间定义一个统一的接口,双方仅通过这个接口交互信息。 设备驱动 设备驱动程序和内核其余部分的关系: 设备驱动 从内核的角度看,驱动程序是一个设备的代表。 在Linux等操作系统中,所有的设备统一当文件来处理,称为设备文件。和其他文件一样,这种文件可以使用处理文件的标准系统调用打开、关闭和读写。 设备驱动 由于Linux中将设备当作文件来处理,所以对设备进行操作的系统调用和对文件操作的类似,主要包括open()、read()、write()、ioctl()、close()等。 应用程序发出系统调用指令以后,会从

文档评论(0)

1亿VIP精品文档

相关文档