The write back cache defers I/O data operations in the page cache. A set or kernel threads, called flusher threads, are responsible for that. Dirty page write back occurs when any one of the following situations is satisfied:
- When free memory falls below a specified threshold to regain memory consumed by dirty pages.
- When dirty data lasts until a specific period. The oldest data is written back to the disk to ensure that dirty data does not remain dirty indefinitely.
- When a user process invokes the sync() and fsync() system calls. This is an on-demand write back.