当前位置:主页 > 科技论文 > 计算机论文 >

Linux内存管理分析与研究

发布时间:2020-09-02 09:40
   内存管理系统是操作系统中最为重要的部分,因为系统的物理内存总是少于系统所需要的内存数量。为发挥内存的最大作用,各种操作系统采用了不同的管理策略。在Linux操作系统中采用分页式的内存管理方式,而它的内存管理算法采用的是经典的伙伴算法。即:把所有的空闲页面分为10个块组,每组中块的大小是2的幂次方个页面,例如,第0组中块的大小都为20 (1个页面),第1组中块的大小为都为21(2个页面),第9组中块的大小都为29(512个页面)。也就是说,每一组中块的大小是相同的,且这同样大小的块形成一个链表。 但伙伴算法合并要求太过严格,只允许两个块大小相同,地址连续并且同属于一个大块的伙伴才能进行合并。伙伴算法还容易产生碎片,当一个连续的内存中仅仅一个页面被占用,这将导致这整个内存区都不具备合并的条件。伙伴算法涉及了比较多的计算还有链表和位图的操作,开销还是比较大的,如果每次2n大小的伙伴块就会合并到2(n+1)的链表队列中,那么2n大小链表中的块就会因为合并操作而减少,但系统随后立即有可能又有对该大小块的需求,为此必须再从2(n+1)大小的链表中拆分,这样的合并又立即拆分的过程是无效率的。 本文针对伙伴算法这一缺陷,设计一种算法,放宽伙伴关系限制,使两个块大小相同,地址连续但不属于一个大块的空闲空间形成伙伴。对伙伴算法的数据结构进行扩展,同时修改原算法中的分配和释放函数。 实验表明,进过修改的伙伴算法在一定程度上提高了内存的利用效率,使Linux操作系统具有更大的适用性。
【学位单位】:电子科技大学
【学位级别】:硕士
【学位年份】:2011
【中图分类】:TP316.8;TP333.1
【部分图文】:

高速缓存,易失性,存储体系结构,主存


一个高性能的计算机系统要求存储容量大,用户可使用的编程空间大,存取速度快,成本低廉,存储器能支持复杂系统结构。这些要求往往是相互矛盾的,彼此形成制约。因此在一个计算机系统当中,常采取几种不同的存储器,构成多级存储体系,以适应不同层次的需要。并可采取虚拟存储技术,使用户获得更大,更方便的编程空间。2.1 三级存储体系结构如图 2-1 所示是一个典型的三级存储体系结构,分为高速缓存,主存(内存)和外存三个层次,即在这个体系中,计算机有若干兆快速但昂贵且易失性的高速缓存(cache);数千兆速度与价格适中的且同样易失性的内存;以及大容量的低速,廉价,非易失性的磁盘存储;另外还有诸如 DVD 和 USB 等可移动的存储装置。高速缓存和主存能够直接被 CPU 访问,而外存中的程序和数据只能先调入内存才能被 CPU 访问。

基本结构,主存


如图 2-2 所示给出了 cache 的基本结构。cache 和主存都被分成若干等的块,每块由若干字节组成。由于 cache 的容量远小于主存的容量,所的块数要远少于主存的块数,它保存的信息只是主存中最活跃的若干块用主存地址的块号字段访问 cache 标记,并将取出的标记和主存地址的相比较,若相等,说明访问 cache 有效,称 cache 命中,若不相等,说明访无效,称 cache 不命中或失效,而此时需要从主存中将该块取出至 cache当 CPU 发出读请求时,如果 cache 命中,就直接对 cache 进行读操作无关;如果 cache 不命中,则仍需访问主存,并把该块信息一次从主存调内。若此时 cache 已满,则须根据某种替换算法,用这个块替换掉 cach的某块信息。当 CPU 发出写请求时,如果 cache 命中,有可能会遇到 cache 与主存不一致的问题,处理的方法主要有两种,一是同时写入 cache 和主存,达法;二是将信息暂时只写入 cache,并用标志将该块加以注明,直到该块中替换出来时才一次写入主存,称为写回法。如果不命中,就直接把信存,而与 cache 无关。

映像,内存


图 2-3 全相联映像像是指将内存和 cache 按照固定的相同的大以任意对应,即内存的任何一块都可以映像空间被占满的情况下,也允许确实已被占满,具体如图 2-3 所示。像

【参考文献】

相关期刊论文 前8条

1 栾建海,李众立,黄晓芳;Linux 2.6内核分析[J];兵工自动化;2005年02期

2 吴晓勇,曾家智;操作系统内核中动态内存分配机制的研究[J];成都信息工程学院学报;2005年01期

3 陈燕晖,罗宇;Linux 2.6存储管理子系统新特性分析[J];计算机工程与应用;2005年22期

4 沈勇,王志平,庞丽萍;对伙伴算法内存管理的讨论[J];计算机与数字工程;2004年03期

5 谢长生,刘志斌;Linux2.6内存管理研究[J];计算机应用研究;2005年03期

6 田祖伟;Linux内存管理机制分析和改进[J];湖南人文科技学院学报;2004年06期

7 史芳丽,周亚莉;Linux系统中虚拟文件系统内核机制研究[J];陕西师范大学学报(自然科学版);2005年01期

8 肖竟华;陈岚;;Linux内存管理实现的分析与研究[J];计算机技术与发展;2007年02期

相关硕士学位论文 前3条

1 刘生平;桌面Linux内存管理性能优化技术研究与实现[D];清华大学;2005年

2 林伟;Linux内存管理子系统在龙芯2号上的优化[D];中国科学院研究生院(计算技术研究所);2005年

3 高峰;Linux内存管理的设计与实现[D];沈阳工业大学;2007年



本文编号:2810437

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2810437.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户dcf02***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com