这几年, 微软在开源领域不断的有大动作,从 2012 年 4 月份微软成立开放技术子公司,专注参与开源项目以及和开源社区的合作开始,到今年在 Build 2014 大会上宣布一系列开源项目以及成立.NET 基金会,全力支持.NET 平台上的开源研发与合作,微软一直在用实际行动践行开源。近日,微软首次向 OpenJDK 贡献了关于 Windows 上 TCP 回环快捷路径机制方面的优化代码,相关代码已经提供下载。这是微软第一次为 OpenJDK 社区贡献代码,也是第一次为 Java 做出贡献。Martin Sawicki在邮件中写到:
我们对 OpenJDK 进行了优化,使得用户能够更好的利用 Windows 上的 TCP 回环快速路径机制,从而显著地提高同一个机器上 Socket 通信的性能,特别是在分布式服务器端和云场景方面的应用,例如 Hadoop。
我们已经提交了改进的代码,并且进行了内部的代码测试,考虑到代码文件比较大,所以使用 webrev 包形式提供。这次改进的关键是允许在 Windows 系统中,每个被创建的 Socket 都能够启用 SIO_LOOPBACK_FAST_PATH IOCTL 标记,我们还提供了一个命令参数来控制启用状态:Dwindows.enableFastLocalTcpLoopback=true 或 false,建议将这个状态设置为默认的开启的状态。
另外,现对微软的开源事迹进行了整理,具体内容如下:
- 2009 年 9 月 10 日, 微软成立 CodePlex 开放源码基金,主要用来让软件业者及开源团体分享源代码,并促进双方的交流与合作。
- 2012 年 04 月份微软成立开源子公司 - 微软开放技术(Microsoft Open Technologies),专注于微软与开源社区的合作。
- 2013 年 10 月份,微软将 GPLv3 加入到 CodePlex 开放源码基金的开源许可证列表,满足了开发者的需要。
- 2014 年 1 月份,微软在上海成立开放技术的全资子公司,致力于加强微软与开源技术和开放标准社区间的合作。
- 2014 年 1 月底,微软通过并加入了 Facebook OCP(开放计算项目),提供了 Windows Azure、Office 365、Bing 等全球性服务都在使用的服务器硬件设计规格
- 2014 年 3 月 26 日,微软把早期的 MS-DOS 和 Word for Windows 的源码对外公布, 这是微软首次将自家的核心软件的代码开源的伟大举措。
- 2014 年 4 月初,在微软 2014 年开发者大会(Build 2014)上,微软宣布将 JavaScript 框架 WinJS 、.NET 编译平台 Roslyn 、ASP.NET 的多个项目以及 Xamarin 的几个项目等开源,同时还宣布成立.NET 基金会用来全面支持开源项目。
- 2014 年 07 月,微软携手谷歌,合作开发 Azure 的多个开源项目 (包括 Kubernetes 项目、libswarm 项目)。
展望未来,微软预计将会通过.NET 基金会开源更多.Net 组件和代码库,同时它也正在寻求来自商业厂商以及.Net 社区成员的贡献。
感谢郭蕾对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。
评论