CLR公共语言运行库的知识你知道了吗?

CLR(Common Language Runtime)公共语言运行库

(一)CLR介绍
CLR是一个可以由多编程语言使用运行时,CLR的核心功能:内存管理,程序集加载,安全性,异常处理,线程同步等等。可以被很多属于微软系列的开发语言使用。
(二)托管模块
托管模块简单的讲说只要满足两个条件他就是托管模块
1、他是为.net框架编写的代码
2、需要CLR管理的。
满足以上两点就是托管模块
(三)程序集
程序集中的代码不是本机代码,是CIL中间语言(Common intermediate Laguage)
程序集中包换:
1、程序的中间语言
2、程序中使用的类型元数据
3、程序中使用的程序集引用的元数据

C#代码运行流程

C#的代码运行流程如下图:

C#源文件 .net CIL(中间语言) JIT编译器 本机代码 操作系统服务 C#源文件 .net CIL(中间语言) JIT编译器 本机代码 操作系统服务

.net是属于框架而C#就等于语言规范
C#源文件经过C#编译器进入程序集,在进入JIT编译器,然后变成本机代码,最后给操作系统服务。
程序集上边文章讲过了,如果没记住往上翻翻。
这里讲下JIT编译器
JiT(Just in Time)实时编译器
CLR中包括JIT编译器
JIT工作流程如下

CLR开始工作 检查程序集 在内存分配空间 把程序集中可执行的代 把另外的一部分直接 CLR开始工作 检查程序集 在内存分配空间 把程序集中可执行的代 把另外的一部分直接
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值