脚本宝典收集整理的这篇文章主要介绍了

Xen体系结构-IO部分

脚本宝典小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望能帮助你少写一行代码,多一份安全和惬意。

1:I/O设备虚拟化将设备驱动分为三个部分:前端FE,后端BE和原生驱动。其中后端驱动和原生驱动在Dom0(IDD)中。
2:前端驱动和后端驱动之间I/O请求的传递通过一个环状队列(I/O环)来实现。I/O环模型中,共有两个生产者-消费者对:前端驱动是请求生产者和响应消费者;后端驱动是请求消费者和响应生产者。实际上,I/O环是供DomU和Dom0(或IDD)访问的共享内存。
图片描述

请求生产者和响应消费者由Guest OS控制;请求消费者和响应生产者由Xen控制。
3:为了实现大量DMA数据在DomU和Dom0之间的传递,Xen采用授权表机制,直接替换页面映射关系来避免不必要的内存拷贝。每个Domain都有一个授权表,指明它的哪个页面可以被哪些Domain访问。
4:以DomU向I/O设备写入数据为例:
图片描述

(1)DomU产生I/O请求,在IO共享环中添加请求。
(2)然后将I/O数据放入授权表指向的内存中,等待Dom0来取。
(3)一切准备就绪,通过事件通道通知Dom0开始处理。
(4)Dom0收到事件通道的通知,知道有数据需要处理。
(5)Dom0从I/O共享环中取出I/O请求,分析DomU想要Dom0为他做什么。
(6)明白要做什么后,将授权表中的数据取出进行处理。
(7)数据处理完成后,Dom0将处理后信息放入I/O共享环,然后通过事件通道发送通知
给DomU,告诉他处理完成了。
(8)DomU收到事件通道的通知,从IO共享环中取出相应,进而处理。

总结

以上是脚本宝典为你收集整理的

Xen体系结构-IO部分

全部内容,希望文章能够帮你解决

Xen体系结构-IO部分

所遇到的程序开发问题,欢迎加入QQ群277859234一起讨论学习。如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典网站推荐给程序员好友。 本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。

80%的人都看过