0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【chatGPT 対話備忘録】キャッシュ内容の最終状態が変わるFIFUとLRUについて

Posted at

私:

キャッシュ内容最終状態が変わるFIFUとLRUの場合はある?

ChatGPT:

はい、キャッシュ内容の最終状態がFIFOとLRUで異なる場合があります。これは、各アルゴリズムがページ置き換えの基準として使用するルールが異なるためです。

以下に、そのような例を示します。

条件
参照ページ列: 1, 2, 3, 4, 2, 1, 5, 6
ページフレーム数: 3

1. FIFO シミュレーション

ページ参照 キャッシュ内容 ページフォールト
1 1 ○(フォールト)
2 1, 2 ○(フォールト)
3 1, 2, 3 ○(フォールト)
4 2, 3, 4 ○(フォールト)
2 2, 3, 4 ×(ヒット)
1 3, 4, 1 ○(フォールト)
5 4, 1, 5 ○(フォールト)
6 1, 5, 6 ○(フォールト)

最終状態
キャッシュ内容最終状態: [1, 5, 6]

2. LRU シミュレーション

ページ参照 キャッシュ内容 ページフォールト
1 1 ○(フォールト)
2 1, 2 ○(フォールト)
3 1, 2, 3 ○(フォールト)
4 2, 3, 4 ○(フォールト)
2 2, 3, 4 ×(ヒット)
1 1, 3, 4 ○(フォールト)
5 1, 4, 5 ○(フォールト)
6 4, 5, 6 ○(フォールト)

最終状態
キャッシュ内容最終状態: [4, 5, 6]

FIFOとLRUで最終状態が異なる理由

FIFO:

最も古くキャッシュに入ったページを追い出します。
この例では、4 がキャッシュから追い出され、1, 5, 6 が最終的に残りました。

LRU:

最も最近使用されていないページを追い出します。
この例では、1 がキャッシュから追い出され、4, 5, 6 が最終的に残りました。

結論

キャッシュ内容の最終状態が異なる場合は、ページ置き換えアルゴリズムのルール(順序 vs 使用頻度)によるものです。この違いにより、LRUは時間的局所性を考慮し、FIFOは単純な順序に基づく挙動を示します。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?