在Linux和windows上运行虚拟机哪个会更高效

如题所述

我的观点是:Linux上运行虚拟机要比在Windows上更高效。
主要原因有一下几点:
1、Linux 可以高度定制,因此可以对系统进行裁剪,保证 host os (也就是装在真机上的那个系统)没有无谓的资源浪费。相比之下windows就没那么好办了,看看现在的 win7,开机之后动不动就是 1GB 以上的内存占用,而我的 linux 只有不到 600MB。CPU占用也是一样,Linux小于windows。
2、Linux系统具有内存缓存机制,简单来说就是系统的内核利用一部分物理内存分配出缓冲区,用于缓存系统操作和数据文件,当内核收到读写的请求时,内核先去缓存区找是否有请求的数据,有就直接返回,如果没有则通过驱动程序直接操作磁盘,提高了文件系统的性能。windows似乎就没有这样的机制。尽管在VM面大部分软件都不是I/O密集型,但是较高的读写性能对VM的性能还是有一定影响的。
3、Linux的内核质量优于windows。
上面这3点都是操作系统层面的,除此之外,硬件因素的影响也是很大的,简单列举几点作为补充:
1、对于CPU,一般来讲,支持硬件虚拟化技术(VT)的CPU在性能上优势明显。如果你的CPU支持VT,那么在VM中碰到需要执行CPU的特权指令的时候,虚拟机软件可以利用硬件层面的VT支持完成相关操作,否则需要靠软件模拟,而软件模拟,效率差太多了。除此之外,在多VM同时运行的情况下,CPU的核心数多多益善。
2、内存,越大越好。这个也没什么好说的,内存大,可以同时跑的VM数就越多,并且内存充裕也可以避免内存吃紧时导致的虚存频繁换页,要知道虚存频繁换页会导致大量的磁盘IO,最终拖慢系统运行。
3、硬盘没必要刻意追求SSD,除非你运行的软件属于IO密集型。
本人的例子:
CPU i7 四核,内存16GB,主机系统 Debian,用vmware workstation跑虚拟机,同时开4个VM(两个Linux,两个 Window 7,每个VM分配 2 到 3 GB的内存),非常流畅。
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答