本公开涉及计算机,尤其涉及一种嵌入式快闪存储器的存储空间控制方法及装置。
背景技术:
1、在电子设备的嵌入式快闪存储器中大多存在预留空间。预留空间主要包括空间维持和性能维持两个功能。其中,空间维持一般发生在手机的生命周期后期,坏块置换情况较多,需要利用预留空间进行置换,以保证用户可用空间的容量不减少。性能维持一般发生在手机存储空间快被写满时,利用预留空间进行存储资料的搬移整理,以维持电子设备的读写性能。然而,在一般情况下预留空间不会释放给用户作为用户可用空间使用,可能会造成空间浪费。
技术实现思路
1、为克服相关技术中存在的问题,本公开提供一种嵌入式快闪存储器的存储空间控制方法及装置。
2、根据本公开实施例的第一方面,提供一种嵌入式快闪存储器的存储空间控制方法,所述嵌入式快闪存储器包括用户可用空间和预留空间,所述用户可用空间和所述预留空间分别由存储块构成,所述方法包括:
3、确定所述嵌入式快闪存储器所在设备的使用时长;
4、检测所述用户可用空间的存储块的状态,得到所述用户可用空间的存储块的状态分布信息;
5、根据所述嵌入式快闪存储器所在设备的使用时长和/或所述状态分布信息,调整所述用户可用空间和所述预留空间中存储块的状态,以调整所述用户可用空间的总容量大小。
6、在本公开一些实施例中,所述检测所述用户可用空间的存储块的状态,得到所述用户可用空间的存储块的状态分布信息,包括:检测所述用户可用空间的存储块之中坏块信息,得到所述用户可用空间的存储块的状态分布信息;其中,所述状态分布信息包括坏块的数量和/或坏块的总容量。
7、在本公开一些实施例中,所述根据所述嵌入式快闪存储器所在设备的使用时长和/或所述状态分布信息,调整所述用户可用空间和所述预留空间中存储块的状态,以调整所述用户可用空间的总容量大小,包括:确定所述嵌入式快闪存储器所在设备的使用时长和/或所述状态分布信息,满足预定条件;调整所述用户可用空间和所述预留空间中存储块的状态,以增大所述用户可用空间的总容量大小。
8、在本公开一些实施例中,所述满足预定条件包括以下至少一项:所述嵌入式快闪存储器所在设备的使用时长小于或等于预设时长阈值;所述用户可用空间的存储块之中坏块的数量小于或等于预设阈值;所述用户可用空间的存储块之中坏块的总容量小于或等于预设容量阈值。
9、在本公开一些实施例中,所述调整所述用户可用空间和所述预留空间中存储块的状态,以增大所述用户可用空间的总容量大小,包括:确定对用户可用空间的增加量;基于所述增加量,将所述预留空间的部分存储块用作所述嵌入式快闪存储器的用户可用空间;向所述设备的设备系统发送同步请求,所述同步请求用于请求所述设备系统同步调整所述嵌入式快闪存储器的存储空间信息。
10、在本公开一些实施例中,所述根据所述嵌入式快闪存储器所在设备的使用时长和/或所述状态分布信息,调整所述用户可用空间和所述预留空间中存储块的状态,以调整所述用户可用空间的总容量大小,包括:确定所述嵌入式快闪存储器所在设备的使用时长大于预设时长阈值,和/或,所述用户可用空间的存储块之中坏块的数量大于预设阈值,和/或,所述用户可用空间的存储块之中坏块的总容量大于预设容量阈值;调整所述用户可用空间和所述预留空间中存储块的状态,以减小用户可用空间的总容量大小;其中,所述用户可用空间为已经过扩容的用户可用空间。
11、在本公开一些实施例中,所述调整所述用户可用空间和所述预留空间中存储块的状态,以减小用户可用空间的总容量大小,包括:接收所述嵌入式快闪存储器所在设备的设备系统发送的返还指令,所述返还指令用于返还预留空间的存储块;确定已转换为用户可用空间的第一存储块中是否存在被实际占用的存储块;其中,所述第一存储块为将所述预留空间的部分存储块转换为用户可用空间的存储块;如果所述已转换为用户可用空间的第一存储块中不存在被实际占用的存储块,则将所述第一存储块对应的逻辑区块地址发送至所述设备系统,以使所述设备系统调整所述嵌入式快闪存储器的存储空间信息。
12、在本公开一些实施例中,所述方法还包括:如果所述已转换为用户可用空间的第一存储块中存在被实际占用的存储块,对被实际占用的第一存储块进行数据搬移处理,并将完成数据搬移处理的第一存储块对应的逻辑区块地址发送至所述设备系统,以使所述设备系统调整所述嵌入式快闪存储器的存储空间信息;或者,如果所述已转换为用户可用空间的第一存储块中存在被实际占用的存储块,确定被实际占用的第一存储块的容量大小,基于所述被实际占用的第一存储块的容量大小,将所述用户可用空间对应容量大小的空闲块的逻辑区块地址发送至所述设备系统,以使所述设备系统调整所述嵌入式快闪存储器的存储空间信息。
13、根据本公开实施例的第二方面,提供一种嵌入式快闪存储器的存储空间控制装置,所述嵌入式快闪存储器包括用户可用空间和预留空间,所述用户可用空间和所述预留空间分别由存储块构成,所述装置包括:
14、确定模块,用于确定所述嵌入式快闪存储器所在设备的使用时长;
15、检测模块,用于检测所述用户可用空间的存储块的状态,得到所述用户可用空间的存储块的状态分布信息;
16、调整模块,用于根据所述嵌入式快闪存储器所在设备的使用时长和/或所述状态分布信息,调整所述用户可用空间和所述预留空间中存储块的状态,以调整所述用户可用空间的总容量大小。
17、在本公开一些实施例中,所述检测模块具体用于:检测所述用户可用空间的存储块之中坏块信息,得到所述用户可用空间的存储块的状态分布信息;其中,所述状态分布信息包括坏块的数量和/或坏块的总容量。
18、在本公开一些实施例中,所述调整模块包括:第一确定单元,用于确定所述嵌入式快闪存储器所在设备的使用时长和/或所述状态分布信息,满足预定条件;第一调整单元,用于调整所述用户可用空间和所述预留空间中存储块的状态,以增大所述用户可用空间的总容量大小。
19、在本公开一些实施例中,所述满足预定条件包括以下至少一项:所述嵌入式快闪存储器所在设备的使用时长小于或等于预设时长阈值;所述用户可用空间的存储块之中坏块的数量小于或等于预设阈值;所述用户可用空间的存储块之中坏块的总容量小于或等于预设容量阈值。
20、在本公开一些实施例中,所述第一调整单元具体用于:确定对用户可用空间的增加量;基于所述增加量,将所述预留空间的部分存储块用作所述嵌入式快闪存储器的用户可用空间;向所述设备的设备系统发送同步请求,所述同步请求用于请求所述设备系统同步调整所述嵌入式快闪存储器的存储空间信息。
21、在本公开一些实施例中,所述调整模块包括:第二确定单元,用于确定所述嵌入式快闪存储器所在设备的使用时长大于预设时长阈值,和/或,所述用户可用空间的存储块之中坏块的数量大于预设阈值,和/或,所述用户可用空间的存储块之中坏块的总容量大于预设容量阈值;第二调整单元,用于调整所述用户可用空间和所述预留空间中存储块的状态,以减小用户可用空间的总容量大小;其中,所述用户可用空间为已经过扩容的用户可用空间。
22、在本公开一些实施例中,所述第二调整单元具体用于:接收所述嵌入式快闪存储器所在设备的设备系统发送的返还指令,所述返还指令用于返还预留空间的存储块;确定已转换为用户可用空间的第一存储块中是否存在被实际占用的存储块;其中,所述第一存储块为将所述预留空间的部分存储块转换为用户可用空间的存储块;如果所述已转换为用户可用空间的第一存储块中不存在被实际占用的存储块,则将所述第一存储块对应的逻辑区块地址发送至所述设备系统,以使所述设备系统调整所述嵌入式快闪存储器的存储空间信息。
23、在本公开一些实施例中,所述第二调整单元还用于:如果所述已转换为用户可用空间的第一存储块中存在被实际占用的存储块,对被实际占用的第一存储块进行数据搬移处理,并将完成数据搬移处理的第一存储块对应的逻辑区块地址发送至所述设备系统,以使所述设备系统调整所述嵌入式快闪存储器的存储空间信息;或者,如果所述已转换为用户可用空间的第一存储块中存在被实际占用的存储块,确定被实际占用的第一存储块的容量大小,基于所述被实际占用的第一存储块的容量大小,将所述用户可用空间对应容量大小的空闲块的逻辑区块地址发送至所述设备系统,以使所述设备系统调整所述嵌入式快闪存储器的存储空间信息。
24、根据本公开实施例的第三方面,提供一种嵌入式快闪存储器,包括:
25、存储介质,包括用户可用空间和预留空间,所述用户可用空间和所述预留空间分别由存储块构成;
26、控制器,用于执行前述第一方面所述的方法。
27、根据本公开实施例的第四方面,提供一种电子设备,包括:
28、如前述第三方面所述的嵌入式快闪存储器;
29、处理器,至少能用于与所述嵌入式快闪存储器中的控制器进行交互,以实现对所述嵌入式快闪存储器中存储介质的数据访问,和/或对所述存储介质中用户可用空间和预留空间的调整。
30、本公开的实施例提供的技术方案可以包括以下有益效果:可以根据嵌入式快闪存储器所在设备的使用时长和/或状态分布信息,调整用户可用空间的总容量大小,动态提高预留空间的使用率,可在一定程度上避免存储空间的闲置,造成空间浪费。
31、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。