大厂Data+Agent 秘籍:腾讯/阿里/字节解析如何提升数据分析智能。 了解详情
写点什么

微软向 Linux Kernel 贡献两万行代码

  • 2009-07-26
  • 本文字数:1317 字

    阅读完需:约 4 分钟

微软在 GPLv2 协议下向 Linux Kernel 2.6.32贡献了 3 个 Linux 设备驱动,两万行代码。

微软开源技术中心主管 Tom Hanrahan 解释了微软作出这个非同寻常举动背后的动因

我们有必要理解虚拟化的一个关键点。如果操作系统作为虚拟机运行,那么它得清楚这件事,这样就不会将调用直接发给各种外围设备了。在微软的术语中,我们称其为启迪(enlightenment)。Windows Server 2008 就被设计成这样,因此它清楚何时作为虚拟机运行,何时在物理硬件上运行。 为了让 Linux 能在 Hyper-V 上拥有同样的体验,我们必须将这种启迪赋予给它。要想实现这一点则需要运行 Linux 设备驱动。

以前这些设备驱动是可以下载并用在 Hyper-V 的第一版上的,然而 Linux 社区使微软相信(通过 Greg Kroah-Hartman,他是在这个议题上与微软进行交涉的第一人)增加 Linux 设备驱动的办法就是将其贡献给社区,这样任何商业或非商业发布者都能够随意使用、修改并分发它们了。

微软开源技术中心经理 Hank Janssen(他领导的团队为这些驱动编写代码)承诺他们不会半途而废

我们将继续更新驱动代码以不断增强其协同性,同时也希望社区中的开发者觉得这些代码对他们是有用的,值得为其付出。

451 Group 的分析师 Jay Lyman就微软的这个举动发表了自己的一些看法。他认为微软会保留这些代码的知识产权:

这些代码的版权属于微软,贡献者的荣誉归功于该工程的领导者 Hank Janssen——微软开源技术中心的程序经理。

然而他的理解却是微软并不会声明任何专利权,因此也不会向使用代码的人索取任何费用:

我们不妨做最坏的打算,假设微软这么做是个阴谋:他现在为 Linux 贡献代码,然后去申请专利。但理论上是否存在这个可能完全取决于我们对 GPLv2 的理解。 …最终这是一个法律上的问题,或取决于律师的口才(显然这么说带有讽刺意味)。与此同时,我们认为微软通过 GPLv2 来贡献代码包含了一个承诺:不会对代码的使用收取费用,也不会对代码申请任何专利。

Lyman 还解释了微软之所以这么做的原因所在:

Red Hat 与 Novell 发布的 Linux 已经支持 enlighten 模式了,这要归功于与微软的合作开发。微软向 Kernel 贡献代码的一个好处是减少了重复开发工作,同时也降低了支持多种不同 Linux 实现的代价。一旦 Kernel 接受了代码,微软将以这些代码为基础进行未来的虚拟化集成开发。 这也意味着 Linux 的社区发布版也可以使用这些代码,这为微软在主机市场上开创了更多的机会,因为 Linux 的社区发布版如 Ubuntu、Debian 与 CentOS 都是非常重要的。这也加强了这些社区操作系统挑战 Red Hat 与 Novell 的能力,而后者对于 Windows 来说是更加直接的挑战者。

别搞错了,微软之所以这么做是由其利益驱使的。他必须要满足使用多种操作系统和混合环境的企业用户的各种需求,微软已经从差异化其 Hyper-V 技术与虚拟化领导者 VMware 中受益无穷了。我们有理由相信相对于 VMware 来说,微软对 Windows 的虚拟化会对 Linux 提供更加友好的体验。

需要说明的是,Linux 无需借助于上面提到的设备驱动就能运行在 Hyper-V 上,但性能却很差。这是微软首次向 Linux Kernel 贡献代码,也是首次在 GPLv2 下发布代码。

查看英文原文: Microsoft Is Contributing 20,000 Lines of Code to the Linux Kernel

2009-07-26 23:472377
用户头像

发布了 88 篇内容, 共 269.6 次阅读, 收获喜欢 9 次。

关注

评论

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

GaussDB(DWS)迁移实践丨row_number输出结果不一致

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

携手共创开源新格局|2023开放原子全球开源峰会将于6月11日在京隆重开幕

开放原子开源基金会

大数据 开源 开放原子开源基金会 开放原子全球开源峰会 开放原子

深度解析如何通过财务共享建设助推企业数智化转型

用友BIP

财务共享

微服务之流量控制

Disaster

微服务

文件传输只是第一步,文件同步和备份的关键是

镭速

微服务系列之远程服务调用

Disaster

微服务

微服务之服务容错

Disaster

微服务

23种设计模式详解

Disaster

设计模式

通义千问预体验,如何让 AI 模型应用“奔跑”在函数计算上?

Serverless Devs

全球化企业应如何统筹规划财务共享中心?

用友BIP

财务共享

微服务系列之初探“微服务架构”

Disaster

微服务

了不起的互联网老男孩,在创业路上不掉队

HarmonyOS SDK

HMS Core

市场规模超百亿 低代码与传统IT开发有何不同

力软低代码开发平台

惊!掌握通义千问的关键,从这些必知内容开始!

加入高科技仿生人

人工智能 低代码 ChatGPT 数字转型 通义千问

微服务系列之微服务架构

Disaster

微服务

让初学者读懂代码的入门书

博文视点Broadview

软件测试/测试开发丨学习笔记之接口自动化测试

测试人

程序员 软件测试 自动化测试 接口测试 测试开发

喜报!云智慧王海虎荣获中国信通院突出贡献专家奖

云智慧AIOps社区

大前端 低代码 数据可视化

AIGC背后的技术分析 | 通过EBG学习概念cup

TiAmo

机器学习 AIGC 解释学习

软件测试/测试开发丨学习笔记之用户端App自动化测试

测试人

程序员 软件测试 自动化测试 测试开发 app自动化测试

“Fabarta 数据血缘治理解决方案”荣获“2023 鑫智奖”双料奖项

Fabarta

数据挖掘 数据分析 数据治理 图智能 血缘治理

财务共享服务中心建设流程是什么样的?

用友BIP

财务共享

微服务系列之单体架构

Disaster

微服务

艾媒金榜|2023年中国信创数据库企业TOP15

亚信AntDB数据库

数据库 AntDB AntDB数据库

数字化转型,低代码开发真的靠谱?

引迈信息

低代码 数字化 JNPF

软件测试 | 软件危机的几个体现

测吧(北京)科技有限公司

测试

Musl libc 库成功适配到 openEuler Embedded,推动欧拉嵌入式生态发展

openEuler

Linux 操作系统 嵌入式 openEuler risc-v

微服务之异步消息通信

Disaster

微服务

微服务之事务处理

Disaster

微服务

spring系列之IOC容器结构

Disaster

spring ioc

微软向Linux Kernel贡献两万行代码_开源_Abel Avram_InfoQ精选文章