| 開発者 | ヨーン・エンゲル、プラサド・ジョシ |
|---|---|
| 他の | |
| サポートされている オペレーティングシステム | リナックス |
| Webサイト | logfs.org/logfs/ ( Wayback Machineより) (2010-06-16 アーカイブ) |
LogFSは、 Linuxの ログ構造化されスケーラブルな フラッシュファイルシステムであり、フラッシュメモリの大容量デバイスでの使用を目的としています。Jörn Engel [1]によって作成され、 CE Linux Forumによって部分的に支援されています。
LogFSは、2010年5月16日にリリースされたバージョン2.6.34でメインラインLinuxカーネルに導入されました。2016年12月のバージョン4.10のマージウィンドウで、コードベースから削除されました。これは、「何年もメンテナンスされておらず、使用されていないように見えた」ためです。[2]
歴史
2008 年 11 月の時点で[アップデート]、LogFS はテスト スイート全体に合格するほど成熟しており、その後、2010 年 5 月 16 日にリリースされたバージョン 2.6.34 で、「実験的」とマークされてメインライン Linux カーネルに組み込まれました。ただし、大規模なユーザー ベースを獲得することはできず、2016 年 12 月にカーネルから削除されました。
手術
LogFS は、JFFS2 が大容量のフラッシュ メモリ ドライブで問題を抱えていることをきっかけに開発されました。LogFS はドライブにinode ツリーを保存しますが、JFFS2 は保存しません。JFFS2 では、マウント時にドライブ全体をスキャンし、ツリー全体を RAM にキャッシュする必要があります。大容量のドライブの場合、スキャンに数十秒かかり、ツリーがメイン メモリを大量に消費することがあります。LogFS はこれらのペナルティを回避しますが、システムの実行中に作業量が増え、inode ツリーを保持するためにドライブのスペースの一部を使用します。
LogFS はファイルの inode ツリーをドライブに保存します。つまり、ファイルへの書き込み時に、ツリー内の各祖先ノードを書き換える必要があります。これは、「ワンダリング ツリー」更新によって行われます。ツリー内の最下位ノード (つまり、データ) が最初に書き込まれ、ルート inode が更新されるまで、各ノードがツリーを上方向に書き込まれます。ルートを最後に書き込むことで、更新のアトミック性が維持されます。
フラッシュメモリ ブロックは消去の単位であり、通常はファイル システム ブロックよりも大きくなります。LogFS は、複数のファイル システム ブロックを 1 つのフラッシュ メモリ ブロックにまとめることでこの差異を処理します。フラッシュ メモリ ブロックの末尾にある「合計」エントリには、そこに保存されているデータが記録されます。フラッシュ メモリ ブロックのすべてのファイル システム ブロックが移動または削除されると、そのブロックを消去して新しいデータに使用できます。
フラッシュメモリ ドライブのピーク使用率では、フラッシュメモリ ブロックが有用なデータでいっぱいになるようにデータを圧縮する必要があります。これは、ガベージ コレクションによって実現されます。LogFS のガベージ コレクション戦略は、ファイル データが特定の方法でフラッシュメモリ ブロックに配置されることを前提としています。つまり、フラッシュメモリ ブロックには、inode ツリーの同じレベルのファイル データのみが保持されます。LogFS は、1 つの空のフラッシュメモリ ブロックだけを使用して、ツリーの最上位レベルのガベージ コレクションを実行できます。2 つの空のフラッシュメモリ ブロックを使用して、ツリーの最上位 2 レベルのガベージ コレクションを実行できます。また、N 個の空のフラッシュメモリ ブロックを使用して、ツリーの N レベルすべてに対してガベージ コレクションを実行できます。このアルゴリズムは最悪の場合指数関数的に時間がかかりますが、最悪のケースはまれであり、アルゴリズムでは少数のフラッシュメモリ ブロックを予約するだけで済みます。
参照
参考文献
- ^ Jörn Engel、Robert Mertens (2005-09-18)。「LogFS - ついにスケーラブルなフラッシュファイルシステムが誕生」(PDF)。
{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)が必要です - ^ Jonathan Corbet (2016-12-21). 「4.10 Merge window part 2」 . 2020-06-02閲覧。
何年もメンテナンスされておらず、使われていないと思われていた logfs ファイルシステムがカーネルから削除されました。
外部リンク
- logfs.org/logfs/ ( Wayback Machineより) (2010-06-16 アーカイブ)
- LogFS の紹介 (ビデオ)
