章 4章. 物理メモリと仮想メモリ

今日、汎用コンピュータはすべてプログラム内蔵式コンピュータと呼ばれるものになっています。名前が示す通り、プログラム内蔵式コンピュータは命令(プログラムの構成ブロック)を何らかの内蔵ストレージに読み込み、続いてその命令を実行します。

また、プログラム内蔵式コンピュータはデータにも同じストレージを利用します。ハードウェア構成を使って動作をコントロールするコンピュータと対照的です(旧式の配線盤ベースコンピュータ)。

最初のプログラム内蔵式コンピュータではプログラムが格納される場所にはさまざまな名前が付けられ、陰極線管(ブラウン管)の点から水銀柱の圧力パルスまでさまざまなテクノロジーが使われていました。幸い、今日のコンピュータは記憶容量が大きくサイズはかつてないほど小さい技術が使われるようになっています。

4.1. ストレージのアクセスパターン

この章で注意すべきことは、コンピュータは一定の方法でストレージにアクセスを試みるということです。実際、ほとんどのストレージアクセスは次の属性のいずれか(またはすべて)を示す傾向にあります。

連続的なアクセスとは、CPU がアドレス N にアクセスすると次にアドレスN+1 にアクセスする可能性が非常に高いということです。これはほとんどのコンピュータが次から次へと — 順次 — 実行する複数の命令の広い区画で構成されるからです。

アクセスが局所化するとは、CPU がアドレス X にアクセスするといずれX近辺のアドレスにもアクセスする可能性があるということです。

この属性は非常に重要で、小さく高速なストレージが大容量の遅いストレージを効果的にバッファすることができます。これが仮想メモリを実装する基盤です。仮想メモリについて説明する前に、現在使用されている各種ストレージのテクノロジーを考察する必要があります。