指定したパス以下の変更を検知するのってどうすればいいかな、ということにちょっと興味が湧いたので、調べてみました。 ここでは、Windowsが手元にないのでパスするとして、LinuxとMacOSX(BSD)について触れようと思います。 そもそもOSの検知システムは何があって、Perlからは何でアクセスできるか 以下に対応表を作成しましたので、参照ください。 OS 検知システム Perl binding Linux inotify Linux::Inotify2 BSD系 kqueue IO::KQueue Mac OS X kqueue IO::KQueue Mac OS X FSEvents Mac::FSEvents OSXはBSDベースのUNIX系OSのため、自前のFSEventsだけでなく、KQueueも使用できます。 実装に際しての戦略(生存。。。じゃないよ) おおよそ、以下の2点