Linux源代码中file_operations函数poll()的用途是什么?

oknwwptz  于 2023-02-03  发布在  Linux
关注(0)|答案(1)|浏览(279)

我不太明白poll()会做什么,即使我试着在Google上搜索它。有没有任何文档与此函数或file_operations中的所有接口相关?

sgtfey8w

sgtfey8w1#

VFS结构file_operations中的poll()方法为(引用kernel vfs documentation):
当一个进程想要检查这个文件上是否有活动时,由VFS调用,并且(可选地)进入睡眠状态直到有活动为止。由select(2)和poll(2)系统调用调用
注意struct包含一个指向签名为__poll_t (*poll) (struct file *, struct poll_table_struct *);的函数的指针。如果我没记错的话,这个(和其他大多数)file_operations方法部分地由特定的文件系统本身(通常在它的file.c或类似的文件系统中)定位(和填充指针),或者由文件系统调用VFS,VFS用底层块/字符设备的特定代码填充它们。

相关问题