微软发布“Ubuntu on Windows” 项目,Linux 程序可原生运行于 Windows 10 中
创始人
2024-03-01 16:47:34
0

昨晚,北京时间2016/3/30 23点30分,微软 //Build 2016 开发者大会在美国旧金山莫斯康展览中心拉开帷幕。

在本次大会上宣布,微软与 Ubuntu 的母公司 Canonical 合作开发了一个超级隐秘的项目,将 Ubuntu 的 用户空间 ( user space ) 带到了 Windows 10 之中。 据大会现场消息披露,你现在可以在 Windows 10 中直接运行 Linux 下的 bash 以及其它的数万个二进制程序了

正在旧金山参加本次大会的 Canonical 的 Ubuntu 产品与战略负责人 Dustin Kirkland 也在其博客上宣布了这个消息。

“这对于我来说也许有点奇怪,我已经快有16年没有使用 Windows 了。但在几个月前有了变化,我参与到了微软和 Canonical 合作的一个超级隐秘(也十分令人震惊)的项目中,这一切会在这次 Build 大会上由 Kevin Gallo 揭晓…”,他说,“现在可以在 Windows 10 cmd.exe 窗口内原生地运行 Ubuntu 用户空间和 bash !”

“好吧,这是一个运行在虚拟机的 Ubuntu 吗?” 不!这根本不是一个虚拟机,不用在虚拟机中启动 Linux 内核,它就是 Ubuntu 的用户空间。

“哦,那是运行在容器里面啰?” 不不!这也不是一个容器,这是在 Windows 里面直接运行原生的 Ubuntu 二进制程序。

“嗯,就像 cygwin 那样?”不不不!cygwin 所包括的开源程序是以源代码重新编译后才能原生运行在 Windows 上。而这里,我们说的是一个比特都不差、校验值完全一样的 Ubuntu 的 ELF 二进制程序可以直接运行在 Windows 下

… …

“那么,这就像是模拟器一样么?”越来越接近真相了,来自微软的一些技术人员正在研究一种技术,将 Linux 的系统调用实时地转换为 Windows 的系统调用。你可以把它当成 Wine 的一种反向技术。微软将其称之为“ Windows 下的 Linux 子系统 ( Windows Subsystem for Linux ) ”,当然现在还没有开源。

如果你使用 Windows 10 来开发跨平台应用,那么“Ubuntu on Windows”项目将可以让你从 Windows 启动菜单直接访问 Linux 下的 bash shell。只需要键入 bash ,然后回车,就会打开一个命令行窗口,里面运行着 /bin/bash,然后数以万计的来自 Ubuntu 软件库中的二进制程序就可以运行了,包括但不限于 apt、ssh、 rsync、 find、 grep、 vim、 emacs、 awk、 sed、 ruby、 tar、 sort、php、 mysql、 perl、 python、 wget、 md5sum、 gpg、 curl、 apache、 gcc、 diff、patch 等等。

“这是 Windows 上原生可用的完整 Ubuntu 环境,不是虚拟化或模拟器,这是打破常识的里程碑和通向新天地的里程碑,”Canonical 公司 CEO Mark Shuttleworth 说,“不管怎么说,我们很高兴将 Ubuntu 带到了 Windows ,以一种神奇的方式满足了 Windows 开发者探索 Linux 的需要。”

这个技术当前基于 Ubuntu 14.04 LTS 开发,可以从 Windows Store 中下载早期 beta 版本。有关该项目的进一步技术细节,我们会在之后的文章中进行探讨。

相关内容

微软 Win11 版 AI...
IT之家 10 月 29 日消息,科技媒体 Windows Rep...
2025-10-29 11:15:27
万物皆可“AI”的后遗症,...
文 | 深观商业 从生成式AI的惊艳亮相引起全球科技巨头军备竞赛...
2025-10-27 22:16:09
Ubuntu认证新平台上线...
在如今的数字时代,掌握Linux系统的技能已成为许多求职者和专业人...
2025-10-26 08:16:30
硅谷AI精英每周工作100...
随着AI“军备竞赛”的加剧,硅谷的顶尖研究人员和高管们每周工作时间...
2025-10-24 14:18:32
微软Edge Copilo...
10月24日,微软宣布对Edge浏览器的Copilot模式进行重大...
2025-10-24 13:19:42
AI 时代的“Clippy...
IT之家 10 月 24 日消息,北京时间今天凌晨,微软推出了 A...
2025-10-24 09:44:32

热门资讯

Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
从 Yum 更新中排除特定/某... 作为系统更新的一部分,你也许需要在基于 Red Hat 系统中由于应用依赖排除一些软件包。如果是,如...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
如何检查你的 Linux 系统... 不知道在使用哪个初始化系统?以下是方法。每个主流 Linux 发行版(包括 Ubuntu、Fedor...
如何理解Apache 2.0许... 提要:Apache 2.0许可证中的专利许可条款使得开源代码可以安全使用,但它经常被误解。Apach...