気になった事を自由に書いてます。
      
ネイティブ イメージ ジェネレータ (Ngen.exe)を調べてみた
まず.NET アプリケーションがどのように動作するところからおさらいしてみる。
ソースコードを書き、Microsoft Visual Studio でビルドを行う。すると実行ファイルが
生成されます。これは一見コンピュータが認識できるマシン語で構成されたファイルに見えるが
実際は中間コードです。このままではコンピュータは実行できないので中間コードを
コンパイルしてコンピュータが理解できるネイティブコードに変換する必要があります。
一度、ネイティブコードに変換した処理はキャッシュに残るので2回目以降の呼び出しは
1回目に比べ処理時間がかかりません。

ネイティブ イメージ ジェネレータ (Ngen.exe)を調べてみた

このネイティブコードは一時的なもので、プロセスを終了すると残りません。
EXEを起動しなおすとネイティブコードを作りなおす必要があります。

Ngen.exe は予め中間コードをネイティブイメージに変換しキャッシュにしまっておくことで
1回目からキャッシュに格納しているネイティブなコードを利用することができます。
中間コードをコンパイルしてネイティブコードに変換する時間が省けるため、
その分処理時間が短縮できる。このキャッシュはハードディスク上に存在しているため、
プロセスを終了しても残ってます。

 参考:
 http://msdn.microsoft.com/ja-jp/library/6t9t5wcf(v=vs.80).aspx
 http://msdn.microsoft.com/ja-jp/library/vstudio/hh691756.aspx
      






Copyright (C) 2011 - 2017 猫の気ままなC#日記