浅谈公共语言运行库

C#的源代码首先要被编译为Microsoft的中间语言(IL)的代码。这些中间代码也被称为托管代码。它们不是文本代码,而是类似Java源程序被编译后的字节代码。然后使用公共语言运行库(CLR)作为执行环境来执行这些托管代码。这样做的好处有:

(1)    平台无关

 

只要安装了.Net Framework的平台就可以用CLR来执行中间代码。换句话说,相同的源代码在不同的平台上编译得到的中间代码都是一样的,而不同的平台需要不同的CLR来执行中间代码。当然这个不是绝对的平台无关,不是说就可以把C#的程序拿到Linux中编译运行了。目前主要还是在Windows平台上运行托管代码。也有一些工程致力于把.Net Framework应用到Linux平台中。

 

(2)    提高性能

 

托管代码要经过再次编译才能变成机器的本地代码,看起来.Net的程序性能比起直接编译为本地代码的程序运行效率要低,可是实际上,Microsoft采用了一些手段来提高.Net程序的性能。

·         即时编译(JIT编译),也就是运行托管代码时,只编译用到的那部分代码,而不是先把这个托管代码编译好,然后再运行。

·         编译器接合处理器进行编译。以往直接编译为本地代码的编译器,比如Visual Studio 6中的编译器,不会考虑处理器的不同特性。它不知道你使用的是奔腾3还是奔腾4的处理器,而CLR把处理器的特性考虑了进去。也就是说,编译器会对处理器的特定性能进行代码的优化。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值