Man*_*san 7 c++ linux inotify linux-kernel fsevents
在Linux中读取文件系统事件,我们大多数人都使用Inotify,它实际上是一个很好的.但它有它的局限性.我必须跟踪我必须观察的所有目录,并为每个目录获取一个inotify描述符.假设我想要监控我的整个系统,它有大约1000万个目录.列出并为inotify API排队它们需要几个小时.它也会吃掉很多记忆.而且我当然不能在/etc/syscntl.conf或/ proc/sys/fs/inotify/max_user_watches中的max_user_watches中指定的目录.
但我们知道每个文件系统事件都由内核监视,我们使用inotify API来注册某些目录修改.但是如何在没有API的情况下直接从内核读取fs事件..?[在Mac OS X中,我可以从/ dev/fsevents读取,同样如果我可以从/ proc或类似的东西读取,那将是很棒的].我已经准备好编写一个内核模块,但请分享一下.