- 5
- 0
- 约 77页
- 2017-01-22 发布于湖北
- 举报
2014.4 北京交通大学 电子信息工程学院 Linux设备驱动-2 设备驱动-2 混杂设备驱动介绍 设备驱动程序的内核支持 设备驱动的内核框架 设备树文件 I2C子系统介绍 I/O空间寄存器访问 混杂设备驱动 混杂设备misc 混杂设备驱动 混杂设备子系统 混杂设备驱动 miscdevice 混杂设备驱动 声明一个混杂设备很简便 混杂设备驱动 混杂设备驱动 混杂设备驱动 udev自动建立设备节点 混杂设备驱动 Misc设备驱动框架 设备驱动-2 混杂设备驱动介绍 设备驱动程序的内核支持 设备驱动的内核框架 设备树文件 I2C子系统介绍 I/O空间寄存器访问 设备驱动程序的内核支持 驱动程序常用的内核支持 申请内存 用户空间内存访问 锁定共享资源 定时服务 中断服务和推后处理 常用函数库、宏定义、数据类型、链表操作 子系统api .. .. .. 设备驱动程序的内核支持 内存管理 申请内存(物理地址连续) kmalloc, kzalloc(清零), devm_kzalloc(内核管理的分配;设备/模块移除时自动释放) 设备、驱动和框架结构体专门分配函数(内部调用kzalloc ) 例如:cdev_alloc(), cdev_del() 释放内存 kfree vmalloc申请内存(虚拟地址空间连续、物理地址不连续) MMU按4kB页整数倍分配内存,linux可以按SLAB方式分配
原创力文档

文档评论(0)