[发明专利]用于持久和稳固的存储设备分配的系统和方法无效
申请号: | 01104511.6 | 申请日: | 2001-02-14 |
公开(公告)号: | CN1309354A | 公开(公告)日: | 2001-08-22 |
发明(设计)人: | 詹姆斯·R·H·查林杰;阿鲁·K·利恩格尔 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F12/08 | 分类号: | G06F12/08 |
代理公司: | 中国国际贸易促进委员会专利商标事务所 | 代理人: | 酆迅 |
地址: | 美国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 持久 稳固 存储 设备 分配 系统 方法 | ||
本发明涉及计算机存储方法和系统,更具体地涉及用于稳固动态存储分配的方法和系统。
许多计算机需要动态地分配存储器。操作系统使用动态存储分配为执行程序而分配存储器。动态存储分配的另一个例子可以包括用于存储网络数据的网络服务器。在很多情况下,在发出请求之前,所请求的存储尺寸是不知道的。动态分配的存储块的生命周期也是不知道的。
已经花费了相当多的精力来开发主存储器的有效动态存储分配算法。但对盘上的有效动态存储分配算法的开发所花费精力却少得多。
有多种理由说明盘上的有效动态存储分配的重要性。在很多情况下,主要的是具有能在时间上持久的即使在关机后也持久的数据。盘存储器提供持久存储。盘存储器也提供容错存储;当系统垮台以致主存储器内容丢失之后,经常仍能保持存于盘上的信息。盘存储器的另一个优点是有可能以比主存储器更合理的价格提供更多的盘存储器。因此它可用于存储主存储器内存放不下的信息。
参照图1,最初适配系统分配找到的第一块足够大的能满足存储请求的存储块(的全部或一部分)。对于“7”的存储请求,最初适配返回B1,因为这是遇到的能够满足请求的第一块。最佳适配系统分配足够大以能满足存储请求的最小存储块(的全部或一部分)。图1中,由于“7”在块B3(它的容量为8)中适配得最佳,因此返回B3。
参照图2,在二进制伙伴系统中,块尺寸为2的幂(例如4和4,8和8等)。许多动态存储分配器(DSA)保持一个或多个空块表。这类表称为空表,例如空块表。不同尺寸的块有不同的空表。也存在用于分配其他尺寸的块的伙伴系统。在1996年10月在Proceedings of IEEEFrontiers′96上刊登的Arun Iyengar所著的名为“动态存储分配算法的可改变规模性”的文章以及本说明书所附参考文献中都很好地回顾了动态存储分配的现有技术。
动态存储分配器(DSA)能够使用不同方法来汇并邻近空块。一个方案是使用立即汇并,其中在释放块时立即将该释放块与邻近空块汇并,如图3所示。在图3中,在每块中都标明块尺寸。正的尺寸值标明空块,而负的尺寸值标明分配块。
参照图4,另一个方案包括延迟汇并。当使用延迟汇并时,在释放后邻近的空块并不自动地合并。相反,到一定时候(例如当无法分配一个足够大能满足请求的块时),DSA将扫描存储设备中的各块以及如图4中所示地将邻近块合并。
存储碎块是DSA浪费的存储区。内部存储碎块是当使用大于所请求尺寸的空块来满足请求时(例如使用尺寸为32的块来满足对尺寸为25的块的请求时)损失的存储区。当空块与分配块交织时出现外部存储碎块。在这种情况下,即使有大于b字节的空间也无法满足对b字节的分配请求,因为最大的连续空块小于b字节。
以上引用的“动态存储分配算法的可改变规模性”文章中所描述的多空表适配Ⅰ(MFLFⅠ)使用多个按照尺寸组织的空表。小块的空表称为快表。大块的空表称为杂项表。当保持单个杂项表时,MFLF Ⅰ退化为称为快适配的存储分配系统。
参照图5,其中显示快适配技术。在此系统中,尺寸为16以下的块放在快表中;可以改变快表数量以便针对不同请求分布将性能优化。在此例中,当2≤s≤16(2是最小块尺寸)时,通过检查尺寸为s的快表来分配尺寸为s的块。如此表不空,则表中第一块可用于满足请求。注意到可能有对应于单元尺寸的倍数的块尺寸的快表。例如,在图2中,单元尺寸是1。如果单元尺寸是1000,则可以使用块尺寸为1000、2000、3000、…、16000的快表(总共有16个快表)。MFLFⅠ使用延迟汇并。存储区分为工作存储区12和尾区14,如图5中所示。工作存储区12包括分配块和空表中的块。尾区14包括存储区一端的未分配存储区中的连续块。最初,在分配任何块之前,尾区包括所有可分配存储区,及空表是空的。空表包括快表和杂项表,其中杂项表用于较大存储块。块13包括一个尺寸(由块13中的数目所标示)。当检查一个或多个空表后发现无法满足请求时,可从尾区14中分配从而满足请求。尾区指针(tailptr.)标示尾区14的始端。当释放已分配块时即将它填放入空表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/01104511.6/2.html,转载请声明来源钻瓜专利网。