CTF-虚拟机——【前置知识一】

本文详细阐述了虚拟化和虚拟机的基本概念,探讨了虚拟硬件层VMM的作用、满足的条件,以及两种VMM方案。重点介绍了敏感指令和特权指令在虚拟环境中的处理,特别是特权级压缩(RingCompression)的概念。
摘要由CSDN通过智能技术生成

虚拟化和虚拟机

虚拟化:将计算机的各种实体资源进行抽象,从而呈现出不同的虚拟资源

虚拟机:通过虚拟化技术将一台计算机虚拟为多台逻辑计算机——虚拟化技术中的系统虚拟化

不同抽象层上的虚拟化分为:
硬件虚拟化:为虚拟操作系统呈现和物理硬件类似的抽象层(VMWare)
操作系统虚拟化:为多个用户态提供与操作系统类似的抽象层(docker)
库函数虚拟化:虚拟化库函数,使得应用程序可以在不同库函数下运行
编程语言的虚拟化:进程级别的虚拟化,模拟编译解释器生成机器码

硬件虚拟化:
计算虚拟化:针对 CPU 和内存资源进行虚拟化。
网络虚拟化:针对网络链路资源进行虚拟化。
IO 虚拟化:针对 IO 资源进行虚拟化。
存储虚拟化:针对磁盘存储资源虚拟化

基本模型

一台计算机一般可分为
物理硬件层 操作系统层 应用程序层

而虚拟机可分为:虚拟硬件层 操作系统层 应用程序层

虚拟硬件层 VMM

可以认为是一个介于虚拟机和硬件的中间的软件层。只是这个软件层不仅抽象出了硬件层,同时还具有负责VM的创建销毁等工作。并且为VM提供了运行环境

满足虚拟化系统结构的VMM的条件

等价性:就是运行在VMM下的和运行在物理机下没区别
资源控制:VMM对虚拟的资源能完全控制
效率性(efficiency):机器指令中经常使用的那一部分应在没有 VMM 干预下直接在硬件上执行(这样能够提高效率呗)

两种VMM方案

VMM与操作系统一层,运行在硬件上
VMM与应用程序一层,运行在操作系统上

敏感指令和特权指令

特权指令:系统中有一些操作和管理关键系统资源的指令,这些指令只有在最高特权级上能够正确运行。如果在非最高特权级上运行,特权指令会引发一个异常,处理器会陷入到最高特权级,交由系统软件处理了。

敏感指令:就是会操作特权资源的指令,包括修改虚拟机的运行模式或者下面物理机的状态;读写时钟、中断等寄存器;访问存储保护系统、地址重定位系统及所有的I/O指令
敏感指令必须在VMM的监控下完成或者经过VMM完成。

特权级压缩(Ring Compression)

VMM 运行在最高特权级上,Guest VM 运行在低特权级上,当 Guest VM 执行到敏感指令或特权指令时,其便会陷入位于最高特权级的 VMM,此时有VMM执行敏感指令或特权指令。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

看星猩的柴狗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值