|
共通中間言語(きょうつうちゅうかんげんご、、略称 : CIL("sil" や "kil" と発音される))は、共通言語基盤 (Common Language Infrastructure、CLI) で定義された最も低水準な人間が解読可能なプログラミング言語であり、.NET FrameworkやMonoにより使用される。CLI互換な実行環境をターゲットとしている言語はCILにコンパイルされる。そのCILはバイトコードスタイルフォーマットであるオブジェクトコードにより組み立てられている。CILはオブジェクト指向なアセンブリ言語であり、完全なスタックベースである。そのバイトコードはネイティブコードに翻訳されるか、仮想機械により実行される。 .NET言語がベータリリースである間、CILはMicrosoft Intermediate Language (MSIL) と呼ばれていた。C#およびCLIの標準化により、現在ではバイトコードは公式にCILと呼ばれる。 ==概要== CLIプログラミング言語のコンパイルにより、ソースコードはプラットフォームやプロセッサ固有のオブジェクトコードではなく、CILコードに翻訳される。CILはCPUやプラットフォームに依存しない命令セットである。従って、CILはWindows上の.NETランタイムやクロスプラットフォームなMonoランタイムのようなCLIをサポートするどんな環境でも動作する。 この性質により、理論的にはプラットフォームやCPUの種類に応じて異なる実行可能ファイルを配布する必要がなくなる。CILコードは安全のため実行時に検証され、ネイティブにコンパイルされた実行可能ファイルよりも優れた安全性と信頼性を提供する。 実行プロセスは以下のようである: # ソースコードはCILに変換される。CILは、CLIにとってはCPUに対するアセンブリと等価なものである。 # さらに、CILはいわゆるバイトコードの形に組み立てられ、アセンブリが生成される。 # CLIアセンブリの実行中、ネイティブコードを生成するためランタイムのJITコンパイラにコードが渡される。このステップを省き事前コンパイルも利用できるが、実行可能ファイルの移植性が犠牲となる。 #ネイティブコードがコンピュータのプロセッサで実行される。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「共通中間言語」の詳細全文を読む 英語版ウィキペディアに対照対訳語「 Common Intermediate Language 」があります。 スポンサード リンク
|