本发明涉及固态硬盘数据处理技术领域,特别是涉及一种固态硬盘中处理suspend操作优化的方法和系统。
背景技术:
随着互联网、云计算、物联网等技术的发展及广泛应用,生活中时时刻刻都会产生海量的数据需要处理及存储,信息技术的高速发展对存储系统的性能提出了更高的要求。而固态硬盘因其读写速度快、能耗较低,而被广泛采用。
对固态硬盘的操作一般为读操作和写操作。由于写入和读取nand的时间存在较大差别。若两个读之间存在一个写操作,那么两个读操作的时间间隔太长,造成度延迟差别明显,因此在会引入suspend的操作来增强性能。目前一般会采取固定间隔时间执行suspend操作的方式,但效率较低。
现有的对固态硬盘的操作过程中,将写nand的时间平均划分为n份(与读写消息处理时间有关系,一般为5~10),在每个时间点检查是否存在读消息,若有则执行suspend操作,处理读消息后,再恢复写nand操作,在下一个时间点重复上述行为执行写操作完成。
因此,现有的对固态硬盘的操作过程中具有以下的缺点:
1、在写操作的设定的时间点检查时,需要有可能没有读消息,影响写操作的执行。
2、每隔时间点都要开启suspend操作,然后处理读操作,这样需要的开销较大。而且频繁的切换suspend和resume导致写操作的时间大大延长了。
3、若在写操作期间,检测到的读消息都在中后期,那么suspend期间执行的读请求消息很有限。
技术实现要素:
本发明的目的是提供了一种固态硬盘中处理suspend操作优化的方法和系统,提高了处理suspend操作的灵活性和处理消息的速度,避免了频繁suspend操作,使得nand性能更高。
为解决上述技术问题,本发明实施例提供了一种固态硬盘中处理suspend操作优化的方法,包括:
步骤1,在接收并处理写消息写nand时,判断是否符合预定的读写比例条件;
若否,步骤2,等待所述写nand操作完成;若是,步骤3,判断是否检测到读消息;
若是,步骤4,执行suspend操作,并处理所述读请消息之后转所述步骤1。
其中,所述步骤4还包括:
执行所述suspend操作,设置suspend标志。
其中,还包括:
步骤5,未检测到读消息,并判断是否有所述suspend标志;
若是,步骤6,执行resume操作,并取消所述suspend标志后转所述步骤2,若否,转所述步骤1。
其中,还包括:
更改设置所述预定的读写比例条件。
其中,还包括:
将设置所述suspend标志和取消所述suspend标志的相关过程以及所述预定的读写比例条件作为日志进行记录并输出。
除此之外了,本发明实施例还提供了一种固态硬盘中处理suspend操作优化的系统,包括读写比例检测模块、读消息请求检测模块和suspend操作模块,所述读写比例检测模块检测与所述读消息检测模块、所述suspend操作模块连接,在处理写消息写nand期间,所述读写比例检测模块检测检测到当前符合预定读写比例条件且所述读消息检测模块检测有读消息是,执行suspend操作,并处理所述读消息;在处理完所述读消息后,判断是否符合所述预定读写比例条件,并有未处理的读消息,若是,继续处理读请求,若否,则恢复并等待所述写操作完成;若符合所述预定读写比例条件,且无读消息,则恢复所述写操作。
其中,还包括设置模块,与所述读写比例检测连接,用于设置所述读写比例检测模块中预存的所述预定读写比例条件。
其中,还包括suspend标志设置模块,用于在执行suspend时设置suspend标志,并在符合所述预定读写比例条件且没有读请求消息时,执行resume操作,取消所述suspend标志。
其中,还包括与所述suspend标志设置模块、所述设置模块连接,用于将设置所述suspend标志和取消所述suspend标志的相关过程以及所述预定的读写比例条件作为日志进行记录并输出。
本发明实施例所提供的固态硬盘中处理suspend操作优化的系统和方法,与现有技术相比,具有以下优点:
本发明实施例提供的固态硬盘中处理suspend操作优化的方法,包括:
步骤1,在接收并处理写消息写nand时,判断是否符合预定的读写比例条件;
若否,步骤2,等待所述写nand操作完成;若是,步骤3,判断是否检测到读消息;
若是,步骤4,执行suspend操作,并处理所述读请消息之后转所述步骤1。
本发明实施例还提供的固态硬盘中处理suspend操作优化的系统,包括读写比例检测模块、读消息请求检测模块和suspend操作模块,所述读写比例检测模块检测与所述读消息检测模块、所述suspend操作模块连接,在处理写消息写nand期间,所述读写比例检测模块检测检测到当前符合预定读写比例条件且所述读消息检测模块检测有读消息是,执行suspend操作,并处理所述读消息;在处理完所述读消息后,判断是否符合所述预定读写比例条件,并有未处理的读消息,若是,继续处理读请求,若否,则恢复并等待写操作完成;若符合所述预定读写比例条件,且无读消息,则恢复写操作。
所述固态硬盘中处理suspend操作优化的方法和系统,通过频繁检测是否有读消息,只要符合预设的读写比例条件,都会得到有效的处理,有效避免了频繁开启suspend操作,通过预设的读写比例条件可以优化处理读消息的能力,提高了处理suspend操作的灵活性和处理些消息的速度,使得些nand的性能得到提高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的固态硬盘中处理suspend操作优化的方法的一种具体实施方式的步骤流程示意图;
图2为本发明实施例提供的固态硬盘中处理suspend操作优化的方法的另一种具体实施方式的步骤流程示意图;
图3为本发明实施例提供的固态硬盘中处理suspend操作优化的系统的一种具体实施方式的结构示意图;
图4为本发明实施例提供的固态硬盘中处理suspend操作优化的方法系统的另一种具体实施方式的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1~4,图1为本发明实施例提供的固态硬盘中处理suspend操作优化的方法的一种具体实施方式的步骤流程示意图;图2为本发明实施例提供的固态硬盘中处理suspend操作优化的方法的另一种具体实施方式的步骤流程示意图;图3为本发明实施例提供的固态硬盘中处理suspend操作优化的系统的一种具体实施方式的结构示意图;图4为本发明实施例提供的固态硬盘中处理suspend操作优化的方法系统的另一种具体实施方式的结构示意图。
在一种具体实施方式中,所述固态硬盘中处理suspend操作优化的方法,包括:
步骤1,在接收并处理写消息写nand时,判断是否符合预定的读写比例条件;
若否,步骤2,等待所述写nand操作完成;若是,步骤3,判断是否检测到读消息;
若是,步骤4,执行suspend操作,并处理所述读请消息之后转所述步骤1。
通过频繁检测是否有读消息,只要符合预设的读写比例条件,都会得到有效的处理,有效避免了频繁开启suspend操作,通过预设的读写比例条件可以优化处理读消息的能力,提高了处理suspend操作的灵活性和处理些消息的速度,使得些nand的性能得到提高。
为了进一步加强对suspend操作的管理,所述步骤4还包括:
执行所述suspend操作,设置suspend标志。
通过设置suspend标志对suspend操作进行管理,只需要获得suspend标志的设置时间,即可获得该时刻开启了suspend操作,有利于相关进行的监控和管理。
而为了进一步加强对suspend操作的管理,降低操作的复杂性,所述固态硬盘中处理suspend操作优化的方法还包括:
步骤5,未检测到读消息,并判断是否有所述suspend标志;
若是,步骤6,执行resume操作,并取消所述suspend标志后转所述步骤2,若否,转所述步骤1。
通过在符合特定条件下的suspend标志的取消,使得只需要检测当前的写nand操作期间是否存在suspend标志,即可判断是否有suspend操作正在执行,提高了对suspend操作的监控的方便性和可靠性,降低了管理复杂度。
由于对于不同的单位或者企业,需要根据不同的应用场景进行对应的处理suspend操作的优化,这样需要设置不同的预定的读写比例条件,因此,所述固态硬盘中处理suspend操作优化的方法还包括:
更改设置所述预定的读写比例条件。
通过可以重新设置预定的读写比例条件,实现对读消息的处理能力的调节,满足不同的工况需求,这种重新设置,可以是人工进行重新设定,也可以是进行预存,在不同的条件下进行触发自动使用预存的多个不同的读写比例。
而为了获取不同的suspend操作优化对写nand的性能的影响,所述固态硬盘中处理suspend操作优化的方法还包括:
将设置所述suspend标志和取消所述suspend标志的相关过程以及所述预定的读写比例条件作为日志进行记录并输出。
通过使用不同的读写比例对处理suspend操作的优化,对应不同的nand的性能,可以从中获取最优值,进一步提高nand的性能。另外,还可以根据不同的nand的性能需要制定不同的处理suspend操作的流程,实现对应的读消息能力的优化调节。
除此之外了,本发明实施例还提供了一种固态硬盘中处理suspend操作优化的系统,包括读写比例检测模块10、读消息请求检测模块20和suspend操作模块30,所述读写比例检测模块10检测与所述读消息检测模块、所述suspend操作模块30连接,在处理写消息写nand期间,所述读写比例检测模块10检测检测到当前符合预定读写比例条件且所述读消息检测模块检测有读消息是,执行suspend操作,并处理所述读消息;在处理完所述读消息后,判断是否符合所述预定读写比例条件,并有未处理的读消息,若是,继续处理读请求,若否,则恢复并等待所述写操作完成;若符合所述预定读写比例条件,且无读消息,则恢复所述写操作。
本发明中的读写比例检测模块10检测的是当前的需要处理的写请求和读请求的比例,这种比例可以是个数的请求比例,也可以是需要处理的字节数的比例,本发明对此不作具体限定,读消息请求检测模块20检测的是是否有未处理的请消息请求对应的读消息。
为了进一步提高对suspend操作的处理的灵活性和处理消息的速度,在本发明一个实施例中,所述固态硬盘中处理suspend操作优化的系统还包括设置模块40,与所述读写比例检测连接,用于设置所述读写比例检测模块10中预存的所述预定读写比例条件。
这样,不同的单位或者企业,就可以根据需要,按照不同的应用场景进行对应的处理suspend操作的优化,设置不同的预定的读写比例条件。
通过可以重新设置预定的读写比例条件,实现对读消息的处理能力的调节,满足不同的工况需求。需要调整时,固件程序会自动依据当前接收到的读写消息,计算出大致比例(n:1),这种调节可以是连续性的调节,如从5:1到6:1再到7:1,也可以是进行多档次调节,只要超出一定的范围就进行档位调节,如从10:1到15:1再到20:1实现在不同的条件下进行触发自动使用预存的多个不同的读写比例。由于固态硬盘需要处理的数据量极大,因此,在本发明中所设置的都是采用按照一定的程序进行自动调节的方式进行读写比例条件管理。
而为了进一步加强对suspend操作的管理,降低操作的复杂性,,还包括suspend标志设置模块40,用于在执行suspend时设置suspend标志,并在符合所述预定读写比例条件且没有读请求消息时,执行resume操作,取消所述suspend标志。
而为了获取不同的suspend操作优化对写nand的性能的影响,所述固态硬盘中处理suspend操作优化的系统还包括与所述suspend标志设置模块40、所述设置模块40连接,用于将设置所述suspend标志和取消所述suspend标志的相关过程以及所述预定的读写比例条件作为日志进行记录并输出。
通过使用不同的读写比例对处理suspend操作的优化,对应不同的nand的性能,可以从中获取最优值,进一步提高nand的性能。另外,还可以根据不同的nand的性能需要制定不同的处理suspend操作的流程,实现对应的读消息能力的优化调节。
综上所述,本发明实施例提供的固态硬盘中处理suspend操作优化的方法和系统,通过频繁检测是否有读消息,只要符合预设的读写比例条件,都会得到有效的处理,有效避免了频繁开启suspend操作,通过预设的读写比例条件可以优化处理读消息的能力,提高了处理suspend操作的灵活性和处理些消息的速度,使得些nand的性能得到提高。
以上对本发明所提供的固态硬盘中处理suspend操作优化的方法和系统进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。