一种提高存储空间利用率的方法和终端的制作方法

文档序号:6401205阅读:246来源:国知局
专利名称:一种提高存储空间利用率的方法和终端的制作方法
技术领域
本发明涉及存储空间的处理技术,特别涉及一种提高存储空间利用率的方法和终端。
背景技术
存储空间、也称为物理空间,是物理地址的集合,即某个存储设备的总容量。例如电脑的C盘常用来存放终端程序,D盘或E盘可存放各种图片、音视频、文档等;C盘、D盘、E盘的总容量即为其存储空间。上述各盘中存放的内容会占用该盘的一部分空间,即为占用空间;该盘中剩余的空间即为可用空间,可用空间的大小代表了该盘还能存放内容的多少。以Linux的虚拟文件终端为例,请参阅图1,用户在电脑上进行各种操作时、如打开文档进行编辑、浏览网页、观看视频等,用户空间中会显示出电脑正在运行的各个进程。用户进程
1、用户进程2、用户进程3等表示用户可见的操作。而在内核空间则依次由虚拟文件终端、文件终端、存储介质对用户的操作进行相应的处理。其中,虚拟文件系统(VFS,Virtual File System )是一种屏蔽各种文件系统差异化而抽象出来的一个软件层,允许存储介质中以各种文件系统同时存在;其相当于一种软件机制,又叫Linux的文件系统管理者。文件系统是管理文件信息及其所用资源的软件系统,相当于是在磁盘上组织文件,一种管理文件存取格式的软件模块;例如Windows系统中使用的NTFS (New Technology File System,特别为网络和磁盘配额、文件加密等管理安全特性设计的磁盘格式)、FAT (File Allocating Table,文件分配表,为小磁盘及简单的目录结构而设计的文件系统),Android系统中使用的EXT4 (The fourth extended filesystem,一种针对EXT3系统的扩展日志式文件系统,是专门为Linux开发的原始的扩展文件系统的第四版),Linux 系统中使用的 JFFS2 (Journalling Flash File System Version2,闪存日志型文件系统第2版)。存储介质是指存储数据的载体,一般会分为卷、簇、扇区、块等物理布局进行数据的管理;根据介质存储原理及介质物理状态,分为硬盘、FLASH (闪存,一种不挥发性内存)、EMMC (Embedded Multi Media Card,嵌入式多媒体)。请同时参阅图2,假设用户在存储空间内保存一文档时,内核空间中进行的操作依次为VFS (相当于虚拟文件终端)写、EXT4 (相当于文件终端)写,数据就通过文件终端的接口写入FLASH (相当于存储介质)中保存。当需要读出时,FLASH中保存的内存依次由EXT4读、VFS读,最后在用户空间中显示为用户读。通常当存储介质(FLASH)的存储空间已满、或可用空间不足以保存数据时,终端常会提示用户存储空间已满或不够,不能写入,需要用户删除部分数据、或进行碎片整理、或换另外一个存储空间。有些重要文件用户不想删除时,常将其压缩来节省部分空间,由用户主动压缩不仅需要一定的压缩时间,还要进行重复的操作。有些不常用的文件基于一些原因被忽略而未压缩,常占据一定的存储空间;若要对其进行压缩则需要花时间找出哪些文件长久未用。由此可见,现有的存储空间的利用率不高,由用户主动对存储空间内的各种文件进行处理不仅浪费用户的时间,而且操作繁琐,用户的体验效果较差。
因而现有技术还有待改进和提高。

发明内容
鉴于上述现有技术的不足之处,本发明的目的在于提供一种提高存储空间利用率的方法和终端,以解决现有技术存储空间的利用率不高,对各种文件进行处理时浪费用户的时间,操作繁琐造成用户体验效果差的问题。为了达到上述目的,本发明采取了以下技术方案:
一种提高存储空间利用率的方法,其包括:
A、监测存储空间中可用空间的大小,判断可用空间是否小于预设空间:如果是,则启动文件系统压缩模式,对存储空间中的文件进行扫描;否则退出监测;
B1、判断当前扫描到的文件是否为可压缩文件:如果是,则执行步骤C ;否则,扫描下一个文件,重复步骤B,直至所有文件扫描完成、退出文件系统压缩模式;
Cl、对可压缩文件进行压缩并标示后,扫描下一个文件,返回步骤BI ;
或者,所述步骤A之后包括:
B2、判断当前扫描到的文件是否为可压缩文件:如果是,则标记该文件为可压缩文件;否则,扫描下一个文件继续判断,直至所有文件扫描完成;
C2、对标记的可压缩文件进行压缩。所述的提高存储空间利用率的方法,其中,所述步骤BI或者B2中,判断当前扫描到的文件是否为可压缩文件具体包括:
BH、判断当前扫描到的文件是否为非压缩文件:如果是,则执行步骤B2 ;否则,确认该文件为压缩文件,不作任何处理;
B12、计算所述文件未被使用的空置时间;
B13、判断所述空置时间是否大于预设时间阀值:如果是,则该文件为可压缩文件;否贝U,该文件为待压缩文件。所述的提高存储空间利用率的方法,其中,所述步骤B13中,当判断空置时间大于预设时间阀值后还包括:判断该文件是否为压缩比高的文件:如果是,则该文件为可压缩文件;否则,该文件为待压缩文件。所述的提闻存储空间利用率的方法,其中,在步骤Cl或者C2中,在内核空间对可压缩文件进行压缩,在用户空间无压缩提示。所述的提高存储空间利用率的方法,其中,在步骤Cl或者C2中,以块为单位对可压缩文件进行压缩,每块的大小为预设字节。所述的提高存储空间利用率的方法,其中,对压缩后的可压缩文件进行解压时,以块为单位进行解压缩。一种用于实现所述的提高存储空间利用率的方法的终端,其包括:
空间监测模块,用于监测存储空间中可用空间的大小;
空间判断模块,用于判断可用空间是否小于预设空间;
文件系统处理模块,用于在可用空间小于预设空间时启动文件系统压缩模式,对存储空间中的文件进行扫描,判断存储空间的文件中是否有可压缩文件;
压缩模块,用于在存储空间的文件中有可压缩文件时、压缩所述可压缩文件并标示; 以及,所述文件系统处理模块,还用于判断当前扫描到的文件是否为可压缩文件,根据判断结果标记该文件为可压缩文件或者扫描下一个文件;
所述压缩模块,还用于对标记的可压缩文件进行压缩。所述的终端,其中,所述文件系统文件系统处理模块具体包括:
扫描单元,用于逐个扫描存储空间中的文件;
类型判断单元,用于判断当前扫描到的文件是否为非压缩文件;
计算器,用于计算非压缩文件的未被使用的空置时间;
判断单元,用于判断空置时间是否大于预设时间阀值、以及文件是否为压缩比高的文件,并输出判断结果。所述的终端,其中,所述压缩模块,还用于以块为单位对可压缩文件进行压缩,每块的大小为预设字节;对压缩后的可压缩文件进行解压时,以块为单位进行解压缩。所述的终端,其中,所述终端为智能手机或者电脑。相较于现有技术,本发明提供的一种提高存储空间利用率的方法和终端,其方法通过监测存储空间中可用空间的大小,在可用空间小于预设空间时启动文件系统压缩模式,对存储空间中的文件进行扫描,判断当前扫描到的文件为可压缩文件时对其进行压缩并标示,继续扫描下一个文件直至存储空间中的所有文件都扫描完成、退出文件系统压缩模式,能自动对需要压缩的文件进行查找并压缩,无需用户主动处理,节省了用户的时间,方便用户操作,提升了用户体验效果。


图1为现有技术中用户空间与内核空间的组成示意图。图2为现有技术中用户空间与内核空间的读写示意图。图3为本发明提高存储空间利用率的方法的第一较佳实施例流程图。图4为本发明提高存储空间利用率的方法的第二较佳应用实施例流程图。图5为本发明提供用于实现提高存储空间利用率的终端的结构框图。
具体实施例方式本发明提供一种提高存储空间利用率的方法和终端,为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。本发明提供的提高存储空间利用率的方法能在存储空间已满、或可用空间较小时自动对存储空间内的所有文件进行处理,从中选择久未使用的、压缩比高的文件进行压缩,提高了存储空间的利用率,大大提升了用户的使用体验效果。请参阅图3,其为本发明提高存储空间利用率的方法的第一较佳实施例流程图。如图3所示,所述的提高存储空间利用率的方法包括:
步骤S100、监测存储空间中可用空间的大小,判断可用空间是否小于预设空间:如果是,则启动文件系统压缩模式,对存储空间中的文件进行扫描;否则退出监测。本发明实施例中,有数据需要写入存储空间(如新建文档或复制音视频资料)时开始监测可用空间的大小。为了确保数据能写入,根据一般的数据大小较优地设置预设空间的大小为IOOM ;用户可根据需要存储的文件类型调整预设空间的大小,如需要存储视频文件时可设置预设空间的大小为2G。假设往电脑的D盘存储一文档,若监测发现D盘的存储空间中可用空间小于100M,则启动文件系统压缩模式;基于存储空间中有多个已存储的类型不同的文件,需要先对所有的文件逐个扫描一次,通过步骤S200来判断当前扫描到的文件是否需要被压缩;若可用空间大于100M,则退出监测、执行文档写入操作,等待下一次有数据需要写入时来启动监测。在具体实施时,步骤SlOO中开始监测的条件也可以有其他设置,例如实时对可用空间的大小进行监测,一旦检测到可用空间小于预设空间时就启动文件系统压缩模式,对于文件较多的情况能减少用户写入等待的时间,使存储空间能随时保持充足的可用空间。或者在某个固定时间(如每天下午5点)监测一次,再或者每隔一段时间(每隔I小时)自动监测一次,本发明对此不作限定。当然,在上述实施方式中当检测到可用空间小于预设空间时,也可以提示用户空间不足,是否需要进行压缩;当用户确认后再启动文件系统压缩模式。步骤S200、判断当前扫描到的文件是否为可压缩文件:如果是,则执行步骤S300 ;否则,扫描下一个文件,重复步骤S200,直至所有文件扫描完成、退出文件系统压缩模式。本实施例中,步骤S200中,判断当前扫描到的文件是否为可压缩文件具体包括: 步骤1、判断当前扫描到的文件是否为非压缩文件:如果是,则执行步骤2 ;否则,确认
该文件为压缩文件,不作任何处理;
步骤2、计算所述文件未被使用的空置时间;
步骤3、判断所述空置时间是否大于预设时间阀值:如果是,则该文件为可压缩文件;否则,该文件为待压缩文件。扫描到一个文件时,先判断该文件是否已经压缩过。通过文件的后缀名即可判断文件是否为非压缩文件。如当该文件的后缀名为rar、zip、tar等时,则表示该文件为压缩文件;其他后缀名如txt、doc、rmvb等,则表示该文件为非压缩文件。压缩文件的后缀名的划分为现有技术,本发明对此不作详述。由于压缩文件已无再次压缩的必要,此处对其不作处理;而非压缩文件还有较大的压缩空间,本发明实施例需要对非压缩文件进行压缩处理。然而,并不是所有的非压缩文件都需要压缩。在判断当前扫描到的文件为非压缩文件时,需进一步根据用户对不同文件的关注程度来判断其是否需要被压缩。由当前的终端时间减去该文件最后一次打开的时间可得出空置时间。该空置时间越长,说明该文件不是很重要,因此本发明对这种使用频率小的文件进行压缩将不会影响用户的使用,同时还能节省空间。为此可由用户设置一预设时间阀值,如3天,当空置时间大于预设时间阀值时则说明用户对该文件长期未使用,可以压缩,判断其为可压缩文件;反之,当空置时间小于预设时间阀值则说明用户近期打开过该文件,可能还会继续使用,暂时不压缩以方便用户对该文件内容进行读写,判断其为待压缩文件。根据文件的使用状态有选择地压缩文件,更多地考虑了用户的情况,使本发明更加地人性化。需要注意的是,有的文件如JPG格式的图片、MP3等文件的压缩比较低,压缩后能节省的空间较小。有的文件如txt文档、纯文字的文件、BMP格式的图片的压缩比较高,如一个占用空间272K大小的word文档(后缀为.doc)压缩后变为80K,其压缩率高达70%。为了加快压缩的时间,确保压缩后能获得更大的空间,在上述步骤3中,当判断空置时间大于预设时间阀值后还包括:判断该文件是否为压缩比高的文件:如果是,则该文件为可压缩文件;否则,该文件为待压缩文件。本发明实施例中,将txt文档、word文档、BMP格式的图片定义为压缩比高的文件,优先对这些文件进行压缩。在具体实施时,若本次扫描的所有文件中没有压缩比高的文件,即判断结果均为所述待压缩文件时,说明其可以进行压缩的但压缩空间较小,则将待压缩文件默认为是可压缩文件并对其进行压缩。步骤S300、对可压缩文件进行压缩并标示后,扫描下一个文件,返回步骤S200。在步骤S300中,在内核空间对可压缩文件进行压缩,在用户空间无压缩提示,相当于对可压缩文件进行的压缩采用透明压缩,也可以叫用户不可见压缩,即是压缩时并不会在终端的显示屏上显示压缩任务框或其他提示信息,用户不会看到整个压缩过程,都是在终端的内核空间中运行的。用户所见的压缩后的文件的后缀名没有任何更改,但是内核空间中实际存储在存储介质中的文件后缀名已更改为压缩格式,如rar。为了便于区别和用户识别,对采取透明压缩后的文件进行标记;这样即使用户没有看见哪些文件被压缩过,通过标记就能明确存储空间内文件的变动情况,同时在下次压缩时,终端不会对标记的文件进行压缩,默认其为压缩文件。对压缩后的文件标记后,会返回步骤S200扫描下一个文件,继续判断直至该存储空间内的所有文件都判断完成,无可压缩文件后退出文件系统压缩模块。由于透明压缩后的文件在显示屏上显示时其文件类型没有改变,则在压缩算法、以及文件运算处理上有一定的要求,即对文件的读写速度要快,使用户感觉不到该文件已经被压缩过。为了实现快速读写,以块为单位对可压缩文件进行压缩,每块的大小为预设字节,对压缩后的可压缩文件进行解压时,采用预设字节的整块读出,读写时均采用压缩率高、压缩和解压速度快的LZ77算法,预设字节为128K。对文件的读写相当于对该文件进行压缩(写入)和解压缩(读出);在压缩时,对文件以块进行压缩,每块大小为128K,之后存储在存储介质中。解压缩时以128K为一块,以块为单位进行解压,将解压后的内容显示在屏幕上供用户读取。应当理解的是,步骤S200与步骤S300是一个重复循环的过程;也就是说,当步骤S200中扫描一个文件时,判断其为可压缩文件,则执行步骤S300进行压缩,接着扫描下一个文件,返回步骤S200,继续判断其是否可压缩。在步骤S200中若判断为非可压缩文件,扫描下一个文件再继续判断该文件是否为可压文件,若不是则继续扫描下一个文件、直至存储空间中的所有文件都扫描完后、可压缩的文件均已压缩,此时退出文件系统压缩模式,存储空间可进行正常的读写操作。本发明提高存储空间利用率的方法的第二较佳应用实施例,如图4所示,所述方法包括:
S100、监测存储空间中可用空间的大小,判断可用空间是否小于预设空间:如果是,则启动文件系统压缩模式,对存储空间中的文件进行扫描;否则退出监测。S210、判断当前扫描到的文件是否为可压缩文件:如果是,则标记该文件为可压缩文件;否则,扫描下一个文件继续判断,直至所有文件扫描完成。S310、对标记的可压缩文件进行压缩。本实施例中,对文件进行扫描时会标记出可压缩文件,当所有文件扫描完成后会生成可压缩文件列表,该列表中显示可压缩文件的文件名、大小、类型等参数供用户参考,用户可对该列表中的可压缩文件进行添加或者移除,之后再对该列表中余下的可压缩文件进行压缩即可。需要注意的是,步骤S210中判断当前扫描到的文件是否为可压缩文件的判断方式,步骤S310中压缩时采用的压缩方式与第一较佳实施例中对应的判断方式和压缩方式相同。基于上述的提高存储空间利用率的方法,本发明实施例还提供一种用于实现上述提高存储空间利用率的终端。所述终端为智能手机或者电脑,如图5所示,其包括:空间监测模块110、空间判断模块120、文件系统处理模块130和压缩模块140。其中,空间监测模块110,用于监测存储空间中可用空间的大小;空间判断模块120与空间监测模块110连接,用于判断可用空间是否小于预设空间;文件系统处理模块130与空间判断模块120连接,用于在可用空间小于预设空间时启动文件系统压缩模式,对存储空间中的文件进行扫描,判断存储空间的文件中是否有可压缩文件;压缩模块140与文件系统处理模块130连接,用于在存储空间的文件中有可压缩文件时、对该可压缩文件进行压缩并对其进行标示;以及,所述文件系统处理模块130还用于判断当前扫描到的文件是否为可压缩文件,若是则标记该文件为可压缩文件;否则扫描下一个文件;所述压缩模块140还用于对标记的可压缩文件进行压缩。其中,所述文件系统处理模块130进一步包括扫描单元131、类型判断单元132、计算器133和判断单元134。扫描单元131与空间判断模块120连接,在空间判断模块120判断可用空间小于预设空间时,扫描单元131对存储空间中的文件进行逐个扫描。类型判断单元132与扫描单元131连接,在扫描单元131扫描一个文件时,判断当前扫描到的文件是否为非压缩文件;当判断为非压缩文件时,类型判断单元132输出判断结果至与其连接的计算器133,计算器133针对该非压缩文件计算其未被使用的空置时间。判断单元134与计算器133连接,根据空置时间是否大于预设时间阀值来判断该文件是否为可压缩文件;另外,判断单元134还根据文件是否为压缩比高的文件来判断该文件是否为可压缩文件,输出判断结果。压缩模块140与判断单元134连接,根据判断结果选择是否需要进行压缩。压缩模块140还与扫描单元131连接,当压缩模块140完成压缩、标记后,发出一个控制指令使扫描单元131继续扫描下一个文件。在压缩时,压缩模块140对可压缩文件采用预设字节的整块写入的压缩方式以及LZ77算法;对压缩后的可压缩文件进行解压时,采用预设字节的整块读出方式以及LZ77算法。为了加快压缩的时间,确保压缩后能获得更大的空间,所述的判断单元134在判断空置时间大于预设时间阀值后,还用于判断该文件是否为压缩比高的文件。判断单元134将空置时间大于预设时间阀值,且压缩比高的文件识别为可压缩文件。综上所述,本发明在写入文件时监测存储空间中可用空间的大小,当判断可用空间小于预设空间时启动文件系统压缩模式,对存储空间中的文件逐个扫描,对识别出的非压缩文件进一步进行判断,当其空置时间大于预设时间阀值且其压缩比高时,判断该文件为可压缩文件;对可压缩文件进行用户不可见压缩并对其进行标示,之后继续扫描下一个文件进行判断,直至所有文件扫描完成、退出文件系统压缩模式,使存储空间能正常使用,本发明能自动对存储空间内的所有文件进行适当的、有选择性的压缩处理,提高了存储空间的利用率,无需用户逐个选择文件多次压缩,方便了用户的使用;压缩时采用预设字节的整块写入方式以及LZ77算法,加快了压缩的时间,确保压缩后能获得更大的空间,不会影响用户对文件的使用,提升了用户体验效果。可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种提高存储空间利用率的方法,其特征在于,包括: A、监测存储空间中可用空间的大小,判断可用空间是否小于预设空间:如果是,则启动文件系统压缩模式,对存储空间中的文件进行扫描;否则退出监测; B1、判断当前扫描到的文件是否为可压缩文件:如果是,则执行步骤Cl ;否则,扫描下一个文件,重复步骤BI,直至所有文件扫描完成、退出文件系统压缩模式; Cl、对可压缩文件进行压缩并标示后,扫描下一个文件,返回步骤BI ; 或者,所述步骤A之后包括: B2、判断当前扫描到的文件是否为可压缩文件:如果是,则标记该文件为可压缩文件;否则,扫描下一个文件继续判断,直至所有文件扫描完成; C2、对标记的可压缩文件进行压缩。
2.根据权利要求1所述的提高存储空间利用率的方法,其特征在于,所述步骤BI或者B2中,判断当前扫描到的文件是否为可压缩文件具体包括: BH、判断当前扫描到的文件是否为非压缩文件:如果是,则执行步骤B2 ;否则,确认该文件为压缩文件,不作任何处理; B12、计算所述文件未被使用的空置时间; B13、判断所述空置时间是否大于预设时间阀值:如果是,则该文件为可压缩文件;否贝U,该文件为待压缩文件。
3.根据权利要求2所述的提高存储空间利用率的方法,其特征在于,所述步骤B13中,当判断空置时间大于预设时间阀值后还包括:判断该文件是否为压缩比高的文件:如果是,则该文件为可压缩文件;否则,该文件为待压缩文件。
4.根据权利要求1所述的提高存储空间利用率的方法,其特征在于,在步骤Cl或者C2中,在内核空间对可压缩文件进行压缩,在用户空间无压缩提示。
5.根据权利要求4所述的提高存储空间利用率的方法,其特征在于,在步骤Cl或者C2中,以块为单位对可压缩文件进行压缩,每块的大小为预设字节。
6.根据权利要求5所述的提高存储空间利用率的方法,其特征在于,对压缩后的可压缩文件进行解压时,以块为单位进行解压缩。
7.一种用于实现权利要求1所述的提高存储空间利用率的方法的终端,其特征在于,包括: 空间监测模块,用于监测存储空间中可用空间的大小; 空间判断模块,用于判断可用空间是否小于预设空间; 文件系统处理模块,用于在可用空间小于预设空间时启动文件系统压缩模式,对存储空间中的文件进行扫描,判断存储空间的文件中是否有可压缩文件; 压缩模块,用于在存储空间的文件中有可压缩文件时、压缩所述可压缩文件并标示;以及,所述文件系统处理模块,还用于判断当前扫描到的文件是否为可压缩文件,根据判断结果标记该文件为可压缩文件或者扫描下一个文件; 所述压缩模块,还用于对标记的可压缩文件进行压缩。
8.根据权利要求7所述的终端,其特征在于,所述文件系统文件系统处理模块具体包括: 扫描单元,用于逐个扫描存储空间中的文件;类型判断单元,用于判断当前扫描到的文件是否为非压缩文件; 计算器,用于计算非压缩文件的未被使用的空置时间; 判断单元,用于判断空置时间是否大于预设时间阀值、以及文件是否为压缩比高的文件,并输出判断结果。
9.根据权利要求7所述的终端,其特征在于,所述压缩模块,还用于以块为单位对可压缩文件进行压缩,每块的大小为预设字节;对压缩后的可压缩文件进行解压时,以块为单位进行解压缩。
10.根据权利要求7至9任意一项所述的终端,其特征在于,所述终端为智能手机或者电脑。
全文摘要
本发明公开了一种提高存储空间利用率的方法和终端,其方法包括A、监测存储空间中可用空间的大小,判断可用空间是否小于预设空间如果是,则启动文件系统压缩模式,对存储空间中的文件进行扫描;否则退出监测;B1、判断当前扫描到的文件是否为可压缩文件如果是,则执行步骤C1;否则,扫描下一个文件,重复步骤B1,直至所有文件扫描完成、退出文件系统压缩模式;C1、对可压缩文件进行压缩并标示后,扫描下一个文件,返回步骤B1。本发明通过对存储空间内的所有文件进行适当的、有选择性的压缩处理,提高了存储空间的利用率,无需用户逐个选择文件多次压缩,方便了用户的使用,提升了用户体验效果。
文档编号G06F9/44GK103218224SQ20131010699
公开日2013年7月24日 申请日期2013年3月29日 优先权日2013年3月29日
发明者程力行, 何平 申请人:东莞宇龙通信科技有限公司, 宇龙计算机通信科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1