论文部分内容阅读
近年来,社交网络、电子商务、在线视频、大容量网盘等新一代互联网应用发展迅猛,这些应用具有数据规模大、业务增长快等特点,需要越来越多的高性能服务器支持,软硬件维护成本高昂。云计算正是在这样的背景下诞生的,云计算整合以数据中心的形式出现的大规模计算、存储和网络资源,以低廉的成本为互联网用户提供多种类型的服务。用户可以根据业务负载快速申请和释放资源,并以按需支付的方式对所用的资源付费,在保证服务质量的同时大大降低成本。虚拟化技术将计算、存储、网络等资源抽象化并统一表示,是构将云平台的技术基础。相比传统技术,虚拟化云平台的优势在于资源的弹性配置,可是由于“语义鸿沟”的存在,内存资源的弹性配置一直难以实现。为解决内存弹性配置这个难题,本文围绕着内存资源的按需分配和协同调度进行了研究,主要研究内容包括:一、为实现对虚拟机内部内存使用情况实时而透明的感知,本文在深入分析了内存虚拟化技术的原理和特点的基础上,在不需修改虚拟机操作系统的前提下,提出并实现了x86模式下基于进程和页表可见性的内存资源使用状况的感知方法,相比原有其他方法具有开销低、准确度高、实时性好的特点。二、在深入分析了内存与存储之间的协同作用原理的基础上,本文提出了内存与存储协同的资源分配方法,在资源分配的过程中,充分考虑了缓存的需求和换页分区的使用。通过监控虚拟机的磁盘访问序列,发现数据重用并计算重用距离,根据重用距离来判断缓存的紧张程度,并计算合理的缓存分配量。本方法大大提高了I/O密集型应用的性能。三、在虚拟机内存使用情况透明感知和内存与存储之间的内存资源分配方法的基础之上,本文进一步提出了兼顾公平与优先级的多虚拟机间的内存资源调度策略,该策略能在公平地保证虚拟机运行性能的前提下,兼顾对虚拟机优先级的差异化配置,提高内存资源的利用率和效能。本文是对虚拟化云平台上内存资源按需分配和协同调度的一次有益探索,研究成果对于搭建灵活易扩展、高效能的云计算平台具有良好的理论和实践价值。本文所做的工作已在承研的与云计算和虚拟计算环境相关的973项目和863项目中得到了应用。