一种基于物理大页的页迁移策略的设计与实现
本文选题:页迁移 + 物理大页 ; 参考:《浙江大学》2017年硕士论文
【摘要】:物理内存是现代计算机的核心硬件资源,同时也是短缺的资源。内存中越来越多的进程数量以及日益增长的应用程序的内存占用,都让物理内存利用率的优化永远不能停下脚步。在众多物理内存利用率的优化方案中,大页的运用是一个典型的代表。大页技术在减少TLB(TranslationLookasideBuffer,转址旁路缓存)失效开销的同时,能减少操作系统管理的页表项数量,被现代计算机系统广泛支持。目前Linux系统的大页机制采用的是基于连续小页的复合大页。在这种机制下,页描述符所描述的页框依然是小页页框;需要大页的时候,系统分配连续的小页当成一个大页使用。复合大页兼容了原有的基于小页的物理内存管理模块,而且一般能切实有效地减少系统的页表项和降低TLB的失效开销。但是,这种复合大页技术没有减少管理物理内存的元数据开销,对大页的操作常常要分解成对小页操作的迭代。在空间和时间两个方面,大页技术都有进一步优化的可能性。一种可能的优化方案是物理大页(页描述符直接描述大页)的运用,但是物理大页的运用面临着挑战。首先,一般情况下物理小页应该得到保留。大页在适用场景中确实能显著提升整机性能和节约内存空间,但是大页的适用还是不如小页广泛。如果纯用大页,可能造成过多的内部碎片,反而没有提高内存利用率。如果不放弃小页,那么物理大页就要与物理小页共存,这为操作系统的设计提出了不少问题,比如物理内存空间如何分布,如何调整大页和小页的空间配额等等。本文从一种面向Linux系统下的hugetlbfs接口的物理大页技术出发,探讨其可行的物理内存空间布局。在一种物理大页与小页共存的布局下,设计与实现了一种页迁移方案来支持大小页内存池的运行时调整。本文的主要工作有:研究分析了 Linux系统支持的大页技术,包括从系统程序员的角度看到的共享大页内存和映射大页内存,以及从内核程序员的角度看到的透明大页(THP)以及hugetlbfs,同时还研究分析了一种基于Linux的面向hugetlbfs的物理大页技术。实现了物理大页上的页迁移机制,并运用大小页的页迁移机制,设计了一种混合页粒度系统的页迁移方案。实验评测了这种页迁移方案,并对内存利用率的优化进行了量化分析。
[Abstract]:Physical memory is not only the core hardware resource of modern computer, but also the scarce resource. The increasing number of processes in memory and the memory footprint of growing applications make the optimization of physical memory utilization never stop. In many optimization schemes of physical memory utilization, the use of large pages is a typical example. Large page technology can reduce the overhead of TLBU Translation Lookaside buffer and reduce the number of page table items managed by the operating system. It is widely supported by modern computer systems. At present, the large page mechanism of Linux system adopts compound large page based on continuous small page. In this mechanism, the page frame described by the page descriptor is still a small page frame; when large pages are needed, the system allocates consecutive pages as a large page. The composite large pages are compatible with the original physical memory management module based on small pages, and generally can effectively reduce the page table items and the TLB failure overhead. However, this composite large page technique does not reduce the metadata overhead of managing physical memory, and operations on large pages are often decomposed into iterations of small page operations. In both space and time, large-page technology has the possibility of further optimization. One possible optimization scheme is the use of physical large pages (page descriptors directly describe large pages), but the use of physical large pages faces challenges. First of all, physical pages should normally be retained. Large pages do improve overall performance and save memory space in scenarios, but large pages are not as wide as small pages. If the use of large pages, may cause too much internal fragmentation, but not improve memory utilization. If we don't give up the small pages, the physical pages will coexist with the physical pages, which raises many problems for the design of the operating system, such as how to distribute the physical memory space, how to adjust the space quota of the large pages and the small pages, and so on. In this paper, a physical large page technology for hugetlbfs interface in Linux system is introduced, and its feasible physical memory space layout is discussed. Under a physical layout of large and small pages, a page migration scheme is designed and implemented to support runtime adjustment of large and small page memory pools. The main work of this paper is as follows: the large page technology supported by Linux system is studied and analyzed, including shared large page memory and mapped large page memory from the point of view of system programmer. From the point of view of kernel programmer, the paper also studies and analyzes a kind of physical large page technology for hugetlbfs based on Linux, as well as the transparent large page (THP) and hugetlbfs. The page migration mechanism on physical large pages is implemented, and a page migration scheme of mixed page granularity system is designed by using the page migration mechanism of large and large pages. The page migration scheme is evaluated and the optimization of memory utilization is analyzed quantitatively.
【学位授予单位】:浙江大学
【学位级别】:硕士
【学位授予年份】:2017
【分类号】:TP333
【相似文献】
相关期刊论文 前10条
1 雨寒;;内存遗失之谜 为什么我的本不能用上4GB内存?[J];电脑爱好者;2009年11期
2 郭振海;;内存八种异常故障排除法[J];家电检修技术;2001年05期
3 郭振海;;内存8种异常故障排除法[J];广东电脑与电讯;2001年08期
4 顾颖彦;反射内存网实时通信技术的研究[J];计算机工程;2002年07期
5 天涯;;谁动了我的内存[J];电脑迷;2008年11期
6 燃烧;;解析4GB内存无法识别问题[J];网络与信息;2009年07期
7 刘彩莲;;计算机发生内存不能读写问题的研究[J];计算机光盘软件与应用;2013年08期
8 焦中明;微机内存的扩充和节省方法[J];赣南师范学院学报;1994年05期
9 李正光;微机内存剖析[J];怀化师专学报;1997年06期
10 王兆红,李健;深入理解微机内存概念和内存结构[J];潍坊高等专科学校学报;1999年02期
相关会议论文 前10条
1 张然;董晓恒;罗修波;;反射内存网络在实时信号传输中的应用[A];2007系统仿真技术及其应用学术会议论文集[C];2007年
2 赵齐;黎铁军;邢座程;;DDR3内存系统错误及检错研究[A];第十五届计算机工程与工艺年会暨第一届微处理器技术论坛论文集(A辑)[C];2011年
3 陈少田;叶震;叶大庸;赵宝;;移动Agent迁移策略知识库的建立[A];AECC专题学术研讨会论文集[C];2007年
4 赵宝;叶震;叶大庸;;移动Agent迁移策略知识库的研究[A];计算机技术与应用进展·2007——全国第18届计算机技术与应用(CACIS)学术会议论文集[C];2007年
5 龚成清;;基于人工智能的Linux网络入侵检测系统的设计[A];第三届全国软件测试会议与移动计算、栅格、智能化高级论坛论文集[C];2009年
6 陈尚恒;胡竹菁;;顿悟能力的迁移机制[A];第十届全国心理学学术大会论文摘要集[C];2005年
7 燕东渭;;在LINUX下构建简单的INTERNET/INTRANET安全系统[A];第五届全国优秀青年气象科技工作者学术研讨会学术论文集[C];2002年
8 陈优平;;新一代气象信息网络服务器的选择——Linux[A];网络安全技术的开发应用学术会议论文集[C];2002年
9 罗佳宇;李陶深;;基于Linux的小型网络入侵检测系统的设计与实现[A];广西计算机学会2007年年会论文集[C];2007年
10 杨强;齐美彬;蒋建国;;VPN在arm-linux嵌入式系统中的应用[A];全国第21届计算机技术与应用学术会议(CACIS·2010)暨全国第2届安全关键技术与应用学术会议论文集[C];2010年
相关重要报纸文章 前10条
1 胡军;添加内存真能让“本本”飞起来?[N];中国消费者报;2007年
2 山东 郭振海;内存六种异常故障排除法[N];中国电脑教育报;2001年
3 周双仁;内存故障排除六法[N];中国电脑教育报;2004年
4 冯小民;内存神医[N];电脑报;2001年
5 安徽 刘勇;内存异常故障的排除法[N];中国电脑教育报;2005年
6 郝晓波;内存错误不用慌[N];中国计算机报;2003年
7 均儿;内存X档案[N];电脑报;2006年
8 屈健;尖峰时刻[N];电脑报;2001年
9 ;实现低开销和高速度的RDMA[N];网络世界;2003年
10 北京 成兆义;劣质内存被Win2000“拿下”[N];电脑报;2004年
相关博士学位论文 前7条
1 赵朝君;低功耗心电处理算法及存储架构研究[D];浙江大学;2015年
2 李磊;网格化内存服务体系结构研究[D];中国科学院研究生院(计算技术研究所);2008年
3 王绍刚;基于分离设计方法的硬件事务内存系统研究[D];国防科学技术大学;2009年
4 朱宗卫;基于系统时空行为特征的内存功耗优化研究[D];中国科学技术大学;2014年
5 朱素霞;面向多核处理器确定性重演的内存竞争记录机制研究[D];哈尔滨工业大学;2013年
6 张扬;基于操作语义的弱内存模型描述及程序逻辑研究[D];中国科学技术大学;2015年
7 王睿伯;面向NUMA结构的软件事务内存关键技术研究[D];国防科学技术大学;2011年
相关硕士学位论文 前10条
1 李颂元;一种基于物理大页的页迁移策略的设计与实现[D];浙江大学;2017年
2 孝瑞;内存动态安全监测及防范研究[D];华北电力大学;2015年
3 董步云;Windows平台基于数据关联的内存取证分析技术研究[D];南京大学;2014年
4 朱国梁;存储类内存模拟器的设计与实现[D];国防科学技术大学;2013年
5 吴鸿远;基于共享内存的域间通信优化方法研究[D];杭州电子科技大学;2015年
6 高士翔;基于内存页流验证的ROP防御方案[D];南京大学;2016年
7 周帆;基于安卓内存的证据挖掘与关联分析[D];南京邮电大学;2016年
8 李作骏;访存踪迹收集工具的逻辑设计与实现[D];中国科学院大学(工程管理与信息技术学院);2016年
9 冒伟;基于相变存储器的混合内存系统研究[D];华中科技大学;2015年
10 张进宝;一种基于页面热度的异构内存能耗管理机制[D];华中科技大学;2015年
,本文编号:1905261
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/1905261.html