[发明专利]一种实现文件访问的高速缓存系统和方法有效
| 申请号: | 200710125440.X | 申请日: | 2007-12-20 |
| 公开(公告)号: | CN101187901A | 公开(公告)日: | 2008-05-28 |
| 发明(设计)人: | 刘毅 | 申请(专利权)人: | 康佳集团股份有限公司 |
| 主分类号: | G06F12/08 | 分类号: | G06F12/08;G06F17/30 |
| 代理公司: | 深圳市君胜知识产权代理事务所 | 代理人: | 王永文 |
| 地址: | 5180*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 实现 文件 访问 高速缓存 系统 方法 | ||
技术领域
本发明涉及磁盘文件的读取,尤其涉及的是,一种实现文件访问的高速缓存系统和方法。
背景技术
为减少对磁盘的访问,特别是对远程磁盘的访问,提高文件的检索效率,现有技术采用了高速缓存的方式,即将常用信息放到高速缓冲存储器。
磁盘高速缓存的价值在于两个方面:第一,访问磁盘的速度要远远低于访问内存的速度,因此,从内存访问数据比从磁盘访问速度更快。第二,数据一旦被访问,就很有可能在短期内再次被访问到。这种在短时期内集中访问同一片数据的原理被称作临时局部原理(temporal locality)。临时局部原理能保证:如果在第一次访问数据时,对其进行缓存,那就极有可能在短期内再次被高速缓存命中,即访问到高速缓存中的数据。
因此,如何更有效地实现磁盘高速缓存,是在实际应用中需要改进的技术问题。
发明内容
本发明所要解决的技术问题是提供一种具体的、高效的实现文件访问的高速缓存系统和方法。
本发明的技术方案如下:
一种实现文件访问的高速缓存系统,其包括:索引区单元、数据区单元和空闲指针链表单元;所述数据区单元包括连续的、固定大小的存储单元,用于根据预设置存储单元的大小和个数,占用连续的相应内存空间用作各存储单元,所述存储单元用于记录包括文件类型和文件名的文件信息;所述索引区单元设置索引管理区模块和至少一索引节点;为每一个目录设置一个索引节点,所述索引节点用于存储其对应目录的绝对路径,以及该绝对路径下的目录和文件的信息,并采用对象指针指向记录各文件信息的各存储单元;所述索引管理区模块用于管理所述索引节点;所述空闲指针链表单元用于维护一具有多个链表单元的空闲指针链表,各链表单元分别用于存放指向各存储单元的指针。
所述的高速缓存系统,其中,所述空闲指针链表单元包括先进先出模块和锁机制模块,分别用于实现先进先出功能和锁机制,以维护所述空闲指针链表。
所述的高速缓存系统,其中,其还包括本地或远程磁盘,所述存储单元用于记录所述磁盘的文件信息,并为其建立对应的索引节点,更新所述索引管理区。
一种实现文件访问的高速缓存方法,用于包括索引区、数据区和空闲指针链表的高速缓存系统,该方法包括以下步骤:A1、在内存中预设置存储单元的大小和个数,初始化相应的内存空间作为具有至少一个所述存储单元的所述数据区,所述存储单元用于记录包括文件类型和文件名的文件信息;A2、初始化所述索引区中的索引管理区和至少一索引节点,为每一个目录设置一个索引节点,在所述索引节点存储其对应目录的绝对路径,以及该绝对路径下的目录和文件的信息,并采用对象指针指向记录了各文件信息的各存储单元;A3、在内存中预设置所述空闲指针链表,其中各链表单元分别存放指向各存储单元的指针;A4、收到文件访问请求,通过所述索引管理区,检索各索引节点;A5、判断是否检索得到所需文件,是则执行A6,否则执行A7;A6、根据得到的索引节点中的路径,读取本地或远程磁盘中的所需文件;A7、在本地或远程磁盘中搜索并读取所需文件。
所述的高速缓存方法,其中,步骤A2中,所述索引管理区采用MAP方式实现,采用索引节点的绝对目录路径作为关键字,采用对象指针作为关键字的值。
所述的高速缓存方法,其中,步骤A3中,所述空闲指针链表为先进先出结构,并采用锁机制实现。
所述的高速缓存方法,其中,步骤A5中,在索引管理区为空时,则判断没有检索得到所需文件。
所述的高速缓存方法,其中,步骤A7之后,还执行以下步骤:A71、通过所述空闲指针链表,获得一个空闲的存储单元,将所需文件的文件类型和文件名记录在该存储单元中,并为其建立对应的索引节点。
所述的高速缓存方法,其中,步骤A71之后,还执行以下步骤:A72、更新所述索引管理区,增加或修改存储该所需文件的目录和文件的信息的索引节点。
所述的高速缓存方法,其中,步骤A71之后,还执行以下步骤:A73、判断所需文件占用的存储单元使用完成,或所述空闲指针链表为空时选择未曾使用时间最长的存储单元;A74、释放存储单元的数据,使之成为空闲的存储单元,在所述空闲指针链表的一链表单元中存放指向该空闲的存储单元的指针。
采用上述方案,本发明通过记录空闲的存储单元,以及对索引节点进行管理,应用灵活、方便,高效、迅速地实现了对本地或远程磁盘数据的高速缓存,提高了文件的检索效率。
附图说明
图1是本发明的一种实施方式的高速缓存示意图;
图2是本发明的一种实施方式的空闲指针链表结构示意图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于康佳集团股份有限公司,未经康佳集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710125440.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:螺纹量规的检测方法
- 下一篇:一种汽车离合器的液压工作缸





