XMS
BIOS・VRAM等が用いる、A0000h – FFFFFh(PC/AT互換機やPC-98ノーマルモードの場合。PC-98ハイレゾリューションモードやFMR・FM TOWNSの場合はC0000h – FFFFFh)の空き領域にRAMを割り当てて利用するもの。
このメモリ空間は1メガバイト以内に収まっていることから、リアルモードおよび仮想86モードにおいて通常通りにアクセスすることができるため、デバイスドライバの読込用やソフトの実行・常駐用等に使用できる。MS-DOSバージョン5.0以降であればMS-DOS標準付属の仮想メモリマネージャ (EMM386.EXE) がUMBを含むメモリ管理を統合しており、文字通りCPUが80386以降の場合に限られるものの、MS-DOSの機能としてUMBを用いることができる。
2でEMBとUMBが追加され、 ver.3でEMBが64MB以上のメモリに対応し、UMBも1個機能が追加された。
なお、XMSという用語はメモリ領域を指す言葉の他に、それらの領域を管理するファンクションコールを意味する言葉としても使用された。例えば「このメモリマネージャーは、EMSの他、XMSもサポートする」のように使用された場合には、ファンクションコールを意味する。
またHMAとEMBに関するファンクションコールを提供するデバイスドライバは、プロテクトメモリBIOS等の機種依存部分を吸収する役割も担っていた。XMSドライバ が提供するHMAとEMBファンクションコールを利用するお陰で、Windows 3.xは、プロテクトメモリBIOSの直接呼出し等と、A20ラインのハードウェア制御という機種依存処理を回避することが出来た。(WindowsとXMS)。
80286以降のCPUのプロテクトメモリ領域の内、HMAより上位の10FFF0h以降のメモリ領域をEMBと呼ぶ。
XMSドライバは、EMBに関してメモリ領域の空メモリサイズの取得、EMBの割当、解放、ロック、アンロック等のファンクションコールを提供するので、DOSエクステンダやWindows 3.x のスタンダードモード・エンハンストモード等、プロテクトモードを使用できるプログラムは、XMSドライバのファンクションコールを利用すれば、機種依存する処理を記述することなくプロテクトメモリを利用できた。
EMB領域はプロテクトモードでないとアクセスできないので、一般のMS-DOSアプリケーションは直接アクセスできないが、XMSドライバは、EMB同士またはEMBと任意のコンベンショナルメモリ領域とのブロック転送を行うファンクションコールも提供したので、リアルモード専用のプログラムでもXMSドライバを使用すれば、EMB領域を利用できた。