In computing, the File Alteration Monitor, also known as FAM and sgi_fam, provides a subsystem developed by Silicon Graphics for Unix-like operating systems. The FAM subsystem allows applications to watch certain files and be notified when they are modified. This greatly aids the applications, because before FAM existed, such applications would have to read the disk repeatedly to detect any changes, which resulted in high disk and CPU usage.
For example, a file manager application can detect if some file has changed and can then update a displayed icon and/or filename.
The FAM system consists of two parts:
famd
— the FAM Daemon, which provides notifications and listens for requests. Administrators can configure it by editing the file /etc/fam.conf
libfam
— the interface to the clientAlthough FAM may seem unnecessary now that many newer kernels include built-in notification support (inotify in Linux, for example), using FAM provides two benefits:
The main problem with FAM is that during the creation of a large number of files (for example during the first login in a desktop environment) it slows down the entire system, using many CPU cycles.