论文部分内容阅读
云计算是继分布式计算、并行计算和网格计算后的一种计算模式,而虚拟化技术作为云计算的关键技术之一,也随着云计算的持续升温得到业界的广泛关注。虚拟化技术包括了CPU、I/O、内存等资源的虚拟化,而Xen虚拟机由于其开源性以及高性能受到广泛关注。云计算环境下,虚拟机的性能直接影响整个云计算基础架构的性能。目前,由于I/O虚拟化的性能还不高,导致其成为虚拟化系统整体性能瓶颈。因此,对I/O虚拟化技术进行研究,以提升云计算基础平台性能尤为必要。
论文以Xen虚拟机作为主要研究对象,具体完成了以下的研究工作:首先,通过阅读源代码,研究分析了Xen基础架构及其I/O虚拟化原理及机制,着重分析了I/O虚拟化子系统的实现过程。其次,由于CPU调度算法是影响I/O虚拟化性能的主要因素之一,论文重点研究了Xen中默认的CPU调度算法,针对在多类型负载环境下,当前调度算法无法较好的实现对I/O密集型任务的及时响应。结合I/O任务的复杂度评估方法,提出一种优化的ECredit调度算法,该算法在实现公平调度的前提下,优先调度I/O密集型任务。实验证明,该调度算法能够有效降低I/O密集型任务的响应延迟,从而提高虚拟化系统的I/O性能。最后,针对Xen中原有磁盘调度算法CFQ没有对虚拟化环境做出任何适应性改变、无法体现出磁盘调度算法的公平性也无法满足客户域个性化需求等问题,提出一种改进的磁盘调度算法ECFQ,该算法能够较好地根据客户域的需求按比例来分配磁盘带宽。实验结果表明,优化的ECFQ调度算法在虚拟化I/O环境下,具有更好的适应性。
研究工作表明,通过对Xen虚拟机调度算法及磁盘调度算法的改进,可以提高多任务环境下虚拟机整体I/O性能,增强虚拟化环境下磁盘调度算法的公平性和适应性。