マネージコードとは
「マネージコード」は、Microsoft®Coprorationによって作成された用語です。 この用語は、使用するために共通言語ランタイム(CLR)仮想マシンの使用を必要とするプログラムコードを指します。 「アンマネージコード」という用語は、この仮想マシンを必要としないプログラムコードを指すために使用されます。
共通言語ランタイムは、プログラムコードを変更することなく、さまざまなコンピューターやオペレーティングシステムでプログラムを実行できるようにするために開発されました。 これを行うには、コンピュータープログラムコードを仮想マシンのバイトコードに変換します。 次に、このバイトコードはCLR仮想マシンによって解釈され、実行中の特定のコンピューターのバイトコードに変換されます。
マネージコードは、CLR仮想マシンが搭載されている任意のコンピューターで実行できます。 この高度な移植性により、アンマネージコードよりも決定的な利点が得られます。 アンマネージコードでは、プログラマーが異なるマシンで使用するためにプログラムコードを変更する必要があります。 このプロセスは遅くなるだけでなく、多くのアプリケーションエラーにつながる可能性があります。
マネージコードのもう1つの利点は、セキュリティが強化されていることです。 アンマネージコードで作成されたプログラムのセキュリティは、プログラマーが作成した実装に大きく依存しています。 CLR仮想マシンを使用すると、セキュリティ問題の大部分をプログラマの負担から取り除くことができます。 発生する可能性のあるセキュリティ問題の大部分は、仮想マシン自体に直接集中しています。 これ自体が問題の集中化に役立ち、セキュリティパッチの実装がはるかに迅速になります。
特定のコードセットがマネージコードかアンマネージコードかは、コンピュータープログラマーにとって非常に重要です。 マネージコードには高度な移植性がありますが、この移植性には、共通言語ランタイムがターゲットコンピューターにインストールされている必要があります。 一方、アンマネージコードは、CLRを追加せずに実行できます。
マネージコードの使用には多くの利点がありますが、いくつかの欠点もあります。 主な欠点は、CLR仮想マシンの使用に必要なオーバーヘッドです。 マネージコードの実行速度とアンマネージコードの速度の差はほとんど無視できますが、場合によっては、アプリケーションの応答時間に非常に顕著な差が生じます。 その結果、移植性よりも高度な速度を必要とするほとんどのアプリケーションでアンマネージコードが重要な役割を果たします。