キャッシュの相互関係

linuxはバッファキャッシュとページキャッシュという大きなデータキャッシュを持つ。

通常のファイルデータのアクセスはページキャッシュを通して行われる。

ローカルディスク用のファイルシステムでの場合、ディレクトリエントリキャッシュ, iノードキャッシュは、バッファキャッシュの上に位置している。 ディスク上のiノード情報をアクセスするにはまずバッファキャッシュ上に読み込み、そのうち必要なデータをiノードキャッシュ上にコピーし、アクセスする。

img32.gif

参考 v2.2では、read処理はページキャッシュであったがwrite処理はバッファキャッシュ経由であったため、二つのデータキャッシュを持っているが、整合性がとる必要があり、バッファキャッシュとページキャッシュの更新処理時にキャッシュ間のデータコピーを行うことでその問題を回避していた。


(NIS)HirokazuTakahashi
2000年12月09日 (土) 23時55分06秒 JST
1