一种建立数据帧位图的方法、装置和计算机可读存储介质与流程

文档序号:16208109发布日期:2018-12-08 07:22阅读:147来源:国知局
本发明涉及数据存储
技术领域
:,特别是涉及一种建立数据帧位图的方法、装置和计算机可读存储介质。
背景技术
:在一个计算机系统中,存储数据的区域有多个,每个区域包括有多个模块,针对于每个模块可以建立一个数据帧位图。数据帧位图用于记录存储在相应模块中的数据是否有效。以一个数据帧为例,当该数据帧为有效数据时,其在数据帧位图对应的位置被置为有效;同理,当该数据帧为无效数据时,其在数据帧位图对应的位置被置为无效。数据帧位图对于无效数据的回收,以及有效数据的搬移等具有重要意义。数据帧位图可以存储在固态硬盘(solidstatedrives,ssd)上。在ssd下电过程中,ssd需要将数据帧位图保存到只读存储器(flash),以供ssd下次上电后继续使用。但是,在ssd下电过程中,ssd并不能保证数据帧位图能够及时准确的保存到flash中,从而造成数据帧位图的丢失。而现有技术中,并没有重建数据帧位图的方案。可见,如何在数据帧位图丢失后,重建数据帧位图,是本领域技术人员亟待解决的问题。技术实现要素:本发明实施例的目的是提供一种建立数据帧位图的方法、装置和计算机可读存储介质,可以在数据帧位图丢失后,重建数据帧位图。为解决上述技术问题,本发明实施例提供一种建立数据帧位图的方法,包括:查询逻辑地址和物理地址的对应关系,获取各待处理数据帧的逻辑地址所对应的物理地址;依据目标数据帧的物理地址,确定出所述目标数据帧所对应的初始数据帧位图,并在所述初始数据帧位图中与所述物理地址相对应的位置上添加相应的有效标识符,以得到目标数据帧位图;其中所述目标数据帧为所有所述待处理数据帧中的任意一个数据帧。可选的,所述查询逻辑地址和物理地址的对应关系,获取各待处理数据帧的逻辑地址所对应的物理地址包括:判断逻辑地址和物理地址的对应关系中是否存在与目标数据帧的逻辑地址相匹配的目标逻辑地址;若是,则将所述目标逻辑地址相对应的物理地址作为所述目标数据帧的物理地址。可选的,在得到所述目标数据帧位图之后还包括:当所述目标数据帧的物理地址发生变化时,则将所述目标数据帧位图中相应位置上的有效标识符修改为无效标识符;依据变化后的物理地址,确定出所述目标数据帧当前所对应的数据帧位图,并在所述数据帧位图中与所述物理地址相对应的位置上添加相应的有效标识符。可选的,在得到所述目标数据帧位图之后还包括:当删除所述目标数据帧后,则将所述目标数据帧位图中相应位置上的有效标识符修改为无效标识符。本发明实施例还提供了一种建立数据帧位图的装置,包括获取单元和确定单元;所述获取单元,用于查询逻辑地址和物理地址的对应关系,获取各待处理数据帧的逻辑地址所对应的物理地址;所述确定单元,用于依据目标数据帧的物理地址,确定出所述目标数据帧所对应的初始数据帧位图,并在所述初始数据帧位图中与所述物理地址相对应的位置上添加相应的有效标识符,以得到目标数据帧位图;其中所述目标数据帧为所有所述待处理数据帧中的任意一个数据帧。可选的,所述查询单元包括判断子单元和作为子单元;所述判断子单元,用于判断逻辑地址和物理地址的对应关系中是否存在与目标数据帧的逻辑地址相匹配的目标逻辑地址;若是,则触发所述作为子单元;所述作为子单元,用于将所述目标逻辑地址相对应的物理地址作为所述目标数据帧的物理地址。可选的,还包括修改单元和添加单元;所述修改单元,用于当所述目标数据帧的物理地址发生变化时,则将所述目标数据帧位图中相应位置上的有效标识符修改为无效标识符;所述添加单元,用于当所述目标数据帧的物理地址发生变化时,依据变化后的物理地址,确定出所述目标数据帧当前所对应的数据帧位图,并在所述数据帧位图中与所述物理地址相对应的位置上添加相应的有效标识符。可选的,所述修改单元还用于当删除所述目标数据帧后,则将所述目标数据帧位图中相应位置上的有效标识符修改为无效标识符。本发明实施例还提供了一种建立数据帧位图的装置,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序以实现如上述建立数据帧位图的方法的步骤。本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述建立数据帧位图的方法的步骤。由上述技术方案可以看出,查询逻辑地址和物理地址的对应关系,获取各待处理数据帧的逻辑地址所对应的物理地址;依据目标数据帧的物理地址,确定出目标数据帧所对应的初始数据帧位图,并在该初始数据帧位图中与所述物理地址相对应的位置上添加相应的有效标识符,以得到目标数据帧位图;其中目标数据帧为所有待处理数据帧中的任意一个数据帧,参照目标数据帧的处理流程,可以完成对所有待处理数据帧的处理,从而实现数据帧位图的重建。利用该技术方案可以在数据帧位图丢失的情况下,及时重建数据帧位图,提高了数据帧位图的可靠性以及数据稳定性。附图说明为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的一种建立数据帧位图的方法的流程图;图2为本发明实施例提供的一种建立数据帧位图的装置的结构示意图;图3为本发明实施例提供的一种建立数据帧位图的装置的硬件结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。为了使本
技术领域
:的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。接下来,详细介绍本发明实施例所提供的一种建立数据帧位图的方法。图1为本发明实施例提供的一种建立数据帧位图的方法的流程图,该方法包括:s101:查询逻辑地址和物理地址的对应关系,获取各待处理数据帧的逻辑地址所对应的物理地址。每个数据帧有其对应的数据帧逻辑地址(logicalbaseaddress,lba)和数据帧物理地址(physicalbaseaddress,pba)。数据帧逻辑地址是由中央处理器(centralprocessingunit,cpu)生成的地址。数据帧物理地址是数据帧存储时所对应的真实地址,依据数据帧物理地址可以确定出数据帧在存储系统中的具体存储位置。在存储数据时,可以建立逻辑地址到物理地址的对应关系,该对应关系可以以映射表的形式存储,即建立逻辑地址到物理地址的映射表(logicaltophysicaltable,l2p)。在计算机系统中包括的数据帧位图可以有多个,在ssd下电过程中,丢失的数据帧位图可能有一个或多个。以一个数据帧位图为例,当该数据帧位图丢失后,需要对该数据帧位图进行重建,相应的,与该数据帧位图相对应的数据帧即为待处理数据帧。考虑到各待处理数据帧的逻辑地址,逻辑地址和物理地址的对应关系均为已知信息。因此,在本发明实施例中,可以通过查询逻辑地址和物理地址的对应关系,获取各待处理数据帧的逻辑地址所对应的物理地址。具体的,可以判断逻辑地址和物理地址的对应关系中是否存在与目标数据帧的逻辑地址相匹配的目标逻辑地址;若是,则将所述目标逻辑地址相对应的物理地址作为所述目标数据帧的物理地址。为了避免遗漏待处理数据帧,可以依据各待处理数据帧的逻辑地址,对各待处理数据帧按照逻辑地址从低到高的顺序进行排序。从排在第一位的待处理数据帧开始,判断逻辑地址和物理地址的对应关系中是否存在与该待处理数据帧的逻辑地址相匹配的逻辑地址;当存在时,则将匹配到的逻辑地址相对应的物理地址作为待处理数据帧的物理地址,并对下一个待处理数据帧进行处理。当不存在相匹配的逻辑地址时,则可以将该待处理数据帧的物理地址置为0,并对下一个待处理数据帧进行处理。依次类推,直到对所有的待处理数据帧处理完毕。s102:依据目标数据帧的物理地址,确定出目标数据帧所对应的初始数据帧位图,并在初始数据帧位图中与物理地址相对应的位置上添加相应的有效标识符,以得到目标数据帧位图。在计算机系统中,每个模块所对应的数据帧位图的基本格式较为固定,一般一个数据帧位图可以包括128位,该数据帧位图可以记载128个数据帧的状态信息。初始数据帧位图可以看作是未记载状态信息的数据帧位图。当数据帧位图丢失后,该数据帧位图中各数据位上记载的状态信息会丢失,如果能够确定出相应数据位上的状态信息,便可以完成数据帧位图的重建。在本发明实施例中,重建数据帧位图主要是确定出初始数据帧位图中相应数据位的状态信息。其中,该状态信息可以包括有效状态和无效状态。在具体实现中,可以使用标识符表示数据帧的状态,例如,用数字“1”表示数据帧为有效数据,用数字“0”表示数据帧为无效数据。待处理数据帧的个数可能有多个,每个待处理数据帧的处理方式类似,接下来将以所有待处理数据帧中的任意一个数据帧即目标数据帧为例,对该目标数据帧的处理流程展开介绍。依据目标数据帧的物理地址可以获知其存储的具体位置,即可以确定出该目标数据帧所在的区域和模块,每个模块有其对应的初始数据帧位图,相应的,可以确定出该目标数据帧所对应的是哪个初始数据帧位图。并且依据目标数据帧的物理地址,可以定位到目标数据帧在初始数据帧位图中的位置,相应的,可以将该位置设置为有效位。对于未遍历到的位置,则可以默认为无效位。其中,将该位置设置为有效位,具体的,可以在该位置添加有效标识符,例如,在该位置添加数字“1”。对于未遍历到的位置,则可以默认为无效位,具体的,可以将该位置设置无效标识符,例如,在该位置添加数字“0”。参照目标数据帧的处理流程,可以完成对所有待处理数据帧的处理,从而实现数据帧位图的重建。由上述技术方案可以看出,查询逻辑地址和物理地址的对应关系,获取各待处理数据帧的逻辑地址所对应的物理地址;依据目标数据帧的物理地址,确定出目标数据帧所对应的初始数据帧位图,并在该初始数据帧位图中与所述物理地址相对应的位置上添加相应的有效标识符,以得到目标数据帧位图;其中目标数据帧为所有待处理数据帧中的任意一个数据帧,参照目标数据帧的处理流程,可以完成对所有待处理数据帧的处理,从而实现数据帧位图的重建。利用该技术方案可以在数据帧位图丢失的情况下,及时重建数据帧位图,提高了数据帧位图的可靠性以及数据稳定性。每个模块有其对应的一个数据帧位图,当该模块上的数据帧搬移到其它模块时,为了保证数据帧位图的实时有效,可以相适应的调整数据帧位图中相应数据位的状态信息。具体的,当目标数据帧的物理地址发生变化时,则可以将目标数据帧位图中相应位置上的有效标识符修改为无效标识符;并依据变化后的物理地址,确定出所述目标数据帧当前所对应的数据帧位图,并在所述数据帧位图中与所述物理地址相对应的位置上添加相应的有效标识符。以“1”作为有效标识符,“0”作为无效标识符为例,假设目标数据帧原本存储在模块a上,之后将目标数据帧从模块a搬移到模块b。其中,模块a对应有数据帧位图1,模块b对应有数据帧位图2,相应的,可以将数据帧位图1中与该目标数据帧相应的数据位由“1”变为“0”,将数据帧位图2中与该目标数据帧相应的数据位由“0”变为“1”。依据数据帧存储位置的变化,对相应的数据帧位图进行修改,保证了数据帧位图与数据帧之间的对应关系,保证了数据帧位图的实时有效。除了数据帧的搬移之外,数据帧存在删除的情况。与数据帧搬移到其它模块类似,当模块上的数据帧删除后,为了保证数据帧位图的实时有效,可以相适应的调整数据帧位图中相应数据位的状态信息。具体的,当删除目标数据帧后,则将目标数据帧位图中相应位置上的有效标识符修改为无效标识符。以“1”作为有效标识符,“0”作为无效标识符为例,假设目标数据帧存储在模块a上,当目标数据帧从模块a中删除后,相应的,可以将数据帧位图中与该目标数据帧相应的数据位由“1”变为“0”。依据模块中数据帧的变化,对相应的数据帧位图进行修改,保证了数据帧位图与数据帧之间的对应关系,保证了数据帧位图的实时有效。图2为本发明实施例提供的一种建立数据帧位图的装置的结构示意图,装置包括获取单元21和确定单元22;获取单元21,用于查询逻辑地址和物理地址的对应关系,获取各待处理数据帧的逻辑地址所对应的物理地址;确定单元22,用于依据目标数据帧的物理地址,确定出目标数据帧所对应的初始数据帧位图,并在初始数据帧位图中与物理地址相对应的位置上添加相应的有效标识符,以得到目标数据帧位图;其中目标数据帧为所有待处理数据帧中的任意一个数据帧。可选的,查询单元包括判断子单元和作为子单元;判断子单元,用于判断逻辑地址和物理地址的对应关系中是否存在与目标数据帧的逻辑地址相匹配的目标逻辑地址;若是,则触发作为子单元;作为子单元,用于将目标逻辑地址相对应的物理地址作为目标数据帧的物理地址。可选的,还包括修改单元和添加单元;修改单元,用于当目标数据帧的物理地址发生变化时,则将目标数据帧位图中相应位置上的有效标识符修改为无效标识符;添加单元,用于当目标数据帧的物理地址发生变化时,依据变化后的物理地址,确定出目标数据帧当前所对应的数据帧位图,并在数据帧位图中与物理地址相对应的位置上添加相应的有效标识符。可选的,修改单元还用于当删除目标数据帧后,则将目标数据帧位图中相应位置上的有效标识符修改为无效标识符。图2所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。由上述技术方案可以看出,查询逻辑地址和物理地址的对应关系,获取各待处理数据帧的逻辑地址所对应的物理地址;依据目标数据帧的物理地址,确定出目标数据帧所对应的初始数据帧位图,并在该初始数据帧位图中与所述物理地址相对应的位置上添加相应的有效标识符,以得到目标数据帧位图;其中目标数据帧为所有待处理数据帧中的任意一个数据帧,参照目标数据帧的处理流程,可以完成对所有待处理数据帧的处理,从而实现数据帧位图的重建。利用该技术方案可以在数据帧位图丢失的情况下,及时重建数据帧位图,提高了数据帧位图的可靠性以及数据稳定性。图3为本发明实施例提供的一种建立数据帧位图的装置30的硬件结构示意图,包括:存储器31,用于存储计算机程序;处理器32,用于执行所述计算机程序以实现如上述建立数据帧位图的方法的步骤。本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述建立数据帧位图的方法的步骤。以上对本发明实施例所提供的一种建立数据帧位图的方法、装置和计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本
技术领域
:的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或
技术领域
:内所公知的任意其它形式的存储介质中。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1