当前位置:首页 > 虚拟化 > 正文

半虚拟化讲解(半虚拟化和e1000)


一、半虚拟化和全虚拟化的区别是什么?全虚拟化,也称为原始虚拟化技术,是另一种虚拟化方法。该模型使用虚拟机来协调来宾操作系统和原始硬件(见图2)“协调”是这里的一个关键词,因为VMM用于来宾操作系统和仅硬件之间的工作协调必须捕获一些受保护的指令并由Hypervisor(虚拟机管理器)处理,因为操作系统通过Hypervisor共享底层硬件,所以全虚拟化运行速度比硬件模拟快,但性能不如裸机,因为Hypervisor需要占用一些资源。全虚拟化的主要优点是操作系统没有经过任何方式的修改。限制是操作系统必须能够支持底层硬件(例如,具有一些旧硬件(例如x86)的PowerPC虚拟机管理程序在全虚拟化方面遇到了问题)。由VMM处理(VMM不能设置陷阱)。因此,Hypervisors必须扫描并捕获特权代码来处理该问题。半虚拟化是另一种流行的技术,与完全虚拟化类似,它共享对底层硬件的访问,但其客户操作系统集成了虚拟化代码。这种方法不需要重新编译,也不会引入陷阱,因为操作系统本身可以与虚拟进程进程很好地配合。如上所述,半虚拟化需要对客户操作系统进行一些修改(与虚拟机管理程序配合),这是一个缺点。然而,半虚拟化提供了与原始系统相似的性能。半虚拟化可以同时支持几种不同的操作系统,有一个问题:在半虚拟化环境中,没有修改内核的操作系统是无法运行的,它运行在主机系统环境上,那么vmwera可以在一台机器上运行xpCPU不支持vt。
二、说一说什么是虚拟化?

虚拟化是资源的逻辑表达,并不局限于物理资源。运行时环境不在实际硬件上,而是在硬件的虚拟内存部分或虚拟环境中。

虚拟化提供了数据、计算能力、存储资源等的逻辑视图,而不是物理视图。虚拟化的进步大大降低了IT硬件成本,减少了资源浪费,提高了系统稳定性和安全性。1.也称为全虚拟化(FullVirtualization),最初的虚拟化技术是客户的,用于协调系统和裸硬件之间的操作。全虚拟化运行速度比硬件模拟快,但性能不如裸机,因为虚拟机管理程序必须占用一些资源。这种方法不需要任何重新编译或瓶颈,因为操作系统本身可以很好地处理虚拟进程。半虚拟化需要对来宾操作系统进行一些修改,以使来宾操作系统识别出它处于虚拟环境中,但半拟化提供了与原始操作系统类似的性能。

扩展信息:

虚拟机设备队列(VMDq):提高I/O吞吐量。在传统的服务器虚拟环境中,VMM必须对每个数据包进行分段并将其发送到适当的虚拟机。这会消耗许多处理周期。通过VMDq,这个分配任务可以由Intel服务器网卡中提供的硬件来完成,VMD只需要负责将预先分配的一组数据包发送到相应的虚拟机即可。这减少了I/O延迟,并为处理器提供了更多可用周期来运行业务应用程序。IntelVT-c可以将I/O吞吐量提高一倍以上,从而使虚拟化应用程序能够达到接近物理服务器的性能速率。

虚拟机直连(VMDc):极大提高虚拟化水平。VMDc允许虚拟机直接访问网络I/O硬件,从而大大提高虚拟机性能。例如,在单个Intel10G服务器NIC上,可以为10个虚拟机中的每一个分配一个受保护的1Gb/s专用链路。这些互连直接绕过VMM交换机,进一步提高I/O性能并减少服务器处理器的负载。

参考资料:-虚拟化


三、服务器虚拟化技术主要有服务器虚拟化是指将一台物理服务器划分为若干个虚拟服务器的技术。常见的服务器虚拟化方式有以下三种:



全Vamaya:全虚拟化是一种基于软件的虚拟化技术,在物理服务器上安装虚拟化(如VMware、Hyper-V等).)创建虚拟化层(Hypervisor)来模拟硬件环境。在全虚拟化中,每个虚拟机(VM)运行独立的操作系统和应用程序,不需要对应用程序进行任何修改。虚拟化层负责将虚拟机的请求转发到物理服务器硬件资源。

半虚拟化:半虚拟化是一种修改操作系统的虚拟化技术。在半虚拟化中,虚拟机需要修改操作系统才能与虚拟化层进行通信。虚拟化层提供了一组API,虚拟机通过这些API与虚拟化层交互以访问物理服务器资源。半虚拟化可以提供比全虚拟化更高的性能,但需要对操作系统进行修改。

容器虚拟化(ContainerVirtualization):容器虚拟化是一种轻量级虚拟化技术,它在操作系统级别而不是在虚拟机上创建多个隔离的用户空间(容器)。容器共享操作系统内核,每个容器运行在独立的用户空间,拥有自己的文件系统、进程空间和网络接口。容器虚拟化可以实现更高的性能和更快的启动时间,但容器之间的隔离性相对较弱。点击了解更多