写点什么

微软开源.NET Core 的执行引擎 CoreCLR

  • 2015-02-05
  • 本文字数:1085 字

    阅读完需:约 4 分钟

继去年 12 月宣布.NET Core 开源之后,微软拥抱开源的决心又向前迈了一步,Microsoft 于昨日在 .NET Framework Blog 上 宣布开源.NET Core 的执行引擎 CoreCLR ,同时该项目将继续托管在 Github 上。

CoreCLR 是.NET Core 的执行引擎,负责垃圾收集、机器码编译等方面的工作,此次开源的是CoreCLR 最新、最完整的代码实现,包含RyuJIT、.NET GC、本地互操作以及很多其他的.NET 运行时组件。Microsoft 表示,.NET Core 目前能够构建并运行在Windows 平台上,在未来的几个月内会增加Linux 和Mac 平台的支持。

从大小上看,CoreCLR 库大约有260 万行的代码,其中JIT 的代码大约有32 万行,GC 的代码大约有5.5 万行,而之前发布的 CoreFX 库大约有 50 万行代码,只占该库最终大小的 25%,如果.NET Core 完全开源,那么总共大约会有 500 万行代码。不同的是,CoreFX 全部是 C#代码,而 CoreCLR 包含大量的 C#和 C++ 代码,要构建这些代码需要多个工具集,而有些工具 Visual Studio 并没有提供,如果你想构建 CoreCLR,那么可以查看 CoreCLR 开发指南

CoreCLR 的开源在社区上引发了广泛的讨论, HackerNews 上的 JeremyMorgan 评论说:

“是好是坏取决于你如何看待这件事情,虽然在盖茨时代之后 Microsoft 对开发者一直都很好,但是与之前相比最大的不同也仅仅是人们不需要再付费了而已,因为这之前只有相关的付费用户才能得到良好的服务。”

对此 klibertp 则发表了不同的观点:

“这不仅仅是一个财务问题。Microsoft 开源自己的类库对开发者而言好处非常多,因为现在他们能够查看自己日常使用的类库的源码,这使得调试更加容易,同时也能够帮助开发者理解当他们调用某些函数的时候其内部到底做了什么。十年之前我离开了 Microsoft 阵营,那时候我非常愿意付费查看相关 Microsoft 工具的源码,但是却找不到门路,现在 Microsoft 提供了相关的源码,并且是开源的,这非常好,也非常重要。”

brudgers 在评论中写道:

“我认为开源非常伟大,我非常钦佩 Stallman(自由软件之父),因为他广阔的胸襟。但是我并不认为 Windows 闭源有问题,因为 Windows 能够通过 Microsoft 商业模式的优势非常有效地解决一组特定的问题,但是无论如何开源的选择是好的。”

最后,Microsoft 表示自己在开源和跨平台的.NET 计划上依然有很多事情要做,具体内容或许会在今年将会举行的.NET Conf 上透露,该虚拟网络会议的召开时间为2015 年的3 月18 日和19 日。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2015-02-05 00:345196
用户头像

发布了 321 篇内容, 共 122.2 次阅读, 收获喜欢 19 次。

关注

评论

发布
暂无评论
发现更多内容

TiDB 学习/认证奇遇记

TiDB 社区干货传送门

学习&认证&课程

MediaHuman YouTube to MP3 Converter mac:音频转换新体验

iMac小白

Unlocking WiFi 7 Speed: Real-World Testing of QCN9274 with IPQ9574

wallyslilly

qcn9274 ipq9574

喜讯!云起无垠入选国内首个《汽车网络与数据安全行业全景图》

云起无垠

全景图

一文介绍某行数据库升级原则

TiDB 社区干货传送门

版本升级 管理与运维

我的 TiDB PCTP 认证之旅

TiDB 社区干货传送门

社区活动 6.x 实践 学习&认证&课程

京东JD商品详情API返回值解读:数据驱动的商品研究

技术冰糖葫芦

API 编排 API 文档 API 策略 pinduoduo API

值得推荐的10+REST API测试工具

幂简集成

API REST API API 测试

TiDB在线DDL操作对业务到底有没有影响

TiDB 社区干货传送门

实践案例 7.x 实践

广哥哥PCTA考试认证之旅

TiDB 社区干货传送门

社区活动 学习&认证&课程

TiDB学习的那些事儿

TiDB 社区干货传送门

学习&认证&课程

利用LangChain构建的智能数据库操作系统

霍格沃兹测试开发学社

【TiDB 社区升级互助材料】TiFlash 最佳实践&上线前准备& FAQ

TiDB 社区干货传送门

版本升级

TIDB 新特性解读 (7.0~7.5)

TiDB 社区干货传送门

版本升级 集群管理 版本测评 新版本/特性解读 7.x 实践

TiDB 学习/认证之路

TiDB 社区干货传送门

学习&认证&课程

数仓安全:数据脱敏技术深度解析

华为云开发者联盟

数据库 华为云 华为云开发者联盟 华为云GaussDB(DWS) 企业号2024年5月PK榜

C#中的对象深拷贝和浅拷贝

EquatorCoco

Java C# 开发语言

MediaHuman YouTube Downloader for Mac:功能丰富的视频下载利器

iMac小白

微信小程序直接生成鸿蒙App的路径

Onegun

鸿蒙 鸿蒙开发

看了这篇文章,以后就别再拿 TiDB 和 MySQL 做性能对比了

TiDB 社区干货传送门

实践案例 7.x 实践

TiDB 学习/认证的哪些事儿

TiDB 社区干货传送门

学习&认证&课程

恢复误删的 TiDB 集群:从 Kubernetes 全毁情况下恢复

TiDB 社区干货传送门

实战:TiDB 从5.0升级到7.5.1 核心集群

TiDB 社区干货传送门

7.x 实践

5 分钟搭建「项目文档问答机器人」

Jade@pluto-lang

AWS openai #LangChain rag Pluto

金融机构的信贷风控难题

芯盾时代

金融 风控 信贷

星辰考古:TiDB v1.0 再回首

TiDB 社区干货传送门

版本升级 新版本/特性发布

我的TiDB 学习与PCTA认证小故事

TiDB 社区干货传送门

TiDB 底层架构 学习&认证&课程

debug技巧之本地调试

不在线第一只蜗牛

技术 debug

微软开源.NET Core的执行引擎CoreCLR_.NET_孙镜涛_InfoQ精选文章