Szukałem w całym Internecie, w tym na wielu forach StackExchange, praktycznej metody defragmentacji systemu plików JFFS2 i nie mogę znaleźć odpowiedzi.
System ma 256 MB pamięci flash NAND. Jest dostępny jako urządzenie MTD, które jest podzielone na trzy partycje. Trzecia partycja to miejsce, w którym główny system plików jest przechowywany jako system plików JFFS2. Problem polega na tym, że zapisy w głównym systemie plików mają wydajność niedeterministyczną ze względu na zwykłe problemy z czyszczeniem JFFS2, które decyduje o uruchomieniu w najgorszym możliwym czasie. Gdy tak się stanie, produkt jest zawieszony na pewien nieznany czas, podczas gdy garbage collector (i pdflush) działają.
Zmiana systemu plików nie wchodzi w grę. Rozwiązaniem musi być coś, co może działać poza godzinami pracy, a po uruchomieniu skutkuje bardziej przewidywalną wydajnością zapisu. Obecnie pracuję nad programem, który będzie próbował wymusić uruchomienie garbage collectora, a następnie usunąć plik z nadzieją, że wszystkie uwolnione węzły będą nagle łatwiej dostępne i sprawią, że zapisy będą lepsze.
Myśli?