マネージコード
出典: フリー百科事典『ウィキペディア(Wikipedia)』
.NET Frameworkにおいてマネージコード (managed code)とは、共通言語基盤 (CLI)に準拠した仮想マシン上で実行される命令(コード)のことである。
これに対してマネージコード以外のコードはアンマネージコード (unmanaged code)やネイティブコード (native code)と呼ばれる。
[編集] マネージコードの実行
マネージコードのプログラムは通常C#やVB.NETといった人間が書きやすい言語で書かれ、CILにコンパイルされる。
コードが実行される際、CILはVESで実行環境に依存した機械語にコンパイルされる。このコンパイルはマネージ実行環境のコンパイラによってなされるので、マネージ実行環境はコードが何をしようとしているのかを完全に知ることができる。故にガベージコレクションのフックや例外処理、型安全性の保証、配列境界のチェックなどを行うことができる。
これは古典的にJITコンパイルと言われる手法である。しかし多くのJITコンパイラと違い、仮想マシンが機械語に変換する擬似機械語が格納されたファイルは環境依存の機械語(x86やPowerPCなど)をも含むことができる。これはアップルのユニバーサルバイナリの考えに似ている。