一种面向透明计算智能终端的缓存管理方法

文档序号:9708244阅读:277来源:国知局
一种面向透明计算智能终端的缓存管理方法
【技术领域】
[0001] 本发明涉及一种文件管理方法,尤其涉及一种面向透明计算智能终端的缓存管理 方法。
【背景技术】
[0002] 透明计算是一种用户无需感知计算机操作系统、中间件、应用程序和通信网络的 具体所在,只需根据自己的需求,通过网络从所使用的各种终端设备(包括固定、移动、以及 家庭中的各类终端设备)中选择并使用相应服务(例如计算、电话、电视、上网和娱乐等)的 计算模式。
[0003] 基于透明计算的软件执行模式,将软件(操作系统视为一类特殊软件)划分为程序 段和外部资源,其中程序段又包括只读部分和读写部分。基于透明计算的智能终端,本地存 储器中不存储操作系统和软件,而是在用户需要运行软件时,直接从服务端下载软件的程 序段并加载至内存中运行,即可实现软件的启动运行,在软件的运行过程中,根据软件对外 部资源的需求,按需从服务端下载外部资源,供软件调用。由于智能终端所需要的数据均需 要通过网络从服务端下载,在网络环境不好的情况下,会给网络传输带来很大的压力,因 此,在智能终端与网络之间,设备一个由闪存构成的缓存来缓解频繁从服务端下载数据的 压力。由于闪存的读取速度与内存的读取速度相当,智能终端只将该程序的读写部分存储 在内存中,而将程序的只读部分存储在闪存中,只读的外部资源也存储在闪存中,在程序运 行中直接从闪存中读取需要数据,这种策略一方面降低了程序在运行过程中对内存存储容 量的需求,另一方面也保证了程序能够流畅运行。并且,由于闪存具备长期存储数据的特 征,因此,闪存中存储的程序只读部分和外部资源在程序运行时无需每次都从服务端下载, 可直接从闪存中读取,降低了智能终端与服务端的通信频率,提高了智能终端的程序运行 效率。但这也对缓存的管理提出了需求,在基于透明计算的智能终端中,通过智能终端的超 级系统Meta 0S管理智能终端的缓存。

【发明内容】

[0004] 本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一 种管理简单、方便,能够有效降低智能终端对网络的依赖,提高基于透明计算智能终端缓存 利用效率,并有效防止操作系统与应用软件对缓存资源竞争的面向透明计算智能终端的缓 存管理方法。
[0005] 为解决上述技术问题,本发明提出的技术方案为:一种面向透明计算智能终端的 缓存管理方法,智能终端将缓存划分为索引区、状态区和数据区;
[0006] 所述索引区用于存储索引节点信息,所述索引节点包括索引节点号、节点单元数、 节点单元数个缓存单元偏移地址;所述偏移地址为缓存单元的编号;
[0007] 所述索引节点的最大个数等于所述缓存包含的缓存单元数;
[0008] 所述索引节点的节点单元数的最大值等于所述智能终端所支持的最大文件所占 用缓存单元数;
[0009]所述状态区用于存储以二进制形式表示的缓存单元存储状态的状态索引,所述状 态索引的每一个二进制位表示一个缓存单元,以1表示存储状态,以〇表示空闲状态;所述存 储状态索引的长度与缓存单元数相同;
[0010]所述智能终端根据所述索引节点大小和所述索引节点的最大个数计算索引节点 所需的最大存储空间,自动分配索引节点区;
[0011] 所述智能终端根据所述状态索引需要的二进位个数计算状态索引所需的存储空 间,自动分配状态区。
[0012] 作为本发明的进一步改进,所述索引区按照缓存单元分页管理;当修改索引节点 时,根据该索引节点所在的缓存单元,对该缓存单元中的索引节点执行修改操作。
[0013] 作为本发明的进一步改进,包括读取步骤、写入步骤、重写步骤、和删除步骤;
[0014] 所述文件读取步骤包括:根据所述索引节点号检索所述索引区并获取索引节点, 根据所述节点单元数依次读取所述偏移地址所对应缓存单元的数据内容;
[0015] 所述写入步骤包括:根据需要写入数据的大小判断所述数据需要分配的缓存单元 数,检索所述状态索引,判断所述缓存中的空闲缓存单元是否满足分配,是则分配缓存单 元,并修改缓存单元对应的状态索引,生成索引节点,将所分配的缓存单元的编号写入索引 节点的偏移地址中,将所述数据写入所分配的缓存单元,否则缓存不足,退出写入步骤;
[0016] 所述重写步骤包括:根据所述索引节点号检索所述索引区并获取索引节点,删除 所述索引节点偏移地址对应缓存单元中的数据,并根据所需要写入数据的大小重新分配所 述索引节点的缓存单元,将所需要写入的数据写缓存单元;
[0017] 所述删除步骤包括:根据所述索引节点号检索所述索引区并获取索引节点,依次 删除所述索引节点偏移地址对应缓存空间中的数据,并修改所述缓存空间对应的状态索 引,删除所述索引节点。
[0018] 作为本发明的进一步改进,所述重写步骤中,所述根据所需要写入数据的大小重 新分配所述索引节点的缓存单元包括:
[0019] S1.1通过判断所述需要写入数据大小计算需要占用的缓存单元数,判断所述索引 节点已分配的缓存单元数与所述需要写入数据需要占用缓存单元数的关系,大于则跳转到 步骤S1.2;等于则跳转到步骤S1.4;小于则需要补充分配缓存单元,跳转到步骤S1.3;
[0020] S1.2.释放多余的已分配的缓存单元,跳转到步骤S1.5;
[0021] S1.3.判断所述缓存中的空闲缓存单元是否满足分配,是则分配缓存单元,并修改 缓存单元对应的状态索引,跳转到步骤S1.4,否则缓存不足,退出重写步骤;
[0022] S1.4.重新分配结束,执行所述将所需要写入的数据写缓存单元的步骤。
[0023] 与现有技术相比,本发明的优点在于:
[0024] 1、本发明智能终端根据索引节点的大小和索引节点的最大数据自动计算并分配 索引区,节约的索引区需要占用的缓存空间,提高了缓存的利用效率。
[0025] 2、本发明索引区按照缓存单元分页管理,修改单一的索引节点,只需要修改该索 引节点所在的缓存单元,不涉及索引区其它缓存单元的操作,减少了缓存的擦写次数。 [0026] 3、本发明算法简单,容易实现,同时,又能满足智能终端缓存管理的需求。
【附图说明】
[0027] 图1为本发明缓存单元划分及索引结点结构示意图。
[0028] 图2为本发明索引区索引节点变化示意图。
[0029]图3为本发明读取步骤流程图。
[0030] 图4为本发明写入和重写步骤流程图。
[0031] 图5为本发明删除步骤流程图。
【具体实施方式】
[0032] 以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而 限制本发明的保护范围。
[0033] 如图1所示,本实施例一种面向透明计算智能终端的缓存管理方法,智能终端将缓 存划分为索引区、状态区和数据区;索引区用于存储索引节点信息,索引节点包括索引节点 号、节点单元数、节点单元数个缓存单元偏移地址;偏移地址为缓存单元的编号;索引节点 的最大个数等于缓存包含的缓存单元数;索引节点的节点单元数的最大值等于智能终端所 支持的最大文件所占用缓存单元数;状态区用于存储以二进制形式表示的缓存单元存储状 态的状态索引,状态索引的每一个^进制位表不一个缓存单兀,以1表不存储状态,以〇表不 空闲状态;存储状态索引
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1