- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
win32penet的可执行档
CLR、Assembly and .NET Deployment Features --電算中心90年度第二學期讀書會 報告人 try 政治大學電算中心 參考資料 [1]Thuan Thai,Hoang Q.Lam,“.NET Framework Essentials” ,O’reilly,June 2001 [2]Serge Lidin,”Inside Micorosoft .NET IL Assembler”,Microsoft Press,2002 [3]”Microsoft .NET Framework FAQ”,Microsoft Corporation,July 2001 [4]Gray Cornell,Jonathan Morrison,”Programming VB.NET: A Guide for Experienced Programmers”,Apress 2002 [5]Jesse Liberty,”Programming C#”,O’reilly, 2001 [6]Ben Albahari,Peter Drayton,Brad Merrill,”C#Essentials”,O’reilly,2001 Presentation Agenda 本章學習目的及內容簡介 .NET與.NET Framework CLR 解析.NET可執行檔 .NET Deployment 特色 Assembly 觀念 VEE結構探討 .NET與COM/Native Dll的互通性 .NET與.NET Framework .NET .NET is Microsoft strategy for delivering software as a service. .NET Framework An environment for building,deploying and running Web Services and applications. 三個組成部份:CLR、Framework classes及ASP.NET CLR的定位 .NET應用程式的執行時期環境(Run-time) 提供.NET應用程式和底層作業系統的中間層 CLR和JVM 很多書都拿CLR來和JVM類比,其實就直觀來看,兩者有很多差別。 Java程式就實體上看來都是一個一個的.class檔。 .NET程式都是標準PE格式的exe檔(這裏面存的不是Native Code!!)。 我們要執行某一個Java程式時,要打java (class名稱) .NET程式和一般執行方式一樣,直接執行該exe檔即可。 CLR和JVM(2) Java的deploy方式是以class檔為最小單位。 .NET中deploy是以assembly為最小單位。 Java的class檔中含bytecode,並沒有metadata。(所以classpath要在命令列中註明) .NET的可執行檔中含MSIL及metadata。 Microsoft的作品為了體貼使用者,隱藏了許多細節,對Developer來說,反而較不直觀。也是觀念不清的來源。 CLR的功能 Activate Objects 對Objects執行安全性檢查(verifier) layout objects in memory(ClassLoader) JIT Compilation(JIT Compiler) Excution support and management GC Debug security exception handling Windows上的可執行檔(PE/COFF) Windows上的可執行檔都必須遵循PE/COFF格式。(Portable Excutable/Microsoft Common Object File Format)。 標準的PE可執行檔分成二大部份 headers native image sections(.data,.rdata,.rsrc,.text) Win32 PE .NET的可執行檔(.NET PE) 為了可擴充性,Microsoft允許除了這些區段之外,在PE中自定新的section。 安裝.NET時,會將OS的loader換掉,換成認得.NET PE的loader。 .NET正是利用擴充section的方式,.NET的windows loader認得.NET PE,並將這些sections交由CLR處理。 這就是為何.NET應用程式也可以以.exe方式存在並直接執行的原因。 .NET PE 觀察.NET的可執行檔 利用dumpbin.exe可以dump出PE檔案。 範例 win32:win32all.txt .net:helloall.txt 我們可以發現.N
文档评论(0)