poll_wait新的理解
来源:互联网 发布:windows错误恢复都不行 编辑:程序博客网 时间:2024/06/08 14:19
应用程序使用 select() 或 poll() 调用设备驱动程序的 poll() 函数,该函数把输入输出复用处理的等待队列追加到由内核管理的进程的 poll_table()上。此时,poll() 函数上传递的参数包括含有设备文件信息的 struct file 结构体的指针参数 struct file *filp ,以及追加到设备驱动上的 poll_table结构体指针参数 poll_table *wait 。使用这两个参数,然后通过poll_wait()函数,在内核上注册输入输出复用条件。poll_wait() 函数表示如下:
关于应用程序中 poll() 的返回值 :
应用程序中调用 select() 和 poll() 函数, 使进程进入睡眠之前,内核先检查设备驱动程序上有无对应事件的状态,此时可通过查看 poll() 函数的返回值获得相关信息.
能够在返回值上使用的宏变量有以下组合:
POLLIN, POLLPRI, POLLOUT, POLLERR, POLLHUP, POLLNVAL, POLLRDNORM, POLLRDBAND, POLLWRNORM, POLLWRBAND, POLLMSG, POLLREMOVE
这些值中使用最多的是下面几个组合:
#include <linux/poll.h>
static inlinevoidpoll_wait (structfile*filp,wait_queue_head_t*wait_address,poll_table*P);
关于应用程序中 poll() 的返回值 :
应用程序中调用 select() 和 poll() 函数, 使进程进入睡眠之前,内核先检查设备驱动程序上有无对应事件的状态,此时可通过查看 poll() 函数的返回值获得相关信息.
能够在返回值上使用的宏变量有以下组合:
POLLIN, POLLPRI, POLLOUT, POLLERR, POLLHUP, POLLNVAL, POLLRDNORM, POLLRDBAND, POLLWRNORM, POLLWRBAND, POLLMSG, POLLREMOVE
这些值中使用最多的是下面几个组合:
- POLLIN | POLLRDNORM 表示可读
- POLLOUT | POLLWRNORM 表示可写
- POLLERR 表示出错
来源:http://blog.csdn.net/gtkknd/article/details/7229576
- poll_wait新的理解
- poll_wait新的理解
- poll_wait新的理解
- poll_wait新的理解
- 理解poll_wait
- 理解poll_wait
- 转载_理解poll_wait
- [个人推荐]理解poll_wait
- select 和poll函数调用驱动的poll->poll_wait 理解
- select 和poll函数调用驱动的poll->poll_wait 理解
- do_select()函数分析,理解select(),poll(),poll_wait()函数的关系
- select 和poll函数调用驱动的poll->poll_wait 理解
- [转]do_select()函数分析,理解select(),poll(),poll_wait()函数的关系
- 产生新的理解
- VIEW新的理解
- APP新的理解
- 指针的新理解
- 对测试的新理解
- 联想g505进入BIOS界面,没有config选项,怎么办?
- Goasm 使用对话框,消息处理函数
- Linux top 解析
- win7 64位 安装32位oracle10G 的方法
- 二:Lucene的总体架构
- poll_wait新的理解
- Unrecognized Windows Sockets error: 0: JVM_Bind 异常解决办法
- 投影矩阵和模型视角矩阵
- Linux makefile 教程 非常详细,且易懂
- 在 Java servlet外部 获取WEB-INF 路径
- VS2012配置Qt5.1.0环境心得体会
- 各种排序算法整理
- EI收录的外文期刊(计算机类)
- Edit自动换行