Day01

.NET Framework是一个由微软开发的应用程序托管执行环境,包括CLR、CTS、CLS等关键组件。CLR负责内存管理、线程管理和异常处理,而CTS定义了所有语言必须遵守的数据类型和变量类型。GC(垃圾回收)用于自动管理内存,但不处理非托管资源。.NET程序通过C#编译成IL,再由JIT编译成本地代码。

1、.NET是为其运行的应用程序提供各种服务的托管执行环境

2、CLR的核心是CTS

3、CLR是公共语言运行库。

第一交托管代码合并成程序及,也叫组件程序及中包含了一张叫做清单的模块。

第二。加载公共语言运行库

第三,执行程序级的代码

第四,生成本地代码

4、了解CLI历史。

垃圾回收 GC
什么是GC?
GC(Garbage Collector)如其名,就是垃圾收集,这里仅就内存而言。
GC工作的原理:GC遍历应用程序在Heap(堆)上动态分配的所有对象,通过识别他们是否被引用来确定哪些对象是已经死亡的、哪些仍需要被使用,已经不再被应用程序所引用的对象就是已经死亡的对象。即所谓的垃圾,需要被回收。
.NET的GC机制两个问题:
首先,GC并不是能释放所有的资源。他不能自动释放非托管资源。
第二,GC并不是实时性的,这将会造成系统性能上的瓶颈和不确定性。
GC并不是实时性的,这会造成系统性能上的瓶颈和不确定性。 
理解什么是元数据?
元数据:是一种二进制信息,泳衣对存储在公共语言运行库可移植可执行文件(PE)文件或存储在内存中的程序进行描述。 
.NET Framework框架体系 
框架体系运行概述:
首先编写的C#源文件hello.cs通过C#编译器尽心编译,编译成.NET的PE文件结构,也就是exe文件格式,当程序运行时,Windows的Loder加载器不会负责该程序的内存分配,线程管理等工作,而是只负责跳转到CLR的执行引擎(EE)中,将控制权交由CLR,由CLR进行分配内存,线程管理,异常处理等。 
1、IL|MSIL|CIL Microsoft Intermediate Language微软中间语言(IL是MSIL的缩写,编译为中间语言)
2、CTS(Common Tyoe System)通用类型系统
3、CLS(Common Language Specification)公共语言规范
3、CLS
4、CLR
5、JIT(Just in time)即时编译器
6、CLI 公用语言基础架构(Common Language Infrastructure)
7、BCL 基础类库

转载于:https://www.cnblogs.com/LJX666/p/11140732.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值