| 版权声明:本文为博主原创文章,未经博主允许不得转载。
CLR(公共语言运行库,Common Language Runtime)和Java虚拟机一样也是一个运行时环境,是一个可由多种编程语言使
用的运行环境。CLR的核心功能包括:内存管理、程序集加载、安全性、异常处理和线程同步,可由面向CLR的所有语言使
用。并保证应用和底层操作系统之间必要的分离。CLR是.NET Framework的主要执行引擎。CLR存在两种不同的翻译名称:公
共语言运行库和公共语言运行时。
运行环境(Runtime environment,又称“运行期系统”,run-time system),指一种把半编译的运行码在目标机
器上运行的环境。运行环境是一种介乎编译器及直译器的运行方式。Java运行环境,称之为“Java Runtime Environment”
(JRE)。一个由C#,Visual Basic .NET,C++.Net之类的语言写的程序运行于Microsoft Windows上的.NET
CommonLanguage Runtime(CLR)或Linux上的Mono。
-----> 摘自百度
软件运行需要软件环境和硬件环境。就如windows操作系统和Linux系统对cpu,对内存等的要求都是不一样的。应用软
件不仅仅要求硬件,还要求有软件运行的运行环境,也就是,Andriod的软件不能再ios系统上面运行。如果需要能够运行就
需要装个虚拟机模拟该软件运行的环境。为什么不同的系统上,不能运行其他系统上的软件,这关系到了两种操作系统内部构
造不同和系统内的文件格式的问题等等一些问题(如:linux下的可执行程序是elf格式的,windows的可执行程序是exe格式
的),因为每个系统的文件系统是不同的,如果将双方的系统封装成一个类库关联起来的话,再来编写的软件,则可以实现通
用,因为此软件上多了两个系统格式和接口上的识别。(如Linux下的Wine qq 可以在linux下运行,就是因为wine qq这个
软件在linux上封装了API接口和windows PE的格式识别)