В системе Linux у меня есть один 7 МБ фрагмент памяти фиксированного размера (без увеличения), содержимое которого я обновляю в приложении реального времени.
Мне нужно записывать этот кусок памяти на диск (один и тот же файл) один раз в секунду.
С учетом современных (на конец 2011 года) процессоров и жестких дисков, каков наиболее эффективный способ реализации этой функции? Меня не волнует, действительно ли запись занимает некоторое время, но, поскольку это приложение реального времени, мне нужно как можно скорее вернуться к работающему приложению.
Какие методологии мне следует попробовать?
Моя базовая линия - это стандартный базовый цикл fopen (), двоичный цикл fwrite (), fclose ().
Я прочитал, что mmap () может быть полезным. Может быть асинхронный ввод / вывод? Существуют ли другие методологии, которые я должен сравнивать? Как вы считаете, какая методология будет наиболее быстрой?