1

ライトバック モードでは、inode データのみがジャーナルに書き込まれ、ファイル データがいつ書き込まれるかは制御されません。

この行は、通常の場合にデータがデバイスに書き込まれるタイミングと、データが失われるタイミングを考えさせられました。

Writeback モードでは、ジャーナリングの直後にデータをデバイスに強制的に書き込むオプションはありますか?

また、ライトバックモードオーダーモードはこれだけで区別されるのでしょうか?

4

1 に答える 1

3

詳しく説明しない場合、クエリの答えはイエスです (少なくとも ext3 のようなファイルシステムでは)。どちらのモードでも、ファイルシステムのメタデータのみがジャーナルに書き込まれます。ライトバック モードと順序付きモードの違いは、順序付きモードではメタデータのみがログに記録されるのに対し、順序付きモードではメタデータがログに記録される前にデータ ブロックがディスクに書き込まれるように、ファイルシステムがメタデータと相対データ ブロックをグループ化することです (& データ ブロックは、全て)。

ii. 実装の観点から (ext3 に関して)、順序付きモードでは、ページ内のデータのすべてのバッファーで追加の関数 journal_dirty_data( ) が呼び出され、アクティブなトランザクションの適切なリストにバッファーが挿入されます。JBD レイヤーは、トランザクションのメタデータ バッファーの前に、このリスト内のすべてのバッファーがディスクに書き込まれるようにします。その後、generic_commit_write( ) 関数が呼び出され、所有者 i ノードのダーティ バッファーのリストにデータ バッファーが挿入されます。ライトバック モードでは、journal_dirty_data( ) のような関数はデータ バッファーに対して呼び出されず、generic_commit_write( ) のみが呼び出されます。

于 2012-11-02T20:11:35.997 に答える