C#程序的編譯和執行


1.在講解 C# 程序的編譯與執行之前,首先了解以下兩個概念,以便充分理解C# 程序的運行。

CLI--Common Language Infrastructure 的簡稱,C# 程序在Microsoft .NET Framework 上運行時,

它是 Windows 的一個必要組件,包括一個稱為公共語言運行庫(CLR,在第1章中對該內容有過詳細講解)的虛擬執行系統和一組統一的類庫。

IL--Intermediate Language 的簡稱,稱為中間語言,又稱為 MSIL。所有Microsoft .NET 源代碼(使用任何語言)被編譯為 IL,

然后在軟件的安裝點上或者運行時,IL 由即時(JIT)編譯器轉換為機器碼。
圖2.1演示了C# 源文件、基類庫、程序集和 CRL 的編譯與執行過程。

第一階段--把 C# 編寫的源文件編譯為一種符合 CLI 規范的中間語言(IL)。IL 代碼與資源(如位圖和字符串)一起作為一種稱為

程序集的可執行文件存儲在磁盤上,通常具有的擴展名為 .exe 或 .dll。

第二階段--執行 C# 程序時,程序集將加載到 CLR 中,這可能會根據清單中的信息執行不同的操作。如果符合安全要求,

CLR 執行即時(JIT)編譯以將 IL 代碼轉換為本機機器語言。CLR 還提供與自動垃圾回收、異常處理和資源管理有關的其他服務。

由 CLR 執行的代碼有時稱為"托管代碼",它與編譯為面向特定系統的本機機器語言的"非托管代碼"相對應。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM