FSEvents

The FSEvents API in macOS allows applications to register for notifications of changes to a given directory tree. Whenever the filesystem is changed, the kernel passes notifications via the special device file  to a userspace process called. This process combines multiple changes to a single directory tree that occur within a short period of time, then notifies applications that have registered for changes to the affected directory.

Until Mac OS X 10.7, FSEvents did not "watch" the filesystem, such as Linux's inotify: the API provided no notifications for changes to individual files. An application was able to register to receive changes to a given directory, and had to determine for itself which file or files were changed.

Mac OS X 10.7 (Lion) added the ability to register for file modification notifications.