虚拟化:
一台PC机的组成包括:Keyboard(键盘)、Monitor(显示器)、CPU、RAM、I/O(Disk,Network),这是基本的五大部件。
虚拟化就是在这些基础物理设备上运行多个OS。
注:通过抽象系统资源(计算、存储、网络),在原有物理设备上模拟OS,来方便使用管理;
比如将服务器抽象为计算池、存储池、网络池,创建虚拟机时从其中抽取相关资源。
虚拟化和云计算:
虚拟化是一种技术,云计算是一种使用模式。 虚拟化是指将物理的实体,通过软件模式,形成若干虚拟存在的系统,其实真是运作还是在实体上,只是划分了若干区域或者时域划分。 云计算的基础是虚拟化,但虚拟化只是云计算的一部分,云计算其实就是在虚拟化出若干资源池以后的应用,但虚拟化并不是只对应云计算的。 虚拟化是云计算的重要支撑技术。是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。通过虚拟化,可以将应用程序和数据在不同层次以不同的方式展现给客户,为使用者和开发者提供便利的虚拟化过程,为资源带来了灵活性,从而改善IT运维和减少成本支出。
概念:
Guest OS:虚拟机操作系统
Guest Machine:虚拟出来的虚拟机
Hypervisor:虚拟化软件层/虚拟机监控机(Virtual Machine Monitor,VMM)
Host OS:运行在物理机之上的OS
Host Machine:物理机
CPU虚拟化------Ring0
在x86架构中CPU为了保护特权指令的运行,提供了指令的4个不同Privilege特权级别,术语称
为Ring,从Ring 0~Ring 3。Ring 0的优先级最高,可运行所有特权指令,Ring 3最低。而对于一个OS来说它必须是运行在Ring0上的,当然对于GuestOS来说也是如此,因此对于VMM就必须模拟让GuestOS认为自己是运行在Ring0上;这样当GuestOS向CPU发送一个特权指令时,VMM(虚拟机监控器,或叫Hypervisior)必须监测到并调用BT捕获这个特权指令,在BT进程内部将特权指令转换为非特权指令,然后,由VMM向宿主OS发起请求进行处理。