[CLR via C#]1#The CLR's Execution Model WORK-IN-PROGRESS

src => managed module  => assembly


.net managed module

a managed module is a standard 32-bit PE32 file or PE32+ file that required the CLR to execute.

one assembly can has several managed modules, but usually only one


Parts of  Managed Module

PE32 or PE32+ Header
CLR header
Metadata (優點1:不需要頭文件 2:IntelliSense 3:Refection 4:GC 5:type-safe)
IL code


loading the CLR


1.examing the EXE file's header

  • 32-bit process
  • 64-bit process
  • WoW64 process
2. load MSCorEE.dll
3. call a method in MSCorEE.dll, (啓動CLR,加載EXE Assembly, 調用main)

WoW64:爲了32位在64位上能夠運行


FCL : Framework Class Library


http://dotnetslackers.com/articles/net/Analyzing-the-makeup-of-a-managed-module.aspx




發佈了36 篇原創文章 · 獲贊 0 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章