基本介紹
- 中文名:受控代碼
- 外文名:managed code
- 方法:以CLI虛擬機執行
- 學科:計算機
受控代碼的執行,受控代碼和非受控代碼,通用語言架構,通用語言運行庫,
受控代碼的執行
一般以較易為人所理解的程式語言來為受控代碼環境撰寫程式,具代表性的程式語言為C#、J#、C++或Visual Basic .NET。
執行代碼時,運行庫編譯器(runtime-aware compiler)在受控執行環境下,將中間語言(Intermediate Language)編譯成本機的機器碼。受控執行環境可為代碼插入垃圾回收、異常處理、類型安全、陣列邊界和索引檢查等,以保證代碼安全的執行。
這正是即時編譯(Just-in-time compilation)的手法。不同的是,檔案中除了保存假機器碼,同時也可包含提供給不同機器(如x86和PowerPC)的已編譯執行碼。類似於蘋果的通用執行碼格式的概念。
受控代碼和非受控代碼
通用語言架構
通用語言基礎架構(Common Language Infrastructure,簡稱CLI)是一個開放的技術規範。它是由微軟聯合惠普以及英特爾於2000年向ECMA倡議的。通用語言基礎架構定義了構成.NET Framework基礎結構的可執行碼以及代碼的運行時環境的規範,它定義了一個語言無關的跨體系結構的運行環境,這使得開發者可以用規範內定義的各種高級語言來開發軟體,並且無需修正即可將軟體運行在不同的計算機體系結構上。國際標準CLI定義在ISO/IEC 23271,最新版本在2012年修定。