Raspberry Pi財団は2025年8月14日、Raspberry Pi OSイメージのSDカードやeMMCへの書き込み時間を大幅に短縮する新技術を発表した。新しく開発された「fat2simg」ツールと既存の「bmap」形式の組み合わせにより、従来と比べて約24%の書き込み時間短縮を実現している。
現在配布されているRaspberry Pi OS Liteの64ビット版イメージ(2025年5月13日版)は、展開後のサイズが2632MiBとなっているが、実際にディスク容量を使用しているのは1643MiBで、全体の62.4%にすぎない。残りの約3分の1は「空の領域」となっており、この無駄な領域が書き込み時間の延長とストレージの摩耗を引き起こしていた。
同財団は2つの技術的アプローチでこの問題を解決した。1つ目は「bmap」サポートの強化だ。Raspberry Pi OSのイメージビルダー「pi-gen」にbmapサポートを追加し、イメージファイル内の重要な情報を含むブロックと省略可能なブロックを記録する「.bmap」ファイルを生成する。2025年5月13日版のLiteイメージでは、全体の23.8%にあたる627MiBのブロックを省略でき、書き込み時間の大幅短縮につながっている。
実際の使用例では、「bmaptool」を使用して64ビットLiteイメージを32GBのRaspberry Pi SDカードにコピーする際、書き込み時間は1分17秒、書き込み速度は毎秒26MiBを記録した。
2つ目の解決策が新開発の「fat2simg」ツールだ。このツールはAndroid sparse形式のFAT32ディスクイメージを作成し、従来の4096バイト単位ではなく512バイト単位の細かい粒度で動作する。File Allocation Tableを直接読み取り、使用中のクラスターと廃棄可能なクラスターを正確に判別することで、より効率的な書き込みを実現している。
同財団の検証では、40MiBのFAT32パーティションにおいて、従来のbmap形式では336KiBの書き込みが必要だったが、Android sparse形式では4.5KiBまで削減できた。さらに、圧縮サイズもxz圧縮で従来の7.1Kから1.1Kまで小さくなっている。
fat2simgは産業用途のセキュアブート環境でも活用されており、「rpi-sb-provisioner」と組み合わせることで、FAT ramdisk(boot.img)の最適化によるブート時間短縮も実現している。関連ツールの「rpi-make-boot-image」も更新され、可能な限り小さなramdiskを作成できるようになった。
これらのツールは現在、Raspberry Pi OSリポジトリでパッケージ化されて提供されており、GitHubでもfat2simg、rpi-make-boot-image、rpi-sb-provisionerのソースコードが公開されている。同財団では、これらのツールが愛好家から産業用途まで幅広い用途で活用され、FATファイルシステム使用時の機能向上に貢献することを期待していると述べている。
Trimming the FAT: Flash Raspberry Pi OS images faster – Raspberry Pi