新的“Windows 10 上的 Bash”究竟是如何工作的?

Maa*_*rik 28 windows-subsystem-for-linux

我在网上读到 Ubuntu 和 Bash 将进入 Windows 10。我还读到它不是在 Windows 上运行的模拟器或虚拟机,而是其他东西。那么这一切究竟是如何结合在一起的呢?它真的会像 Ubuntu 中的 Bash 一样稳定和用户友好吗?

Jo-*_*tad 21

它不像 WINE 不是模拟器那样是模拟器。也就是说,他们在他们的 Windows 内核中添加了一个 Linux 内核接口。当应用程序尝试使用 Linux 内核时,它会被转换为 Windows 本地系统调用,并且来自内核的任何响应都会转换为本地 Linux 响应。所以应用程序认为它在 Linux 内核上运行,因此不需要修改。

然而,这纯粹是一种 Windows 技术,所以如果你想要更多的细节,你应该从 Windows 支持组或其他地方获取它们。Windows 仍然是一个专有操作系统,所以我预计细节有限。

它真的会像 ubuntu 中的 bash 一样稳定和用户友好吗?

从 Ubuntu 的角度来看,我们只是在原始 Linux 内核上运行,类似于在原始 X 服务器上运行现代桌面。如果您只使用假内核支持的功能,那么它会很稳定且用户友好。如果您使用不受支持的功能,它将不稳定。

它不会很快接近完整的 Ubuntu 体验。

  • “不是模拟器”可能属于引号;像 Wine 一样,它*是*一个模拟器,不是在硬件级别而是在 API 级别。两者都会导致性能损失,具体取决于您在做什么(即您进行了多少系统调用)。 (2认同)
  • @thomasrutter 对不起,我不同意。你对“模拟器”的定义太松散了。在这样的解释下,我们也必须调用代理模拟器(但它们不是)。模拟器,顾名思义,就是模拟事物。WSL(和代理)不模拟事物,它们转换和转发事物并返回响应。 (2认同)

Ric*_*ner 21

对于那些对 Windows Subsystem for Linux (WSL) 的工作原理以及它如何运行本机 Linux ELF-64 二进制文件感到好奇的人,我们发布了一系列博客文章和随附视频,解释了 WSL 架构、进程、系统调用和文件系统支持.

Scott Hanselman 还制作了一个很棒的演练视频,介绍了安装过程以及如何在 Windows 上的 Ubuntu 上配置 Bash:

HTH

  • 第一个链接不再起作用,我认为它已移至此处:https://blogs.msdn.microsoft.com/commandline/learn-about-windows-console-and-windows-subsystem-for-linux-wsl / (3认同)

归档时间:

查看次数:

10428 次

最近记录:

4 年,8 月 前