嵌入式的设计及Linux驱动开发指南 基于ARM9处.docVIP

  • 1
  • 0
  • 约9.96千字
  • 约 18页
  • 2018-06-03 发布于福建
  • 举报

嵌入式的设计及Linux驱动开发指南 基于ARM9处.doc

嵌入式的设计及Linux驱动开发指南 基于ARM9处

《嵌入式设计及Linux驱动开发指南 基于ARM9处 第七章 Linux设备驱动程序开发  1、 设备驱动的任务包括:  1) 自动配置和初始化子程序。这部分程序仅在初始化的时候被调用一次。  2) 服务于I/O请求的子程序。这部分是系统调用的结果。在执行这部分程序的时候,系统仍认为和进行调用的进程属于同一个进程,只是由用户态变成了核心态,并具有进行此系统调用的用户程序的运行环境,所以可以在其中调用sleep()等与进程运行环境有关的函数。  2、 设备类型分类:  1) 字符设备(char device)。字符设备是Linux最简单的设备,可以向文件一样访问。    初始化字符设备时,它的设备驱动程序向Linux登记,并在字符设备向量表中增加一个device_struct数据结构条目,这个设备的主设备标识符用作这个向量表的索引。一个设备的主设备标识符是固定的。chrdevs向量表中的每一个条目,一个device_struct数据结构,包括两个元素:一个登记的设备驱动程序的名称的指针和一个指向一组文件操作的指针。参见include/linux/major.h。  2) 块设备(block device)。是文件系统的物质基础,它也支持像文件一样被访问。    Linux用blkdevs向量表维护已经登记的块设备文件。它像chrdevs向量表一样,使用设备的主设备号作为索引。它的条目

文档评论(0)

1亿VIP精品文档

相关文档