Xen设计的理念--超级调用

针对x86体系结构,Xen使用超级调用来替换被监控的操作,其中包括x8架构下的临界指令。Xen所采用的超级替换的方法是一种全新的设计理念:它将问题的中心,由VMM移向Gust os自身,通过主动的方式由Guest os去处理这些指令,而不是被移交给VMM做处理,在这种设计理念下,修改Guest Os内核成为必然。

   能修改Guest os是半虚拟化的一个技术核心。通过修改guest os的内核。使guest os明确知道自己是运行在1环上,而不是通常os的0环,有效的避免了虚拟化的一个关键问题,执行冲突问题。guest os也清楚VMM给自己提供了一个虚拟的寄存器组,并能通过其他方式去访问他们,也避免了访问冲突的问题。

     解决了临界指令问题只是解决了x86架构下的半虚拟化的第一步。运行在1环的操作系统没有权限执行的指令,交给0环的VMM来处理,这个很大程度上与应用程序的系统调用很类似:系统调用的作用是把应用程序无权执行的指令交给操作系统完成。因此,Xen向guest os提供了一套“系统调用”。以方便Guest os调用,这部分”系统调用“就是超级调用。

  超级调用的机制使用,不仅使x86架构的指令虚拟化得以实现,也为后面的内存虚拟化和I/O虚拟化提供了新的思路和方法,超级调用和事件通道是整个半虚拟化的基础。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值