[From 1.1~1.2]CLR的执行模型

 
程序集(assembly):
程序集是抽象概念
程序集是一个或多个模块/资源文件的逻辑性分组。其次,程序集是重用,安全性以及版本控制的最小单元。在CLR的世界中,程序集相当于“组件”。
 
公式表达:程序集 = 清单(manifest) + 托管模块(PE文件) + 资源文件(.jpeg,gif,html,数据文件等)
 
托管模块:
托管模块是标准的32位Microsoft Windows可移植执行体文件(PE32)或者是标准的64位Windows可移植执行体文件(PE32+),他们都需要CLR才能执行。
 
另:托管程序集总是利用Windows的数据执行保护(Data Excution Prevention,DEP)和地址空间布局随机化(Address Space Layout Randomization,ASLR),这两个功能旨在增强整个系统的安全性
公式表达:托管模块(PE文件) = PE32头或(PE32+)头  + CLR头 +元数据+IL(中间语言)代码
 
清单:清单是元数据表的集合。这些表描述了构成程序集的文件,程序集中的文件所实现的公开导除类型以及程序集关联的资源或数据文件。所以,当程序集没有资源文件时,他就相当于一个托管模块。
 
注:PE:Portable Executable(可移植执行体)

转载于:https://www.cnblogs.com/TheChenLin/p/10190169.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值