驱动程序中的POLL程序模版
static unsigned int XXX_poll(struct file *f,poll_table *wait)
{
unsigned int msk=0;
....
poll_wait(f,&wait_head,wait); //将本进程加入到对应的等待队列中去
if(可读)
mask |=POLLIN;
if(可写)
mask |=POLLOUT;
....
return mask;
}
应用程序条用过程:
app_poll 用户层
do_poll