C面向?qū)ο蟪绦蛟O(shè)計講義_第1頁
C面向?qū)ο蟪绦蛟O(shè)計講義_第2頁
C面向?qū)ο蟪绦蛟O(shè)計講義_第3頁
C面向?qū)ο蟪绦蛟O(shè)計講義_第4頁
C面向?qū)ο蟪绦蛟O(shè)計講義_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

--應(yīng)用程序的執(zhí)行C#通過編譯和鏈接生成單一的本地可執(zhí)行文件(.EXE)的時代已經(jīng)過去,在MicrosoftWindows中,應(yīng)用程序的執(zhí)行早已演變成為基于DLL(動態(tài)鏈接庫)的形式,而通過.NET,我們正在向基于虛擬機(jī)的程序執(zhí)行模式演化。應(yīng)用程序的執(zhí)行ManagedExecution基于組件的設(shè)計Assembly分析主要內(nèi)容ManagedExecution思考:軟件在運(yùn)行時環(huán)境中執(zhí)行為何如此?可移植和安全執(zhí)行硬件操作系統(tǒng)運(yùn)行時環(huán)境應(yīng)用程序Java基于運(yùn)行時環(huán)境:JVMTMJVM=JavaVirtualMachineJCL=JavaClassLibraryx86WindowsJVMPPCMacOSJVMARMPalmOSJVM……JVMJava應(yīng)用程序JCL.NET基于運(yùn)行時環(huán)境:CLR,FxCLCLR=CommonLanguageRuntimeFxCL=FrameworkClassLibrary硬件操作系統(tǒng)CommonLanguageRuntime.NET應(yīng)用程序.NETFrameworkClassLibrary.NET軟件開發(fā)選擇你的開發(fā)語言和平臺x86WindowsCLRARMPocketPCCLRPPCFreeBSDCLRx86LinuxCLR.NET應(yīng)用程序FxCL……CLRVBC#C++J#….NET軟件開發(fā)運(yùn)行.NET程序的客戶端必須安裝Microsoft.NETFrameworkRedistributable.NETFramework(20MB)三個版本:v1.0(2002),v1.1(2003),v2.0(2005)MicrosoftWindowsServer2003包含v1.1必須安裝正確的版本.NET軟件開發(fā)設(shè)計上的權(quán)衡可移植性安全執(zhí)行(內(nèi)存管理)速度?ManagedCodeC#,VB,J#編譯器會生成受控代碼需要.NETFramework運(yùn)行和管理的代碼C++有兩種選擇受控代碼(.NETexe/dll)非受控代碼(nativeexe/dll)常用于操作系統(tǒng)級編程和原有應(yīng)用程序ManagedExecution基于組件的設(shè)計Assembly分析基于組件的應(yīng)用程序應(yīng)用程序包含一個或多個組件(dll)例子Front-endObjectObjectObjectGUI.exebusiness.dlldata.dllDB基于組件的.NETCLR和FxCL也是組件Process.EXE.DLLCLR(MSCORE.dll)CoreFxCL(MSCORLIB.dll)JITCompilerobjcodeAdditionalFxCLComponents(DLLs)OSandHardwareAssembliesAssemblies是對.NET組件的稱呼.NET中的部署單元1個assembly=1個或多個源文件的編譯結(jié)果VisualStudio.NET.EXE/.DLLcode.vbcode.vbcode.csassemblyFxCLassembliesFxCLassemblies存儲與GAC之中GAC=GlobalAssemblyCache位于本地共享ManagedExecution基于組件的設(shè)計Assembly分析Assembly分析CLR必須可以找到正確的assembliesFxCLassemblies像我們自己的assembliesCLRJIT編譯器進(jìn)程CoreFxCL

.DLL.DLL.EXEobjcode其余FxCL組件(DLLs)程序執(zhí)行過程的assembly搜索DOS應(yīng)用程序執(zhí)行回顧.NET提供了assembly搜索算法可以根據(jù).config文件(類似于.ini文件)自定義assembly搜索算法分析應(yīng)用程序(.EXE)指定將要使用的assembly版本在GAC(GlobalAssemblyCache)中搜索相應(yīng)版本If未找到and存在.config文件then到配置文件指定的位置搜索else

到.EXE文件所在的路徑搜索If

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論