内存转储处理方法和装置及内存转储系统的制作方法

文档序号:6358930阅读:165来源:国知局
专利名称:内存转储处理方法和装置及内存转储系统的制作方法
技术领域
本发明实施例涉及数据处理技术,尤其涉及一种内存转储处理方法和装置及内存转储系统。
背景技术
操作系统一般会在系统崩溃后实行内存转储,将内存中的数据转储到存储设备中,以方便事后问题定位。随着硬件技术的发展,内存得到了极大的扩展,导致了系统转储时间过长。同时现代处理器技术的发展,处理器已经从单核发展到多核多线程,能够同时并行处理多个线程,即处理器具有多个逻辑CPU,一个逻辑CPU即为一个处理单元。而传统的转储使用单个逻辑CPU处理,这就造成了系统的计算能力极大的浪费。现有技术的一些系统如 AIX (Advanced Interactive eXecutive), HP-UX (Hewlett Packard UniX)等提供了并行转储的功能,它将内存分块,由一个或多个逻辑CPU负责一个内存块的各环节(如预处理、过滤、压缩、写磁盘等)的处理操作,从而加快了处理速度。但是,由于处理各个内存块的逻辑CPU相互独立并行工作,当多个逻辑CPU同时进行磁盘I/O 传输时,会引起磁盘I/O传输的瞬时峰值流量,导致转储性能的下降。而且,要求存储设备的驱动程序必须是可重入的,才能保证多个逻辑CPU同时使用存储设备。

发明内容
本发明实施例提供一种内存转储处理方法和装置及内存转储系统,以避免磁盘I/ 0传输的瞬时峰值流量,提高内存转储性能。本发明实施例提供一种内存转储处理方法,包括调用第一处理单元组对各内存块的内存转储处理的第一环节进行处理;对所述第一环节处理完成后的后续处理环节,调用所述第一处理单元组之外的各处理单元组分别进行处理,以将内存块写入存储设备,所述后续处理环节为已处理环节的下一环节;其中,所述各处理单元组对应处理内存转储处理中的一个环节。本发明实施例提供一种内存转储处理装置,包括启动处理模块,用于调用第一处理单元组对各内存块的内存转储处理的第一环节进行处理;后续处理模块,用于对所述第一环节处理完成后的后续处理环节,调用所述第一处理单元组之外的各处理单元组分别进行处理,以将内存块写入存储设备,所述后续处理环节为已处理环节的下一环节;其中,所述各处理单元组对应处理内存转储处理中的一个环节。本发明实施例提供一种内存转储系统,包括内存和至少两个处理单元,还包括本发明实施例提供的内存转储处理装置。由上述技术方案可知,本发明实施例提供内存转储处理方法和装置及内存转储系统,通过调用第一处理单元组对各内存块的第一环节进行处理,可以逐个触发对各内存块的转储处理,因此实现将各内存块串行通过磁盘I/O写入存储设备,避免了磁盘I/O传输的瞬时峰值流量,存储设备的驱动程序也无需为可重入的,提高了内存转储性能。另外,本实施例对各内存块的后续处理环节,调用各对应组的处理单元分别进行处理,可以实现各处理单元组以流水方式对各内存块的各环节的处理,提高了处理单元的利用效率,避免了资源浪费。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例一提供的内存转储处理方法流程图;图2为本发明实施例二提供的内存转储处理方法流程图;图3为本发明实施例三提供的内存转储处理方法流程图;图4为本发明实施例四提供的内存转储处理装置结构示意图;图5为本发明实施例五提供的内存转储处理装置结构示意图;图6为本发明实施例六提供的内存转储系统结构示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。实施例一图1为本发明实施例一提供的内存转储处理方法流程图。如图1所示,本实施例提供的内存转储处理方法具体可以应用于具有多个处理单元(即多个逻辑CPU)的系统,当该系统的操作系统崩溃后,操作系统的内存转储处理装置即可控制各处理单元,采用该内存转储处理方法进行内存转储。内存转储处理装置可以通过硬件和软件的形式来实现,可以集成在操作系统的控制装置中,也可以独立设置内存转储处理装置。本实施例的内存转储处理方法包括步骤10、内存转储处理装置调用第一处理单元组对各内存块的内存转储处理的第一环节进行处理;具体的,内存已经被划分成多个内存块,可以按照多种预设规则进行划分。通常每个内存块的转储处理都涉及至少两个环节,例如,典型的环节可以包括预处理、过滤、压缩和写磁盘等环节,对内存块各环节的处理具有一定的顺序,只有当上一环节处理完成后,才能进行下一环节的处理。本实施例所采用的技术方案中,为每个环节分配对应的处理单元组,每组中处理单元的数量可以根据处理单元的实际处理速度来分配,可以为一个或多个。 如预处理环节对应的处理单元组中包括一个处理单元,过滤环节对应的处理单元组中包括一个处理单元,压缩环节对应的处理单元组中包括三个处理单元,写磁盘环节对应的处理单元组中包括一个处理单元,以使各环节保持相对一致的处理进度。上述步骤10即调用第一环节对应的第一处理单元组,对各内存块的第一环节进行处理,具体可以按照设定的顺序对各内存块进行处理。步骤20、对第一环节处理完成后的后续处理环节,调用第一处理单元组之外的各处理单元组分别进行处理,以将内存块写入存储设备,后续处理环节为已处理环节的下一环节。其中,各处理单元组对应处理内存转储处理中的一个环节。第一处理单元组为第一环节对应的处理单元组,调用第一处理单元组对各内存块的第一环节进行处理,当第一处理单元组对一个内存块的第一环节处理完成后,该第一环节即为已处理环节,此时才可以调用其他处理单元组对该内存块依次进行后续处理环节的处理,而此时,第一处理单元组可以继续对下一个内存块的第一环节进行处理。随着转储的进展,各内存块陆续出现后续处理环节,这些后续处理环节可能对应着不同的环节,内存转储处理装置可以调用不同的处理单元组同时对这些后续处理环节进行处理。下面以内存块的内存转储处理包括预处理、过滤、压缩和写磁盘四个环节为例对内存转储处理方法进行说明,该四个环节对应的处理单元组分别为第一处理单元组、第二处理单元组、第三处理单元组和第四处理单元组。通过本实施例提供的内存转储处理方法进行内存转储的具体过程可以为首先调用第一处理单元组对第一个内存块的预处理环节进行处理,预处理环节处理完成后,该环节即为已处理环节,则第一个内存块的过滤环节为后续处理环节。此时,可以按照内存块的顺序,调用第一处理单元组对第二个内存块的预处理环节进行处理,同时,可调用第二处理单元组对第一个内存块的过滤环节进行处理。第一个内存块的过滤环节处理完成后,压缩环节成为后续处理环节,而第二个内存块的预处理环节处理完成后,其过滤环节成为后续处理环节。此时,可以按照内存块的顺序,调用第一处理单元组对第三个内存块的预处理环节进行处理,同时,调用第三处理单元组对第一个内存块的压缩环节进行处理,调用第二处理单元组对第二个内存块的过滤环节进行处理。 后续的操作过程类似执行,第一个内存块的压缩环节处理完成后,调用第四处理单元组对第一个内存块的写磁盘环节进行处理,将第一个内存块写入存储设备,至此就完成了对第一个内存块的转储处理。第二个内存块的过滤环节处理完成后调用第三处理单元组对第二个内存块的压缩环节进行处理,第三个内存块的预处理环节处理完成后,调用第二处理单元组对第三个内存块的过滤环节进行处理,同时调用第一处理单元组对第四个内存块的预处理环节进行处理。依次循环实现对各内存块的各环节的流水线处理,实现将所有内存块顺序通过磁盘I/O写入存储设备。本实施例提供的内存转储处理方法,通过调用第一处理单元组对各内存块的第一环节进行处理,可以逐个触发对各内存块的转储处理,因此实现将各内存块串行通过磁盘 I/O写入存储设备,避免了磁盘I/O传输的瞬时峰值流量,存储设备的驱动程序也无需为可重入的,提高了内存转储性能。另外,本实施例对各内存块的后续处理环节,调用各对应组的处理单元分别进行处理,可以实现各处理单元组以流水方式对各内存块的各环节的处理,提高了处理单元的利用效率,避免了资源浪费。实施例二
图2为本发明实施例二提供的内存转储处理方法流程图。本实施例与实施例一的区别在于,上述实施例中的步骤20,对第一环节处理完成后的后续处理环节,调用第一处理单元组之外的各处理单元组分别进行处理,具体可以包括当内存转储处理装置识别到内存块存在后续处理环节时,调用对应的处理单元组进行处理,且在处理完成后,将下一个环节更新为后续处理环节。通过对内存块的后续处理环节的识别和更新,可以实现各内存块的各环节流水处理的同步。在本实施例中,环节具体可以包括预处理环节、过滤环节、压缩环节和写磁盘环节。预处理环节、过滤环节、压缩环节和写磁盘环节顺序处理,第一环节为预处理环节,后续处理环节为过滤环节、压缩环节或写磁盘环节。如,作为第一环节的预处理环节处理完成后,过滤环节为后续处理环节,当过滤环节处理完成后,压缩环节为后续处理环节,以此类推。环节的设置可以根据实际内存转储需要来设置,不以本实施例为限。在本实施例中,优选地,各内存块的各环节对应设置有存储位,用于存储处理状态标识,则当内存转储处理装置识别到内存块存在后续处理环节时,调用对应的处理单元组进行处理,且在处理完成后,将下一个环节更新为后续处理环节的操作具体可以包括如下步骤步骤301、当内存转储处理装置根据各内存块各存储位的处理状态标识识别到后续处理环节时,调用对应的处理单元组进行处理;步骤302、在内存块当前的后续处理环节处理完成后,内存转储处理装置更新内存块对应的处理状态标识,以将下一个环节更新为后续处理环节。处理状态标识具体用以指示某一内存块的某一环节是否已经处理完成。存储位具体可以设置在内存的预留存储区域中,该预留存储区域在系统正常工作时不调用,只有在系统崩溃需要进行内存转储时,才使用该预留存储区域中的存储位存储处理状态标识。 存储位也可以设置在其他存储单元中,在系统崩溃时可以用以存储位存储处理状态标识即可,不以本实施例为限。存储位的设置方法具体可以为假设将内存总共划分为IOM块内存块,每个内存块需要进行四个环节的处理,则每个内存块需要三个处理状态标识,分别对应前三个环节的处理状态,若某一环节的状态为未处理,该环节对应的处理状态标识为“0”,当该环节处理完成后,将该环节对应的处理状态标识更新为“1”,据此可以对内存块的该环节的下一环节进行处理,实现了各环节的同步操作。通过一个存储位存储一个处理状态标识,则需要10MX3 = 3072个存储位,一个存储位具体可以为1比特,则至少需要384个字节的预留存储区域。在内存转储工作开始之前,具体可以将预留存储区域中的所有存储位存储的处理状态标识初始化为“0”,以便内存转储过程中对处理状态标识更新来实现对各环节的同步。通过处理状态标识的设置,在系统崩溃的环境下,避免了应用系统信号量进行流水处理中各环节同步而引起的错误,提高了内存转储处理的正确性,进一步提高了内存转储性能。流水处理中各环节的同步也可以通过队列、堆栈等数据结构来实现,不以本实施例为限。在本实施例中,步骤10内存转储处理装置调用第一处理单元组对各内存块的内存转储处理的第一环节进行处理,具体可以包括
步骤101、内存转储处理装置按照各内存块的顺序对内存块进行编号;步骤102、内存转储处理装置调用第一处理单元组按照编号顺序对各内存块的内存转储处理的第一环节进行处理。通过按照各内存块的顺序对内存块进行编号,调用第一处理单元组按照编号顺序对各内存块的第一环节进行处理,实现对各内存块的后续处理环节也是按照内存块的顺序进行,将内存块写入存储设备后不需要进行特殊处理就可以还原内存中的文件数据。实施例三图3为本发明实施例三提供的内存转储处理方法流程图。本实施例提供的内存转储处理方法具体还可以包括如下步骤步骤40、内存转储处理装置检测各处理单元组的负载状况,生成检测结果;步骤50、内存转储处理装置根据检测结果动态调整各处理单元组中处理单元的数量。通过对各处理单元组的负载状况的检测,能够对各环节动态分配处理单元,保持了处理过程的平衡性,避免出现瓶颈。具体的,可以预先设置预处理环节对应的处理单元组中包括一个处理单元,过滤环节对应的处理单元组中包括一个处理单元,压缩环节对应的处理单元组中包括三个处理单元,写磁盘环节对应的处理单元组中包括一个处理单元。在内存转储过程中,再通过对各处理单元组的负载状况的检测动态地调整各处理单元组中的处理单元的数量,当压缩环节的处理速度过快时,而过滤环节的处理速度比较慢时,可以使压缩环节的三个处理单元中的一个停止工作,释放该处理单元的资源,并将该处理单元用于进行过滤环节的处理工作。也可以预设各环节对应的处理单元组中处理单元的数量均为一个,再在内存转储过程中,通过对各处理单元组的负载状况的检测动态地调整各处理单元组中处理单元的数量。值得注意的是,内存转储处理装置检查各处理单元组的负载状况, 并调整各处理单元组中处理单元的数量的步骤可以在内存转储过程中进行,与上述内存转储的各步骤不具有必然的时序关系。在本实施例中,优选地,步骤40内存转储处理装置检测各处理单元组的负载状况,生成检测结果,具体可以包括内存转储处理装置检测各处理单元组处理设定数量内存块对应环节的平均时间, 作为检测结果。通过对各处理单元组处理设定数量内存块对应环节的平均时间进行检测,作为检测结果,以反映各处理单元的负载情况,操作简单,易于实现。在本实施例中,当后续处理环节为写磁盘环节时,则对第一环节处理完成后的后续处理环节,调用第一处理单元组之外的各处理单元组分别进行处理,以将内存块写入存储设备的操作具体可以包括如下步骤内存转储处理装置调用写磁盘环节对应的处理单元组,根据磁盘I/O的数量和内存块的编号进行写磁盘环节处理,将内存块通过磁盘I/O写入存储设备。在实际应用中,磁盘I/O的数量可能为多个,通过多个磁盘I/O将内存块写入存储设备时,可以根据磁盘I/O的数量和内存块的编号进行写磁盘环节处理,以保证内存块在存储设备中的存储顺序。在本实施例中,优选地,根据磁盘I/O的数量和内存块的编号进行写磁盘环节处理,将内存块通过磁盘I/O写入存储设备,具体可以包括如下步骤对内存块的编号和磁盘I/O的数量取模,根据取模结果将内存块通过对应的磁盘 I/O写入存储设备。具体的,例如,内存块的编号为1-1024,磁盘I/O的数量为2个,编号为0和1,则 1号内存块的编号1,与2取模,取模结果为1,则将1号内存块通过1号磁盘I/O写入存储设备,2号内存块的编号为2,与2取模,取模结果为0,则将2号内存块通过0号磁盘写入存储设备。在本实施例中,在步骤10内存转储处理装置调用第一处理单元组对各内存块的内存转储处理的第一环节进行处理,之前,具体还可以包括划分内存块的步骤步骤60、内存转储处理装置根据待写入磁盘I/O的带宽将内存划分为至少两个内存块。根据写入磁盘I/O的带宽对内存进行划分,可以避免磁盘I/O的拥塞而导致的内存转储性能的下降。在本实施例中,优选地,步骤60内存转储处理装置根据待写入磁盘I/O的带宽将内存划分为至少两个内存块,具体可以包括步骤601、内存转储处理装置根据待写入磁盘I/O的带宽计算内存块的容量,其中,内存块经过写磁盘环节之前各环节处理后的容量不大于磁盘I/O的带宽;步骤602、内存转储处理装置根据计算得到的内存块容量对内存进行划分。如写入磁盘I/O的带宽为20M/s,过滤环节的比率为50 %和压缩环节的比率为 50%, 20/50% /50%= 80M,则划分的内存块的容量大小为80M,根据该内存块容量对内存进行划分,可以有效利用磁盘I/O的带宽。实施例四图4为本发明实施例四提供的内存转储处理装置结构示意图。如图4所示,本实施例提供的内存转储处理装置具体可以实现本发明任意实施例提供的内存转储处理方法, 但并不以此为限。本实施例提供的内存转储处理装置包括启动处理模块11和后续处理模块12。启动处理模块11用于调用第一处理单元组对各内存块的内存转储处理的第一环节进行处理。本实施例所采用的技术方案中,内存转储处理装置可以预先为每个环节分配对应的处理单元组13,每处理单元组中处理单元的数量也可以根据处理单元的实际处理速度来分配,可以为一个或多个。后续处理模块12用于对第一环节处理完成后的后续处理环节,调用第一处理单元组之外的各处理单元组分别进行处理,以将内存块写入存储设备,后续处理环节为已处理环节的下一环节。其中,各处理单元组对应处理内存转储处理中的一个环节。本实施例提供的内存转储处理装置,通过启动处理模块11的设置,调用第一处理单元组对各内存块的第一环节进行处理,可以逐个触发对各内存块的转储处理,因此实现将各内存块串行通过磁盘I/O写入存储设备,避免了磁盘I/O传输的瞬时峰值流量,存储设备的驱动程序也无需为可重入的,提高了内存转储性能。另外,本实施例通过后续处理模块 12的设置,对各内存块的后续处理环节,调用各对应组的处理单元分别进行处理,可以实现各处理单元组13以流水方式对各内存块的各环节的处理,提高了处理单元的利用效率,避免了资源浪费。实施例五图5为本发明实施例五提供的内存转储处理装置结构示意图。在本实施例中,各内存块的各环节对应设置有存储位,用于存储处理状态标识,处理状态标识具体用以指示某一内存块的某一环节是否已经处理完成。存储位具体可以设置在内存15的预留存储区域中,该预留存储区域在系统正常工作时不调用,只有在系统崩溃需要进行内存转储时,才使用该预留存储区域中的存储位存储处理状态标识。存储位也可以设置在其他存储单元中,在系统崩溃时可以用以存储位存储处理状态标识即可,不以本实施例为限。本实施例提供内存转储处理装置中的后续处理模块12具体可以包括后续环节处理单元121和存储位更新单元122。后续环节处理单元121用于当根据各内存块各存储位的处理状态标识识别到后续处理环节时,调用对应的处理单元组进行处理。存储位更新单元122用于在内存块当前的后续处理环节处理完成后,更新内存块对应的处理状态标识, 以将下一个环节更新为后续处理环节。通过处理状态标识的设置,在系统崩溃的环境下,避免了应用系统信号量进行流水处理中各环节同步而引起的错误,提高了内存转储处理的正确性,进一步提高了内存转储性能。流水处理中各环节的同步也可以通过队列、堆栈等数据结构来实现,不以本实施例为限。在本实施例中,启动处理模块11具体可以包括编号单元111和启动单元112,编号单元111用于按照各内存块的顺序对内存块进行编号。启动单元112用于调用第一处理单元组按照编号顺序对各内存块的内存转储处理的第一环节进行处理。通过编号单元111按照各内存块的顺序对内存块进行编号,并通过启动单元112 调用第一处理单元组按照编号顺序对各内存块的第一环节进行处理,实现对各内存块的后续处理环节也是按照内存块的顺序进行,将内存块写入存储设备14后不需要进行特殊处理就可以还原内存中的文件数据。在本实施例中,内存转储处理装置具体还包括负载检测模块17和负载调整模块 18,负载检测模块17用于检测各处理单元组的负载状况,生成检测结果。负载调整模块18 用于根据检测结果动态调整各处理单元组中处理单元的数量。通过负载检测模块17对各处理单元组的负载状况的检测,负载调整模块18能够对各环节动态分配处理单元,保持了处理过程的平衡性,避免出现瓶颈,也有效地利用了处
理资源。在本实施例中,优选地,负载检测模块17可以检测各处理单元组处理设定数量内存块对应环节的平均时间,作为检测结果。通过对各组处理单元处理设定数量内存块对应环节的平均时间进行检测,作为检测结果,以反映各处理单元的负载情况,操作简单,易于实现。在本实施例中,后续环节处理单元121至少包括写磁盘处理子单元1211。写磁盘处理子单元1211用于当根据各内存块各存储位的处理状态标识识别到后续处理环节,且后续处理环节为写磁盘环节时,调用写磁盘环节对应的处理单元组进行处理,且指示根据磁盘I/O的数量和内存块的编号进行写磁盘环节处理,将内存块通过磁盘I/O写入存储设备14。
在实际应用中,磁盘I/O的数量可能为多个,通过多个磁盘I/O将内存块写入存储设备14时,可以通过写磁盘处理子单元1211指示写磁盘环节对应的处理单元组13根据磁盘I/O的数量和内存块的编号进行写磁盘环节处理,以保证内存块在存储设备14中的存储顺序。在本实施例中,内存转储处理装置还可以包括内存划分模块16,内存划分模块16 用于根据待写入磁盘I/O的带宽将内存1 5划分为至少两个内存块。根据写入磁盘I/O的带宽对内存1 5进行划分,可以避免磁盘I/O的拥塞而导致的内存转储性能的下降。实施例六图6为本发明实施例六提供的内存转储系统结构示意图,如图6所示,本实施例提供的内存转储系统包括内存15和至少两个处理单元23,还包括本发明任意实施例提供的内存转储处理装置21。本实施例提供内存转储系统中通过内存转储处理装置21调用处理单元23对内存15进行转储的工作过程具体可以参照上述实施例,此不再赘述。本实施例提供的内存转储系统,可以逐个触发对各内存块的转储处理,因此实现将各内存块串行通过磁盘I/O写入存储设备14,避免了磁盘I/O传输的瞬时峰值流量,存储设备14的驱动程序也无需为可重入的,提高了内存转储性能。也可以实现各处理单元组 13以流水方式对各内存块的各环节的处理,提高了处理单元的利用效率,避免了资源浪费。本发明实施例提供的内存转储处理方法和装置及内存转储系统,以流水方式实现多处理单元合作对内存块串行转储,将峰值的磁盘I/O流量分流到了各个环节,避免了磁盘I/O传输的瞬时峰值流量,存储设备的驱动程序也无需为可重入的,提高了内存转储性能。实现了对内存文件的顺序转储,对于多磁盘I/O提供了简单的处理原则。根据各环节的负载情况动态地调整各组处理单元的数量,避免了瓶颈问题,有效地利用了系统资源。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换; 而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
权利要求
1.一种内存转储处理方法,其特征在于,包括调用第一处理单元组对各内存块的内存转储处理的第一环节进行处理;对所述第一环节处理完成后的后续处理环节,调用所述第一处理单元组之外的各处理单元组分别进行处理,以将内存块写入存储设备,所述后续处理环节为已处理环节的下一环节;其中,所述各处理单元组对应处理内存转储处理中的一个环节。
2.根据权利要求1所述的内存转储处理方法,其特征在于,对所述第一环节处理完成后的后续处理环节,调用所述第一处理单元组之外的各处理单元组分别进行处理包括当识别到内存块存在后续处理环节时,调用对应的处理单元组进行处理,且在处理完成后,将下一个环节更新为后续处理环节。
3.根据权利要求2所述的内存转储处理方法,其特征在于,各内存块的各环节对应设置有存储位,用于存储处理状态标识,则当识别到内存块存在后续处理环节时,调用对应的处理单元组进行处理,且在处理完成后,将下一个环节更新为后续处理环节包括当根据各内存块各存储位的处理状态标识识别到后续处理环节时,调用对应的处理单元组进行处理;在内存块当前的后续处理环节处理完成后,更新内存块对应的处理状态标识,以将下一个环节更新为后续处理环节。
4.根据权利要求1或2或3所述的内存转储处理方法,其特征在于,调用第一处理单元组对各内存块的内存转储处理的第一环节进行处理包括按照各内存块的顺序对内存块进行编号;调用第一处理单元组按照所述编号顺序对各内存块的内存转储处理的第一环节进行处理。
5.根据权利要求1或2或3所述的内存转储处理方法,其特征在于,还包括检测各处理单元组的负载状况,生成检测结果;根据所述检测结果动态调整各处理单元组中处理单元的数量。
6.根据权利要求5所述的内存转储处理方法,其特征在于,检测各处理单元组的负载状况,生成检测结果包括检测各处理单元组处理设定数量内存块对应环节的平均时间,作为检测结果。
7.根据权利要求4所述的内存转储处理方法,其特征在于,当后续处理环节为写磁盘环节时,则所述对所述第一环节处理完成后的后续处理环节,调用所述第一处理单元组之外的各处理单元组分别进行处理,以将内存块写入存储设备包括调用写磁盘环节对应的处理单元组,根据磁盘I/O的数量和所述内存块的编号进行写磁盘环节处理,将所述内存块通过磁盘I/O写入存储设备。
8.根据权利要求7所述的内存转储处理方法,其特征在于,根据磁盘I/O的数量和所述内存块的编号进行写磁盘环节处理,将所述内存块通过磁盘I/O写入存储设备包括对所述内存块的编号和所述磁盘I/O的数量取模,根据取模结果将所述内存块通过对应的磁盘I/O写入存储设备。
9.根据权利要求1所述的内存转储处理方法,其特征在于,在调用第一处理单元组对各内存块的内存转储处理的第一环节进行处理之前,还包括根据待写入磁盘I/O的带宽将内存划分为至少两个内存块。
10.根据权利要求9所述的内存转储处理方法,其特征在于,根据待写入磁盘I/O的带宽将内存划分为至少两个内存块包括根据待写入磁盘I/O的带宽计算内存块的容量,其中,所述内存块经过写磁盘环节之前各环节处理后的容量不大于所述磁盘I/O的带宽;根据计算得到的内存块容量对所述内存进行划分。
11.根据权利要求1所述的内存转储处理方法,其特征在于所述环节包括预处理环节、过滤环节、压缩环节和写磁盘环节;所述预处理环节、过滤环节、压缩环节和写磁盘环节顺序处理;所述第一环节为所述预处理环节,所述后续处理环节为所述过滤环节、所述压缩环节或所述写磁盘环节。
12.—种内存转储处理装置,其特征在于,包括启动处理模块,用于调用第一处理单元组对各内存块的内存转储处理的第一环节进行处理;后续处理模块,用于对所述第一环节处理完成后的后续处理环节,调用所述第一处理单元组之外的各处理单元组分别进行处理,以将内存块写入存储设备,所述后续处理环节为已处理环节的下一环节;其中,所述各处理单元组对应处理内存转储处理中的一个环节。
13.根据权利要求12所述的内存转储处理装置,其特征在于,各内存块的各环节对应设置有存储位,用于存储处理状态标识,且所述后续处理模块包括后续环节处理单元,用于当根据各内存块各存储位的处理状态标识识别到后续处理环节时,调用对应的处理单元组进行处理;存储位更新单元,用于在内存块当前的后续处理环节处理完成后,更新内存块对应的处理状态标识,以将下一个环节更新为后续处理环节。
14.根据权利要求12或13所述的内存转储处理装置,其特征在于,所述启动处理模块包括编号单元,用于按照各内存块的顺序对内存块进行编号;启动单元,用于调用第一处理单元组按照所述编号顺序对各内存块的内存转储处理的第一环节进行处理。
15.根据权利要求12或13所述的内存转储处理装置,其特征在于,还包括负载检测模块,用于检测各处理单元组的负载状况,生成检测结果;负载调整模块,用于根据所述检测结果动态调整各处理单元组中处理单元的数量。
16.根据权利要求14所述的内存转储处理装置,其特征在于所述后续环节处理单元至少包括写磁盘处理子单元,用于当根据各内存块各存储位的处理状态标识识别到后续处理环节,且后续处理环节为写磁盘环节时,调用写磁盘环节对应的处理单元组进行处理,且指示根据磁盘I/O的数量和所述内存块的编号进行写磁盘环节处理,将所述内存块通过磁盘I/O写入存储设备。
17.根据权利要求12所述的内存转储处理装置,其特征在于,还包括内存划分模块,用于根据待写入磁盘I/O的带宽将内存划分为至少两个内存块。
18. 一种内存转储系统,包括内存和至少两个处理单元,其特征在于,还包括权利要求 12-17任一所述的内存转储处理装置。
全文摘要
本发明实施例提供一种内存转储处理方法和装置及内存转储系统,该方法包括调用第一处理单元组对各内存块的内存转储处理的第一环节进行处理;对第一环节处理完成后的后续处理环节,调用第一处理单元组之外的各处理单元组分别进行处理,以将内存块写入存储设备。本发明实施例提供的内存转储处理方法和装置及内存转储系统,可以实现流水方式对各内存块的各环节进行处理,避免磁盘I/O传输的瞬时峰值流量,提高内存转储性能。
文档编号G06F12/06GK102203718SQ201180000579
公开日2011年9月28日 申请日期2011年5月26日 优先权日2011年5月26日
发明者张超, 李俊 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1