User Mode Linux
表示
User Mode Linux(UML/user-mode-linux)は、Linuxマシンを仮想的に作りだすための仕組みである。
基本構造
UMLのカーネルは、基本的にUML向けにコンパイルされたカーネルに、プログラムローダをくっつけた形に構築されており、Linux上で実行することで、プロセスの中で独立したLinuxが動作する構造となっている。そのため、ホストOSもLinuxであることが前提である。
UMLカーネルは、ディスク資源、メモリ、ネットワークなどホストの資源を一部間借りすることができる。特にディスクは、実際のディスクではなく、イメージファイルをディスクにみせかけることができるようになっている上、本来のイメージファイルに差分ファイルを組み合わせることで、イメージファイルに書き込みを行わずに利用することも可能となっている。そのため、単一イメージを複数のUMLで共有することも可能である。
カーネル作成
UMLのカーネルは、通常配布されているLinuxカーネルに、ビルド時に ARCH=um を指定することで作成可能である。カーネル(ファイル名"linux")とモジュールが作成される。このファイル(linux)を実行すると、UMLが起動する。
ホスト側は、SKAS (Separate Kernel Address Space) を有効にすると(多くのケースで標準で有効)、UML がより高速に動作する[1]。