jffs2 gabrage сборщик работает, даже если установлен раздел RO

Я использую раздел JFFS2 в качестве корневого раздела, монтируя его в командной строке (и fstab) как RO. Это Montavista 5.0 linux (2.6.18).

Все работает, за исключением того, что когда linux прибывает в мое приложение, он занят в течение 15 секунд jffs2_gcd_mtd3 с 98% процессорного времени. Это неприемлемо в моем случае.

Я искал код Linux и увидел, что поток GC запускается ТОЛЬКО при монтировании RW, но в моем случае, тем не менее, он запускается!

Я попытался смонтировать его rw и размонтировать послесловие, но...

Спасибо вперед.

ОБНОВЛЕНИЕ: утверждение о демоне GC неверно - я видел его по ошибке. Основной причиной этой проблемы является ОЧЕНЬ ОЧЕНЬ медленная работа JFFS2 по сравнению с YAFFS2, которую я имел ранее. Для сравнения - мое приложение в формате ELF размером 14 МБ было загружено из YAFFS2 за 2-2,5 секунды, а из JFFS2 - около 8 секунд!!! Это заставило меня подумать, что что-то блокирует Linux...

Теперь вопрос si изменился на: что может сделать JFFS2 настолько ЧУВСТВИТЕЛЬНО медленным!?!? Опять раздел установлен RO!

1 ответ

ОК, ответ следующий:
JFFS2 требуется ОЧЕНЬ много времени, чтобы смонтировать раздел 120 МБ - что-то около 10 секунд на ARM5, работающем на частоте 300 МГц. Ничто не помогает здесь - sumtools, размонтировать с помощью R/W (чтобы написать резюме).
Я решил проблему следующим образом:
- не включая ненужное / неиспользуемое пространство в разделы Linux;
- разделив оставшиеся 70 МБ на две части - одну 55 МБ со всеми компонентами Linux, одну - 15 МБ с моим приложением и его файлами.

Это решило проблему. Время около 2-3 с

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