.NET Framework非托管相關(guān)概念詳解
可能大多數(shù)開發(fā)人員都知道.NET Framework托管的相關(guān)含義。但是又有多少人知道.NET Framework非托管是什么呢?在這里我們就會為大家詳細介紹一下.NET Framework非托管的相關(guān)概念。#t#
可以理解為所有.net程序的環(huán)境支持,或說運行環(huán)境。
詳細解釋:
NET Framework 是一種新的計算平臺,它簡化了在高度分布式 Internet 環(huán)境中的應用程序開發(fā)。.NET Framework 旨在實現(xiàn)下列目標:
提供一個一致的面向?qū)ο蟮木幊汰h(huán)境,而無論對象代碼是在本地存儲和執(zhí)行,還是在本地執(zhí)行但在 Internet 上分布,或者是在遠程執(zhí)行的。
提供一個將軟件部署和版本控制沖突最小化的代碼執(zhí)行環(huán)境。
提供一個保證代碼(包括由未知的或不完全受信任的第三方創(chuàng)建的代碼)安全執(zhí)行的代碼執(zhí)行環(huán)境。
提供一個可消除腳本環(huán)境或解釋環(huán)境的性能問題的代碼執(zhí)行環(huán)境。
使開發(fā)人員的經(jīng)驗在面對類型大不相同的應用程序(如基于 Windows 的應用程序和基于 Web 的應用程序)時保持一致。
按照工業(yè)標準生成所有通信,以確保基于 .NET Framework 的代碼可與任何其他代碼集成。
.NET Framework 具有兩個主要組件:公共語言運行庫和 .NET Framework 類庫。公共語言運行庫是 .NET Framework 的基礎。您可以將運行庫看作一個在執(zhí)行時管理代碼的代理,它提供核心服務(如內(nèi)存管理、線程管理和遠程處理),而且還強制實施嚴格的類型安全以及可確保安全性和可靠性的其他形式的代碼準確性。事實上,代碼管理的概念是運行庫的基本原則。以運行庫為目標的代碼稱為托管代碼,而不以運行庫為目標的代碼稱為.NET Framework非托管代碼。.NET Framework 的另一個主要組件是類庫,它是一個綜合性的面向?qū)ο蟮目芍赜妙愋图?,您可以使用它開發(fā)多種應用程序,這些應用程序包括傳統(tǒng)的命令行或圖形用戶界面 (GUI) 應用程序,也包括基于 ASP.NET 所提供的最新創(chuàng)新的應用程序(如 Web 窗體和 XML Web services)。
.NET Framework 可由非托管組件承載,這些組件將公共語言運行庫加載到它們的進程中并啟動托管代碼的執(zhí)行,從而創(chuàng)建一個可以同時利用托管和非托管功能的軟件環(huán)境。.NET Framework 不但提供若干個運行庫宿主,而且還支持第三方運行庫宿主的開發(fā)。
例如,ASP.NET 承載運行庫以為托管代碼提供可伸縮的服務器端環(huán)境。ASP.NET 直接使用運行庫以啟用 ASP.NET 應用程序和 XML Web services(本主題稍后將對這兩者進行討論)
Internet Explorer 是承載運行庫(以 MIME 類型擴展的形式)的.NET Framework非托管應用程序的一個示例。使用 Internet Explorer 承載運行庫使您能夠在 HTML 文檔中嵌入托管組件或 Windows 窗體控件。以這種方式承載運行庫使得托管移動代碼(類似于 Microsoft® ActiveX® 控件)成為可能,但是它具有只有托管代碼才能提供的重大改進(如不完全受信任的執(zhí)行和安全的獨立文件存儲)。















 
 
 

 
 
 
 