Chinaunix首页 | 论坛 | 博客
  • 博客访问: 10427891
  • 博文数量: 1293
  • 博客积分: 13501
  • 博客等级: 上将
  • 技术积分: 17974
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-08 18:11
文章分类

全部博文(1293)

文章存档

2019年(1)

2018年(1)

2016年(118)

2015年(257)

2014年(128)

2013年(222)

2012年(229)

2011年(337)

分类: 嵌入式

2012-09-04 09:48:13

clip_image003_2

 图1 .net架构

一、.NET Framework 具有两个主要组件:公共语言运行库和 .NET Framework 类库。

 

1、公共语言运行库是 .NET Framework 的基础。
    您可以将运行库看作一个在执行时管理代码的代理它提供内存管理、线程管理和远程处理等核心服务,并且还强制实施严格的类型安全以及可提高安全性和可靠性的其他形式的代码准确性。事实上,代码管理的概念是运行库的基本原则。以运行库为目标的代码称为托管代码,而不以运行库为目标的代码称为非托管代码


2、Framework 的另一个主要组件是类库
    它是一个综合性的面向对象的可重用类型集合,您可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面 (GUI) 应用程序,也包括基于
所提供的最新创新的应用程序(如 Web 窗体和 XML Web services)。


    .NET Framework 可由非托管组件承载,这些组件将公共语言运行库加载到它们的进程中并启动托管代码的执行,从而创建一个可以同时利用托管和非托管功能的软件环境。.NET Framework 不但提供若干个运行库宿主,而且还支持第三方运行库宿主的开发。


二、CLR的主要功能

    CLR,Common Language Runtime公共语言运行时,和Java虚拟机一样也是一个运行时环境。它负责资源管理(内存分配和垃圾收集),并保证应用和底层操作系统之间必要的分离。

    它的主要功能有:
1、基类库支持 Base class libray support.
2、存储器管理 Memory management.
3、线程管理 Thread Management.
4、存储器自动回收 Gardbage  Collection.
5、安全性 Security.
6、类型检查 Type checker.
7、例外管理  Exception Manager.
8、除错管理  Debug engine.
9、中间码MSIL到机器码Native的编译.
10、类型装载 Class loader.


图2、.NET架构
    开发人员使用高级编程语言撰写程序。接下来编译器将代码编译成微软的中继语言(MSIL)。运行的时候CLR会将MSIL码转换成操作系统的原生码Native code。CLR自带有实时编译的编译器。










阅读(1862) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~