История изменений
Исправление vbr, (текущая версия) :
FSYNC должен гарантировать, что данные записались физически в нужные секторы диска. Для этого в протоколах SATA/NVME/SCSI имеются специальные команды, которые операционная система посылает, когда приложение вызывает fsync.
Конечно диску ничего не мешает игнорировать эти команды, как и любые другие команды, включая твои фантазии про упорядочивание (например он может всё записывать в DRAM-кеш, а потом выбирать понравившиеся куски и переносить их на диск, игнорируя fsync и любой порядок, и всё во имя производительности), но это уже вопрос философский - называть ли такое устройство исправным или нет. С точки зрения компьютера всё, что он мог сделать для сохранения данных - он сделал.
Исправление vbr, :
FSYNC должен гарантировать, что данные записались физически в нужные секторы диска. Для этого в протоколах SATA/NVME/SCSI имеются специальные команды, которые операционная система посылает, когда приложение вызывает fsync.
Конечно диску ничего не мешает игнорировать эти команды, как и любые другие команды, включая твои фантазии про упорядочивание, но это уже вопрос философский - называть ли такое устройство исправным или нет. С точки зрения компьютера всё, что он мог сделать для сохранения данных - он сделал.
Исходная версия vbr, :
FSYNC должен гарантировать, что данные записались физически в нужные секторы диска. Для этого в протоколах SATA/NVME/SCSI имеются специальные команды, которые операционная система посылает, когда приложение вызывает fsync.
Конечно диску ничего не мешает игнорировать эти команды, как и любые другие команды, включая твои фантазии про упорядочивание, но это уже вопрос философский - называть ли такое устройство исправным или нет.