设为首页 收藏本站
查看: 1337|回复: 0

[经验分享] The definitive guide to the xen hypervisor ---chapter 2

[复制链接]

尚未签到

发表于 2015-10-11 14:52:15 | 显示全部楼层 |阅读模式
1、start_kernel(start_info_t *si) xen的起始信息页和共享信息页:  1)起始信息页:   2)共享信息页:由guest 自己将起始信息页中的shared info 映射到内存空间
2、Dom 0 为hypervisor提供两个用户接口:     1)The first is responsible for providing an administrative interface to the hypervisor, allowing a user to define policy.     2)The second provides the back-end storage for the XenStore.
3、HVM 的DomU 不支持xen的分离设备驱动模型,This means that Xen must emulate something that the guest is likely to support. A small number of devices are available in this way, using code from  QEMU.
4、HVM和PV的区别:    1)客户机启动时,A paravirtualized guest begins in protected mode, with some memory pages containing boot information mapped by the hypervisor, whereas an HVM guest begins in real mode andgets configuration information from an emulated BIOS (SeaBIOS-).    2)If an HVM guest wants to take advantage of Xen-specific features, it needs to use the CPUID instruction to access a (virtual) machine specific register and access the hypercall page.    3) For virtualization-aware HVM guests, much of the information otherwise available is accessed via the platform PCI device,

5、系统启动时CPU的模式1)booting with para-virtualization guest现代的机器架构为了兼容8088之前的机器,CPU会先进入到实模式,然后切换为保护模式并安装一些终端句柄。xen也不例外,xen it enters protected mode and installs its own interrupt handlers。也就是说,在xen hypervisor上启动的虚拟机在启动时已经是处于保护模式。
在xen的 guest中是不允许访问BIOS的,因为BIOS会访问到物理硬件,破坏xen的隔离性,因此,出现一些方法来实现guest中的BIOS。The BIOS is replaced by a variety of different facilities in Xen.第一种是, 起始信息页。 which contains basic information required by a guest to initialize the kernel.第二种,共享信息页。which gives some more data and is updated while the guest is run.第三种,xenstore。Among other things, this is used to determine which (virtual) devices are available.
6、hypercallhypercalls are issued indirectly via the hypercall page. This is a memory page mapped in to the guest’s address space when the system is started.

7、event 机制xen 的异步事件机制 作用是外部程序(外部kernel或其它应用程序)发送一些信息,告诉xen  “event n has occurred.”One of the first things that a guest kernel should do is register a callback to be used for event delivery. When events are delivered to the guest, various flags are set to indicate which event is present.
xen 的一个guest 发送异步事件给另一个guest时,通常需要做以下几步:1. Receiving guest creates a new, unbound port.2. Receiving guest advertises the existence of the port (typically via the XenStore). 3. The sending guest creates a new port if it doesn’t have any free.4. The sending guest binds its port to the remote one.5. The sending guest sends the event.

8、 共享内存Xen supports two basic interdomain operations on memory pages: sharing and transferring.xen的共享内存区域以一个整数interger的授权索引表示(grant reference), The value of this integer is communicated between domains using the XenStore,
9、分离设备驱动模型This is typically done using ring buffers in shared memory segments. The front-end driver initializes a memory page with a ring data structure and exports it via the grant table mechanism.It then advertises the grant reference via the XenStore where the back end can retrieve it. The back end then maps it into its own address space, giving a shared communication channel into which the front end inserts requests and the back end places responses.

         版权声明:本文为博主原创文章,未经博主允许不得转载。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-125528-1-1.html 上篇帖子: xen网络配置 下篇帖子: Xen虚拟化架构简介
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表