我刚买了一台新笔记本电脑,我选择它主要是因为它的电池续航时间长。它配备了 i5 第 8 代处理器和 8GB RAM。它预装了 Windows 10 Home 系统。
现在,我对在 Windows 笔记本电脑上安装 Linux 终端的想法很感兴趣,因此我正在考虑付费升级到 Windows 10 Pro 以启用 Windows Subsystem for Linux (WSL)。
我想知道的是这两件事(升级到 Pro 并启用 WSL)是否会明显影响我的机器的性能(无论是处理器负载、内存使用情况还是电池使用情况)。
有人有什么主意吗?
编辑:现在我很清楚 WSL 不需要 Windows 10 Pro。但我认为这个问题的两个部分仍然值得思考。
答案1
不会,升级到 Windows 10 专业版或使用 WSL 不会降低性能。Windows 10 家庭版和专业版几乎完全相同,它们之间不会存在性能差异。
显然,在 WSL 下运行 Linux 应用程序会占用资源。
答案2
Windows 10 专业版:此版本的 Windows 主要用于商业用途,具有加入 AD(Active Directory)等功能、可使用组策略编辑器以及用于运行虚拟机的 Hyper-V 等其他有用功能。
我找不到任何文章说 Windows 10 Pro 的性能优于 Windows 10 Home。性能应该大致相同,尽管 Windows 10 Pro 可能会因为其扩展功能而使用稍多的空间(使用的空间量很可能可以忽略不计,并且低于 1 GB,没有启用 Hyper-V 等特殊功能)。
适用于 Linux 的 Windows 子系统:这是一项可选功能,甚至适用于 Windows 10 家庭版;无需为 WSL 升级到 Windows 10 Pro。
可以在 Windows 功能对话框中启用它。启用后,可以从 Windows 商店下载 Linux 发行版。
安装此功能不会带来任何性能改进。使用 Linux 子系统时,性能可能会比不使用时更差。归根结底,它是一个在 Windows 内部运行的程序,并且会根据您使用它的目的而使用系统资源。运行复杂的 shell 脚本会比只打开 shell 而不执行任何操作占用更多的 CPU 时间。
答案3
当问到这个问题时,WSL2 还不存在,而随着 WSL2 的出现,答案有所改变。
WSL2 使用 Hyper-V 功能的子集(打包为“虚拟机平台”,以便也可以在 Windows Home 上使用)。即使您不使用 WSL,在 Windows 中打开虚拟机管理程序(无论 SKU 如何)也会自动占用大约 1GB 的 RAM。(最初发现于此 Reddit 帖子,并附有指向浆纱doc 也是如此)。
因此,如果您在 Windows 中确实遇到内存不足的情况,这可能会由于交换等而产生性能问题,而 WSL2 可能会在一定程度上加剧这种情况。
但是,CPU 的影响大致没有变化——当不使用时,WSL1 和 WSL2 的 CPU 影响几乎可以忽略不计,正如这里的其他答案所提到的。
答案4
我不是在 Windows 上运行的 WSL2 的内核调度仲裁方面的专家,但看起来虚拟机管理程序从与原生 Windows 内核相同的池中委托资源和计算周期。因此,没有不必要的资源分配或类似的东西,只针对在 WSL 平台上运行的应用程序。