一种文件管理方法及装置的制造方法
【技术领域】
[0001]本发明涉及计算机存储技术领域,更具体地说,涉及一种文件管理方法及装置。
【背景技术】
[0002]在常用的存储设备,尤其是Flash类存储设备中存储的数据,可能出现由于某种原因,比如震荡、磁化等而发生错误的情况,因此,为了确保数据的完整性及可靠性,通常可以通过对数据进行错误校验,进而完成读取或写入等操作。
[0003]但是,对数据进行错误校验通常会对系统的读写性能造成不良影响,且,存储设备往往存储有大量不同种类的数据,这些数据不仅包括对其完整性要求较高的数据,也包括对其完整性要求不高的数据,而对后一类数据进行错误校验并不是必要的,因此,现有技术中为了确保数据完整性及可靠性对存储设备存储的全部数据均进行错误校验的技术方案会造成逻辑资源的浪费,同时会加剧进行错误校验时对读写性能造成的不良影响。
[0004]综上所述,现有技术中存在浪费逻辑资源及加剧错误校验对读写性能造成的不良影响的问题。
【发明内容】
[0005]本发明的目的是提供一种文件管理方法及装置,以解决现有技术中存在的浪费逻辑资源及加剧错误校验对读写性能造成的不良影响的问题。
[0006]为了实现上述目的,本发明提供如下技术方案:
[0007]一种文件管理方法,包括:
[0008]确定需要读取的文件为目标文件,获取该目标文件的目标重要级别,并判断所述目标重要级别是否为预设重要级别;
[0009]如果所述目标重要级别为所述预设重要级别,则利用预先写入所述目标文件中的校验码对所述目标文件中包含的数据进行校验,并在校验成功后读取所述目标文件中包含的数据;
[0010]如果所述目标重要级别不为所述预设重要级别,则直接读取所述目标文件中包含的数据。
[0011]优选的,预先将所述校验码写入所述目标文件的过程包括:
[0012]获取所述目标文件的目标重要级别,并当判断出所述目标重要级别为所述预设重要级别时,按照与所述目标重要级别对应级别的校验方法对所述目标文件中包含的数据进行计算,生成对应的校验码,并将所述校验码写入所述目标文件中。
[0013]优选的,利用所述校验码对所述目标文件中包含的数据进行校验,包括:
[0014]利用与所述校验码对应的校验方法对所述目标文件中除所述校验码之外的其他数据进行计算得到读校验码,如果所述读校验码与所述目标文件中包含的对应校验码一致,则确定校验成功。
[0015]优选的,获取所述目标文件的目标重要级别,包括:
[0016]查询所述目标文件的inode结构,以获取所述inode结构中标示该目标文件的重要级别的级别属性,并确定预先创建该目标文件时为所述级别属性设置的属性值为所述目标重要级别。
[0017]优选的,预先创建所述目标文件时为所述级别属性设置属性值,包括:
[0018]获取所述目标文件的目标后缀名,将所述目标后缀名与预先建立的后缀列表中包含的后缀名进行匹配,并依据匹配得到的匹配结果设置所述级别属性的属性值。
[0019]优选的,所述后缀名列表的预先建立过程,包括:
[0020]获取其重要级别为所述预设重要级别的全部文件对应的后缀名,并将具有相同首字母的后缀名以数组的形式存放在平衡二叉树的同一节点中,确定所述平衡二叉树为所述后缀名列表。
[0021]—种文件管理装置,包括:
[0022]判断模块,用于确定需要读取的文件为目标文件,获取该目标文件的目标重要级另IJ,并判断所述目标重要级别是否为预设重要级别;
[0023]第一执行模块,用于如果所述目标重要级别为所述预设重要级别,则利用预先写入所述目标文件中的校验码对所述目标文件中包含的数据进行校验,并在校验成功后读取所述目标文件中包含的数据;
[0024]第二执行模块,用于如果所述目标重要级别不为所述预设重要级别,则直接读取所述目标文件中包含的数据。
[0025]优选的,还包括:
[0026]写入模块,用于获取所述目标文件的目标重要级别,并当判断出所述目标重要级别为所述预设重要级别时,按照与所述目标重要级别对应级别的校验方法对所述目标文件中包含的数据进行计算,生成对应的校验码,并将所述校验码写入所述目标文件中。
[0027]优选的,第一执行模块包括:
[0028]校验单元,用于利用与所述校验码对应的校验方法对所述目标文件中除所述校验码之外的其他数据进行计算得到读校验码,如果所述读校验码与所述目标文件中包含的对应校验码一致,则确定校验成功。
[0029]优选的,判断模块包括:
[0030]获取单元,用于查询所述目标文件的inode结构,以获取所述inode结构中标示该目标文件的重要级别的级别属性,并确定预先创建该目标文件时为所述级别属性设置的属性值为所述目标重要级别。
[0031]本发明提供的一种文件管理方法及装置,其中,该方法包括:确定需要读取的文件为目标文件,获取该目标文件的目标重要级别,并判断所述目标重要级别是否为预设重要级别;如果所述目标重要级别为所述预设重要级别,则利用预先写入所述目标文件中的校验码对所述目标文件中包含的数据进行校验,并在校验成功后读取所述目标文件中包含的数据;如果所述目标重要级别不为所述预设重要级别,则直接读取所述目标文件中包含的数据。与现有技术相比,本申请在获取文件的重要级别之后,判断重要级别是否为预设重要级别,如果是,则对其数据进行校验,否则,则直接读取数据,由此,对于重要级别较高的,或者说对其完整性要求较高的数据进行错误验证,而对于重要级别较低的,或者说对其完整性要求较低的数据则不进行错误验证,不同于现有技术中对于存储的全部数据均进行错误校验的技术方案,因此,有效减少了进行错误校验的次数,从而节省了逻辑资源的同时,大大降低了错误校验对读写性能造成的不良影响。
【附图说明】
[0032]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0033]图1为本发明实施例提供的一种文件管理方法的流程图;
[0034]图2为本发明实施例提供的一种文件管理方法中包含有后缀名的平衡二叉树的结构示意图;
[0035]图3为本发明实施例提供的一种文件管理装置的结构示意图。
【具体实施方式】
[0036]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0037]请参阅图1,其示出了本发明实施例提供的一种文件管理方法的流程图,可以包括以下步骤:
[0038]S11:确定需要读取的文件为目标文件,获取该目标文件的目标重要级别。
[0039]需要说明的是,目标文件可以为任一需要读取的文件,而目标文件的重要级别即为目标重要级别。其中,文件的重要级别代表了该文件的重要程度,或者说,代表了对该文件的完整性要求的高低,如果文件重要级别高,说明对其完整性要求高,此时,任何损毁都会对文件中数据的利用造成影响,因此,需要对其进行错误校验,以保证数据的完整性及可靠性;如果文件重要级别低,说明对其完整性要求低,此时,少量的损毁对文件中数据的利用并不会造成太大影响,因此,无需对其进行错误校验。举例来说,对于文件中包含的音视频类的多媒体数据,对其完整性要求较低,而对于文件中包含的账户、邮件等数据,对其完整性要求较高。且,通常对其完整性要求较高的数据量通常较小,而对其完整性要求较低的数据量通常较大。因此,不对对其完整性要求较低的数据进行错误校验,能够大大节省逻辑资源,以及大大降低错误校验对读写性能的不良影响。
[0040]S12:判断目标重要级别是否为预设重要级别,如果是,则执行步骤S13,如果否,则执行步骤S14。
[0041]其中,预设重要级别可以根据实际需要进行确定,且,预设重要级别可以包括一个重要级别,也可以包括多个重要级别,如当将文件对应的重要级别分为两种时,可以分别用0和1表示,其中,0表示重要级别较高,即为预设重要级别,而1表示重要级别较低,即不是预设重要级别,又如将文件对应的重要级别分为三种时,可以用0、1及2表示,其中,0和1表示重要级别较高,即均为预设重要级别,2表示重要级别较低,即不是预设重要级别等,在此不做具体限定。
[0042]S13:利用预先写入目标文件中的校验码对目标文件中包含的数据进行校验,并在校验成功后读取目标文件中包含的数据。
[0043]目标重要级别为预设重要级别,说明该文件中存储的数据的重