KVM客户机主动共享的内存超量使用策略研究
发布时间:2017-09-18 06:13
本文关键词:KVM客户机主动共享的内存超量使用策略研究
更多相关文章: KVM 虚拟机 内存 超量使用 回收 主动共享
【摘要】:随着云计算产业的快速发展,云服务器集群中的计算资源的管理已成为人们关注的重点。相比于传统的服务器集群,云计算通过虚拟化等技术改进服务器的软硬件资源的管理和分配的方式,提高了硬件资源的整体利用率和服务的可靠性。然而,虚拟化技术在应用于服务器资源管理的过程中也遇到了一些挑战,其中的挑战之一就是虚拟机内存资源分配的合理性。合理高效的虚拟机内存资源分配管理是保障云计算环境整体效率的关键之一。内存作为计算和存储的中间环节在虚拟化平台中显得尤为重要,进一步优化虚拟机内存管理将是提高虚拟化平台整体资源利用率的关键。 然而,由于现有的KVM(Kernel-based Virtual Machine)虚拟化平台中内存管理的方式无法在物理机上分辨客户机内部内存页面的具体状态,客户机内存页面仅以被访问的频率和内容上的重复性的形式被物理机所感知,可能出现一些不合理的情况,各种现有的内存超量使用策略也都存在一定的局限性或缺陷。 本文提出了新的超量使用内存策略,即以修改客户机系统内核的方式使客户机主动提出与物理机共享其中未使用部分内存,,以修改物理机上KVM模块的方式回收客户机愿意共享部分的内存,从而排除此部分客户机内存对物理机内存调度算法的干扰。 本策略可充分利用现有KVM平台的各种策略模拟操作系统级虚拟化技术的内存管理特点,保留物理机操作系统的页面交换策略,让其感知客户机操作系统的内存访问频率;以KSM策略合并客户机中重复页面的方式模拟操作系统级虚拟化中的加载程序或文件的去重特点;以本设计回收客户机中未使用内存的方式模拟操作系统级虚拟化中客户机程序将未使用内存释放回物理机操作系统内核内存管理单元;以本设计关于客户机操作系统内核物理内存页块优先级的处理模拟操作系统级虚拟化中统一的伙伴页块链表管理。 在与其他现有的内存超量使用策略对比时,本文提出了基于微观内存页面行为的模型,随后展开介绍了两种不同的设计方案和内存外部碎片对本设计的影响,最后通过KVM虚拟化平台下模拟内存占用的实验论证了本设计可取得良好的效果。宏观测试实验部分从系统整体的角度对比了开启与未开启IMR策略的情况下,客户机启动与动态内存使用场景下物理机内存使用,以及物理机交换区空间使用状态方面的差别。 本设计主要适用于匿名内存使用量波动较大的计算环境,文中选择了几个主流开源软件进行匿名内存用量的测试,验证了本设计的基础;在基于微观页面行为的测试中对比了页面交换和KSM策略,本策略在处理客户机空闲物理内存块的速度上至少提高了三个数量级。
【关键词】:KVM 虚拟机 内存 超量使用 回收 主动共享
【学位授予单位】:杭州电子科技大学
【学位级别】:硕士
【学位授予年份】:2014
【分类号】:TP333.1
【目录】:
- 摘要5-7
- ABSTRACT7-9
- 目录9-11
- 第一章 绪论11-24
- 1.1 研究背景11-12
- 1.2 系统虚拟化简介12-14
- 1.3 虚拟化技术分类14-16
- 1.3.1 硬件仿真虚拟化14-15
- 1.3.2 完全虚拟化15
- 1.3.3 半虚拟化15
- 1.3.4 硬件辅助虚拟化15-16
- 1.3.5 操作系统级虚拟化16
- 1.4 KVM 虚拟化平台简介16-20
- 1.4.1 CPU 管理17
- 1.4.2 内存管理17-19
- 1.4.3 设备 I/O 管理19-20
- 1.5 虚拟机内存研究现状20-23
- 1.5.1 KVM 内存管理现状21-22
- 1.5.2 其他虚拟化平台内存管理现状22
- 1.5.3 虚拟化技术发展趋势22-23
- 1.6 论文结构23-24
- 第二章 KVM 客户机主动共享的虚拟机内存管理24-34
- 2.1 研究内容24-27
- 2.1.1 改进半虚拟化环境25-26
- 2.1.2 改变操作系统级虚拟化环境26-27
- 2.2 各虚拟化平台内存管理策略分析27-29
- 2.3 框架结构设计29-31
- 2.3.1 KVM 虚拟机内存回收原理29-30
- 2.3.2 回收 KVM 客户机主动共享内存的设计框架30-31
- 2.4 对比 KVM 其他内存超量使用策略及建模31-33
- 2.4.1 与页面交换策略的比较31-32
- 2.4.2 与 KSM 策略的比较32-33
- 2.4.3 与内存膨胀策略的比较33
- 2.5 本章小结33-34
- 第三章 客户机空闲内存页面标记与回收34-42
- 3.1 修改客户机操作系统的方式34-37
- 3.1.1 平铺记录法34-35
- 3.1.2 链表记录法35
- 3.1.3 客户机信息记录方式对比分析35-37
- 3.1.4 空闲内存页块释放优先级及其影响37
- 3.2 具体实现与算法描述37-40
- 3.2.1 修改客户机操作系统内核37-38
- 3.2.2 修改物理机 KVM 内核模块38-39
- 3.2.3 相关算法描述39-40
- 3.3 内存碎片的影响40-41
- 3.4 本章小结41-42
- 第四章 性能测试与分析42-51
- 4.1 实验环境42
- 4.2 实验结果及分析42-49
- 4.2.1 各应用程序匿名内存用量分析43-44
- 4.2.2 对比非超量使用内存环境44-45
- 4.2.3 对比页面交换策略45-46
- 4.2.4 对比 KSM 策略46-47
- 4.2.5 IMR 策略微观测试47-48
- 4.2.6 IMR 策略宏观测试48-49
- 4.3 本章小结49-51
- 第五章 总结与展望51-53
- 5.1 工作总结51-52
- 5.2 研究展望52-53
- 致谢53-54
- 参考文献54-57
- 附录57-58
- 详细摘要58-60
【参考文献】
中国期刊全文数据库 前2条
1 张彬彬;汪小林;杨亮;赖荣凤;王振林;罗英伟;李晓明;;修改客户操作系统优化KVM虚拟机的I/O性能[J];计算机学报;2010年12期
2 陈昊罡;汪小林;王振林;张彬彬;罗英伟;李晓明;;DMM:虚拟机的动态内存映射模型[J];中国科学:信息科学;2010年12期
本文编号:873833
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/873833.html