毕业论文
计算机论文
经济论文
生物论文
数学论文
物理论文
机械论文
新闻传播论文
音乐舞蹈论文
法学论文
文学论文
材料科学
英语论文
日语论文
化学论文
自动化
管理论文
艺术论文
会计论文
土木工程
电子通信
食品科学
教学论文
医学论文
体育论文
论文下载
研究现状
任务书
开题报告
外文文献翻译
文献综述
范文
虚拟环境下负载感知型Credit调度算法研究(2)
2.相关技术介绍
2.1credit调度算法
Xen虚拟机的CPU调度分为三级:虚拟机监视器分配CPU时间片给各个虚拟CPU;虚拟CPU分配时间片给Guest操作系统的核心线程;Guest操作系统分配时间片给应用程序的用户线程。虚拟机调度属于最底层的调度。Credit虚拟机调度算法是Xen当前默认使用的调度算法[2]。
pCPU在这里指真实设备上的CPU,vCPU是虚拟机中模拟的CPU。每个处理器在每个时间片中能够提供300个credit。调度器把这些credit按照每个domain的权重分配给这些domain。vCPU有三种状态:under、over以及boost。Under意着这个vCPU仍然有credit使用;而over表明这个vCPU已经耗尽了它的credit;Boost状态的vCPU优先级最高。空闲的vCPU分配到任务后会被唤醒,这时,如果其优先级是Boost,这个vCPU会被允许以较低的响应延时运行。运行队列时,boost状态的vCPU排在队列的队首,over状态的vCPU在队尾。若vCPU的优先级相同,它们采用先进先出调度模式。当vCPU获得了足够的credit,它将被准许运行三个周期,每隔10ms,调度器借出100个credit,每30ms重新分配这些credit。当涉及到多核心架构时,如果一个pCPU的运行队列中没有under状态的vCPU,它会运行其它pCPU上可运行的vCPU。这种负载均衡机制保证在有可运行vCPU的系统中没有空闲的pCPU[3]。
2.2Xen的I/O虚拟化模块
为了保证系统的安全,当domainU使用虚拟设备驱动完成透明的I/O访问时,Xen虚拟机使用独立驱动域I/O Virtualization Model of Xen(IDD)来执行I/O操作。在这个模式中,设备驱动被划分为三个部分:fronted driver、backend driver和native driver。fronted driver运行在domainU内,backend driver和native driver运行在domain0。fronted把domainU的I/O请求和请求说明传送给backend driver,由native driver控制硬件完成I/O请求。Fronted driver和backend driver在I/O ring上传输I/O请求。I/O ring由domianU和domain0之间的内存共享来实现,它仅仅包含I/O的描述信息,I/O的数据不放入I/O ring。
虚拟机按照下面的方式传输数据包:Frontend driver通过hypercall(超级调用)把I/O请求的信息写入I/O ring,当domain0得到调度时,backend driver会处理这个I/O请求。Backend driver将I/O请求发送给native driver,之后I/O访问在硬件中完成。Backend 发送一个响应给frontend ,这个I/O操作就结束了。VM接受数据包则使用相反的处理过程。Xen提供了一个grant table(授权表)来实现DMA数据在domainU和domain0之间传递。每个domain文持一个grant table来表明哪个页可以被哪个domain访问。Xen有一个active grant table来记录每个domain的grant table 目录。
当domainU需要执行DMA时,frontend driver把grant reference(GR)和I/O请求放入I/O ring, domain0收到这个请求之后,请求Xen锁定这个GR相关的页,Xen将会检查这个GR并且做出响应。然后domain0发送一个DMA请求给真实的硬件,XenI/O架构如图1所示。
图1 Xen I/O架构
2.3SR-IOV
传统的I/O虚拟化,例如VMDq和direct I/O不能在设备同时运行时表现出高的I/O性能。对此,SR-IOV是一种更好的解决方式。SR-IVO技术通过避免额外的数据复制消除了驱动方面的瓶颈,它以较低的CPU占用率大大提高了虚拟机的吞吐量[4]。
SR-IOV设备拥有一个或者多个physical functions(PF),每个PF是一个完整的PCIe设备,它管理和配置所有的I/O资源[4]。VF由PF划分而来,它是实施I/O功能的简单PCIe设备,但它不可以管理物理NIC。运行在domain0的PF驱动可以直接访问所有PF资源并且配置、管理VF[5]。VF驱动运行在客户OS中,它可以直接访问对应的VF
共2页:
上一页
1
2
下一页
上一篇:
C#+mysql网上订餐系统的设计与实现
下一篇:
大数据环境下数据挖掘面临的挑战和机遇
基于android的环境信息管理系统设计
多频激励下典型非线性系统的振动特性研究
大数据时代下电子商务个性化信息服务研究
SSM框架移动乐豆游戏下载系统设计+源代码
基于神经网络的水下机器人路径规划算法研究
Linux系统下web服务器的搭建与设计
杭州下沙小学生校园足球发展现状的研究
AES算法GPU协处理下分组加...
从政策角度谈黑龙江對俄...
酵母菌发酵生产天然香料...
压疮高危人群的标准化中...
浅论职工思想政治工作茬...
提高教育质量,构建大學生...
上海居民的社会参与研究
浅谈高校行政管理人员的...
STC89C52单片机NRF24L01的无线病房呼叫系统设计
基于Joomla平台的计算机学院网站设计与开发