微软中间语言简介

1:..NET平台的认识

       它是架构在操作系统上的平台,是一种虚拟机,相当于JAVA中的JVM.它具有以下三种特性.

A:统一了编程语言.

       .NET相容的语言最终编辑为微软中间语言MSIL(简称IL).方便了软件的逆向.这样就可以只要一种反编译器.

B:扩展了PE文件的格式.

可执行文件中不再保存机器码,而是IL指令和元数据,部分PE结构被扩展用于保存.NET的相关信息.

C:改变了程序的运行方式

       Windows不再直接负责程序的运行,而是由.NET框架直接负责管理.JIT引擎负责把IL即时编辑为本地汇编代码执行.

 

2->MSIL:微软中间语言MicroSoft Intermediate Language. IL.net平台唯一能识别的语言,编辑时,各种高级语言都会编辑成IL并保存在PE文件中.(说明.IL其实相当于高级语言,它支持面向对象,运行完全由

.NET监控,因些IL属于托管代码).

3->元数据:描述.NET运行时所必须的一切信息的数据.包括版本,类型成员等,可执行的.NET程序必须包含有正确的元数据定义.元数据是由编辑器根据源代码生成的,在程序的运行中又反过来约束代码的执行.

 

4àJIT(Just-In-Time).即时编辑,也叫做按需编辑,JIT编辑器的任务,MSIL编译为专用于OS和目标机器结构的本机代码.

5->CLR(Common Language Runtime)公共语言运行时..NET框架的核心内容之一,它包括:面向对象编程模型,安全模型,类型系统(CTS),所有的.NET基类,程序执行及代码管理.CLR是托管程序运行的环境就像Windons是普通PE程序的运行环境一样.

6---à程序集:在编辑应用程序时扫创建的MSIL代码存储在一个程序集中,程序集包括可执行的应用程序文件(这些文件可以直接在Windons下运行,不要其他的程序,其扩展名是.exe).和其他应用程序使用的库(其扩展名为.DLL). 除了MSIL,程序集还包括了元数据和可选的资源.

 

小结一下.NET中运行程序的过程

A.      把代码编辑成IL,并存储在程序集中,

B.      在执行代码时(如果这是一个PE,就自动运行,或者在其他代码使用它时才运行.),首先必须使用JIT编译器将代码编译成本机代码.

C.      在托管的CLR运行环境中运行本机代码,以及其他应用程序或过程

                                                                          2009-12-22

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值