《虚拟机中的一致化共享》
by Raywill
再次闪念……
看文档太不全神贯注了=.=
VMWare中跑Windows全系统模拟的时候,如果VM能将Windows中所有的磁盘都映射到虚拟机中来该多好呢?那样就产生了一种极为general的host OS与target OS间共享数据的方法了。这种做法比当前使用的共享文件夹的做法要彻底得多。
在这种方法中,VM中需要创建的只是一个虚拟系统分区盘(这个跟当前VM的做法一致),其他分区则直接去映射host机中的分区(当前VMWare的做法是,通过文件的方式建立一个虚拟硬盘,然后在这个虚拟硬盘上建立系统分区、数据分区等等)。
这种技术的优势有如下几点:
1、节省磁盘空间
我们为了实现数据共享,当前实际使用的最常见的做法中,常常需要将host OS中的文件拷贝到target OS中,浪费了空间。如果能建立一致的、真实的共享,则符合用户操作习惯,节省大量磁盘空间,节约复制数据的时间。
2、文件共享
VMWare中建立共享文件夹的方式一定程度上解决了这个问题,但还很不彻底,对于用户使用虚拟机还很不方便。如果能映射磁盘,不仅概念上用户易于接受,而且更加方便。
实现这个技术存在以下难点:
1、异构OS之间的共享
上面的做法最容易实现的情景就是host OS和target OS的文件系统相同。当两个文件系统不相同的时候,问题可能变得复杂得多。
2、虚拟机的负担
此时虚拟机可能需要判断对于磁盘的读写应该导向哪里:虚拟磁盘还是实际分区?这样虚拟机的负担可能就加重了。当前VMWare的实现中,采取一窝端的方式,全部都是往虚拟磁盘上写,就不用操心了。