![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
驱动
android_hasen
这个作者很懒,什么都没留下…
展开
-
Hasen的linux设备驱动开发学习之旅--支持轮询操作的设备驱动
/** * Author:hasen * 参考 :《linux设备驱动开发详解》 * 简介:android小菜鸟的linux * 设备驱动开发学习之旅 * 主题:支持轮询操作的设备驱动 * Date:2014-11-05 */原创 2014-11-07 14:20:50 · 1146 阅读 · 0 评论 -
Hasen的linux设备驱动开发学习之旅--阻塞与非阻塞I/O
/** * Author:hasen * 参考 :《linux设备驱动开发详解》 * 简介:android小菜鸟的linux * 设备驱动开发学习之旅 * 主题:增加了并发控制的设备驱动程序 * Date:2014-11-04 */ 阻塞操作是指在执行设备操作时,若不能获得资源,则挂起进程直到满足可操作的条件后再进行操作。被 挂起的进程进入休眠状态,被从调度原创 2014-11-05 15:13:00 · 1343 阅读 · 0 评论 -
Hasen的linux设备驱动开发学习之旅--简单字符驱动实例globalmem
/** * author:hasen * 参考 :《linux设备驱动开发详解》 * * [1]分配和释放设备号: * 分配函数: * (1)int register_chrdev_region(dev_t from,unsigned int count,const char *name) ; * 用于已知起始设备的设备号的情况 * (2)int alloc_chrdev原创 2014-10-30 17:55:36 · 1070 阅读 · 0 评论 -
Hasen的linux设备驱动开发学习之旅--增加了并发控制的设备驱动程序
/** * Author:hasen * 参考 :《linux设备驱动开发详解》 * 简介:android小菜鸟的linux * 设备驱动开发学习之旅 * 主题:增加了并发控制的设备驱动程序 * Date:2014-11-04 */#define GLOBALMEM_SIZE 0x1000 /*全局变量大小:4KB*/#define ME原创 2014-11-04 16:49:11 · 867 阅读 · 0 评论 -
Hasen的linux设备驱动开发学习之旅--使用文件私有数据的字符设备驱动
/** * author:hasen * 参考 :《linux设备驱动开发详解》 * * 使用文件私有数据的globalmem设备驱动实例 */#include #include #include #include #include #include #include #include #include #include #include #define原创 2014-10-31 09:50:20 · 1060 阅读 · 0 评论 -
Hasen的linux设备驱动开发学习之旅--支持多设备的字符设备驱动
/** * author:hasen * 参考 :《linux设备驱动开发详解》 * * 支持两个设备的字符设备驱动 *//*globalmem设备文件打开函数*/int globalmem_open(struct inode *inode ,struct file *filp){ /*将设备结构体指针赋值给文件私有数据指针*/ struct globalmem_dev原创 2014-10-31 10:17:55 · 895 阅读 · 0 评论 -
Hasen的linux设备驱动开发学习之旅--linux设备驱动中的并发与竞态
/** * author:hasen * 参考:《linux设备驱动开发详解》 */1、并发与竞态并发(concurrency)指的是多个执行单元同时、并行被执行,而并发的执行单元对共享资源(软件上的全局变量,静态变量等)的访问则很容易导致竞态(race conditions).主要的竞态发生在以下几种情况:(1)对称多处理(SMP)的多个CPU(2)单CPU内进程原创 2014-11-04 15:35:46 · 1124 阅读 · 0 评论 -
linux中file_operations结构体详解
/** * author:hasen * 参考:《linux设备驱动开发详解》和sunsea1026的CSDN博客 * 作用:方便自己参考查阅 */struct file_operations{ struct module *owner //第一个 file_operations 成员根本不是一个操作; 它是一个指向拥有这个结构的模块的指针. 这个成员用来在它的操作还在被使用时阻止模原创 2014-10-30 16:19:24 · 3506 阅读 · 0 评论 -
Hasen的linux设备驱动开发学习之旅--时钟
/** * Author:hasen * 参考 :《linux设备驱动开发详解》 * 简介:android小菜鸟的linux * 设备驱动开发学习之旅 * 主题:时钟 * Date:2014-11-13 */原创 2014-11-15 10:13:19 · 1264 阅读 · 0 评论 -
Hasen的linux设备驱动开发学习之旅--中断
/** * Author:hasen * 参考 :《linux设备驱动开发详解》 * 简介:android小菜鸟的linux * 设备驱动开发学习之旅 * 主题:中断与时钟 * Date:2014-11-11 */原创 2014-11-13 17:20:38 · 1492 阅读 · 0 评论 -
Hasen的linux设备驱动开发学习之旅--异步I/O
linux中最常用的输入/输出(I/O)模型是同步I/O。在这个模型中,请求发出后,应用就会阻塞,知道请求满足为止。但是在某些情况下,I/O请求可能需要与其他的进程进行交叠。可移植操作系统接口(POSIX)异步I/O(AIO)应用程序接口(API)就提供了这种功能。 AIO基本思想是允许进程发起很多的I/O操作,而不用阻塞或者等待任何操作完成。稍后或在接受到I/O操作完成的通原创 2014-11-11 10:24:50 · 1339 阅读 · 0 评论 -
Hasen的linux设备驱动开发学习之旅--异步通知
/** * Author:hasen * 参考 :《linux设备驱动开发详解》 * 简介:android小菜鸟的linux * 设备驱动开发学习之旅 * 主题:异步通知 * Date:2014-11-05 */原创 2014-11-10 18:46:50 · 1210 阅读 · 0 评论 -
Hasen的linux设备驱动开发学习之旅--支持阻塞的设备驱动
/** * Author:hasen * 参考 :《linux设备驱动开发详解》 * 简介:android小菜鸟的linux * 设备驱动开发学习之旅 * 主题:支持阻塞的设备驱动 * Date:2014-11-05 *//** * 现在实现这样一个设备,globalfifo,只有当FIFO中有数据的时候(即有进程把数据写入了FIFO * 而且没有被读进程原创 2014-11-05 17:23:44 · 869 阅读 · 0 评论