我希望这两个操作系统都具有最高的性能,并且希望它们之间无需重新启动即可切换。我有足够的内存(32 GB)和磁盘空间。
两个简单的选项是:
- 双重启动-不允许在操作系统之间进行即时或几乎即时的切换
- 使用VM(例如VirtualBox)-这会严重损害托管OS的性能,尤其是对于图形
(最好是通过键盘快捷键或其他类似方法)在两个操作系统之间进行切换(其中一个是热的,另一个是“待命热”)会很棒。
我希望这两个操作系统都具有最高的性能,并且希望它们之间无需重新启动即可切换。我有足够的内存(32 GB)和磁盘空间。
两个简单的选项是:
(最好是通过键盘快捷键或其他类似方法)在两个操作系统之间进行切换(其中一个是热的,另一个是“待命热”)会很棒。
Answers:
在您的问题中没有提到的还有两种并行运行Windows和Linux的方式:
我相信开销最小的解决方案是使用Linux作为主要操作系统,并使用KVM(基于内核的虚拟机,虽然也可以使用KVM切换器,但也可以使用KVM切换器)来虚拟化Windows。您现在可以获得的性能几乎可以在裸机上运行,甚至可以通过辅助GPU传递给VM,或者拥有单个专用GPU并为主机使用集成GPU。您还可以使用Looking Glass提供比使用spice(这是virt Manager默认使用的,并且与使用远程桌面基本相同)的响应更快的解决方案。https://forum.level1techs.com/t/looking-glass -指南帮助和支持/ 122387
唯一棘手的部分是硬件兼容性。有很多怪癖,例如需要与Intel VT-D或AMD同类产品兼容的CPU和主板,需要具有UEFI VBIOS的足够新的GPU(或从制造商处获得VBIOS),您的IO所使用的芯片这有助于将外围设备专用于VM等。
我建议阅读此博客文章,以了解如何进行设置。这绝对不像使用virtualbox或VMWare那样简单,但是如果您通过设置virt manager来设置它,则可以跳过此人执行的许多手动步骤。在Arch Wiki上的KVM,QEMU和VFIO下,还有很多关于这一切的信息。https://heiko-sieger.info/running-windows-10-on-linux-using-kvm-with-vga-passthrough/
如果使用2600k,则需要降级为非K版本,并检查主板是否也支持VT-D。我在使用3700k和不兼容的主板时遇到了同样的问题,不得不将它们都换掉,但是最终我通过eBay的购买和销售赚了一点钱。
为了详细说明我使用的一些术语,这里有一些简短说明。
Virt-manager(或Virtual Machine Manager)是一个GUI应用程序,用于使用KVM管理您的虚拟机。您可以认为这使您的体验与使用VMWare或VirtualBox时的体验更加接近。它为您提供了用于设置VM的向导,允许您更改正在通过的硬件,显示资源使用情况的图表,并管理电源。更多信息和屏幕截图可在以下网站上找到:https : //virt-manager.org/
Spice为您提供了对VM的远程访问。它在使用和性能方面都与使用远程桌面非常相似,但是默认情况下,virt manager会使用它。我希望我可以更具体地描述我,但我并没有使用太多,甚至该网站对于具体内容还是很含糊。https://spice-space.org/
窥镜是使用Spice之类的替代方法,但延迟极低。它将帧缓冲区从GPU复制到系统内存,然后将其吐出到屏幕上。它仍处于开发初期,但效果很好,并且更适合于需要响应速度更快的解决方案的应用程序。该项目的网站上提供了非常全面的设置指南:https://looking-glass.hostfission.com/quickstart
Spice和Looking Glass的另一种选择是将显示器连接到通过GPU的输出之一。这响应更快,但是将需要另一个显示器或在同一显示器上切换输入。
正如该问题的所有其他答案都提到的那样,虚拟化是必经之路。最小化性能损失的一种方法是将Windows作为主要操作系统运行,并虚拟化轻量级 Linux发行版。您可以尝试以下方法:
通过选择轻量级发行版,您可能能够充分降低性能,以设置满意的系统。
使用X11技术堆栈(大多数)的Unix / Linux GUI应用程序固有地能够显示在远程计算机上(包括网络连接的VM及其主机的场景)。
您可以在Windows机器上安装X11显示服务器(有多个免费和非免费选项),可以在VM中运行linux系统(甚至多个linux系统),并且可以在Windows中进行实际的图形处理。端X11服务器。linux系统中的GUI应用程序将通过本地网络连接到X11显示服务器(此处的设置方法已超出范围,因为有许多不同的实现方法。指针:DISPLAY环境变量,带有X11转发功能的ssh, XDMCP)。
我是在高性能的情况下完成此操作的,对于我们正在运行的应用程序,其性能几乎达到了本机性能。这不是“如何做”,而是两个示例,说明我在哪里完成了这些工作,并获得了足够的性能并解决了问题。
我当前的工作站(笔记本电脑和工作站)在两个单独的分区上并排安装了Windows 10和Ubuntu。启动计算机后,我可以选择Windows或Ubuntu并启动到任一操作系统。在Ubuntu中,我使用VirtualBox来引导本机Windows分区并像运行其他任何虚拟机一样运行它(请参见此处)。
一切正常:拖放,共享剪贴板和文件共享。我在虚拟机中不断运行大型,多线程的Excel电子表格(不要射击-我没有构建它们!),一切都很糟糕。
几年前,我使用CentOS和Windows 7构建了类似的设置。这样,我的同事就可以在Linux中运行昂贵的,性能要求高的地球物理模拟,同时仍然能够在Windows中访问类似性能要求高的2D和3D映射软件。 7(以及Outlook和Microsoft套件的其余部分)。我们试用了VirtualBox,但花了很多钱,最终还是使用VMware Workstation和GPU传递解决了该问题(与薪水和软件许可相比,成本是微不足道的)。对于我们的应用程序,我们在Windows中达到了接近本机的性能,每个人都对该设置感到非常满意。
在当时(大约在2010年),这些机器非常笨拙:Quadro 4000,双四核Xeon和32 GB内存。组装这些设置中最艰巨的部分(据我所记得)与硬件RAID控制器有关。我使用此设置维护了大约十二台计算机,并且在购买这些计算机的整个项目周期(〜2年)中,我们从未遇到过任何问题。对于我们来说,这是一个了不起的结果,因为如果一台机器停机一周,那么与工作站本身相比,这将使我们损失更多的生产力!
您可以使用上述双启动选项获得非常好的性能。我在不同场合使用VirtualBox和VMware进行了此操作,并结合使用Linux发行版(Mint,Ubuntu和CentOS)和Windows版本(7、10),并始终获得满足我需要的性能。
此设置的另一个优点是,如果a)您的情况发生了改变,或者b)此设置不足以满足您的需要,则可以对分区进行核对并保留Windows或Linux。如果性能不能满足要求,您还可以直接启动进入需要更多性能的操作系统。
最后,关于许可的说明:如果以本地方式启动Windows,它将看到不同的硬件并向您询问许可。对于Windows 10来说,这并不是什么大问题,因为在您进行工作时,它只会使您烦恼。我不记得我们是如何为那些地球物理工作站解决这个问题的。我确实记得我们有批量许可证,并且可能还有Microsoft代表的一些帮助。
我还使用VirtualGL和GPU集群设置了工作站,以进行高性能的石油模拟。我什至已经在AWS中完成了此操作,但出于多种原因,我不建议这样做:成本,性能和便利性。
我不知道有什么方法可以做到这一点,但并没有引起很大的注意。
如果是Chromebook,则可以使用Crouton完成类似的操作。但这是在Chrome操作系统和另一个发行版(名义上是Ubuntu)之间共享内核。由于Windows和Linux使用不同的内核,因此这种方法是不可能的。他们在一起玩的不好。
要引导操作系统,内核需要具有对硬件的低级访问权限,并且即使不是不可能的,要同时运行两个不同的内核(Windows和Linux)也不是一件容易的事。
如果您坚持使用单台计算机,则某种虚拟化可能是您唯一的选择。我没有使用Mac,但是从我所看到的来看,Parallels是无缝的-您可以使用热键在操作系统之间“切换”。我在Windows和Linux上都使用过VMWare,并且对托管(来宾)操作系统的性能感到惊讶,它非常接近本机(尽管我没有测试图形密集的工作负载)。VirtualBox是开源和免费的,它可以正常运行,但是VMWare可以更好地工作。我认为有一个有限的免费版本。
如果您坚持要在两个操作系统上都具有本机性能,那么双重引导是实现该目标的唯一方法。如果您有快速的SSD(例如Samsung 960或类似的SSD),那么重启就不需要那么长时间。
硬件虚拟化太有问题了。尽管这对90%的事物有好处,但另外10%的事物有时会阻塞您,最终使您放弃整个概念。
有人在评论中提到了这一点,但我确实认为使用KVM切换器的并排计算机是完成您所要求的最有效方法。
我已经运行了两年并排运行的两台Linux和Windows计算机。我有两个32“监视器并排放置;一个插入Linux机器,另一个插入Windows机器。
我有一个可滚动调节的键盘/鼠标桌,可让我用键盘/鼠标站立或坐在两个显示器(或两个显示器)前面居中。
更重要的是,KVM切换器允许您在控制Linux系统或控制Windows系统之间立即切换。
您还可以更进一步,购买Synergy,它通过使用软件在计算机之间切换鼠标和键盘来完全消除KVM切换的需要。
不再烦人的双重启动,KVM / VirtualBox / VMWare开销或不兼容性,您仍然会感觉它是一台计算机。
根据您要实现的目标,可以尝试Wine。
Wine(最初是“ Wine不是模拟器”的缩写)是一个兼容性层,能够在多个POSIX兼容操作系统(例如Linux,macOS和BSD)上运行Windows应用程序。
这将允许您在Linux上并行运行Linux和(某些)Windows应用程序。
可以在https://appdb.winehq.org/上找到已知可以与Wine一起使用的Windows应用程序列表。
我个人使用它在使用DirectX的Linux上运行一些游戏,而DirectX没有Linux版本。众所周知,像Microsoft Office这样的应用程序都可以使用它。
一切都有优点和缺点。以下是截至2018年5月对我有用的产品:
VirtualBox:这有效。现在。每天。我运行Windows主机和Ubuntu VM。一切都很棒,包括多监视器支持和网络连接(我使用桥接模式,因此每个VM仅在与主机分开的网络上显示)。我不喜欢由“大人物”控制的解决方案,但说实话,Oracle至少已经正确地使用了此产品。
运行多台计算机,这是一个很好的方法! Synergy甚至可以让您将鼠标和键盘跨过它们。 DDM USB KVM也不错,但价格昂贵!
双启动:我在大多数计算机上运行四启动或更多启动。您将必须了解GPT和旧式MBT分区,以及每个操作系统如何处理它们。Refind在帮助您使其正确使用方面做得非常出色,尤其是在您拥有半现代硬件的情况下。即使我总是在所有PC上都设置Windows-Ubuntu(-Mac)引导,但实际上,我从来没有真正重启到其他操作系统。太破坏了。相反,总是最终将每台计算机专用于一个OS上的一组特定任务。
在Windows中运行X服务器,然后从网络VM中拉入Linux窗口。可以办到; 我成功运行了x2go一段时间。但请参阅下一项,以了解为什么我不走这条路线。
在(任何)网络上使用VM:我曾尝试过使用AWS VM,vSphere VM和所有其他组合进行开发,由于您是网络的奴隶,因此您总是会在短时间内放弃它在开发过程中不希望处理的问题。即使您拥有惊人的惊人网络资源,也不要考虑它。
最后一点,我应该提到的是,只要有可能,我总是在专用的Ubuntu计算机上进行开发。VirtualBox解决方案挽救了我在美国公司的支持。走进口袋里的VM映像,在笨拙的新Windows Lappie上安装VirtualBox,开始吧!
除了这里提出的其他解决方案之外,还有一种我曾经尝试过的“跨虚拟化”方法:
/home
和Documents and Settings
)与系统分区分开这仍然意味着您将拥有两个操作系统之一的虚拟化开销。但是您可以在引导时决定哪个主机作为主机,哪个主机作为客户机。
数据通过网络共享(例如,在Linux机器上安装Samba)。
您将需要维护每个OS设置两次(主机安装和VM维护两次)—从技术上讲,您有四台计算机,除非您使用下面描述的快捷方式。
由于Linux(至少是Ubuntu的各种版本)可以轻松地适应不断变化的硬件(以至于我可以将磁盘从旧笔记本电脑中取出,安装到新笔记本电脑中,并且只需要重新配置网络适配器),您可以也让Linux VM从原始分区引导系统。这样,对Linux主机所做的更改也将反映在VM中,反之亦然,唯一的例外是与特定硬件设备相关的设置。
Windows许可可能是一个警告。(那时候,我在Windows 2000上,这一切都比较容易。)就Windows而言,您正在两种不同的硬件配置(处理器,磁盘,网络适配器)上运行它。虽然我不确定法律含义,但是产品激活过程可能需要您获得两个许可证。(如果可以让Windows在VM的原始分区上运行,则它可能会检测到硬件更改,并且每次在主机和来宾配置之间切换时都需要重新激活。)
我这样做是(尽管我在macOS和Windows之间切换),方法是将Windows安装在云中的VM上,而不托管在Mac上。我以前确实使用Boot Camp进行双重引导,然后使用VMware Fusion进行本地主机VM,但是我发现拥有基于云的Windows和使用远程桌面连接是切换时最方便的。
(我只是可以使用CMD-TAB即时切换桌面。)
希望这种经验对您有所帮助。
一些开箱即用的建议可能适合特定的利基用例:
如果您无头奔跑,那么Linus几乎可以在任何地方奔跑,而且重量轻。我之前已经将其作为Windows服务运行,并且能够从Windows中运行的ssh客户端或X服务器连接到它(因此仅显示所有Linux GUI)。
同样,您可以将树莓派用胶带捆扎在笔记本电脑的背面,将其插入USB端口,并使两台计算机同时运行。同样,您必须使用Windows机器来访问Linux机器,但是使用此解决方案,您仍然可以无忧无虑地进行X / ssh访问,但也可以将远程桌面(RDP)插入PI中并使用X实施,这将使您获得更好的linux桌面体验(我上次检查时,用于Windows的免费X服务器运行缓慢,难以设置且容易出错)
这些都不能为您提供高速的全屏Linux工作站,但是在某些情况下,它们会提供有趣的解决方案。
我只是在开胶带...
大多。
在主机上使用您选择的GNU / Linux系统,然后使用PaaS解决方案。对您来说可行的一种就是“ 影子 ”。
Shadow是一款功能强大的Windows 10 PC,可以播放,工作和浏览。
用计算机做您喜欢做的一切。但是更好。
它基本上是在主机上作为应用程序运行的,但实际上是云中的计算机。您可以无缝切换到该应用程序,就像您专注于其他任何应用程序一样。