块设备驱动编写-复高斯分布的数学基础理论

时间:2024-06-28 07:07:27
【文件属性】:

文件名称:块设备驱动编写-复高斯分布的数学基础理论

文件大小:6.48MB

文件格式:PDF

更新时间:2024-06-28 07:07:27

嵌入式 Linux C

12.4 块设备驱动编写 12.4.1 块设备驱动程序描述符 块设备通常指一些需要以块(如 512 字节)的方式写入的设备,如 IDE 硬盘、SCSI 硬 盘、光驱等。 块设备驱动程序描述符是一个包含在中的 blk_dev_struct 类型的数据结 构,其定义如下所示: struct blk_dev_struct { request_queue_t request_queue; queue_proc *queue; void *date; }; 在这个结构中,请求队列 request_queue 是主体,包含了初始化之后的 I/O 请求队列。对 于函数指针 queue,当其为非 0 时,就调用这个函数来找到具体设备的请求队列,这是为具 有同一主设备号的多种同类设备而设的一个域,该指针也在初始化时就设置好。指针 data 是 辅助 queue 函数找到特定设备的请求队列,保存一些私有的数据。 所有块设备的描述符都存放在 blk_dev 表 struct blk_dev_struct blk_dev[MAX_BLKDEV] 中,每个块设备都对应着数组中的一项,可以使用主设备号进行检索。 每当用户进程对一个块设备发出一个读写请求时,首先调用块设备所公用的函数 generic_file_read()和 generic_file_write()。如果数据存在且缓冲区中或缓冲区还可以存放数据, 那么就同缓冲区进行数据交换,否则,系统会将相应的请求队列结构添加到其对应项的


网友评论