水木社区手机版
首页
|版面-编程技术(Programming)|
新版wap站已上线
返回
1/1
|
转到
主题:type 1和type 2型虚拟机的区别
8楼
|
tsa300
|
2021-09-29 18:57:42
|
展开
【 在 wjhtingerx 的大作中提到: 】
: type 1的客户机是直接跑在硬件上的,虚拟机只是做背后资源分配和管理的工作,这个很好理解。
: type 2型的客户机是跑在操作系统之上的,这个如何理解?难道客户机每条指令都是虚拟机解释了再在硬件上运行?那这样效率岂不是非常低?我感觉不可能的啊
:
--
FROM 218.30.113.*
10楼
|
tsa300
|
2021-09-29 20:26:58
|
展开
type2客户机整套操作系统都在宿主机的进程里(不一定非得是一个进程包一个vm)。
多进程、多线程本质上是分时共享系统资源,vm视角看到的多进程多线程和外面宿主机的进程、线程没对应关系,也不需要对应。宿主机里其他打酱油的程序看不到vm里在跑多进程多线程,只知道vmware在跑,占了很多cpu和内存。
【 在 wjhtingerx 的大作中提到: 】
: 非常感谢,明白了很多,但是好像疑惑更多了。
: 比如type1, hypervisor运行在L3,客户机内核态运行在L2,客户机用户态运行在L1。hypervisor首先运行,给各个客户机设置(虚拟)好CPU、内存等资源,这样客户机就能在自己的硬件环境里运行了。直到访问些功能敏感资源,比如外设,就会陷入到L3,让hypervisor去处理。这个逻辑很清晰。
: 但是type2,客户机是运行在宿主机的一个进程里吗?如果这样,客户机的多进程是如何实现的?如果客户机做系统条用,客户机会真的进入硬件的内核态吗?
: ...................
--
FROM 111.201.129.*
1/1
|
转到
选择讨论区
首页
|
分区
|
热推
BYR-Team
©
2010.
KBS Dev-Team
©
2011
登录完整版