最適ページ置換アルゴリズム R : ページ(自然数)の集合 a : ページの列 定義1: PFA(R, a) : アルゴリズムAで,初期 集合Rからアクセス系列aを実行したときに 発生するページ置換の数 定義2: LP(S, a) :要素がSの元であるaの接 頭辞(prefix)で最長のものの長さ 命題 PFOPT(R1, a) PFA(R2, a) + LP(R2 – R1, a) R1 R2 これが証明されればR1 = R2として, PFOPT (R, a) PFA(R, a) を得る 場合わけ 最初のアクセスによって場合わけ a1 R1 R2 a1 a1 a1 Case a1 R1 R2 PFOPT(R1, a) = PFOPT(R’1, a’) PFA(R2, a) = PFA(R’2, a’) LP(R2 – R1, a) = LP(R’2 – R’1, a’) 帰納法の仮定 • PFOPT(R’1, a’) PFA(R’2, a’) + LP(R’2 – R’1, a’) PFOPT(R1, a) = PFOPT(R’1, a’) R1 PFA(R’2, a’) + LP(R’2 – R’1, a’) PFA(R2, a) + LP(R2 – R1, a) a1 R2 Case a1 R1 – R2 Page outされたページをyとする • R1’ = R1 • R2’ = R2 + { a1 } – { y } R2’ – R1’ = R2 – R1 + { a1 } – { y } R1 R2 a1 R1 R2 a1 y Case a1 R1 – R2 PFOPT(R1, a) = PFOPT(R’1, a’) PFA(R2, a) = PFA(R’2, a’) + 1 LP(R2 – R1, a) LP(R’2 – R’1, a’) 帰納法の仮定 • PFOPT(R’1, a’) PFA(R’2, a’) + LP(R’2 – R’1, a’) PFOPT(R1, a) R1 = PFOPT(R’1, a’) a1 PFA(R’2, a’) + LP(R’2 – R’1, a’) PFA(R2, a) – 1 + LP(R2 – R1, a) PFA(R2, a) + LP(R2 – R1, a) R2 Case a1 R2 – R1 Page outされたページをxとする • R1’ = R1 + { a1 } – { x } • R2’ = R2 R2’ – R1’ = R2 – R1 – { a1 } + { x } R1 R2 a1 R1 R2 x a1 以下の二つは容易 • PFOPT(R1, a) = PFOPT(R’1, a’) + 1 • PFA(R2, a) = PFA(R’2, a’) 中心命題 • LP(R2 – R1, a) = LP(R’2 – R’1, a’) + 1 LP(R2 – R1, a) = LP(R’2 – R’1, a’) + 1 … a1 R2 – R1, とくに R1 これがxでないことをいえばよい 実際, R1で,xはa中最も出現の遅いR1の元である. PFOPT(R1, a) = PFOPT(R’1, a’) + 1 PFA(R2, a) = PFA(R’2, a’) LP(R2 – R1, a) = LP(R’2 – R’1, a’) + 1 以上より, PFOPT(R1, a) = PFOPT(R’1, a’) + 1 (PFA(R’2, a’) + LP(R’2 – R’1, a’)) + 1 = PFA(R2, a) + LP(R2 – R1, a) Case a1 R1, a1 R2 Page outされたページをx, yとする • R1’ = R1 + { a1 } – { x } • R2’ = R2 + { a1 } – { y } • x R2 : R2’ – R1’ = R2 – R1 – { y } + { x } a1 R1 R2 x y PFOPT(R1, a) = PFOPT(R’1, a’) + 1 PFA(R2, a) = PFA(R’2, a’) + 1 LP(R2 – R1, a) LP(R’2 – R’1, a’) • 証明は前のcaseと同様.ただしa1 R2 なので,右辺の + 1 がない 帰納法の仮定 • PFOPT(R’1, a’) PFA(R’2, a’) + LP(R’2 – R’1, a’) PFOPT(R1, a) = PFOPT(R’1, a’) + 1 PFA(R’2, a’) + LP(R’2 – R’1, a’) + 1 PFA(R2, a) – 1 + LP(R2 – R1, a) + 1 = PFA(R2, a) + LP(R2 – R1, a)
© Copyright 2025 ExpyDoc