Skip to content

408

操作系统

虚拟机


一、定位信息

  • 所属圈层:核心层
  • 前置知识:了解操作系统的基本概念和功能(OS-01-01),了解CPU运行模式(用户态/内核态,OS-01-03)
  • 知识网络位置:虚拟机是OS"虚拟"特征的高级体现,理解虚拟机有助于深化对OS本质(资源抽象与隔离)的认识
  • 考点热度等级L级(低频了解)——近5年真题中偶尔出现,了解基本概念即可

二、知识点讲解

2.1 虚拟机的概念

虚拟机(Virtual Machine, VM)是通过虚拟化技术在一台物理计算机上创建的多个逻辑计算机。每个虚拟机都拥有独立的虚拟硬件(CPU、内存、磁盘、网卡等),可以运行独立的操作系统和应用程序。

2.2 虚拟机的类型

类型实现方式特点典型代表
第一类虚拟机(裸金属型)虚拟机监控程序(VMM/Hypervisor)直接运行在硬件上性能高,开销小VMware ESXi、Xen、KVM
第二类虚拟机(宿主型)VMM运行在宿主OS之上部署方便,性能略低VMware Workstation、VirtualBox

2.3 虚拟机监控程序(VMM/Hypervisor)

VMM是虚拟化的核心软件层,负责:

  • 资源虚拟化:将物理资源抽象为多个虚拟资源
  • 隔离保护:确保各虚拟机之间互不干扰
  • 调度管理:合理分配物理资源给各虚拟机

VMM需要满足的三个条件:

  1. 等价性:虚拟机的运行行为与物理机一致
  2. 资源控制:VMM完全控制物理资源
  3. 效率性:大部分指令直接在物理CPU上执行(非陷入模拟)

2.4 虚拟化技术分类

技术虚拟对象说明
全虚拟化整个硬件平台Guest OS无需修改,VMM通过二进制翻译处理特权指令
半虚拟化整个硬件平台Guest OS需要修改,通过Hypercall直接与VMM交互,性能更好
硬件辅助虚拟化整个硬件平台CPU提供虚拟化指令支持(如Intel VT-x),简化VMM实现
操作系统级虚拟化OS层共享宿主OS内核,通过容器技术隔离(如Docker)

三、记忆与理解辅助

  1. 口诀区分两类虚拟机:"一裸二宿"——第一类直接跑在硬件上(裸金属),第二类跑在宿主OS上
  2. 一句话理解VMM:VMM是"虚拟机的操作系统"——管理物理资源,为各VM提供虚拟硬件
  3. 容器 vs 虚拟机一句话区分:虚拟机虚拟整个硬件(重量级),容器共享OS内核(轻量级)

四、例题与精解

例题1(基础巩固)

题目:第一类虚拟机与第二类虚拟机的主要区别是( )

A. 第一类虚拟机性能更低 B. 第二类虚拟机的VMM直接运行在硬件之上 C. 第一类虚拟机的VMM直接运行在硬件之上 D. 第二类虚拟机不需要宿主操作系统

命题意图:考查两类虚拟机的核心区别。

精解

  1. 审题分析:需要区分两类虚拟机的VMM运行位置
  2. 解题思路:第一类=裸金属(VMM直接在硬件上),第二类=宿主型(VMM在宿主OS上)
  3. 完整步骤
    • A选项:错误。第一类VMM直接在硬件上运行,没有宿主OS的开销,性能更高
    • B选项:错误。第二类VMM运行在宿主OS之上,不是直接在硬件上
    • C选项:正确。第一类(裸金属型)的VMM直接运行在硬件之上
    • D选项:错误。第二类虚拟机需要宿主OS作为VMM的运行平台
  4. 方法反思:记住"一裸二宿"即可——第一类直接在硬件上(裸金属),第二类在宿主OS上

答案:C

例题2(中等提升)

题目:以下关于虚拟机监控程序(VMM)的描述,错误的是( )

A. VMM负责将物理资源虚拟化为多个虚拟资源 B. VMM需要保证各虚拟机之间的隔离性 C. VMM将所有指令都通过模拟方式执行以保证正确性 D. VMM需要满足等价性、资源控制和效率性

命题意图:考查VMM的职责和特性。

精解

  1. 审题分析:题目要求选出"错误"的描述
  2. 解题思路:回忆VMM的三个条件——等价性、资源控制、效率性
  3. 完整步骤
    • A选项:正确。资源虚拟化是VMM的核心功能
    • B选项:正确。隔离保护确保各VM互不干扰
    • C选项:错误。VMM追求效率性,大部分指令应直接在物理CPU上执行,只有特权指令才陷入VMM进行模拟。如果所有指令都模拟,性能会极差
    • D选项:正确。这三个条件是VMM的基本要求
  4. 方法反思:VMM的效率性要求"尽量让指令直接执行",而非"全部模拟",这是理解虚拟化性能的关键

答案:C


五、考情分析

  • 考查频次:近5年约0–1次
  • 常见题型:选择题
  • 分值占比:2分/题
  • 命题趋势:低频考点,了解两类虚拟机的区别和VMM的基本概念即可。不太可能深入考查虚拟化技术细节

六、易错点提醒

  1. 错误表现:混淆第一类和第二类虚拟机的VMM运行位置 错误原因:名称容易误导 正确理解:第一类=裸金属型(VMM直接在硬件上),第二类=宿主型(VMM在宿主OS上)

  2. 错误表现:认为虚拟机和容器是同一概念 错误原因:两者都提供"隔离环境" 正确理解:虚拟机虚拟整个硬件栈(有自己的OS),容器共享宿主OS内核(只隔离进程和文件系统)

  3. 错误表现:认为VMM模拟所有指令所以虚拟机很慢 错误原因:不了解VMM的效率性要求 正确理解:大部分指令直接在物理CPU上执行,只有特权指令才由VMM处理,现代虚拟化性能接近原生

  4. 错误表现:认为虚拟机之间完全无法通信 错误原因:将"隔离"理解为"完全隔绝" 正确理解:隔离是指互不干扰和互不知情,但可以通过虚拟网络等方式进行通信


七、来源标注

  • 依据2026考研统考408大纲
  • 依据《计算机操作系统》(汤小丹/汤子瀛版)第1章
  • 依据《操作系统概念》(Silberschatz版)第2章

考研全科复习资料 - 基于2026考研统考大纲