Linux块设备驱动(2) 块驱动中相关相关模块模板
1.块设备驱动的模块加载与卸载
1)块设备驱动的模块加载完成的工作如下:
Ø 分配,初始化请求队列,绑定请求队列和请求函数
Ø 分配,初始化gendisk,给gendisk的major,fops,queue等成员赋值,最后添加gendisk.
Ø 注册块设备驱动.
代码1:使用blk_alloc_queue函数完成块设备驱动的模块加载模板
static int __init xxx_init(void){
//分配gendisk
xxx_disks = alloc_disk(1);
if(!xxx_disks){
goto out;
}
//块设备驱动注册
if(register_blkdev(xxx_MAJOR, "xxx"){
err = -EIO;
goto out;
}
//"请求队列"分配
xxx_queue = blk_alloc_queue(GFP_KERNEL);
if(!xxx_queue){
goto out_queue;
}
blk_queue_make_request(xxx_queue, &xxx_make_request);//绑定"制造请求"函数
blk_queue_hardsect_size(xxx_queue,xxx_blocksize);//告知内核硬件扇区尺寸
//gendisk初始化
xxx_disks->major = xxx_MAJOR;
xxx_disks->first_minor = 0
相关文档:
USB是大家常见的,设备总线。 这个USB分为两个部分:主机,设备。 他是一个树形的关系: 主机
设备 设备 设备 主机里装的是,主机控制器,设备中装的是设备控制器 Host Controller ......
这是别人,我只是稍改
1、将文件checkout到本地目录
svn checkout path(path是服务器上的目录)
例如:svn checkout svn://192.168.1.1/pro/domain
简写:svn co
2、往版本库中添加新的文件
svn add file
例如:svn addtest.php(添加test.p ......
(1)简述:在编译好了的ANDROID根文件系统的system/etc/pointercal这个文件内,存放着7个数,这7个数就是《linux的触摸屏之一》所讲的a,b,c,d,e,f,s。比如我在自己的MID上查看的数值为:4933 -5 -15710176 -95 -4961 56071328 65536。
(2)处理说明:“system/etc/pointercal”这个文件是被java程序读取使用的 ......
http://www.ibm.com/developerworks/cn/linux/l-cn-memleak/ 介绍了基本的测试类型和原理
http://blog.csdn.net/rufeng18/archive/2008/11/17/3322099.aspx
http://www.ibm.com/developerworks/cn/linux/l-pow-debug/
http://xueyueming.blog.163.com/blog/static/60411785200981045547110/
http://zhangyafeikimi.java ......