6.Linux块设备驱动的初始化
1.块设备注册函数 在块设备的注册和初始化阶段,与字符设备驱动类似,块设备驱动要注册他们自己到内核,申请设备号。
int register_blkdev(unsigned int major,const char *name);
major参数是块设备要使用的主设备号; name为设备名,他会在/proc/device中,如果major为0,内核会自动分配一个新的主设备号; register_blkdev()函数的返回值就是这个主设备号,返回一个复制,表明发生错误了。 2.注销函数
int unregister_blkdev(unsigned int major,const char *name);
3.块设备初始化代码 在块设备驱动初始化过程中,通常需要完成分配请求队列、初始化请求队列,绑定请求队列和请求处理函数的工作,并且可能会分配gendisk,初始化gendisk,给gendisk的major
共有 0 条评论