英文原文:CoreCLR is now Open Source
阅读笔记如下:
CoreCLR是.NET Core的执行引擎,功能包括GC(Garbage Collection), JIT(将CIL代码编译为机器码)等。
CoreCLR最新的最完整的实现源码已经发布在GitHub(https://github.com/dotnet/coreclr)上。CoreCLR的实现包括RyuJIT(即时编译),.NET GC(垃圾回收),本地互操作(native interop),和其他的.NET运行时组件。
目前.NET Core只支持Windows,在接下来的几个月内会增加Mac与Linux平台相关的组件。先将代码开放出来,然后和大家一起享受.NET开源跨平台之旅。
CoreCLR目前有260万行代码,JIT大约有32万行代码,GC大约有5.5万行代码。
CoreCLR代码库中既包含C#代码,也包含C++代码,选用的是开源跨平台的Build工具——CMake。
编译生成CoreCLR的参考文档:https://github.com/dotnet/coreclr/wiki/Developer-Guide
目前有2种类型的.NET应用程序可以基于.NET Core进行编译:
1)ASP.NET 5 web apps and services
2)Console apps
目前ASP.NET 5的跨平台(Mac/Linux)用的是Mono Runtime。一旦.NET Core支持Mac/Linux,ASP.NET 5就会转用.NET Core。
目前体验.NET Core的最简单方式是通过控制台应用程序。你可以自己编译CoreCLR,然后用它跑控制台应用程序。
.NET Core控制台应用程序是CoreCLR开发过程中的副产品。但接下来的几个月内,它将转正,成为一个被完整支持的.NET Core应用程序类型,Visual Studio的模板与调试工具都将支持它。
.NET开源跨平台之旅的下一站将是2015年3月18日-19日的在线会议——.NET Conf。
"Happy coding! - The dotNetConf team"