ロムフス

ロムフス
他の
サポートされているオペレーティングシステムUnix系システム

ROMFS(Read-Only Memory File System)は、読み取り専用メモリ、特に電気的に消去可能なプログラマブル読み取り専用メモリEEPROM )や類似のROMメディアにファイルを格納するために設計された、最小限の読み取り専用コンピューティングファイルシステムです。サイズが小さく設計がシンプルなため、システムリソースが限られているデバイスでよく使用されます。Linuxカーネルバージョン2.1.21 [ 1 ]以降に組み込まれており、適切なサポートがあれば他のUnix系システムにも実装できます。[ 2 ]

使用法

ROMFSは、ブートプロセス中にロードできるカーネルモジュールや重要なシステムファイルを含む初期ROMまたは初期RAMディスクとしてよく使用されます。 [ 3 ]実装には最小限のコードしか必要ないため、組み込みシステムやブートフロッピーに適しています。[ 4 ] ROMFSの主な利点は、カーネルのサイズを縮小できることです。(モジュールを除く)[ 5 ]

技術的な詳細

ROMFSは連続したブロックにファイルを順番に保存します。ファイルシステムのレイアウトの説明はLinuxカーネルのソースツリーに記載されており、LXR romfs.rstからアクセスできます。[ 6 ] ROMFSは変更日時やUNIXのようなパーミッション を保存しません。[ 7 ]

制限事項

ROMFSは16バイト境界に整列したデータで動作しますが、ほとんどのハードウェアは1024バイト境界に整列したデータで動作します。[ 8 ]その結果、ファイルシステムにパディングが必要になります。

プラットフォームのサポートとツール

Linuxカーネルのサポートとは別に、 ニコライ・アレクサンドロフはROMFSイメージを抽出して操作するためのオープンソースツールであるromfser(ROMFS Extractor/Reader)を開発した。これは主にネイティブROMFSサポートを含まないBSDファミリーのオペレーティングシステムを対象としている。 [ 9 ]もう1つのツールはgenromfsで、これはROMFSファイルシステムを作成するためのユーザープログラムである。[ 10 ]

参考文献

  1. ^ 「romfs情報」
  2. ^ 「ROMFS - ROMファイルシステム」 . Linuxカーネルドキュメント. 2025年8月14日閲覧
  3. ^ 「これはまさにLinuxカーネルのRomFSが行うことですか?」 Stack Overflow 。 2025年8月14日閲覧
  4. ^ Yaghmour, Karim (2003).組み込みLinuxシステムの構築. O'Reilly Media. ISBN 978-0596002220
  5. ^ 「ROMFS - ROM ファイルシステム」
  6. ^ 「ROMFSファイルシステムレイアウト」 . LXR Cross Referencer . 2025年8月14日閲覧
  7. ^ 「romfs情報」
  8. ^ 「ROMFS - ROM ファイルシステム」
  9. ^ "romfser GitHubリポジトリ" . 2025年8月14日閲覧
  10. ^ 「ROMFS - ROM ファイルシステム」