01-.Net编程机制

.NetFarmwark特点:

  • 多平台:该系统可以在广泛的计算机上运行,包括从服务器、桌面机到PDA和移动电话。

  • 行业标准:该系统使用行业标准的通信协议,比如XML、HTTP、SOAP和WSDL.

  • 安全性:该系统能提供更加安全的执行环境,即使有源可疑的代码存在。

 

.NetFarmwar组成部分:

编程工具、公共语言运行库(CLR)、基类库(BCL),严格地说.Net框架由两部分组成 CLR和FCL(框架类库),不包括工具。FCL是BCL的超集,还包括WindowsForms、Asp.Net、Linq以及更多命名空间。

CLR包括:内存管理、代码安全验证、代码执行、垃圾收集。

编译成CIL

.net语言的编译器接受源代码文件。并生成名为程序集的输出文件。程序集可以是执行文件或DLL文件。

程序集包含的信息有程序的CIL,程序中使用的类型元数据,对其他程序集引用的元数据。

程序的CIL直到它被调用运行时才会被编译成本机代码。

运行CLR执行下面的步骤:
    1.检查程序集的安全特性。
    2.在内存中分配空间
    3.把程序集中的可执行代码发送给实时编译器,把其中一部编译成本机代码。

 

当被编译成本机代码后,CLR就会在它运行时管理它,执行并释放无主的内存,检查数组边界
检查参数类型和管理异常的一些任务。这时也就产生了两个概念:托管代码和非托管代码

托管代码:为.Net框架编写的代码并使用CLR管理的称为托管代码

非托管代码:不在CLR管理下运行的代码,如Win32 C/C++ Dll,称为非托管代码。

CLR是.Net框架的核心组件,它在操作系统的顶层并管理程序的执行。

CLI(Common Language Infrastructure,公共语言基础结构)是定义基本类型(整数,浮点数,字符等)的一组标准
,它把所有.Net框架的组件连续成一个内聚的、一致的系统。

CTS(公共类型系统)定义了那些在托管代码中一定会使用的类型的特征,其中包括:
    1.CTS定义了一组丰富的内置类型,以及每种类型确定的、详细的特性。
    2.Net兼容编程语言提供的类型通常映射到CTS中已定义的内置类型集的某一个特殊子集。
    3.CTS最重要 的特征之一是所有类型都继承自公共的基类——Object.
    4.更多内容请点击查看

每一天都是崭新的,我们的目标有多远,我们就能走多远,坚持!!
原文地址:https://www.cnblogs.com/xiao-feng/p/4728260.html