码迷,mamicode.com
首页 > Web开发 > 详细

.NET框架认识

时间:2016-06-29 23:43:05      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:

回忆过去,VC++生成的文件,经过预编译、编译、汇编、链接几个步骤之后,生成可执行的本地代码。

 1、C#源程序执行过程

    源程序编译为程序集的过程:C#源程序 -> C#编译器 -> 程序集(CIL代码)-> JIT二次编译(.NET Runtime环境支持)-> 本机可以识别的指令

    上面的CIL(Common Intermediate Language)不是本机可以直接执行的指令,需要后续的处理。CIL是一种基于堆栈的语言,也是一种面向对象的语言。

2.BCL基类库

    BCL(Base Class Library)包含最基本的类库,BCL已经成为CIL的一部分了,所有面向CIL的语言都可以使用BCL。

3.FCL框架类库

    FCL(Framework Class Library)内容极多,包含三层。

    最内一层:大部分由BCL组成,对.NET框架、.NET运行时、CIL语言本身进行支持,例如:基元类型、集合类型、线程处理、网络连接、运行时、安全等

    中间一层:对操作系统的封装,包括:文件系统、网络连接、图形图像、XML操作等。

    最外一层:对各种应用程序的支持,例如:Windows Forms、ASP.NET、 WPF、 WCF等。、

4.CTS公共类型系统

    任何满足了 CTS(Common Type System)的高级语言,就叫做面向.NET框架的语言。CTS规定了类类型、枚举类型、字段、属性、方法等,显然CIL实现了CTS的全部功能,C#只实现了CTS的一部分功能,比如:C#没有全局变量。简言之:CTS是一套语言的规范定义。

5.CLR公共语言运行时

    CLR(Common Language Runtime)为.NET框架的核心部分。程序集主要由以下几个部分组成:

    技术分享

    CLR是.NET程序集的一个运行环境,类似Java虚拟机,管理了程序集的运行,包括:管理应用程序域、加载和运行程序集、安全检查、将CIL代码编译为机器代码、异常处理、对象析构和垃圾回收。

   

   

   

.NET框架认识

标签:

原文地址:http://www.cnblogs.com/shuaihui/p/5628401.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!