2011-03-14 4 views
1

可能性の重複:
What exactly happens when you run a .NET executable (step by step to the point where the program is loaded and running)?.NETでコンパイルしたときに実行ファイルに含まれるものは何ですか?

私はちょっとCIL、CLI、CLRの観点で失われています...私はコンパイル時に作品を処理する方法を知っていることを愛し、私を実行します応用。

まず、アプリケーションはCILに変換されます。これは実行可能ファイルに含まれるバイトコードですか?私は.NETアプリケーションを実行するための簡単なステップバイステップの説明にとても感謝しています。

答えて

4

概要はhereです。

基本的に、アプリケーションをコンパイルすると、CIL(以前はMSILとして知られていたバイトコード)にコンパイルされます。これはあなたの.Net dllに含まれているもので、ILDASMやReflectorのようなツールを使ってこのバイトコードを見ることができます。

実行時にJust-In-Timeコンパイラ(JIT)はこれをあなたのマシンに固有の実際の実行可能コードにコンパイルします。実際、NGenというツールを使ってネイティブイメージを "あらかじめコンパイル"して、DLLに実際にネイティブコードが含まれるようにすることができますが、これは手作業であり、ほとんどのシナリオでは行われません。

+0

私のマシン、つまりマシンコードにネイティブ? – Mocco

+0

はい - プロセッサ固有のマシンコード。 –

+0

ありがとうございます。ちょうどもう一つのqustion、あなたはDLLを言った...それはexeと同じですよね? – Mocco

関連する問題