之前实现了逻辑任务调度功能,并把整个管理框架搭好,现在开始研究实现文件监控功能。
文件监控一直是Linux的一个弱项,windows有很好的消息机制,实现起来很方便。
之前的Linux如果不想用轮询的方法,那只能用dnotify,但是性能和可操作性都很差。好在2.6.13以后的内核支持了dnotify的替代者——inotify,基于它来实现linux文件监控变得容易了许多,更重要的是性能上的提高。
inotify有一套对C的API,方便C程序开发使用。
网上也有封装好的工具,inotify-tools就是经典代表。它就是直接用C封装的一套命令行工具箱,方便shell以及脚本使用。
使用方法很简单,参考官方网站:http://inotify-tools.sourceforge.net/
其中最有用的要数inotifywait命令,这里有详细用法:http://linux.die.net/man/1/inotifywait
接下来要研究怎么较好的把该功能整合到之前的架构中。。。