什么是CPU虚拟化_服务器虚拟化技术作用如何?

 

在计算机中,虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。这些资源的新虚拟部份是不受现有资源的架设方式,地域或物理组态所限制。一般所指的虚拟化资源包括计算能力和资料存储。

CPU虚拟化有什么作用?

 

https://upload.kcloudidc.com/idcnews/imgs/2018-11-15/20160806225312_52042.jpg

CPU虚拟化技术十分有用,例如在Win10系统中运行基于Win XP或Win7开发的应用,程序能够正常运行,不会出现不兼容的情况(部分程序本身兼容

性问题除外)。一般有软件虚拟和硬件虚拟两种,软件虚拟效率低,资源消耗大,硬件虚拟则可以大幅度提高效率,加快程序运行速度。

此外,虚拟机也是相同的道理,但是虚拟主机对系统资源的消耗十分恐怖,但是有了硬件级VT技术,也便于虚拟主机的部署。

虚拟化技术的分类主要有服务器虚拟化、存储虚拟化、网络虚拟化、应用虚拟化。

服务器虚拟化技术按照虚拟对象来分,可分为:CPU虚拟化、内存虚拟化、I/O虚拟化;按照虚拟化程度可分为:全虚拟化、半虚拟化、硬件辅助虚拟化。

将不同的虚拟化对象和程度组合,可得出9种不同的服务器虚拟化技术。

然后详细介绍下服务器虚拟化CPU虚拟化,后续讲解中再详细介绍内存虚拟化及I/O虚拟化。

https://upload.kcloudidc.com/idcnews/imgs/2018-11-15/75437210-531768062.png

基于软件的 CPU 虚拟化,故名思议,就是通过软件的形式来模拟每一条指令。通过前面的文章我们知道常用的软件虚拟化技术有两种:优先级压缩和二进制代码翻译。这两种是通用技术,可以用在所有虚拟化类型中。我们就结合 intercept 和 virtualize 来看看 CPU 软件虚拟化是怎么做的。

首先,一些必须的硬件知识要知道,X86 体系架构为了让上层的软件(操作系统、应用程序)能够访问硬件,提供了四个 CPU 特权级别,Ring 0 是最

高级别,Ring 1 次之,Ring 2 更次之,Ring 3 是最低级别。

一般,操作系统由于要直接访问硬件和内存,因此它的代码需要运行在最高级别 Ring 0 上,而应用程序的代码运行在最低级别 Ring 3 上,如果要访问硬件和内存,比如设备访问,写文件等,就要执行相关的系统调用,CPU 的运行级别发生从 Ring 3 到 Ring 0 的切换,当完成之后,再切换回去,我们熟悉的用户态和内核态切换的本质就来自这里。

虚拟化的实现也是基于这个思想,VMM 本质上是个 Host OS,运行在 Ring 0 上,Guest OS 运行在 Ring 1 上,再往上是相应层次的应用程序运行在 Ring 2 和 Ring 3 上。

  • CPU半虚拟化技术

https://upload.kcloudidc.com/idcnews/imgs/2018-11-15/0Z9321506-3.png

主要采用Hypercall技术。Guest OS的部分代码被改变,从而使Guest OS会将和特权指令相关的操作都转换为发给VMM的Hypercall(超级调用),由VMM继续进行处理。而Hypercall支持的批处理和异步这两种优化方式,使得通过Hypercall能得到近似于物理机的速度

 

好啦,暂时就给大家讲一部分虚拟化的知识,希望大家喜欢,后续还会给大家补充的。

图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/110.html

(0)
上一篇 2018年11月13日 17:09
下一篇 2018年11月18日 15:26

相关推荐

  • 如何使用PLSQL批量导出数据库数据?掌握核心步骤与最佳实践!

    PLSQL批量导出数据库数据的专业实践与优化策略在数据库管理实践中,批量导出数据是数据迁移、备份、分析等场景的核心环节,PLSQL作为Oracle环境下的核心编程语言,凭借其强大的控制流、事务管理和批量操作能力,成为实现高效批量导出的关键工具,本文将从方法选择、优化技巧、实际案例到常见问题,全面解析PLSQL批……

    2026年1月14日
    03240
  • PHP怎么设置本地时间?如何修改服务器地址时区?

    在PHP开发与运维中,确保应用程序时间的准确性是保障业务逻辑正确运行的基础,要实现PHP设置本地时间与服务器地址(即服务器所在的物理或逻辑时区)保持一致,核心在于正确配置php.ini中的date.timezone指令或在代码中精准调用date_default_timezone_set()函数,同时必须确保服务……

    2026年3月4日
    01292
    • 服务器间歇性无响应是什么原因?如何排查解决?

      根源分析、排查逻辑与解决方案服务器间歇性无响应是IT运维中常见的复杂问题,指服务器在特定场景下(如高并发时段、特定操作触发时)出现短暂无响应、延迟或服务中断,而非持续性的宕机,这类问题对业务连续性、用户体验和系统稳定性构成直接威胁,需结合多维度因素深入排查与解决,常见原因分析:从硬件到软件的多维溯源服务器间歇性……

      2026年1月10日
      020
  • 如何有效取消push服务所使用的域名设置?

    在互联网时代,域名是个人或企业的重要资产,有时,用户可能会因为各种原因需要取消域名绑定,以下是关于如何取消Push的域名绑定的一篇详细指南,推域名取消绑定步骤登录域名注册商账号您需要登录到您购买域名的注册商账号,这通常是通过注册商的官方网站进行的,在登录界面输入您的用户名和密码,进入域名管理界面登录后,找到域名……

    2025年12月19日
    02290
  • 中国移动宽带38元套餐包含什么?移动38元宽带具体服务内容有哪些

    中国移动宽带38元档位:高性价比家庭宽带的理性选择与深度价值解析38元档位是中国移动宽带最具性价比的入门级家庭宽带方案,它以“低门槛、高可靠、强服务”为核心优势,满足中小家庭基础上网需求,同时通过融合套餐设计实现通信成本整体优化, 在当前运营商宽带价格战趋缓、用户更关注服务品质的背景下,该档位凭借移动网络覆盖广……

    2026年4月17日
    03382

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注