摘要:
poll函数的定义如下:int poll(struct pollfd *fds, nfds_t nfds, int timeout);其中的参数类型pollfd的定义如下:struct pollfd { int fd; short events; short revents;};poll系统调用对应的内核中的代码为sys_poll,整体的流程是先把用户想知道的事件从用户内存弄到内核空间中来。然后调用文件的poll函数来监听对应的事件。如果在指定的时间内发生了,那么就要通知用户态的进程了。为了更清楚地阅读代码,先来看涉及到的数据结构,poll_wqueues用来保存发生的... 阅读全文