[发明专利]一种内存管理方法和内存管理系统无效
申请号: | 200710127502.0 | 申请日: | 2007-06-28 |
公开(公告)号: | CN101075214A | 公开(公告)日: | 2007-11-21 |
发明(设计)人: | 华有为 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F12/08 | 分类号: | G06F12/08 |
代理公司: | 北京德琦知识产权代理有限公司 | 代理人: | 罗正云;宋志强 |
地址: | 518044广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 内存 管理 方法 系统 | ||
技术领域
本发明涉及计算机应用(Application)技术领域,更具体地说,本发明涉及一种内存管理方法和内存管理系统。
背景技术
当前的常见的主流操作系统内存管理方法主要包括:页式、段式、段页式三种。
在页式管理中,将各进程的虚拟空间划分成若干个长度相等的页(page),把内存空间按页的大小划分成片或者页面(page frame),然后把页式虚拟地址与内存地址建立一一对应页表,并用相应的硬件地址变换机构来解决离散地址变换问题。
图1为页式管理的示范性示意图。如图1所示,在页式管理中,主存分成多个固定大小的块,作业按照主存块大小分页,并且连续的页存放在离散的块中。页式管理采用请求调页或预调页技术实现了内外存存储器的统一管理,并且可以为内存提供两种方式的保护。一种是地址越界保护,另一种是通过页表控制对内存信息的操作方式以提供保护。地址越界保护可由地址变换机构中的控制寄存器的值和所要访问的虑地址相比较完成,存取控制保护的实现则是在页表中增加相应的保护位即可。
段式管理的基本思想是把程序按内容或过程(函数)关系分成段,每段有自己的名字。一个用户作业或进程所包含的段对应一个二维线形虚拟空间,也就是一个二维虚拟存储器。段式管理程序以段为单位分配内存,然后通过地址影射机构把段式虚拟地址转换为实际内存物理地址。
图2为段式管理的示范性示意图。段式管理为用户提供了一个二维的虚地址空间,反映了程序的逻辑结构,有利于段的动态增长以及共享和内存保护等,这大大地方便了用户。而分页系统则有效地克服了碎片,提高了存储器的利用率。从存储管理的目的来讲,主要是方便用户的程序设计和提高内存的利用率。
分页是信息的物理单位,与源程序的逻辑结构无关,用户不可见。页长由系统确定,页面只能以页大小的整倍数地址开始。在分页方式中,源程序(页号,页内位移)经连结装配后变成了一维结构。分段是信息的逻辑单位,由源程序的逻辑结构所决定,用户可见,段长可根据用户需要来规定,段起始地址可以从任何主存地址开始。在分段方式中,源程序(段号,段内位移)经连结装配后仍保持二维结构。
段页式管理方式将段式管理和页式管理结合起来。不过,由于段式管理与页式管理都需要较大的系统开销,可以预计到段页式管理的开销会更大。因此段页式管理方式一般只用在大型机系统中。近年来由于硬件发展很快,段页式管理的开销在工作站等机型上已变得可以容忍了。为了实现段页式管理,系统必须为每个作业或进程建立一张段表以管理内存分配与释放、缺段处理、存储保护相地址变换等。另外,由于一个段又被划分成了若干页,每个段又必须建立一张页表以把段中的虚页变换成内存中的实际页面。显然,与页式管理时相同,页表中也要有相应的实现缺页中断处理和页面保护等功能的表项。另外,由于在段页式管理中,页表不再是属于进程而是属于某个段,因此,段表中应有专项指出该段所对应页表的页表始址和页表长度。总之,因为段页式管理是段式管理的页式管理方案结合而成的,所以具有它们二音的优点。但反过来说,由于管理软件的增加,复杂性和开销也就随之增加了。另外,需要的硬件以及占用的内存也有所增加。更重要的是,如果不采用联想寄存器的方式提高CPU的访内速度,将会使得执行速度大大下降。
在段页式管理方式中,用页式方法来分配和管理内存空间,即把内存划分成若干大小相等的页面;用段式方法对用户程序按照其内在的逻辑关系划分成若干段;再按照划分内存页面的大小,把每一段划分成若干大小相等的页面;用户程序的逻辑地址由三部分组成,形式如下:段号、页号、页内地址;内存是以页为基本单位分配给每个用户程序的,在逻辑上相邻的页面内存不一定相邻。
现有技术的段页式内存管理中存在动态的内存分配与释放。根据操作系统原理,伴随分配次数的增加以及分配大小的不确定性,动态的内存分配与释放中总会有空闲的内存块由于大小不合适而被搁置,因此这种现有的内存管理方式难以消除内存碎片,并在内存管理中始终存在内存碎片。
发明内容
有鉴于此,本发明实施例的主要目的是提出一种内存管理方法,以消除内存管理中的内存碎片。
本发明实施例的另一目的是提出一种内存管理系统,以消除内存管理中的内存碎片。
本发明实施例的再一目的是提出一种内存使用方法,以无碎片地使用内存。
为达到上述目的,本发明实施例的技术方案是这样实现的:
一种内存管理方法,该方法包括预先分配固定大小的内存空间,该方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710127502.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:建立、分析、确认物品身份信息的方法、设备及信息单元
- 下一篇:直热式电暖器