I read a couple of questions ( here ) related to this, but I still have confusion.
I understand that a write system call puts data in a Buffered Cache (OS caches as pointed out in this question). When the Buffered Cache full, it is written to disk.
Buffered IO is another optimization. It is cached in C RTL buffers and when it receives the full write system call issued to move the contents to the Buffered Cache . If I use fflush , then the data associated with this particular file, which is present in C RTL buffers , as well as Buffered Cache , is sent to disk.
Do I understand correctly?
source share