Сколько времени занимает UBIFS для синхронизации файла с флэш

Кто-нибудь знает, сколько времени занимает UBIFS, чтобы очистить / синхронизировать файл для прошивки?

Запись происходит через обычную операцию fwrite, и я хотел бы знать, сколько времени прошло до того, как эта запись фиксируется во флэш-памяти, когда не происходит никаких других записей в файл.

Если нет, какой-нибудь способ узнать?

Благодарю.

2 ответа

Решение

Интересное чтение: http://www.linux-mtd.infradead.org/doc/ubifs.html - Ручки обратной записи в Linux

Функции обратной записи можно настроить с помощью вызовов /proc/sys:

  • dirty_writeback_centisecs - как часто поток периодической обратной записи в Linux просыпается и записывает грязные данные. Это механизм, который гарантирует, что все грязные данные попадут на носитель в какой-то момент.

  • dirty_expire_centisecs - период истечения грязных данных. Это максимальное время данных может оставаться грязным. По истечении этого периода он будет перезаписан потоком периодической обратной записи Linux. IOW, поток периодической обратной записи активируется каждые сантисекунды "dirty_writeback_centisecs" и синхронизирует данные, которые были загрязнены "санкционированными" dirty_expire_centisecs "сантисекундами назад.

  • dirty_background_ratio - максимальный объем грязных данных в процентах от общего объема памяти. Когда количество грязных данных становится больше, периодический поток обратной записи начинает синхронизировать его, пока он не станет меньше. Даже не просроченные данные будут синхронизированы. Это может использоваться для установки "мягкого" ограничения на количество грязных данных в системе.

  • dirty_ratio - максимальный объем грязных данных, при котором авторы сначала синхронизируют существующие грязные данные перед добавлением новых. Итак, это "жесткий" предел количества грязных данных в системе.

Таким образом, мы можем настроить время обратной записи.

Это не будет константой - это будет зависеть от множества переменных факторов.

Ты можешь использовать fsync() на файл после записи, и сколько времени это займет.

Другие вопросы по тегам