CLR. To put it bluntly, it is a virtual machine running on the Microsoft. NET platform. Like a Java virtual machine, the virtual machine provided by Microsoft for. net programs is CLR.
To put it bluntly,
CLR runs a bytecode called common intermediate language.
What is a common intermediate language? It is an intermediate language compiled by the. NET source program (such as C #, C ++, VB. netd, and so on) through their respective compilers. Note that it is not a machine language, but a general intermediate language ". The common intermediate language can generate a local language (native code) after passing through the CRT ).
About mono
Mono is a Project hosted by Novell (previously ximian. The project's goal is to create a series of. Net tools that comply with ECMA standards (Ecma-334 and Ecma-335), including the C # compiler and common language runtime platform. Unlike Microsoft's. NET Framework, the Mono Project can run on not only Windows systems, but also Linux, FreeBSD, UNIX, Mac OS X, and Solaris. This allows projects under. NET Framework to be migrated to other platforms.
An image from Wikipedia:
References: http://zh.wikipedia.org/wiki/File:Common_Language_Runtime_diagram.svg