简介
虚拟化简单的说就是我们平常所接触的在一个OS上运行另一个OS,这句话说的的确不假,但是这只是虚拟化的一个实例而已,而在虚拟化的定义上,有狭义和广义之分,因为虚拟化是对资源的逻辑抽象,隔离,在分配,管理的过程,而这个过程会将我们的硬件资源进行充分利用的过程。通常广义上虚拟化意味着讲不存在的事物或者现象虚拟成存在的事物,而在计算机方面的虚拟化则包括平台虚拟化,应用程序虚拟化,存储虚拟化,网络虚拟化,设备虚拟化等等方面,而狭义的虚拟化则指的是在计算机上模拟运行多个OS。而在我的理解中则是,虚拟化就是在将底层的硬件资源与上层的应用程序进行隔离,然后在中间加一个hypersion,通过对底层硬件资源的管理,进行逻辑抽离,将在有限的资源上进行充分的利用,从而避免浪费。例如没有使用过虚拟化的CPU利用率只是30%左右,使用过虚拟化可以讲CPU的利用率提升到60%左右,大家都知道CPU的利用率一直都是硬件资源最低的一个,CPU的利用率都能达到这么大的提升,何况是内存,网络这些东西呢!
虚拟化分类
在虚拟化发展的这些年,按照不同的标准进行分类包括全虚拟化,CPU虚拟化,硬件虚拟化,服务器虚拟化,桌面虚拟化等。下面介绍四类主要的分类方法。
(1)从虚拟化的层次划分,主要分为软件辅助的虚拟化和硬件支持的虚拟化。
软件辅助虚拟化指的是,通过软件的方法,让客户机的特权指令陷入异常,从而触发宿主机进行虚拟化。主要使用的技术就是优先级压缩和二进制代码翻译。
硬件虚拟化指的是在CPU中