LDD高级字符驱动程序操作-异步通知
来源:互联网 发布:分级聚类算法 编辑:程序博客网 时间:2024/04/28 03:02
异步通知:
1,作用:对一个文件描述符能够进行无阻塞操作的时候,发送异步通知到想要的进程,如果为多个文件由于无法辨识某个文件标识符,所以需要使用poll , select ,epoll,所以异步通知是poll,select,epoll的补充技术;
2,异步通知:linux内核实现,通过异步通知标志位设置是否发送异步通知,FASYNC;
a,当设置文件描述符的异步通知位的时候内核会调用文件描述符对应的模块的异步通知方法fasync(struct file *filp, /*?????*/);设置异步通知,fasync是作为文件描述对应模块的file_operations 异步通知函数指针分量被内核调用的;
b,当某一操作能够无阻塞执行的时候,文件描述符对应模块会发送异步通知SIGIO给owner进程做相应的无阻塞操作,对于发送操作为;kill_fasync(/*?????*/);
c,当文件描述符对应模块不使用异步通知时,一定要在release file_operations release函数指针分量对应函数中将其对异步通知的设置删除,也及时从异步通知队列中删除;
3,用户空间:a,设置文件描述符的owner进程pid
b,设置异步通知标志位;
c,设置异步通知处理函数,void (*signal(int , void (*sig_handle)(int)))(int);
0 0
- LDD高级字符驱动程序操作-异步通知
- 【Linux 驱动】第六章 高级字符驱动程序操作----异步通知
- Linux设备驱动程序学习(6)-高级字符驱动程序操作[(4)异步通知fasync]
- 高级字符驱动程序操作之异步通知IO(理论篇)
- 高级字符驱动程序操作之异步通知IO(实践篇)
- 高级字符驱动程序操作之异步通知IO(实践篇)基于内核2.6.35-30
- 高级字符驱动程序操作之异步通知IO(实践篇)基于内核2.6.35-30
- Linux设备驱动程序第三版学习(8)- 高级字符驱动程序操作(续3)- 异步通知
- Linux设备驱动程序第三版学习(8)- 高级字符驱动程序操作(续3)- 异步通知 .
- LDD高级字符驱动程序-poll,epoll,select
- 高级字符驱动程序操作
- 字符设备驱动程序——异步通知
- 字符设备驱动程序之异步通知
- 字符设备驱动程序之异步通知
- 其它高级字符驱动程序操作
- LDD - Ch05-字符设备驱动程序的扩展操作(转载)
- 深入浅出LDD-6-异步通知
- 高级字符驱动程序操作 -- 基本读写功能
- 进程间的通信方式
- Android studio 导入jar包,导入arr 库 ---- 详细操作
- 关于context
- js如何处理前台传递过来的Map
- java对象的控制访问权限
- LDD高级字符驱动程序操作-异步通知
- bzoj1968 COMMON约数研究
- 必知知识
- 数据库Oracle与Mysql语法对比:组函数的嵌套使用
- Spring MVC 01 - Spring MVC框架介绍
- 自制Lex-词法分析器生成器(C++)
- 面向对象设计七大原则
- 认识计算机
- Android开发必须知道的链接资源