poll和select
时间:2006-09-10 来源:skater
如果当前不可读,那么在sys_poll->do_poll中当 前进程就会睡眠在等待队列上,这个等待队列是由驱动程序提供的(就是poll_wait中传入的那个)。当可读的时候,驱动程序可能有一部分代码运行了 (比如驱动的中断服务程序),那么在这部分代码中,就会唤醒等待队列上的进程,也就是之前睡眠的那个,当那个进程被唤醒后do_poll会再一次的调用驱 动程序的poll函数,这个时候应用程序就知道是可读的了。
相关阅读 更多 +