- 主题:type 1和type 2型虚拟机的区别
type 1的客户机是直接跑在硬件上的,虚拟机只是做背后资源分配和管理的工作,这个很好理解。
type 2型的客户机是跑在操作系统之上的,这个如何理解?难道客户机每条指令都是虚拟机解释了再在硬件上运行?那这样效率岂不是非常低?我感觉不可能的啊
--
FROM 124.202.185.*
vmware那一堆不就是在操作系统上运行的么
【 在 wjhtingerx (ca6140) 的大作中提到: 】
: type 1的客户机是直接跑在硬件上的,虚拟机只是做背后资源分配和管理的工作,这个很好理解。
: type 2型的客户机是跑在操作系统之上的,这个如何理解?难道客户机每条指令都是虚拟机解释了再在硬件上运行?那这样效率岂不是非常低?我感觉不可能的啊
--
FROM 103.107.217.225
早期的虚拟机就是那样运行的,后面cpu支持虚拟化后就不需要了
【 在 wjhtingerx (ca6140) 的大作中提到: 】
: type 1的客户机是直接跑在硬件上的,虚拟机只是做背后资源分配和管理的工作,这个很好理解。
: type 2型的客户机是跑在操作系统之上的,这个如何理解?难道客户机每条指令都是虚拟机解释了再在硬件上运行?那这样效率岂不是非常低?我感觉不可能的啊
:
:
--
FROM 117.136.87.*
嫌解释慢可以编译
【 在 wjhtingerx (ca6140) 的大作中提到: 】
: type 1的客户机是直接跑在硬件上的,虚拟机只是做背后资源分配和管理的工作,这个很好理解。
: type 2型的客户机是跑在操作系统之上的,这个如何理解?难道客户机每条指令都是虚拟机解释了再在硬件上运行?那这样效率岂不是非常低?我感觉不可能的啊
--
FROM 27.91.71.*
不用管
真正实用的场景,都利用硬件虚拟化能力,以及比如kvm,hypervisor framework,intel hax,之类的驱动,来完成接近type 1的性能。这种东西无非就是一个软件架构的选择,已经没什么重要性了。
【 在 wjhtingerx (ca6140) 的大作中提到: 】
: type 1的客户机是直接跑在硬件上的,虚拟机只是做背后资源分配和管理的工作,这个很好理解。
: type 2型的客户机是跑在操作系统之上的,这个如何理解?难道客户机每条指令都是虚拟机解释了再在硬件上运行?那这样效率岂不是非常低?我感觉不可能的啊
--
FROM 111.166.7.*
我疑惑的是,如果type 2也是利用硬件虚拟化的能力,直接跑在硬件上的,那跟type1的区别又在哪里呢
【 在 tgfbeta 的大作中提到: 】
: 不用管
: 真正实用的场景,都利用硬件虚拟化能力,以及比如kvm,hypervisor framework,intel hax,之类的驱动,来完成接近type 1的性能。这种东西无非就是一个软件架构的选择,已经没什么重要性了。
:
--
FROM 124.202.185.*
type2有一个操作系统跑在ring0上。
比如qemu,可以跑在windows/mac/linux上,你就有一个真的能用的,比如打游戏,的OS。
xen这类,dom0都是虚拟机,就一门心思搞虚拟化了。
【 在 wjhtingerx (ca6140) 的大作中提到: 】
: 我疑惑的是,如果type 2也是利用硬件虚拟化的能力,直接跑在硬件上的,那跟type1的区别又在哪里呢
--
FROM 111.166.7.*
【 在 wjhtingerx 的大作中提到: 】
: 我疑惑的是,如果type 2也是利用硬件虚拟化的能力,直接跑在硬件上的,那跟type1的区别又在哪里呢
:
按照你说的定义,区别已经很小了。无外乎 type1 的 hypervisor 只是一个 hypervisor,别的什么也不干
type2 的 hypervisor 除了是个 hypervisor,还是个全功能的 OS
其实 type1 更好的诠释是 IBM 早年搞的硬件分区
--
FROM 111.206.145.*

【 在 wjhtingerx 的大作中提到: 】
: type 1的客户机是直接跑在硬件上的,虚拟机只是做背后资源分配和管理的工作,这个很好理解。
: type 2型的客户机是跑在操作系统之上的,这个如何理解?难道客户机每条指令都是虚拟机解释了再在硬件上运行?那这样效率岂不是非常低?我感觉不可能的啊
:
--
FROM 218.30.113.*
非常感谢,明白了很多,但是好像疑惑更多了。
比如type1, hypervisor运行在L3,客户机内核态运行在L2,客户机用户态运行在L1。hypervisor首先运行,给各个客户机设置(虚拟)好CPU、内存等资源,这样客户机就能在自己的硬件环境里运行了。直到访问些功能敏感资源,比如外设,就会陷入到L3,让hypervisor去处理。这个逻辑很清晰。
但是type2,客户机是运行在宿主机的一个进程里吗?如果这样,客户机的多进程是如何实现的?如果客户机做系统条用,客户机会真的进入硬件的内核态吗?
【 在 tsa300 的大作中提到: 】
: [upload=1][/upload]
:
--
FROM 149.28.196.*