虚拟化
一 概述
CPU 控制器,运算器 Memery 存储器 I/O 输入设备,输出设备 虚拟:
将硬件的处理能力,切割多个部分,每一个部分对外表现如一个完整硬件 模拟:
用纯软件的方式实现
a.CPU虚拟化
CPU本身就是虚拟化设备 CPU指令环 ring 0 特权指令 ring 3 非特权指令 解决方案: 1. 模拟出CPU,完全虚拟化 不需要做任何更改,就可以运行在虚拟出来的硬件平台上,就像运行在真正的物理平台上
2. 通过虚拟化软件管理控制,半虚拟化 虚拟机直接运行在虚拟化平台上,减少中间环节,节省资源,提高效益
3. 硬件辅助虚拟化 (现在不常见)
b.内存虚拟化
内存本身就是虚拟化设备
32位系统
4G 1G 内核 3G 进程
MMU 内存管理单元
c. I/O虚拟化
虚拟机用户 > 虚拟机内核 > 调用机制(耗资源) > 虚拟机控制器(VMWARE) > 物理机内核 > 物理机控制器 > 物理机硬盘
systemcall
I/O透传

#全虚拟化和半虚拟化
全虚拟化:

半虚拟化

#Xen和KVM
Xen:
半虚拟化架构
hypervisor 只能虚拟 CPU 和 内存

KVM
半虚拟化架构 虚拟 CPU 和 内存 qemu 基于 GP L创建出来的 模拟处理器,大小几M,可跨平台模拟各种硬件(简单来说,就是模拟器) qemu + qemu加速器 qemu + KVM 组合 (常见)

主机虚拟化架构:
优点:
提供隔离的运行环境
缺点:
需要运行两级内核
全虚拟化:VMware
半虚拟化:xen kvm vsphere
模拟:qemu
库虚拟化和应用程序虚拟化
库虚拟化: WINE CYWIN 应用程序虚拟化: JVM --> JAVA 智能输入法
容器虚拟化架构:
在内核级将资源隔离,如 UID PID MOUNT等

浙公网安备 33010602011771号