一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

存储器性能的提升方法、装置、终端设备以及存储介质与流程

2022-05-26 22:14:00 来源:中国专利 TAG:


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.本发明存储器性能的提升装置的各功能模块在运行时实现如上述的存储器性能的提升方法的步骤。
32.此外,为实现上述目的,本发明还提供一种终端设备,所述终端设备包括:集成有机械硬盘和固态硬盘的存储设备、处理器及存储在所述存储设备上并可在所述处理器上运行的存储器性能的提升程序,所述存储器性能的提升程序被所述处理器执行时实现如上述中的存储器性能的提升方法的步骤。
33.此外,为实现上述目的,本发明还提供一种计算机存储介质,所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的存储器性能的提升方法的步骤。
34.本发明提出的存储器性能的提升方法、装置、终端设备以及计算机存储介质,该存储器性能的提升方法包括:在响应数据的读取命令进行数据读取时,检测所述读取命令对应的数据在存储器中的第一存储状态;若检测到所述第一存储状态不符合预设的存储区域连续条件,则针对所述读取命令进行记录;针对记录的读取命令对应的数据进行搬移,以令搬移后所述数据在所述存储器中的第二存储状态符合所述存储区域连续条件。
35.本发明在响应数据的读取命令从存储器当中进行数据读取的同时,检测该读取命令所对应的数据,在该存储器当中的第一存储状态,从而,若检测到该存储状态不符合预先设定的存储区域连续条件,则立即针对该读取命令进行记录,之后,在该存储器当中针对记录的读取命令所对应的数据进行存储地址的搬移,从而令经过搬移之后的数据在该存储器当中的第二存储状态符合上述的存储区域连续条件。
36.相比于传统存储器响应数据的读取命令就仅在存储器当中进行数据读取的方式,本发明通过在响应读取命令进行数据读取的同时,先将对应数据在存储器当中的存储状态不符合物理区域连续条件的读取命令进行记录,之后再针对记录的命令对应的数据进行搬移以达成数据的物理存储区域连续的状态,如此,能够在极大程度上提升后续在响应相同命令对同样的数据进行读取时的数据读取性能,并且,由于将存储器上存储的数据均集中在了连续的物理区域还能够显著提升存储器进行垃圾回收的效率。
37.从而,有效地解决了现有技术中存储器将终端侧需要连续存储的数据分散存写至不连续物理区域,导致的存储器整体性能严重下降的技术问题。
附图说明
38.图1是本发明实施例方案涉及终端设备的硬件运行的结构示意图;
39.图2是本发明一种存储器性能的提升方法一实施例的流程示意图;
40.图3是本发明一种存储器性能的提升方法一实施例的应用场景图;
41.图4是本发明一种存储器性能的提升装置的结构关系示意图。
42.本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
43.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
44.如图1所示,图1是本发明实施例方案涉及终端设备的硬件运行环境的结构示意图。
45.需要说明的是,图1即可为终端设备的硬件运行环境的结构示意图。本发明实施例终端设备可以是包括市场上任意介质的存储器,尤其是以nand flash为具体存储介质的ssd(solid state disk或solid state drive,固态硬盘)存储器,并针对该存储器执行本发明提供的存储器性能的提升方法的终端设备,该终端设备具体可以是移动终端、数据存储控制终端、pc或者便携计算机等终端设备。
46.如图1所示,该终端设备可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005(具体可以为上述的存储设备),通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可
选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是非易失性存储器(如,flash存储器)、高速ram存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
47.本领域技术人员可以理解,图1中示出的终端设备结构并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
48.如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及存储器性能的提升程序。其中,操作系统是管理和控制样本终端设备硬件和软件资源的程序,支持存储器性能的提升程序以及其它软件或程序的运行。
49.在图1所示的终端设备中,用户接口1003主要用于与各个终端进行数据通信;网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;而处理器1001可以用于调用存储器1005中存储的存储器性能的提升程序,并执行以下操作:
50.在响应数据的读取命令进行数据读取时,检测所述读取命令对应的数据在存储器中的第一存储状态;
51.若检测到所述第一存储状态不符合预设的存储区域连续条件,则针对所述读取命令进行记录;
52.针对记录的读取命令对应的数据进行搬移,以令搬移后所述数据在所述存储器中的第二存储状态符合所述存储区域连续条件。
53.进一步地,处理器1001可以调用存储器1005中存储的存储器性能的提升程序,还执行以下操作:
54.提取所述读取命令中携带的待读取数据的逻辑存储地址;
55.检测所述逻辑存储地址映射的所述存储器中的物理存储地址是否连续得到检测结果,并将所述检测结果作为所述数据在存储器中的第一存储状态。
56.进一步地,处理器1001可以调用存储器1005中存储的存储器性能的提升程序,还执行以下操作:
57.在从所述存储器中读取所述读取命令对应的数据时,获取所述数据在所述存储器中的物理存储地址;
58.检测所述物理存储地址是否连续得到检测结果,并将所述检测结果作为所述数据在存储器中的第一存储状态。
59.进一步地,所述存储区域连续条件为:数据在所述存储器中的物理存储地址是连续;
60.处理器1001可以调用存储器1005中存储的存储器性能的提升程序,还执行以下操作:
61.若检测到所述第一存储状态为物理存储地址不连续,则确定所述第一存储状态不符合所述存储区域连续条件;
62.针对所述读取命令进行记录以确定所述读取命令对应的数据需要进行物理存储地址搬移。
63.进一步地,处理器1001可以调用存储器1005中存储的存储器性能的提升程序,还执行以下操作:
64.监测所述存储器的运行状态;
65.处理器1001可以调用存储器1005中存储的存储器性能的提升程序,还执行以下操作:
66.若监测到所述运行状态为空闲状态,则在所述存储器中,将记录的读取指令对应的数据从各个不连续的原物理存储地址,搬移至各个连续的新物理存储地址。
67.进一步地,处理器1001可以调用存储器1005中存储的存储器性能的提升程序,在执行针对记录的读取命令对应的数据进行搬移,以令搬移后所述数据在所述存储器中的第二存储状态符合所述存储区域连续条件的步骤之后,还执行以下操作:
68.接收针对搬移后所述数据新的数据读取指令,响应所述数据从所述存储器连续的物理存储地址读取所述数据。
69.进一步地,处理器1001可以调用存储器1005中存储的存储器性能的提升程序,在执行针对记录的读取命令对应的数据进行搬移,以令搬移后所述数据在所述存储器中的第二存储状态符合所述存储区域连续条件的步骤之后,还执行以下操作:
70.响应针对所述存储器的逻辑擦除指令,以针对所述逻辑擦除指令中连续逻辑存储地址映射的连续物理存储地址上存储的数据进行回收。
71.基于上述的结构,提出本发明存储器性能的提升方法的各个实施例。
72.需要说明的是,在本实施例中,终端设备在向存储器下发数据存储命令进行数据存储时,大都是希望存储器按照逻辑地址和物理地址均连续的方式进行数据的编写以将数据存储在连续的物理区域,从而便于后续高效的进行数据的提取,确保数据存写性能。然而,目前的存储器实际上并不能很好的按照终端侧的意图,从而将数据分散的存储在多个不连续的物理区域上,如此,终端在需要读取数据时便需要从多个分散的点提取出数据来组合形成完整数据。长此以往,就导致了存储器整体性能的严重下降。
73.针对上述现象,本技术提供一种存储器性能的提升方法,通过在响应数据的读取命令从存储器当中进行数据读取的同时,检测该读取命令所对应的数据,在该存储器当中的第一存储状态,从而,若检测到该存储状态不符合预先设定的存储区域连续条件,则立即针对该读取命令进行记录,之后,在该存储器当中针对记录的读取命令所对应的数据进行存储地址的搬移,从而令经过搬移之后的数据在该存储器当中的第二存储状态是符合上述的存储区域连续条件的。
74.相比于传统存储器响应数据的读取命令就仅在存储器当中进行数据读取的方式,本发明通过在响应读取命令进行数据读取的同时,先将对应数据在存储器当中的存储状态不符合物理区域连续条件的读取命令进行记录,之后再针对记录的命令对应的数据进行搬移以达成数据的物理存储区域连续的状态,如此,能够在极大程度上提升后续在响应相同命令对同样的数据进行读取时的数据读取性能,并且,由于将存储器上存储的数据均集中在了连续的物理区域还能够显著提升存储器进行垃圾回收的效率。
75.从而,有效地解决了现有技术中存储器将终端侧需要连续存储的数据分散存写至不连续物理区域,导致的存储器整体性能严重下降的技术问题。
76.具体地,请参照图2,图2为本发明存储器性能的提升方法第一实施例的流程示意图。
77.本发明实施例提供了存储器性能的提升方法的实施例,本发明实施例存储器性能的提升方法应用于上述终端设备中来针对存储器进行数据读取与搬移等操作。需要说明的
是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
78.本实施例中,本发明存储器性能的提升方法包括:
79.步骤s100,在响应数据的读取命令进行数据读取时,检测所述读取命令对应的数据在存储器中的第一存储状态;
80.在本实施例中,终端设备在响应针对存储器当中所存储的数据的读取命令,以在该存储器当中读取该数据的同时,检测该数据在该存储器当中的第一存储状态。
81.需要说明的是,在本实施例中,数据在存储器中的存储状态(包括该第一存储状态以及后文所阐述的第二存储状态),为该存储器中具体存储该数据的物理地址是否连续。
82.进一步地,在一种可行的实施例中,上述步骤s100中,“检测所述读取命令对应的数据在存储器中的第一存储状态”的步骤,可以包括:
83.步骤s101,提取所述读取命令中携带的待读取数据的逻辑存储地址;
84.在本实施例中,由于任意针对存储器当中所存储的数据进行读取的命令当中均会携带有用于指示存储器具体需要读取的数据的逻辑存储地址,从而,存储器即可通过映射关系表格(l2p表),按照该逻辑存储地址映射的物理地址从存储器当中读取相应数据进行反馈。如此,终端设备通过在响应数据的读取指令进行数据读取的同时,同步从该读取命令当中提取出该命令中所携带的映射数据物理存储地址的逻辑存储地址。
85.步骤s102,检测所述逻辑存储地址映射的所述存储器中的物理存储地址是否连续得到检测结果,并将所述检测结果作为所述数据在存储器中的第一存储状态。
86.在本实施例中,终端设备在从正在被执行进行数据读取的读取命令中,提出出映射数据在存储器中物理存储地址的逻辑存储地址之后,即进一步获取该物理存储地址,并检测该物理存储地址是否连续以得到对应的检测结果,然后,终端设备将该物理存储地址是连续的检测结果,作为该数据在存储器当中的第一存储状态,或者,终端设备将该物理存储地址不是连续的检测结果,作为该数据在存储器当中的第一存储状态。
87.需要说明的是,在本实施例中,若存储器在针对数据进行存写时,未将同一数据存储命令指向的数据分散的编写在不同物理存储地址,则该数据在存储器当中的存储状态即为:数据在存储器中的物理存储地址是连续。相反的,若存储器在针对数据进行存写时,因某些动作(如更换物理块等)导致将同一数据存储命令指向的数据分散的编写在了不同物理存储地址,则该数据在存储器当中的存储状态即为:数据在存储器中的物理存储地址不是连续。此外,若终端设备针对同一数据是采用分时的多个数据存储命令来令存储器进行存写的,则存储器也会将该数据分散的编写在了不同物理存储地址,则该数据在存储器当中的存储状态也为:数据在存储器中的物理存储地址不是连续。
88.进一步地,在一种可行的实施例中,上述步骤s100中,“检测所述读取命令对应的数据在存储器中的第一存储状态”的步骤,可以包括:
89.步骤s103,在从所述存储器中读取所述读取命令对应的数据时,获取所述数据在所述存储器中的物理存储地址;
90.步骤s104,检测所述物理存储地址是否连续得到检测结果,并将所述检测结果作为所述数据在存储器中的第一存储状态。
91.在本实施例中,终端设备除了通过上述从正在被执行的读取命令中提取逻辑存储
地址,从而基于该逻辑存储地址与物理存储地址之间的映射关系,获取到该数据在存储器中的物理存储地址,还可以通过直接在响应该读取命令从存储器的物理存储地址当中读取该读取命令所对应数据的同时,在每一次从一个物理存储地址读取出该数据的一部分时,便同时获取到该物理存储地址,直至该数据被完整读取时,即获取得到了该数据整体在存储器当中的物理存储地址。
92.然后,终端设备进一步检测获取到的物理存储地址是否连续以得到对应的检测结果,从而,将该物理存储地址是连续的检测结果,作为该数据在存储器当中的第一存储状态,或者,将该物理存储地址不是连续的检测结果,作为该数据在存储器当中的第一存储状态。
93.需要说明的是,在本实施例中,终端设备具体可以通过检测数据在存储器中的物理存储地址相互之间的地址编号是连续来确定该物理存储地址是否连续,如,存储器中存储数据的三个物理存储地址的编号是依次连续的,则确定该物理存储地址连续,否则,确定该物理存储地址不连续。
94.步骤s200,若检测到所述第一存储状态不符合预设的存储区域连续条件,则针对所述读取命令进行记录;
95.在本实施例中,终端设备在检测得到数据在存储器中的第一存储状态之后,还进一步检测该第一存储状态是否符合预先设定好的存储区域连续条件。从而,若终端设备检测到该第一存储状态不符合该存储区域连续条件,则终端设备立即针对该数据对应的读取指令进行记录,以供后续进行进一步处理。
96.需要说明的是,在本实施例中,终端设备预先设定好的存储区域连续条件为:数据在存储器中的物理存储地址是连续。
97.进一步地,上述步骤s200,可以包括:
98.步骤s201,若检测到所述第一存储状态为物理存储地址不连续,则确定所述第一存储状态不符合所述存储区域连续条件;
99.步骤s202,针对所述读取命令进行记录以确定所述读取命令对应的数据需要进行物理存储地址搬移。
100.在本实施例中,终端设备在通过上述过程检测到正在被执行的读取命令对应数据,在存储器当中的第一存储状态之后,若该第一存储状态具体为:数据在存储器中的物理存储地址是连续,则终端设备即确定该第一存储状态符合预先设定好的存储区域连续条件。或者,若该第一存储状态为:数据在存储器中的物理存储地址不是连续,则终端设备即确定该第一存储状态不符合预先设定好的存储区域连续条件,从而,终端设备即进一步对该数据对应的读取命令进行记录,以标记该命令对应的数据在后续需要进行物理存储地址上的搬移。
101.需要说明的是,在本实施例中,终端设备在确定到数据的第一存储状态是符合存储区域连续条件时,终端设备即不针对该数据对应的读取命令和该数据本身执行其它操作,而是直接从该数据在存储器的连续的物理存储地址上,将该数据读取出去进行反馈完成该命令的响应即可。
102.步骤s300,针对记录的读取命令对应的数据进行搬移,以令搬移后所述数据在所述存储器中的第二存储状态符合所述存储区域连续条件。
103.在本实施例中,终端设备在针对第一存储状态不符合存储区域连续条件的数据所对应读取命令进行记录之后,在后续存储器处于不执行其它数据存储或者读取命令的空闲状态下,在该存储器当中,将记录的该读取命令所指向的数据,从原来的各个物理存储地址当中,搬移至新的各个连续的物理存储地址当中,而搬移后数据在存储器当中的第二存储状态即变为了物理存储地址是连续的,进而符合上述的存储区域连续条件。
104.需要说明的是,在本实施例中,终端设备基于存储器进行数据读写的性能考虑,才在该存储器处于空闲状态时,来针对记录的读取命令所对应数据进行搬移。应当理解的是,基于实际应用的不同设计需要,终端设备当然也可以在能够保证存储器进行数据读写的基本性能情况下,直接进行上述的搬移数据的操作,而无需等到存储器空闲。
105.进一步地,在本实施例中,本发明存储器性能的提升方法,还可以包括:
106.步骤s400,监测所述存储器的运行状态;
107.在本实施例中,若终端设备需要在存储器处于空闲时才执行上述的搬移数据的过程,则终端设备还持续的针对该存储器实时的运行状态进行监测,从而确定该存储器没有执行数据读取和存储操作的空闲状态。
108.进一步地,在本实施例中,上述步骤s300中,“针对记录的读取命令对应的数据进行搬移”的步骤,可以包括:
109.步骤s301,若监测到所述运行状态为空闲状态,则在所述存储器中,将记录的读取指令对应的数据从各个不连续的原物理存储地址,搬移至各个连续的新物理存储地址。
110.在本实施例中,终端设备在监测到存储器处于不执行其它数据存储或者读取命令的空闲状态时,立即在该存储器当中,将记录的读取命令所指向的数据,从分散不连续的各个原物理存储地址当中,搬移至连续的各个新物理存储地址当中,从而,搬移后数据在存储器当中的第二存储状态即变为了物理存储地址是连续的,进而符合上述的存储区域连续条件。
111.在本实施例中,通过终端设备在响应针对存储器当中所存储的数据的读取命令,以在该存储器当中读取该数据的同时,检测该数据在该存储器当中的第一存储状态。终端设备在检测得到数据在存储器中的第一存储状态之后,还进一步检测该第一存储状态是否符合预先设定好的存储区域连续条件。从而,若终端设备检测到该第一存储状态不符合该存储区域连续条件,则终端设备立即针对该数据对应的读取指令进行记录,以供后续进行进一步处理。终端设备在针对第一存储状态不符合存储区域连续条件的数据所对应读取命令进行记录之后,在后续存储器处于不执行其它数据存储或者读取命令的空闲状态下,在该存储器当中,将记录的该读取命令所指向的数据,从原来的各个物理存储地址当中,搬移至新的各个连续的物理存储地址当中,而搬移后数据在存储器当中的第二存储状态即变为了物理存储地址是连续的,进而符合上述的存储区域连续条件。
112.相比于传统存储器响应数据的读取命令就仅在存储器当中进行数据读取的方式,本发明通过在响应读取命令进行数据读取的同时,先将对应数据在存储器当中的存储状态不符合物理区域连续条件的读取命令进行记录,之后再针对记录的命令对应的数据进行搬移以达成数据的物理存储区域连续的状态,如此,能够在极大程度上提升后续在响应相同命令对同样的数据进行读取时的数据读取性能,并且,由于将存储器上存储的数据均集中在了连续的物理区域还能够显著提升存储器进行垃圾回收的效率。
113.从而,有效地解决了现有技术中存储器将终端侧需要连续存储的数据分散存写至不连续物理区域,导致的存储器整体性能严重下降的技术问题。
114.进一步地,基于上述本发明存储器性能的提升方法的第一实施例,提出本发明存储器性能的提升方法的第二实施例。本实施例与上述第一实施例之间的主要区别在于:在上述步骤s300,针对记录的读取命令对应的数据进行搬移,以令搬移后所述数据在所述存储器中的第二存储状态符合所述存储区域连续条件之后,本发明存储器性能的提升方法,还可以包括:
115.步骤s500,接收针对搬移后所述数据新的数据读取指令,响应所述数据从所述存储器连续的物理存储地址读取所述数据。
116.在本实施例中,终端设备在将原本物理存储地址不连续的数据,搬移至物理存储地址连续的物理区域之后,若进一步再次接收到到了针对该数据的读取命令,则终端设备即可直接在该连续的物理存储地址当中,快速的读取出该数据进行反馈,从而实现了高效的响应该读取指令进行数据读取。
117.此外,在上述步骤s300,针对记录的读取命令对应的数据进行搬移,以令搬移后所述数据在所述存储器中的第二存储状态符合所述存储区域连续条件之后,本发明存储器性能的提升方法,还可以包括:
118.步骤s600,响应针对所述存储器的逻辑擦除指令,以针对所述逻辑擦除指令中连续逻辑存储地址映射的连续物理存储地址上存储的数据进行回收。
119.在本实施例中,终端设备在将原本物理存储地址不连续的数据,搬移至物理存储地址连续的物理区域之后,若此时终端设备接收到了针对存储器进行数据回收的逻辑擦除指令,则由于终端设备当中已经将数据均搬移至连续的物理存储地址进行存储,从而在响应该逻辑擦除指令,终端设备即可快速的确定出该逻辑擦除指令中所需进行回收的数据的连续逻辑存储地址,在该存储器当中所映射的连续物理存储地址,并进一步针对该连续物理存储地址上存储的数据进行回收,实现快速的响应逻辑擦除指令,有效提升了数据回收效率。
120.为方便更清晰的理解终端设备在将原本物理存储地址不连续的数据,搬移至物理存储地址连续的物理区域之后,响应逻辑擦除指令能够有效提升数据回收效率,此处结合附图进行相关说明。
121.请参照图3所示存储器当中物理块所存储数据在终端设备针对数据进行搬移前后的场景示意图(其中,图3中上方4个物理块所示为终端设备进行数据搬移之后物理块存储数据的第二存储状态,下方4个物理块所示为终端设备进行数据搬移之前物理块存储数据的第一存储状态),图3中物理块的黑色部分代表存储了有效数据,因此,可比较直观的看出两种存储状态下数据对于物理块的覆盖的状态是不同的。
122.第一存储状态中,数据对于物理块的覆盖方式相对分散,因此后续执行拉基回收的工作量相对比较大,而在第二存储状态中,由于将原本物理存储地址不连续的数据搬移至物理存储地址连续的物理区域之后,数据对于物理块形成了完全覆盖,如此,后续可不用做额外的垃圾回收动作,即,对于第二存储状态而言,在终端设备针对数据执行搬移之前4个物理块都是黑的,而在终端设备针对数据进行搬移而令其中一个物理块被数据覆盖后,由于该物理块被数据覆盖得比较集中,因此整个物理块都变为了无效数据,从而,终端设备
在后续响应逻辑擦除指令进行回收的过程中,该物理块由于都是无效数据,所以基本不用做垃圾回收就可以直接进行使用,即,减轻了进行垃圾回收的工作量,有效提升了回收效率。
123.此外,请参照图4,本发明实施例还提出一种存储器性能的提升装置,本发明存储器性能的提升装置包括:
124.检测模块10,用于在响应数据的读取命令进行数据读取时,检测所述读取命令对应的数据在存储器中的第一存储状态;
125.记录模块20,用于若检测到所述第一存储状态不符合预设的存储区域连续条件,则针对所述读取命令进行记录;
126.搬移模块30,用于针对记录的读取命令对应的数据进行搬移,以令搬移后所述数据在所述存储器中的第二存储状态符合所述存储区域连续条件。
127.优选地,检测模块10,包括:
128.提取单元,用于提取所述读取命令中携带的待读取数据的逻辑存储地址;
129.第一检测单元,用于检测所述逻辑存储地址映射的所述存储器中的物理存储地址是否连续得到检测结果,并将所述检测结果作为所述数据在存储器中的第一存储状态。
130.优选地,检测模块10,还包括:
131.获取单元,用于在从所述存储器中读取所述读取命令对应的数据时,获取所述数据在所述存储器中的物理存储地址;
132.第二检测单元,用于检测所述物理存储地址是否连续得到检测结果,并将所述检测结果作为所述数据在存储器中的第一存储状态。
133.优选地,所述存储区域连续条件为:数据在所述存储器中的物理存储地址是连续;记录模块20,包括:
134.确定单元,用于若检测到所述第一存储状态为物理存储地址不连续,则确定所述第一存储状态不符合所述存储区域连续条件;
135.记录单元,用于针对所述读取命令进行记录以确定所述读取命令对应的数据需要进行物理存储地址搬移。
136.优选地,本发明存储器性能的提升装置,还包括:
137.监测模块,用于监测所述存储器的运行状态;
138.搬移模块30,还用于若监测到所述运行状态为空闲状态,则在所述存储器中,将记录的读取指令对应的数据从各个不连续的原物理存储地址,搬移至各个连续的新物理存储地址。
139.优选地,本发明存储器性能的提升装置,还包括:
140.数据读取模块,用于接收针对搬移后所述数据新的数据读取指令,响应所述数据从所述存储器连续的物理存储地址读取所述数据。
141.优选地,本发明存储器性能的提升装置,还包括:
142.回收模块,用于响应针对所述存储器的逻辑擦除指令,以针对所述逻辑擦除指令中连续逻辑存储地址映射的连续物理存储地址上存储的数据进行回收。
143.本发明存储器性能的提升装置的各个功能模块在控制器运行时所实现的步骤,可参照上述本发明存储器性能的提升方法的实施例,此处不再赘述。
144.此外,本发明实施例还提出一种终端设备,该终端设备包括:集成有机械硬盘和固态硬盘的存储设备、处理器及存储在所述存储设备上并可在所述处理器上运行的存储器性能的提升程序,该存储器性能的提升程序被所述处理器执行时实现如上述中的存储器性能的提升方法的步骤。
145.其中,在所述处理器上运行的存储器性能的提升程序被执行时所实现的步骤可参照本发明存储器性能的提升方法的各个实施例,此处不再赘述。
146.此外,本发明实施例还提出一种计算机存储介质,应用于计算机,该计算机存储介质可以为非易失性计算机可读计算机存储介质,该计算机存储介质上存储有存储器性能的提升程序,所述存储器性能的提升程序被处理器执行时实现如上所述的存储器性能的提升方法的步骤。
147.其中,在所述处理器上运行的存储器性能的提升程序被执行时所实现的步骤可参照本发明存储器性能的提升方法的各个实施例,此处不再赘述。
148.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
149.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
150.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个计算机存储介质(如flash存储器、rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)中,用于控制该存储介质进行数据读写操作的控制器执行本发明各个实施例所述的方法。
151.以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献