[发明专利]经由位图的树表示分配文件存储的方法和设备有效
申请号: | 201080058365.X | 申请日: | 2010-12-07 |
公开(公告)号: | CN102713826A | 公开(公告)日: | 2012-10-03 |
发明(设计)人: | E·B·汤姆拉;D·A·玛吉尼莫尔 | 申请(专利权)人: | 苹果公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F17/30 |
代理公司: | 中国国际贸易促进委员会专利商标事务所 11038 | 代理人: | 李玲 |
地址: | 美国加*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 经由 位图 表示 分配 文件 存储 方法 设备 | ||
技术领域
本发明一般涉及文件系统。更具体地,本发明涉及基于位图为文件分配存储装置中的区块。
背景技术
文件系统的一个主要要求是以区块为单位保持对存储装置的可用空闲空间的跟踪。传统上,文件系统可使用位图来表示空闲空间。位图简单地是位的阵列,其中,第N个位指示第N个区块是已分配的还是空闲的。因此,位图的开销(overhead)可以相对低,诸如,对于每4K大小的区块1位的情况,约为0.003%。对于1GB的文件系统,对应的位图的大小约32KB,这可以容易地适应存储器,以进行快速扫描来识别空闲空间。
然而,当文件系统的大小继续比存储器大小的增长更快地增长时,加载在文件系统中用于扫描的位图在大小或时间方面可能变得重要。例如,用于1PB文件系统的32GB大小位图可能不适应大多数数据处理系统或处理机上的存储器。结果,扫描位图可能需要每次从盘中读取位图(例如,盘的页入和页出),这样会显著降低文件系统的速度。
此外,将大尺寸位图加载到存储器中会直接与其它内核任务竞争数据处理系统中可用的有限资源。例如,如果位图不能被完全缓存,则可能需要用多个缓冲区来管理分页操作。因为每个缓冲区都需要分配系统中的有限数量的缓冲区头中的一个,所以加载大尺寸位图会进一步劣化系统性能。
因此,使用位图在存储装置中分配空闲空间的传统文件系统与现代文件系统的增长不协调。
发明内容
本发明的实施例可包括搜索位图的树表示(例如,红黑树)来找到存储装置中待分配的可用区块的方法和设备。可以接收针对文件的分配请求,以开始搜索。在一个实施例中,位图可包括与存储装置中的区块对应的位的阵列。每个位可指示区块之一是否可用。树表示可包括具有节点的至少一个红黑树(red-black tree),所述节点对应于位图中指示可用区块范围(例如,包括偏移和长度)的一个或多个连续位。可以基于针对给定文件的分配请求的本质(例如,分配大小请求、是否存在该文件等),选择一个树表示。当位图随着存储装置中的区块分配的改变而被更新时,树表示可以被同步。
在替代实施例中,可在存储器(例如,RAM)中维护位置树和范围树,以表示存储装置(例如,硬盘)中的位图,从而指示存储装置中区块的分配状态。位置树可以是根据可用区块范围的位置而设置键值的红黑树。范围树可以是根据可用区块范围的大小而设置键值的红黑树。可以基于如下搜索来识别位置树和/或范围树的一个或多个节点:搜索指定的树来找到与基于针对文件的分配请求的标准匹配的未分配空间范围。如果位置树和/或范围树不包括满足搜索标准的匹配节点,则可以遍历位图。可以通过遍历位图并且插入表示盘空间的未分配区域的节点来构建位置树和范围树。
根据附图和下面的具体实施方式,本发明的其它特征将显而易见。
附图说明
在附图的图中,以举例的方式而非限制的方式示出本发明,在附图中,类似的附图标记指示类似的元件,并且其中:
图1是示出用于搜索位图的树表示以分配区块的系统的一个实施例的框图;
图2是示出用于表示位图的示例性红黑树的样品图;
图3是示出在不搜索位图的情况下识别供分配的可用区块的处理的一个实施例的流程图;
图4是示出搜索位图的树表示以进行区块分配的处理的一个实施例的流程图;
图5示出可与本文描述的实施例结合使用的诸如计算机系统之类的数据处理系统的一个示例。
具体实施方式
本文描述了用于基于位图的树表示来分配区块的方法和设备。在下面的描述中,阐述了众多具体细节,以提供对本发明实施例的透彻说明。然而,对于本领域技术人员显而易见的是,可以在没有这些具体细节的情况下实践本发明的实施例。在其它情形下,为了不模糊对本说明书的理解,没有详细示出熟知的组件、结构和技术。
在说明书中提及“一个实施例”或“实施例”意指结合该实施例描述的特定特征、结构或特性可以包括在本发明的至少一个实施例中。说明书各处出现的短语“在一个实施例中”不一定都指同一个实施例。
以下附图中示出的那些处理是由包括硬件(例如,电路、专用逻辑等)、软件(诸如,在通用计算机系统或专用机器上运行的软件)或这两者的组合的处理逻辑执行的。虽然这些处理在以下是依据一些顺序的操作来描述的,但应该理解,所描述的操作中的一些可以按不同的次序执行。此外,一些操作可以并行而非顺序地执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苹果公司,未经苹果公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201080058365.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:阳型连接器、阴型连接器和连接器装置
- 下一篇:传感器组件