Re[4]: mmap асинхронная запись
От: valuea  
Дата: 31.07.14 20:25
Оценка:
Здравствуйте, watchmaker, Вы писали:
W>В первую очередь, зачем вообще тебе нужно соблюдать порядок записи? Почему бы не оставить эту задачу на усмотрение ОС?
Ну задачка очень простая. Файл содержит две вресии данных и заголовок, который определяет какая версия данных является актуальной. Версии данных по очереди периодически обновляются и указатель в заголовке переключается на новую актуальную версию. Соответсвенно если в первую очередь изменится указатель на версию данных, а во время записи данных произойдет ошибка, соответственно указатель будет указывать на версию с ошибочными данными, и определить эту ситуацию никак нельзя, CRC не вычислить — объем данных слишком большой. Соответсвенно всегда нужно: сначала гаранитрованно выполнить сохранение новой версии данных, затем переключить указатель в заголовке. В принципе указатель можно переключать и асинхронно.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.