一种移动端存储策略的制作方法

文档序号:14426623阅读:203来源:国知局

本发明涉及数据存储及读取技术领域,具体说是一种移动端存储策略。



背景技术:

现有的作为移动端的便携移动设备(手机、平板电脑等),其广义的手机系统内存分为“手机运行内存”及“手机非运行内存”。手机的“运行内存”相当于电脑的内存(或者叫内存条);而手机的“非运行内存”,即手机的rom和硬盘,是机身内部存储器(简称机身内存),相当于电脑的硬盘。手机“运行内存”越大,手机能运行多个程序且流畅;手机“机身内存(非运行内存)”越大,就像硬盘越大,能存放更多的数据。在支持扩展卡的情况下,还可以通过插入tf卡来实现“机身内存”的扩容。

通常,“运行内存”速度快但容量下,“机身内存”容量大但速度慢;基于安全、稳定等考虑,tf卡在新的便携移动设备中正在被逐渐淘汰。

如何协调、优化“运行内存”和“机身内存”的使用,实现对存储策略的优化,对app的运行及系统资源的合理使用有重要意义。



技术实现要素:

针对现有技术中存在的缺陷,本发明的目的在于提供一种移动端存储策略,合理分配、协调作为硬盘的“机身内存”及作为内存的“运行内存”的使用时机,以及存储、读取数据的算法,提高数据存储的效率,保证app运行稳定及多app运行时的资源合理分配及优化。

为达到以上目的,本发明采取的技术方案是:

一种移动端存储策略,其特征在于,包括如下步骤:

当需要存储数据时,通过存储管理器调用内存缓存器,

内存缓存器根据使用者信息生成对应存储数据的hash值,

判断待存储数据是否超过内存缓存单页面上限,

如果超过内存缓存单页面上限,且待存储数据来自于硬盘,则不做处理直接返回,

如果超过内存缓存单页面上限,且待存储数据不是来自于硬盘,则调用硬盘存储器,将待存储数据写入硬盘,

如果未超过内存缓存单页面上限,则将待存储数据写入内存。

在上述技术方案的基础上,写入硬盘或写入内存的待存储数据包含存储hash值。

在上述技术方案的基础上,当将待存储数据写入内存时,进一步判断待存储数据是否超过内存缓存上限,

如果超过内存缓存上限,删除最少使用的数据后,再写入内存。

如果未超过内存缓存上限,直接写入内存。

在上述技术方案的基础上,删除最少使用的数据采用lru算法。

在上述技术方案的基础上,当lru算法执行一次后,待存储数据依然超过内存缓存上限,则重复lru算法进行再次处理,或执行lfu算法进行处理。

在上述技术方案的基础上,当存储数据后需要读取时,通过存储管理器调用内存缓存器,

内存缓存器根据使用者信息产生相应的存储hash值,

判断待读取数据是否超过内存缓存单页面上限,

如果超过内存缓存单页面上限,则调用硬盘存储器,查询待读取数据,

如果未超过内存缓存单页面上限,则利用lru算法查找数据,找到数据则读出数据,否则转调用硬盘存储器,查询待读取数据。

在上述技术方案的基础上,调用硬盘存储器后,如果未找到数据,则返回读取失败,

如果找到数据,则读出数据,

进一步判断数据是否超过内存缓存单页面上限,

如果超过内存缓存单页面上限,则转出错处理,

如果未超过内存缓存单页面上限,则返数据回给内存缓存器。

本发明所述的移动端存储策略,合理分配、协调作为硬盘的“机身内存”及作为内存的“运行内存”的使用时机,以及存储、读取数据的算法,提高数据存储的效率,保证app运行稳定及多app运行时的资源合理分配及优化。

附图说明

本发明有如下附图:

图1存储数据的流程图。

图2读取数据的流程图。

具体实施方式

以下结合附图对本发明作进一步详细说明。

如图1所示,本发明所述的移动端存储策略,包括如下步骤:

当需要存储数据时,通过存储管理器调用内存缓存器,

内存缓存器根据使用者信息生成对应存储数据的hash值,

判断待存储数据是否超过内存缓存单页面上限,

如果超过内存缓存单页面上限,且待存储数据来自于硬盘,则不做处理直接返回,

如果超过内存缓存单页面上限,且待存储数据不是来自于硬盘,则调用硬盘存储器,将待存储数据写入硬盘,

如果未超过内存缓存单页面上限,则将待存储数据写入内存。

在上述技术方案的基础上,写入硬盘或写入内存的待存储数据包含存储hash值。

在上述技术方案的基础上,当将待存储数据写入内存时,进一步判断待存储数据是否超过内存缓存上限,

如果超过内存缓存上限,删除最少使用的数据后,再写入内存。

如果未超过内存缓存上限,直接写入内存。

在上述技术方案的基础上,删除最少使用的数据采用lru算法。

在上述技术方案的基础上,当lru算法执行一次后,待存储数据依然超过内存缓存上限,则重复lru算法进行再次处理,或执行lfu算法进行处理。

在上述技术方案的基础上,当存储数据后需要读取时,通过存储管理器调用内存缓存器,

内存缓存器根据使用者信息产生相应的存储hash值,

判断待读取数据是否超过内存缓存单页面上限,

如果超过内存缓存单页面上限,则调用硬盘存储器,查询待读取数据,

如果未超过内存缓存单页面上限,则利用lru算法查找数据,找到数据则读出数据,否则转调用硬盘存储器,查询待读取数据。

在上述技术方案的基础上,调用硬盘存储器后,如果未找到数据,则返回读取失败,

如果找到数据,则读出数据,

进一步判断数据是否超过内存缓存单页面上限,

如果超过内存缓存单页面上限,则转出错处理,

如果未超过内存缓存单页面上限,则返数据回给内存缓存器。

本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。



技术特征:

技术总结
本发明涉及一种移动端存储策略,包括如下步骤:当需要存储数据时,通过存储管理器调用内存缓存器,内存缓存器根据使用者信息生成对应存储数据的hash值,判断待存储数据是否超过内存缓存单页面上限,如果超过内存缓存单页面上限,且待存储数据来自于硬盘,则不做处理直接返回,如果超过内存缓存单页面上限,且待存储数据不是来自于硬盘,则调用硬盘存储器,将待存储数据写入硬盘,如果未超过内存缓存单页面上限,则将待存储数据写入内存。本发明,合理分配、协调作为硬盘的“机身内存”及作为内存的“运行内存”的使用时机,以及存储、读取数据的算法,提高数据存储的效率,保证App运行稳定及多App运行时的资源合理分配及优化。

技术研发人员:邱扬
受保护的技术使用者:北京酷我科技有限公司
技术研发日:2017.12.29
技术公布日:2018.05.15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1