 When a file write occurs, the cached page for the particular block is looked up.If it is already found in the page cache, the write is done to that page in the main memory.If it is not found in the page cache, then, when the write perfectly falls on page size boundaries, the page is not even read from disk, but allocated and immediately marked dirty.