オーバーレイ(Overlay)とは、何かの表面を薄く覆うこと(あるいは覆うもの)を意味する。コンピュータの分野での専門用語として、以下のようなものがある。 オーバーレイの説明図 (en:Overlay (programming)) 使用可能なアドレス空間以上の大きさのプログラムを動作可能にするプログラミング手法である。 オーバーレイでは、コードも、ある時点で必要なコードのみをアドレス空間上に置く。他のコードが必要になったら、それまで別のコードが置かれていたメモリ上の領域に必要なコードをロードして使用する。 仮想記憶をサポートする以前のコンピュータシステムでは、このような手法で実装している主記憶装置の容量以上の大きさのプログラムを実行した。オーバーレイは仮想記憶と違って透過的ではなく、プログラマが明示的に指定してやる必要があった。 CPUのアドレス空間上の主記憶と、外部の二次記憶で構成した方