4 ms·
For this ... Any successful read() from each byte position in the file that was modified by that write shall return the data specified by the wr
by nwatson 9y ago
For this ...
Any successful read() from each byte position in the file that was
modified by that write shall return the data specified by the write()
... perhaps I can re-open() and re-read() the same byte value written by another process for the same file, but the file contents may not have been fully flushed all the way to disk. The file contents may be "durable" across processes on the same running OS that mount the same filesystem ... but if the OS happens to die before the data is flushed, then perhaps after reboot the open()/read() will return an older value previously written.
The semantics of "durability" are a squishy concept.
- aidenn0 9y agoyes, the term "durable" was perhaps a poor choice of words, but the paragraph that followed made it clear that they were aware of the specific requirements (specifically mentioning making dirty caches available to all processes)
- AstralStorm 9y agoYou can actually do that with mmap and if you want shm. (Mmap works on files well.) Of course then you have to deal with all the dirt yourself.
- dom0 9y agoDurable has a very specific meaning for I/O and is just not correct here. POSIX does intentionally not specify any durability at all (e.g. a no-op fsync is explicitly permitted).
- dullgiulio 9y agoAnd in practice it is close to that, due to cheating hardware with a cache.