macOSのFSEvents APIを使用すると、アプリケーションは特定の ディレクトリツリーへの変更通知を登録できます。[1]ファイルシステムが変更されるたびに、カーネルは特別なデバイスファイルを介して通知をユーザー空間プロセスに渡します。このプロセスは、短時間内に発生した単一のディレクトリツリーへの複数の変更を統合し、影響を受けるディレクトリへの変更を登録しているアプリケーションに通知します。[2] /dev/fseventsfseventsd
Mac OS X 10.7までは、FSEventsはLinuxのinotifyのようにファイルシステムを「監視」していませんでした。APIは個々のファイルの変更に関する通知を提供していなかったのです。アプリケーションは特定のディレクトリへの変更を受信するように登録することができ、どのファイルが変更されるかを自身で判断する必要がありました。[3]
Mac OS X 10.7(Lion)では、ファイル変更通知を登録する機能が追加されました。[4]
参照
参考文献
- ^ 「開発者向けLeopardテクノロジーシリーズ:OSの基礎」2007年10月26日. 2008年8月21日閲覧。
- ^ 「ファイルシステムイベントプログラミングガイド:ファイルシステムイベントAPIの使用」2012年12月13日。 2017年10月13日閲覧。
- ^ "FSEvents.h -- FSEventStreamCallback". 2011年5月5日. 2011年5月4日時点のオリジナルよりアーカイブ。 2011年8月16日閲覧。
- ^ 「FSEventsリファレンス - kFSEventStreamCreateFlagFileEvents」 。 2017年10月13日閲覧。
外部リンク
- Mac OS X 10.5 Leopard:Ars Technicaのレビュー(7ページ)