首页> 中文学位 >基于PHPA的内存大小页动态调整技术
【6h】

基于PHPA的内存大小页动态调整技术

代理获取

目录

声明

摘要

图目录

表目录

第1章 绪论

1.1 课题背景

I.2 本文的工作与创新点

1.3 本文的内容组织

1.4 本章小结

第2章 相关背景知识及研究现状

2.1 Linux内存管理技术

2.1.1 内存管理

2.1.2 内存分配/释放

2.2 PHPA大页管理框架

2.3 页迁移技术

2.3.1 页迁移技术介绍

2.3.2 页迁移的目的和模式

2.4 内存热插拔

2.5 用户空间和内核空间通信方式

2.5.1 内核启动参数

2.5.2 模块参数

2.5.3 sysfs

2.5.4 sysctl

2.5.5 系统调用

2.5.6 netlink

2.5.7 procfs

2.6 研究现状

2.6.1 Linux大页介绍及设计目的

2.6.2 hugetlbfs

2.6.3 透明大页

2.7 本章小结

第3章 系统关键部分设计

3.1 需求场景分析

3.2 总体设计

3.3 大页控制模块设计

3.4 热插拔模块设计

3.4.1 proc文件系统

3.4.2 用户程序设计

3.5 大页迁移模块设计

3.6 本章小结

第4章 系统具体实现

4.1 整体工作流程

4.2 热插拔

4.2.1 proc创建文件

4.2.2 小页热插拔

4.2.3 大页热插拔

4.3 大页控制模块

4.4 大页迁移

4.4.1 反向映射机制

4.4.2 页的可迁移性

4.4.3 大页迁移流程

4.5 本章小结

第5章 系统测试与分析

5.1 测试环境部署

5.1.1 测试环境

5.1.2 部署安装

5.2 功能测试

5.2.1 单元测试

5.2.2 整体测试

5.3 性能测试

5.3.1 PHPA大页框架和原生Linux对比

5.3.2 小页转大页性能测试

5.3.3 大页转小页性能测试

5.4 本章小结

第6章 总结与展望

6.1 本文工作总结

6.2 未来工作

参考文献

攻读硕士学位期间主要的研究成果

致谢

展开▼

摘要

为了提高物理资源的利用率,虚拟化技术得以普遍运用。通过运用虚拟化技术,单台服务器上可以整合许多虚拟机来为用户提供各种服务。为了保证用户的良好体验,这台服务器对硬件的要求就会比较高,其中也包括对内存的需求。
  在现有市场上的服务器,有通过基于hugetlbfs的大页管理框架来为服务应用提供2M大页,从而保证服务性能。但其不支持内存压缩,并且可扩展性较差。
  实验室之前的工作中,实现了一套基于PHPA(Pristine Huge Page Allocator)大页框架的的Hzmem(H代表huge,z代表压缩)系统,通过将大页内存进行压缩存放的方法,变相提高了可用的大页内存。
  受启发于透明大页的设计思想,在某些实际场景中,比如,服务器对大页内存的需求远远超过对小页内存的需求时,系统中可能会存在比较多的空闲小页,而缺少空闲大页。本文在实验室现有成果的基础上,设计实现了一套基于PHPA大页框架的内存大小页动态调整技术,来适应上述场景。
  本文的主要贡献有:
  1)采用PHPA大页框架,大幅度地降低了系统对内存管理的元数据开销,节省了物理内存开销。
  2)实现了在系统运行的时候动态调整大小页内存大小的技术。
  3)采用模块化的方式将本文的实现与原有的Linux内核进行了结合,不需要对原有内核进行改动。
  4)通过proc文件系统,实现了在用户态对内存大小页进行调整。
  经过功能和性能两方面的测试,本文的实现达到了预期效果,并且对原有系统的性能影响微乎其微。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号