掌桥专利:专业的专利平台
掌桥专利
首页

一种统计SSD异常下电时丢失用户数据量的方法及系统

文献发布时间:2023-06-19 18:30:43


一种统计SSD异常下电时丢失用户数据量的方法及系统

技术领域

本发明涉及固态硬盘下电异常技术领域,更具体地,涉及一种统计SSD异常下电时丢失用户数据量的方法及系统。

背景技术

为了验证SATA/NVME固态硬盘(SSD)在异常下电过程中的数据一致性,需要确认SSD在下电时是否会丢失数据,以及丢失的数据量。为了准确得到下电时丢失的数据量需要通过抓包分析工具获得下电前Host顺序写的最后数据写入的逻辑地址LBA_B,以及SSD收到最后数据的逻辑地址LBA_A,L_LBA_B-LBA_A的差值就是下电丢失的数据量。但是,利用专用设备如抓包工具(Bus Doctor)以及SATA/NVME总线分析仪等仪器,成本较高,操作方式也比较复杂。

发明内容

本发明针对现有技术中存在的传统SSD异常下电时丢失用户数据量统计需要用到专用设备,成本较高,操作方式也比较复杂的技术问题。

本发明提供了一种统计SSD异常下电时丢失用户数据量的方法,包括以下步骤:

S1,主机Host对SSD的一段地址按顺序写入固定数据PatternA;

S2,主机Host对SSD的相同选定地址段进行顺序写入固定数据PatternB,且在写完成之前对SSD进行异常断电,结果会导致写失败,记录出错的逻辑地址LBA_B;

S3,主机Host对SSD进行顺序读校验固定数据PatternB,当出现数据校验不一致时记录不一致的逻辑地址LBA_A,则异常下电导致丢失的用户数据量S=LBA_B-LBA_A。

优选地,所述S1至S3中写与读过程具体包括:主机通过SSD读写工具将数据写入或读取。

优选地,所述S1中的一段地址是通过任意预选SDD中地址的一个片段。

优选地,所述一段地址为SSD中的0GB-10GB段。

优选地,所述固定数据PatternA与固定数据PatternB不同。

本发明还提供了一种统计SSD异常下电时丢失用户数据量的系统,所述系统用于实现如权利要求1-5任一项所述的统计SSD异常下电时丢失用户数据量的方法,包括:

第一数据写入模块,用于通过主机Host对SSD的一段地址按顺序写入固定数据PatternA;

第二数据写入模块,用于通过主机Host对SSD的相同选定地址段进行顺序写入固定数据PatternB,且在写完成之前对SSD进行异常断电,结果会导致写失败,记录出错的逻辑地址LBA_B;

统计模块,用于通过主机Host对SSD进行顺序读校验固定数据PatternB,当出现数据校验不一致时记录不一致的逻辑地址LBA_A,则异常下电导致丢失的用户数据量S=LBA_B-LBA_A。

本发明还提供了一种电子设备,包括存储器、处理器,所述处理器用于执行存储器中存储的计算机管理类程序时实现统计SSD异常下电时丢失用户数据量的方法的步骤。

本发明还提供了一种计算机可读存储介质,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现统计SSD异常下电时丢失用户数据量的方法的步骤。

有益效果:本发明提供的一种统计SSD异常下电时丢失用户数据量的方法及系统,其中方法包括:主机Host对SSD的一段地址按顺序写入固定数据PatternA;主机Host对SSD的相同选定地址段进行顺序写入固定数据PatternB,且在写完成之前对SSD进行异常断电,结果会导致写失败,记录出错的逻辑地址LBA_B;主机Host对SSD进行顺序读校验固定数据PatternB,当出现数据校验不一致时记录不一致的逻辑地址LBA_A,则异常下电导致丢失的用户数据量S=LBA_B-LBA_A。通过对SATA/NVME固态硬盘(SSD)的顺序读写完成对丢失数据量的统计,不需要专用设备(如SATA/NVME总线分析仪等),只需要自身的SSD读写工具即可,效率提高,成本降低,具有广泛的推广意义。

附图说明

图1为本发明提供的一种统计SSD异常下电时丢失用户数据量的方法流程图;

图2为本发明提供的一种可能的电子设备的硬件结构示意图;

图3为本发明提供的一种可能的计算机可读存储介质的硬件结构示意图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

图1为本发明提供的一种统计SSD异常下电时丢失用户数据量的方法,包括以下步骤:

S1,主机Host对SSD的一段地址按顺序写入固定数据PatternA;通过主机Host来对SDD进行写操作,其中一段地址是通过任意预选SDD中地址的一个片段。只要是连续的一段地址即可,根据实际情况选取长度即可。

S2,主机Host对SSD的相同选定地址段进行顺序写入固定数据PatternB,且在写完成之前对SSD进行异常断电,结果会导致写失败,记录出错的逻辑地址LBA_B;两个数据都是在同一段地址内写入。固定数据PatternA写完后,再用同样的操作顺序写入固定数据PatternB,然后在写的过程中断点以模拟异常失电情景。

S3,主机Host对SSD进行顺序读校验固定数据PatternB,当出现数据校验不一致时记录不一致的逻辑地址LBA_A,则异常下电导致丢失的用户数据量S=LBA_B-LBA_A。由于在写入固定数据PatternB时异常失电,异常失电时会主机Host自动记录出错的逻辑地址LBA_B,该逻辑地址LBA_B即为异常失电时的写地址。而后期数据校验不一致的逻辑地址LBA_A即为异常失电后再恢复正常时的地址。

通过对SATA/NVME固态硬盘(SSD)的顺序读写完成对丢失数据量的统计,不需要专用设备(如SATA/NVME总线分析仪等),只需要自身的SSD读写工具即可,效率提高,成本降低,具有广泛的推广意义。

优选的方案,所述S1至S3中写与读过程具体包括:主机通过SSD读写工具将数据写入或读取。Host主机利用自身的读写工具来对SSD进行读或写操作,不仅效率高,且成本低,不需要使用额外的第三方工具,且操作稳定可靠。

优选的方案,所述S1中的一段地址是通过任意预选SDD中地址的一个片段。具体地,所述一段地址为SSD中的0GB-10GB段,还可以是20GB-25GB段,长度和位置不定。

优选的方案,所述固定数据PatternA与固定数据PatternB不同。二者数据不同,便于检测地址。二者也可以是一样的数据。

本发明实施例还提供了一种统计SSD异常下电时丢失用户数据量的系统,所述系统用于实现如上所述的统计SSD异常下电时丢失用户数据量的方法,包括:

第一数据写入模块,用于通过主机Host对SSD的一段地址按顺序写入固定数据PatternA;

第二数据写入模块,用于通过主机Host对SSD的相同选定地址段进行顺序写入固定数据PatternB,且在写完成之前对SSD进行异常断电,结果会导致写失败,记录出错的逻辑地址LBA_B;

统计模块,用于通过主机Host对SSD进行顺序读校验固定数据PatternB,当出现数据校验不一致时记录不一致的逻辑地址LBA_A,则异常下电导致丢失的用户数据量S=LBA_B-LBA_A。

请参阅图2为本发明实施例提供的电子设备的实施例示意图。如图2所示,本发明实施例提了一种电子设备,包括存储器1310、处理器1320及存储在存储器1310上并可在处理器1320上运行的计算机程序1311,处理器1320执行计算机程序1311时实现以下步骤:S1,主机Host对SSD的一段地址按顺序写入固定数据PatternA;

S2,主机Host对SSD的相同选定地址段进行顺序写入固定数据PatternB,且在写完成之前对SSD进行异常断电,结果会导致写失败,记录出错的逻辑地址LBA_B;

S3,主机Host对SSD进行顺序读校验固定数据PatternB,当出现数据校验不一致时记录不一致的逻辑地址LBA_A,则异常下电导致丢失的用户数据量S=LBA_B-LBA_A。

请参阅图3为本发明提供的一种计算机可读存储介质的实施例示意图。如图3所示,本实施例提供了一种计算机可读存储介质1400,其上存储有计算机程序1411,该计算机程序1411被处理器执行时实现如下步骤:S1,主机Host对SSD的一段地址按顺序写入固定数据PatternA;

S2,主机Host对SSD的相同选定地址段进行顺序写入固定数据PatternB,且在写完成之前对SSD进行异常断电,结果会导致写失败,记录出错的逻辑地址LBA_B;

S3,主机Host对SSD进行顺序读校验固定数据PatternB,当出现数据校验不一致时记录不一致的逻辑地址LBA_A,则异常下电导致丢失的用户数据量S=LBA_B-LBA_A。

需要说明的是,在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其它实施例的相关描述。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式计算机或者其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。

相关技术
  • 一种基于block生长记录的SSD异常掉电恢复方法及其系统
  • 一种插卡取电式电表用户辅助系统及取电方法
  • 一种异常用户同党的搜索方法,装置,及系统
  • 一种测试异常断电丢失数据量的方法及系统
  • 一种固态硬盘异常下电时写缓存的处理方法、系统及装置
技术分类

06120115596726