一种缓存空间清理方法及装置与流程

文档序号:18796595发布日期:2019-09-29 19:46阅读:194来源:国知局
本公开涉及文件缓存领域,具体涉及一种缓存空间清理方法及装置。
背景技术
::在文件缓存中,如何提升缓存空间的利用率一直是一个大的研究点,随着云计算的存储网络的发展,在其文件缓存中,在现有的文件缓存清理技术中,存在以下2个方面的问题:一、依靠硬件成本较高的大硬件构建存储服务器以提高缓存速度,加快缓存访问速度;二、直接设置一个容量大小的阈值,到达该阈值则删除部分缓存中先到的文件。在文件缓存中,针对比较实际的第二个方面,如何提升文件访问的命中率一直是一个热点的研究课题,也是本公开所要解决的问题,本发明提供了一种自动清理缓存中低访问频率的文件的方法,可以在文件缓存中大大的提升缓存空间的利用率。技术实现要素:本公开提供一种缓存空间清理方法及装置,智能的根据文件的访问频率,删除访问率很低下的文件,并且结合传统的空间阈值设置方法进一步的改进了清理缓存空间的效率,使得缓存中的文件能够优胜劣汰,快速的清除掉缓存中不常用的文件,可以在文件缓存提升缓存空间的利用率。为了实现上述目的,根据本公开的一方面,提供一种缓存空间清理方法,所述方法包括以下步骤:初始化冷点文件双向链表,所述冷点文件双向链表为多个冷点文件信息记录结构体构成的双向链表,以下冷点文件信息记录结构体称为结构体,结构体即链表节点,结构体包含四个成员,分别第一成员、第二成员、第三成员和第四成员,所述第一成员为缓存文件指针,第一成员初始值为空,所述第二成员为缓存文件的访问频率数值,第二成员为正整数且初始值为0,所述第三成员为前向指针,第三成员初始值为空,所述第四成员为后向指针,第四成员初始值为空,多个的意义为大于或等于一个,所述结构体通过第三成员和第四成员进行连接前驱结点和后继结点连接形成一个双向链表,即第三成员和第四成员分别指向其他的链表节点,所述前驱结点为前向指针连接的相邻结构体,所述后继结点为后向指针连接的相邻结构体。将缓存中的每个文件对应生成一个结构体,将所有的结构体作为链表节点依次连接到双向链表,双向链表的链表节点与缓存中文件的一一对应,每个链表节点的第一成员即缓存文件指针指向各自对应的文件。步骤1,获取文件缓存中所有缓存文件的访问频率存储到冷点双向链表的结构体第二成员中,即缓存文件的访问频率数值中;步骤2,遍历冷点文件双向链表,寻找访问频率小于冷点阈值的双向链表的链表节点;步骤3,删除访问频率小于冷点阈值的链表节点指向的缓存文件和链表节点,更新冷点文件双向链表;步骤4,如果缓存的可用空间小于或者等于可用空间阈值,则判断冷点文件双向链表的长度是否小于最大冷点文件记录阈值的50%,如果小于最大冷点文件记录阈值的50%则更新结束,如果大于或等于最大冷点文件记录阈值的50%,转到步骤1;步骤5,如果缓存的可用空间大于可用空间阈值,则清理结束。进一步地,在步骤1中,所述获取文件缓存中所有缓存文件的访问频率包括以下子步骤:步骤1.1,设立一个hashmap用于存储文件访问频率的统计数据;步骤1.2,每个文件在hashmap中以文件的访问路径作为键值分配一个独立的内存空间,hashmap中为每个文件分配一个独立的内存空间;步骤1.3,在给每个文件分配的内存空间中建立一个环形链表,用于存放文件访问的时间戳;步骤1.4,将环形链表的时间戳全部设定为当前时间,所述时间戳能够设置为当前时间,可人工调整时间,对时间不做限制;步骤1.5,在文件缓存进行初始化的时候,在inode中加入一个最后访问时间戳指针,用于存放形链表最新插入的时间戳所在的链表节点的指针,所述inode,即索引节点,为储存文件管理信息的区域,每个inode的编号对应一个文件名,每一个文件都有对应的inode,inode中不仅仅存储着指针,还存储着缓存文件的权限、属主、属组和大小,inode对于文件为对应的,但是有时可以共享一个inode,通过多个文件指向同一个inode,实现了借助不同的方式访问到同一个文件内容,这就是硬链接。inode包含文件的管理信息,具体有以下内容:文件的字节数、文件拥有者的userid、文件的groupid、文件的读、写、执行权限、文件的时间戳(文件的时间戳共有三个:ctime指inode上一次变动的时间,time指文件内容上一次变动的时间,atime指文件上一次打开的时间)、链接数,即有多少文件名指向这个inode、文件数据block的位置。每个inode节点的大小,为128字节或256字节。inode节点的总数,在格式化时就给定,为每1kb或每2kb就设置一个inode。假定在一块1gb的硬盘中,每个inode节点的大小为128字节,每1kb就设置一个inode,那么inodetable的大小就会达到128mb,占整块硬盘的12.8%;步骤1.6,当发生文件访问的时候,时间戳插入到环形链表的当前时间戳的前一个链表节点中,并将inode中最新时间戳指针指向该链表节点;步骤1.7,在文件缓存的ioctl中加入文件访问频率查询的分支,ioctl是设备驱动程序中对设备的i/o通道进行管理的函数,所谓对i/o通道进行管理,就是对设备的一些特性进行控制,例如串口的传输波特率、马达的转速等等。它的参数个数如下:intioctl(intfd,intcmd,…);其中fd就是用户程序打开设备时使用open函数返回的文件标示符,cmd就是用户程序对设备的控制命令,至于后面的省略号,那是一些补充参数,为最多一个,有或没有是和cmd的意义相关的。ioctl函数是文件结构中的一个属性分量,就是说如果你的驱动程序提供了对ioctl的支持,用户就能在用户程序中使用ioctl函数控制设备的i/o通道;步骤1.8,调用ioctl的方法获取访问频率元数据:从inode中获取到最新时间戳指针,并获取到该指针所指向的环形链表的下一个数据节点,从数据节点中获取到其中记录的时间戳,因为环形链表,所以该时间戳是环形链表中最早的一次访问的时间戳,即获取到的时间戳,访问频率的计算公式为:链表长度为的环形链表的链表长度,即环形链表所有的链表节点个数。进一步地,在步骤2中,所述冷点文件双向链表为多个冷点文件信息记录结构体构成的双向链表,以下冷点文件信息记录结构体称为结构体,结构体即链表节点,结构体包含四个成员,分别第一成员、第二成员、第三成员和第四成员,所述第一成员为缓存文件指针,第一成员初始值为空,所述第二成员为缓存文件的访问频率数值,第二成员为正整数且初始值为0,所述第三成员为前向指针,第三成员初始值为空,所述第四成员为后向指针,第四成员初始值为空,多个的意义为大于或等于一个,所述结构体通过第三成员和第四成员进行连接前驱结点和后继结点连接形成一个双向链表,即第三成员和第四成员分别指向其他的链表节点,所述前驱结点为前向指针连接的相邻结构体,所述后继结点为后向指针连接的相邻结构体。进一步地,在步骤2中,所述冷点阈值为n次,n默认值为45,n为正整数且可人工设置,所述冷点文件为双向链表的第二成员,即缓存文件的访问频率的数值。进一步地,在步骤3中,更新冷点文件双向链表,冷点文件双向链表以下称为冷点链表的方法为;步骤3.1,如果不存在冷点链表则设立一个冷点文件信息记录结构体,以下冷点文件信息记录结构体称为结构体,结构体即链表节点,链表节点包含四个字段,结构体包含四个成员,分别第一成员、第二成员、第三成员和第四成员,所述第一成员为缓存文件指针,第一成员初始值为空,所述第二成员为缓存文件的访问频率数值,第二成员为正整数且初始值为0,所述第三成员为前向指针,第三成员初始值为空,所述第四成员为后向指针,第四成员初始值为空,多个的意义为大于或等于一个,所述结构体通过第三成员和第四成员进行连接前驱结点和后继结点连接形成一个双向链表,即第三成员和第四成员分别指向其他的链表节点,所述前驱结点为前向指针连接的相邻结构体,所述后继结点为后向指针连接的相邻结构体;步骤3.2,设立一个最大冷点文件信息记录数值,最大冷点文件信息作为冷点文件信息记录的最大值,以下最大冷点文件信息称为成为最大冷点文件;步骤3.3,设立一个最大冷点文件信息指针,初始时该指针为空,下文称为指针;步骤3.4,当文件发生访问的时候,获取文件缓存中当前缓存文件的访问频率,并与缓存文件的指针构建一个新的结构体,即生成一个新的链表节点;步骤3.5,将当前缓存文件的访问频率与指针所指向的结构体中的文件频率相比较,若指针为空,则将指针指向当前缓存文件的结构体;步骤3.6,若当前缓存文件的访问频率大于指针所指向的结构体中记录的文件访问频率,则判断指针所指向的信息结构所在的双向链表的长度,若长度大于冷点文件信息记录的最大值,则抛弃当前文件的结构体,否则将当前文件的结构体加入到双向链表的表尾,并将指针指向该结构体,即将新产生的节点加入双向链表的表尾;步骤3.7,若当前的文件访问频率小于指针所指向的结构体中的文件访问频率,则从指针所指向的结构体的位置,沿着双向链表进行逆向查找,依次对比每一个链表节点的结构体中获取文件访问频率进行比较,直到链表节点中的文件访问频率小于当前文件的访问频率,则将当前文件的结构体插入到双向链表中该节点的下方,若查找到了链表的表头,仍然未满足条件,则将该结构体作为链表的表头;步骤3.8,重新计算双向链表的长度,如果长度超过了预设的冷点文件信息记录的最大值,则将指针从其当前位置往双向链表上移一位,并删除指针之前所指向的结构体;步骤3.9,设立一个缓存空间剩余可用空间大小的可用空间阈值,当剩余空间小于可用空间阈值时,则从头向尾遍历冷点文件双向链表,逐一删除对应的缓存文件和链表节点,直到可用空间大于可用空间阈值,或者链表中的节点只剩下初始时的一半,则停止遍历。进一步地,在步骤4中,所述可用空间阈值为缓存空间剩余可用空间大小,可用空间阈值默认值设置为缓存空间大小的10%,可用空间阈值为百分比形式可进行人工调整,所述冷点文件记录阈值为限制冷点文件双向链表的长度的值,可用空间阈值默认值设置为200,可用空间阈值为正整数可进行人工调整。本发明还提供了一种缓存空间清理装置,所述装置包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序运行在以下装置的单元中:获取访问频率单元,用于获取文件缓存中所有缓存文件的访问频率存储到双向链表的结构体第二成员中,即缓存文件的访问频率数值中;冷点遍历单元,用于遍历冷点文件双向链表,寻找访问频率小于冷点阈值的双向链表的链表节点;缓存清理单元,用于删除访问频率小于冷点阈值的链表节点指向的缓存文件和链表节点,更新冷点文件双向链表;阈值空间清理单元,用于判断如果缓存的可用空间小于或等于可用空间阈值,则判断冷点文件双向链表的长度是否小于最大冷点文件记录阈值的50%,如果小于最大冷点文件记录阈值的50%则更新结束,如果大于或等于最大冷点文件记录阈值的50%,转到冷点遍历单元;清理结束单元,用于如果缓存的可用空间小于可用空间阈值,则清理结束。本公开的有益效果为:本发明提供一种缓存空间清理方法及装置,智能的根据文件的访问频率,删除访问率很低下的文件,并且结合传统的空间阈值设置方法进一步的改进了清理缓存空间的效率,使得缓存中的文件能够优胜劣汰,快速的清除掉缓存中不常用的文件,有效的提高了缓存空间的利用率及其访问速度。附图说明通过对结合附图所示出的实施方式进行详细说明,本公开的上述以及其他特征将更加明显,本公开附图中相同的参考标号表示相同或相似的元素,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,在附图中:图1所示为一种缓存空间清理方法的流程图;图2所示为更新冷点文件双向链表流程图;图3所示为一种缓存空间清理装置图。具体实施方式以下将结合实施例和附图对本公开的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本公开的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。如图1所示为根据本公开的一种缓存空间清理方法的流程图,图2所示为更新冷点文件双向链表流程图,下面结合图1和图2来阐述根据本公开的实施方式的一种缓存空间清理方法。初始化冷点文件双向链表,所述冷点文件双向链表为多个冷点文件信息记录结构体构成的双向链表,以下冷点文件信息记录结构体称为结构体,结构体即链表节点,结构体包含四个成员,分别第一成员、第二成员、第三成员和第四成员,所述第一成员为缓存文件指针,第一成员初始值为空,所述第二成员为缓存文件的访问频率数值,第二成员为正整数且初始值为0,所述第三成员为前向指针,第三成员初始值为空,所述第四成员为后向指针,第四成员初始值为空,多个的意义为大于或等于一个,所述结构体通过第三成员和第四成员进行连接前驱结点和后继结点连接形成一个双向链表,即第三成员和第四成员分别指向其他的链表节点,所述前驱结点为前向指针连接的相邻结构体,所述后继结点为后向指针连接的相邻结构体。将缓存中的每个文件对应生成一个结构体,将所有的结构体作为链表节点依次连接到双向链表,双向链表的链表节点与缓存中文件的一一对应,每个链表节点的第一成员即缓存文件指针指向各自对应的文件。本公开提出一种缓存空间清理方法,具体包括以下步骤:步骤1,获取文件缓存中所有缓存文件的访问频率存储到冷点双向链表的结构体第二成员中,即缓存文件的访问频率数值中;步骤2,遍历冷点文件双向链表,寻找访问频率小于冷点阈值的双向链表的链表节点;步骤3,删除访问频率小于冷点阈值的链表节点指向的缓存文件和链表节点,更新冷点文件双向链表;步骤4,如果缓存的可用空间小于或者等于可用空间阈值,则判断冷点文件双向链表的长度是否小于最大冷点文件记录阈值的50%,如果小于最大冷点文件记录阈值的50%则更新结束,如果大于或等于最大冷点文件记录阈值的50%,转到步骤1;步骤5,如果缓存的可用空间大于可用空间阈值,则清理结束。进一步地,在步骤1中,所述获取文件缓存中所有缓存文件的访问频率包括以下子步骤:步骤1.1,设立一个hashmap用于存储文件访问频率的统计数据;步骤1.2,每个文件在hashmap中以文件的访问路径作为键值分配一个独立的内存空间,hashmap中为每个文件分配一个独立的内存空间;步骤1.3,在给每个文件分配的内存空间中建立一个环形链表,用于存放文件访问的时间戳;步骤1.4,将环形链表的时间戳全部设定为当前时间,所述时间戳能够设置为当前时间,可人工调整时间,对时间不做限制;步骤1.5,在文件缓存进行初始化的时候,在inode中加入一个最后访问时间戳指针,用于存放形链表最新插入的时间戳所在的链表节点的指针,所述inode,即索引节点,为储存文件管理信息的区域,每个inode的编号对应一个文件名,每一个文件都有对应的inode,inode中不仅仅存储着指针,还存储着缓存文件的权限、属主、属组和大小,inode对于文件为对应的,但是有时可以共享一个inode,通过多个文件指向同一个inode,实现了借助不同的方式访问到同一个文件内容,这就是硬链接。inode包含文件的管理信息,具体有以下内容:文件的字节数、文件拥有者的userid、文件的groupid、文件的读、写、执行权限、文件的时间戳(文件的时间戳共有三个:ctime指inode上一次变动的时间,time指文件内容上一次变动的时间,atime指文件上一次打开的时间)、链接数,即有多少文件名指向这个inode、文件数据block的位置。每个inode节点的大小,为128字节或256字节。inode节点的总数,在格式化时就给定,为每1kb或每2kb就设置一个inode。假定在一块1gb的硬盘中,每个inode节点的大小为128字节,每1kb就设置一个inode,那么inodetable的大小就会达到128mb,占整块硬盘的12.8%;步骤1.6,当发生文件访问的时候,时间戳插入到环形链表的当前时间戳的前一个链表节点中,并将inode中最新时间戳指针指向该链表节点;步骤1.7,在文件缓存的ioctl中加入文件访问频率查询的分支,ioctl是设备驱动程序中对设备的i/o通道进行管理的函数,所谓对i/o通道进行管理,就是对设备的一些特性进行控制,例如串口的传输波特率、马达的转速等等。它的参数个数如下:intioctl(intfd,intcmd,…);其中fd就是用户程序打开设备时使用open函数返回的文件标示符,cmd就是用户程序对设备的控制命令,至于后面的省略号,那是一些补充参数,为最多一个,有或没有是和cmd的意义相关的。ioctl函数是文件结构中的一个属性分量,就是说如果你的驱动程序提供了对ioctl的支持,用户就能在用户程序中使用ioctl函数控制设备的i/o通道;步骤1.8,调用ioctl的方法获取访问频率元数据:从inode中获取到最新时间戳指针,并获取到该指针所指向的环形链表的下一个数据节点,从数据节点中获取到其中记录的时间戳,因为环形链表,所以该时间戳是环形链表中最早的一次访问的时间戳,即获取到的时间戳,访问频率的计算公式为:链表长度为的环形链表的链表长度,即环形链表所有的链表节点个数。进一步地,在步骤2中,所述冷点文件双向链表为多个冷点文件信息记录结构体构成的双向链表,以下冷点文件信息记录结构体称为结构体,结构体即链表节点,结构体包含四个成员,分别第一成员、第二成员、第三成员和第四成员,所述第一成员为缓存文件指针,第一成员初始值为空,所述第二成员为缓存文件的访问频率数值,第二成员为正整数且初始值为0,所述第三成员为前向指针,第三成员初始值为空,所述第四成员为后向指针,第四成员初始值为空,多个的意义为大于或等于一个,所述结构体通过第三成员和第四成员进行连接前驱结点和后继结点连接形成一个双向链表,即第三成员和第四成员分别指向其他的链表节点,所述前驱结点为前向指针连接的相邻结构体,所述后继结点为后向指针连接的相邻结构体。进一步地,在步骤2中,所述冷点阈值为n次,n默认值为45,n为正整数且可人工设置,所述冷点文件为双向链表的第二成员,即缓存文件的访问频率的数值。进一步地,在步骤3中,更新冷点文件双向链表,冷点文件双向链表以下称为冷点链表的方法为;步骤3.1,如果不存在冷点链表则设立一个冷点文件信息记录结构体,以下冷点文件信息记录结构体称为结构体,结构体即链表节点,链表节点包含四个字段,结构体包含四个成员,分别第一成员、第二成员、第三成员和第四成员,所述第一成员为缓存文件指针,第一成员初始值为空,所述第二成员为缓存文件的访问频率数值,第二成员为正整数且初始值为0,所述第三成员为前向指针,第三成员初始值为空,所述第四成员为后向指针,第四成员初始值为空,多个的意义为大于或等于一个,所述结构体通过第三成员和第四成员进行连接前驱结点和后继结点连接形成一个双向链表,即第三成员和第四成员分别指向其他的链表节点,所述前驱结点为前向指针连接的相邻结构体,所述后继结点为后向指针连接的相邻结构体;步骤3.2,设立一个最大冷点文件信息记录数值,最大冷点文件信息作为冷点文件信息记录的最大值,以下最大冷点文件信息称为成为最大冷点文件;步骤3.3,设立一个最大冷点文件信息指针,初始时该指针为空,下文称为指针;步骤3.4,当文件发生访问的时候,获取文件缓存中当前缓存文件的访问频率,并与缓存文件的指针构建一个新的结构体,即生成一个新的链表节点;步骤3.5,将当前缓存文件的访问频率与指针所指向的结构体中的文件频率相比较,若指针为空,则将指针指向当前缓存文件的结构体;步骤3.6,若当前缓存文件的访问频率大于指针所指向的结构体中记录的文件访问频率,则判断指针所指向的信息结构所在的双向链表的长度,若长度大于冷点文件信息记录的最大值,则抛弃当前文件的结构体,否则将当前文件的结构体加入到双向链表的表尾,并将指针指向该结构体,即将新产生的节点加入双向链表的表尾;步骤3.7,若当前的文件访问频率小于指针所指向的结构体中的文件访问频率,则从指针所指向的结构体的位置,沿着双向链表进行逆向查找,依次对比每一个链表节点的结构体中获取文件访问频率进行比较,直到链表节点中的文件访问频率小于当前文件的访问频率,则将当前文件的结构体插入到双向链表中该节点的下方,若查找到了链表的表头,仍然未满足条件,则将该结构体作为链表的表头;步骤3.8,重新计算双向链表的长度,如果长度超过了预设的冷点文件信息记录的最大值,则将指针从其当前位置往双向链表上移一位,并删除指针之前所指向的结构体;步骤3.9,设立一个缓存空间剩余可用空间大小的可用空间阈值,当剩余空间小于可用空间阈值时,则从头向尾遍历冷点文件双向链表,逐一删除对应的缓存文件和链表节点,直到可用空间大于可用空间阈值,或者链表中的节点只剩下初始时的一半,则停止遍历。进一步地,在步骤4中,所述可用空间阈值为缓存空间剩余可用空间大小,可用空间阈值默认值设置为缓存空间大小的10%,可用空间阈值为百分比形式可进行人工调整,所述冷点文件记录阈值为限制冷点文件双向链表的长度的值,可用空间阈值默认值设置为200,可用空间阈值为正整数可进行人工调整。本公开的实施例提供的一种缓存空间清理装置,如图3所示为本公开的一种缓存空间清理装置图,该实施例的一种缓存空间清理装置包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种缓存空间清理装置实施例中的步骤。所述装置包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序运行在以下装置的单元中:获取访问频率单元,用于获取文件缓存中所有缓存文件的访问频率存储到双向链表的结构体第二成员中,即缓存文件的访问频率数值中;冷点遍历单元,用于遍历冷点文件双向链表,寻找访问频率小于冷点阈值的双向链表的链表节点;缓存清理单元,用于删除访问频率小于冷点阈值的链表节点指向的缓存文件和链表节点,更新冷点文件双向链表;阈值空间清理单元,用于判断如果缓存的可用空间小于或等于可用空间阈值,则判断冷点文件双向链表的长度是否小于最大冷点文件记录阈值的50%,如果小于最大冷点文件记录阈值的50%则更新结束,如果大于或等于最大冷点文件记录阈值的50%,转到冷点遍历单元;清理结束单元,用于如果缓存的可用空间小于可用空间阈值,则清理结束。所述一种缓存空间清理装置可以运行于桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备中。所述一种缓存空间清理装置,可运行的装置可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述例子仅仅是一种缓存空间清理装置的示例,并不构成对一种缓存空间清理装置的限定,可以包括比例子更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述一种缓存空间清理装置还可以包括输入输出设备、网络接入设备、总线等。所称处理器可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述一种缓存空间清理装置运行装置的控制中心,利用各种接口和线路连接整个一种缓存空间清理装置可运行装置的各个部分。所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述一种缓存空间清理装置的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。尽管本公开的描述已经相当详尽且特别对几个所述实施例进行了描述,但其并非旨在局限于任何这些细节或实施例或任何特殊实施例,而是应当将其视作是通过参考所附权利要求考虑到现有技术为这些权利要求提供广义的可能性解释,从而有效地涵盖本公开的预定范围。此外,上文以发明人可预见的实施例对本公开进行描述,其目的是为了提供有用的描述,而那些目前尚未预见的对本公开的非实质性改动仍可代表本公开的等效改动。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1