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