Artikel bagus tentang sistem file flash.
Pertanyaan penting saat berbicara tentang sistem file flash adalah sebagai berikut:Apa itu leveling keausan? artikel Wikipedia. Pada dasarnya, pada flash disk Anda dapat menulis beberapa kali hingga blok menjadi buruk. Setelah itu, sistem file (jika tidak ada manajemen leveling keausan bawaan pada perangkat keras, seperti dalam kasus SSD biasanya ada) harus menandai blok tersebut sebagai tidak valid, dan menghindari penggunaannya lagi.
Filesystem tipikal (misalnya ReiserFS, NTFS, ext3, dan seterusnya) dirancang untuk hard disk, yang tidak memiliki batasan seperti itu.
JFFS2
Termasuk kompresi dan perlindungan perataan keausan yang elegan.
YAFFS2
- Satu hal yang membuat perbedaan:waktu pemasangan singkat, setelah umount berhasil.
- Mengimplementasikan properti tulis sekali:setelah data ditulis ke satu blok, tidak perlu menulis ulang. Ini penting, karena mengurangi keausan.
LogFS
- Tidak terlalu matang, tetapi sudah termasuk dalam pohon kernel Linux.
- Mendukung sistem file yang lebih besar daripada JFFS2/YAFFS2 tanpa masalah.
UBIFS
- Lebih matang dari LogFS
- Menulis dukungan caching
- Tentang skalabilitas:artikel. Pada disk besar, performa lebih baik dibandingkan dengan JFFS2
ext4
Jika tidak ada driver atau kartu (misalnya drive SSD yang memiliki perataan keausan internal, setidaknya biasanya) yang menangani perataan keausan, maka ext4 bukanlah ide terbaik, karena tidak dimaksudkan untuk penggunaan flash mentah.
Mana yang terbaik?
Tentu saja, itu tergantung pada penggunaan dan dukungan. Dari apa yang saya baca di Internet, saya akan merekomendasikan UBIFS. Dukungan yang baik untuk sistem file besar, fase pengembangan yang matang, kinerja yang memadai, dan tidak ada kerugian besar.
Saya menghadapi masalah yang sama dan melakukan penelitian juga. Akhirnya saya memutuskan untuk menggunakan ext2.
Tampaknya beberapa kartu SDHC mengimplementasikan penyamarataan keausan mereka sendiri di lapisan perangkat keras. Jika Anda dapat memperoleh kartu SDHC yang memiliki bawaan penyamarataan.
Sistem file yang menyediakan penyamarataan keausan dapat mengganggu penyamarataan tingkat Flash sehingga benar-benar buruk bagi flash untuk menggunakannya (artikel IBM yang dikutip di atas berbicara tentang bagaimana JFFS melakukannya, jadi jelas bahwa itu tidak akan berfungsi dengan flash level WL). Saya memutuskan bahwa saya tidak memerlukan penjurnalan ext3 karena saya tidak menyimpan data penting di dalamnya dan saya biasanya mencadangkan secara teratur (cron).
Saya juga memasang /tmp dan /var sebagai tmpfs untuk mempercepat. Jika Anda memiliki cukup RAM, Anda harus melakukannya (namun pastikan untuk memutar atau menghapus log Anda secara teratur)
PETUNJUK:Pasang kartu SD ext Anda dengan opsi "noatime"