Сколько времени занимает UBIFS для синхронизации файла с флэш - PullRequest
3 голосов
/ 25 июля 2011

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

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

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

Спасибо.

Ответы [ 2 ]

3 голосов
/ 08 сентября 2011

Интересное чтение: 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_background_ratio - максимальный объем грязных данных в процентах от общего объема памяти. Когда количество грязных данных становится больше, периодический поток обратной записи начинает синхронизировать его, пока он не станет меньше. Даже не просроченные данные будут синхронизированы. Это может быть использовано для установки «мягкого» ограничения на количество грязных данных в системе.

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

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

1 голос
/ 26 июля 2011

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

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

...