终端和任务执行方法

文档序号:6381279阅读:348来源:国知局
专利名称:终端和任务执行方法
技术领域
本发明涉及终端技术领域,具体而言,涉及一种终端和一种任务执行方法。
背景技术
分布式计算是一门计算机科学,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。现有终端在计算时一般采用如下几种计算方法:方法一、计算任务作为一个整体执行,当计算任务由于各种原因需要中途退出时,则放弃已有计算结果。当恢复执行任务时,则完全重新开始计算。方法二、计算任务分为若干个节点步骤,然后进行计算,当计算任务由于各种原因需要中途退出时,系统保存上一个计算步骤的结果。当任务恢复执行时,则在保存的已有计算结果的基础上,继续执行。针对方法一,已经执行的计算结果在中途退出任务的情况下,没有保存,计算资源白白浪费,计算周期拖长,影响了整个计算任务的执行效率。针对方法二,已经执行的计算任务在中途退出情况下,在一定程度上进行了计算数据保存,减少了计算资源的浪费和保持计算周期控制在一定范围内。在节点步骤的计算量小时,方法二的计算是可行的。但在某些节点步骤的计算量大且执行周期较长时,中途退出任务仅保存上一计算步骤结果,则会浪费较多计算资源,使整体执行成本提高。因此,需要一种新的任务执行技术,可以在中途退出计算任务的情况下,保存已经执行的所有计算数据,从而避免计算资源的浪费,保证整个计算任务的执行效率。

发明内容
本发明正是基于上述问题,提出了一种新的任务执行技术,可以在中途退出计算任务的情况下,保存已经执行的所有计算数据,从而避免计算资源的浪费,保证整个计算任务的执行效率。有鉴于此,本发明提出了一种终端,包括:分配单元,用于在接收到计算任务指令时,为计算任务分配一个托管内存;数据处理单元,用于将在执行所述计算任务时产生的临时计算数据存放于所述空闲内存,所述空闲内存和所述托管内存分别是所述终端的物理内存中的指定存储区域;存储单元,用于在检测到有中断指令到达时,镜像保存所述空闲内存中的所述临时计算数据。在该技术方案中,当中途退出执行的计算任务时,可以将所有已经计算的数据进行镜像保存,从而避免了因不能保存计算数据造成的资源浪费,保证整个计算任务的执行效率。在上述技术方案中,优选地,还包括:检测单元,用于检测所述存储单元中是否保存有与所述计算任务相关联的数据镜像;以及数据导入单元,用于在检测到所述存储单元中保存有与所述计算任务相关联的数据镜像时,将所述相关联的数据镜像导入到所述托管内存,根据导入的数据镜像继续执行所述计算任务。在该技术方案中,在存储单元保存了计算任务的情况下,可以将保存的镜像数据导入托管内存,接着保存的数据继续执行计算。这样,就算中途退出,也不会影响整体计算任务的执行效率。在上述技术方案中,优选地,还包括:任务分割单元,用于在未检测到所述存储单元中保存有与所述计算任务相关联的数据镜像时,将所述计算任务分割为多个按顺序执行的任务节点。在该技术方案中,如果检测到计算任务为全新的计算任务,则将计算任务分割为多个顺序执行的节点步骤,这样,可以方便预测计算任务的资源占用情况,根据预测情况为其分配托管内存,并在托管内存中为其标记出初始索引及末尾索引,从而防止其内存区域被其他应用占用,并根据索引将临时计算数据存放到空闲内存中的指定区域。在上述技术方案中,优选地,还包括:设置单元,预设将所述空闲内存中的所述临时计算数据自动保存至所述存储单元的时间周期;以及数据清除单元,在所述计算任务执行完毕时,自动清除所述存储单元中已经保存的数据镜像。在该技术方案中,可以预设自动保存的时间,比如用户设置自动保存的时间为一分钟,则每隔一分钟,空闲内存中的数据就会被保存到存储单元。同时用户还可以预设保存的数据镜像个数,即存储单元中可以保存最近几次的数据镜像文件,比如用户设置为2,则保存上一次和此次的数据镜像文件,也就是之前的数据镜像文件会被最新保存的数据不断的覆盖掉,这样既节省了存储空间,又避免了因只保存最近一次数据可能造成的数据丢失,使得即使在最近一次保存数据因某种原因出现问题时,仍旧可以通过上一次保存的数据继续进行计算。在计算结束时,清除保存的数据镜像,节省了存储空间,避免占用过多的存储资源。在上述技术方案中,优选地,所述托管内存中保存有所述空闲内存的索引地址,所述数据处理单元根据所述索引地址将所述临时计算数据存放至所述空闲内存。在该技术方案中,根据计算任务的初始索引和末尾索引来判断计算任务占用的空间,并为其在物理内存中保留空间,防止其他应用占用空间。根据本发明的又一方面,还提供了一种任务执行方法,包括:步骤202,用于在接收到计算任务指令时,为计算任务分配一个托管内存;步骤204,用于将在执行所述计算任务时产生的临时计算数据存放于所述空闲内存,所述空闲内存和所述托管内存是物理内存中的指定存储区域;步骤206,在检测到有中断指令到达时,镜像保存所述空闲内存中的所述临时计算数据单元。在该技术方案中,当中途退出执行的计算任务时,可以将所有已经计算的数据进行镜像保存,从而避免了因不能保存计算数据造成的资源浪费,保证整个计算任务的执行效率。在上述技术方案中,优选地,所述步骤202还包括:检测所述存储单元中是否保存有与所述计算任务相关联的数据镜像;以及在检测到所述存储单元中保存有与所述计算任务相关联的数据镜像时,将所述相关联的数据镜像导入到所述托管内存,根据导入的数据镜像继续执行所述计算任务。
在该技术方案中,在存储单元保存了计算任务的情况下,可以将保存的镜像数据导入托管内存,接着保存的数据继续执行计算。这样,就算中途退出,也不会影响整体计算任务的执行效率。在上述技术方案中,优选地,所述步骤202还包括:在未检测到所述存储单元中保存有与所述计算任务相关联的数据镜像时,将所述计算任务分割为多个按顺序执行的任务节点。在该技术方案中,如果检测到计算任务为全新的计算任务,则将计算任务分割为多个顺序执行的节点步骤,这样,可以方便预测计算任务的资源占用情况,根据预测情况为其分配托管内存,并在托管内存中为其标记出初始索引及末尾索引,并根据索引将临时计算数据存放到空闲内存中的指定区域。在上述技术方案中,优选地,所述步骤206具体包括:预设将所述空闲内存中的所述临时计算数据自动保存至所述存储单元的时间周期;以及在所述计算任务执行完毕时,自动清除所述存储单元中已经保存的数据镜像。在该技术方案中,可以预设自动保存的时间,比如用户设置自动保存的时间为一分钟,则每隔一分钟,空闲内存中的数据就会被保存到存储单元。同时用户还可以预设保存的数据镜像个数,即存储单元中可以保存最近几次的数据镜像文件,比如用户设置为2,则保存上一次和此次的数据镜像文件,也就是之前的数据镜像文件会被最新保存的数据不断的覆盖掉,这样既节省了存储空间,又避免了因只保存最近一次数据可能造成的数据丢失,使得即使在最近一次保存数据因某种原因出现问题时,仍旧可以通过上一次保存的数据继续进行计算。在计算结束时,清除保存的数据镜像,节省了存储空间,避免占用过多的存储资源。在上述技术方案中,优选地,所述托管内存中保存有所述空闲内存的索引地址,根据所述索引地址将所述临时计算数据存放至所述空闲内存。在该技术方案中,根据计算任务的初始索引和末尾索引来判断计算任务占用的空间,并为其在物理内存中保留空间,防止其他应用占用空间。通过以上技术方案,在存在中途退出计算任务的情况下,可以保存已经执行的所有计算数据,从而避免计算资源的浪费,保证整个计算任务的执行效率。


图1示出了根据本发明的实施例的终端的框图;图2示出了根据本发明的实施例的任务执行方法的流程图;图3示出了根据本发明的实施例的任务执行方法的具体流程图;图4示出了根据本发明的实施例的终端的数据存储结构示意图。
具体实施例方式为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式
对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。图1示出了根据本发明的实施例的终端的框图。如图1所示,根据本发明的实施例的终端100包括:分配单元102,用于在接收到计算任务指令时,为计算任务分配一个托管内存;数据处理单元104,用于将在执行所述计算任务时产生的临时计算数据存放于所述空闲内存,所述空闲内存和所述托管内存分别是终端100的物理内存中的指定存储区域;存储单元106,用于在检测到有中断指令到达时,镜像保存所述空闲内存中的所述临时计算数据。该存储单元106可以是目前的任何存储介质。在该技术方案中,当中途退出执行的计算任务时,可以将所有已经计算的数据进行镜像保存,从而避免了因不能保存计算数据造成的资源浪费,保证整个计算任务的执行效率。在上述技术方案中,优选地,还包括:检测单元108,用于检测所述存储单元中是否保存有与所述计算任务相关联的数据镜像;以及数据导入单元110,用于在检测到所述存储单元中保存有与所述计算任务相关联的数据镜像时,将所述相关联的数据镜像导入到所述托管内存,根据导入的数据镜像继续执行所述计算任务。在该技术方案中,在存储单元保存了计算任务的情况下,可以将保存的镜像数据导入托管内存,接着保存的数据继续执行计算。这样,就算中途退出,也不会影响整体计算任务的执行效率。在上述技术方案中,优选地,还包括:任务分割单元112,用于在未检测到所述存储单元中保存有与所述计算任务相关联的数据镜像时,将所述计算任务分割为多个按顺序执行的任务节点。在该技术方案中,如果检测到计算任务为全新的计算任务,则将计算任务分割为多个顺序执行的节点步骤,这样,可以方便预测计算任务的资源占用情况,根据预测情况为其分配托管内存,并在托管内存中为其标记出初始索引及末尾索引,从而防止标记的内存区域被其他应用占用,并根据索引将临时计算数据存放到空闲内存中的指定区域。在上述技术方案中,优选地,还可以包括:设置单元114,预设将所述托管内存中的所述临时计算数据自动保存至所述存储单元的时间周期;以及数据清除单元116,在所述计算任务执行完毕时,自动清除所述存储单元中已经保存的数据镜像。在该技术方案中,可以预设自动保存的时间,比如用户设置自动保存的时间为一分钟,则每隔一分钟,空闲内存中的数据就会被保存到存储单元。同时用户还可以预设保存的数据镜像个数,即存储单元中可以保存最近几次的数据镜像文件,比如用户设置为2,则保存上一次和此次的数据镜像文件,也就是之前的数据镜像文件会被最新保存的数据不断的覆盖掉,这样既节省了存储空间,又避免了因只保存最近一次数据可能造成的数据丢失,使得即使在最近一次保存数据因某种原因出现问题时,仍旧可以通过上一次保存的数据继续进行计算。在计算结束时,清除保存的数据镜像,节省了存储空间,避免占用过多的存储资源。在上述技术方案中,优选地,所述托管内存中保存有所述空闲内存的索引地址,所述数据处理单元104根据所述索引地址将所述临时计算数据存放至所述空闲内存。
在该技术方案中,根据计算任务的初始索引和末尾索引来判断计算任务占用的空间,并为其在物理内存中保留空间,防止其他应用占用空间。图2示出了根据本发明的实施例的任务执行方法的流程图。如图2所示,根据本发明的实施例的任务执行方法包括:步骤202,用于在接收到计算任务指令时,为计算任务分配一个托管内存;步骤204,用于将在执行所述计算任务时产生的临时计算数据存放于所述空闲内存,所述空闲内存和所述托管内存是物理内存中的指定存储区域;步骤206,在检测到有中断指令到达时,镜像保存所述空闲内存中的所述临时计算数据单元。在该技术方案中,当中途退出执行的计算任务时,可以将所有已经计算的数据进行镜像保存,从而避免了因不能保存计算数据造成的资源浪费,保证整个计算任务的执行效率。在上述技术方案中,优选地,所述步骤202还可以包括:检测所述存储单元中是否保存有与所述计算任务相关联的数据镜像;以及在检测到所述存储单元中保存有与所述计算任务相关联的数据镜像时,将所述相关联的数据镜像导入到所述托管空间,根据导入的数据镜像继续执行所述计算任务。在该技术方案中,在存储单元保存了计算任务的情况下,可以将保存的镜像数据导入托管空间,接着保存的数据继续执行计算。这样,就算中途退出,也不会影响整体计算任务的执行效率。在上述技术方案中,优选地,所述步骤202还可以包括:在未检测到所述存储单元中保存有与所述计算任务相关联的数据镜像时,将所述计算任务分割为多个按顺序执行的任务节点。在该技术方案中,如果检测到计算任务为全新的计算任务,则将计算任务分割为多个顺序执行的节点步骤,这样,可以方便预测计算任务的资源占用情况,根据预测情况为其分配托管内存,并在托管内存中为其标记出初始索引及末尾索引,从而防止标记的内存区域被其他应用占用,并根据索引将临时计算数据存放到空闲内存中的指定区域。在上述技术方案中,优选地,所述步骤206具体包括:预设将所述托管内存中的所述临时计算数据自动保存至所述存储单元的时间周期;以及在所述计算任务执行完毕时,自动清除所述存储单元中已经保存的数据镜像。在该技术方案中,可以预设自动保存的时间,比如用户设置自动保存的时间为一分钟,则每隔一分钟,空闲内存中的数据就会被保存到存储单元。同时用户还可以预设保存的数据镜像个数,即存储单元中可以保存最近几次的数据镜像文件,比如用户设置为2,则保存上一次和此次的数据镜像文件,也就是之前的数据镜像文件会被最新保存的数据不断的覆盖掉,这样既节省了存储空间,又避免了因只保存最近一次数据可能造成的数据丢失,使得即使在最近一次保存数据因某种原因出现问题时,仍旧可以通过上一次保存的数据继续进行计算。在计算结束时,清除保存的数据镜像,节省了存储空间,避免占用过多的存储资源。在上述技术方案中,优选地,所述托管内存中保存有所述空闲内存的索引地址,根据所述索引地址将所述临时计算数据存放至所述空闲内存。在该技术方案中,根据计算任务的初始索引和末尾索引来判断计算任务占用的空间,并为其在物理内存中保留空间,防止其他应用占用空间。图3示出了根据本发明的实施例的任务执行方法的具体流程图。如图3所示,本发明的实施例的任务执行方法的具体流程如下:步骤302,终端系统发出执行计算任务指令。步骤304,为计算任务初始化内存托管环境。步骤306,判断存储介质中是否有已保存的托管环境数据镜像。如果判断结果为是,进入步骤308 ;如果判断结果为否,进入步骤310。其中,存储介质可以是硬盘、闪存等存储介质。步骤308,将存储介质保存的托管环境数据镜像导入到计算任务的托管环境中。步骤310,将计算任务分割为多个顺序执行的节点步骤。这样,可以方便预测计算任务的资源占用情况,根据预测情况为其分配托管内存,并在托管内存中为其标记出初始索引及末尾索引,从而防止标记的内存区域被其他应用占用,并根据索引将临时计算数据存放到空闲内存中的指定区域。步骤312,开始执行计算。步骤314,每隔一定时间周期保存一次最新的托管环境的数据镜像到存储介质上。用户可以预设自动保存的时间,比如用户设置自动保存的时间为一分钟,则每隔一分钟,空闲内存中的数据就会被保存到存储单元。同时用户还可以预设保存的数据镜像个数,即存储单元中可以保存最近几次的数据镜像文件,比如用户设置为2,则保存上一次和此次的数据镜像文件,也就是之前的数据镜像文件会被最新保存的数据不断的覆盖掉,这样既节省了存储空间,又避免了因只保存最近一次数据可能造成的数据丢失,使得即使在最近一次保存数据因某种原因出现问题时,仍旧可以通过上一次保存的数据继续进行计算。在计算结束时,清除保存的数据镜像,节省了存储空间,避免占用过多的存储资源。步骤316,判断是否收到中途退出命令。步骤318,当收到中途退出命令时,保存最新镜像数据到存储介质,并退出计算任务。步骤320,在任务无中途退出情况下,继续执行,直到执行完毕。步骤322,任务执行完毕后清除保存的镜像数据。从而节省存储空间,避免占用过多的存储资源。图4示出了根据本发明的实施例的终端的数据存储结构示意图。如图4所示,在终端的物理内存400中为计算任务分配了一个托管环境402(对应于图1所示实施例中的托管内存),在接收到计算任务指令时,为计算任务初始化内存托管环境402,同时判断存储介质406 (对应于图1中的存储单元106)中是否存在保存的托管环境数据镜像。如果存在,则将存储介质406保存的托管环境数据镜像导入到计算任务的托管环境402中,开始执行计算。如果不存在,则将计算任务分割为多个顺序执行的节点步骤,这样,可以方便预测计算任务的资源占用情况,根据预测情况为其分配托管环境402,并在托管环境402中为其标记出初始索引及末尾索引,从而防止标记的内存区域被其他应用占用,并根据索引将临时计算数据存放到物理内存400中的空闲内存404中。当收到中途退出命令时,将空闲内存404中的最新数据镜像保存到存储介质406,并退出计算任务。以上结合附图详细说明了本发明的技术方案,由于在相关技术中,在中途退出计算任务的情况下,不能保存所有的计算数据,从而造成了资源的浪费和整体计算成本的增力口。因此,本发明提供了一种终端和一种任务执行方法。通过本发明的技术方案,在中途退出计算任务的情况下,可以将所有的已计算数据进行保存,在恢复执行任务时,可以接着已保存的数据继续执行计算,从而避免了计算资源的浪费,缩短了计算的整体周期,提高了执行效率。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种终端,其特征在于,包括: 分配单元,用于在接收到计算任务指令时,为计算任务分配一个托管内存; 数据处理单元,用于将在执行所述计算任务时产生的临时计算数据存放于所述空闲内存,所述空闲内存和所述托管内存分别是所述终端的物理内存中的指定存储区域; 存储单元,用于在检测到有中断指令到达时,镜像保存所述空闲内存中的所述临时计算数据。
2.根据权利要求1所述的终端,其特征在于,还包括: 检测单元,用于检测所述存储单元中是否保存有与所述计算任务相关联的数据镜像;数据导入单元,用于在检测到所述存储单元中保存有与所述计算任务相关联的数据镜像时,将所述相关联的数据镜像导入到所述托管内存,根据导入的数据镜像继续执行所述计算任务。
3.根据权利要求2所述的终端,其特征在于,还包括: 任务分割单元,用于在未检测到所述存储单元中保存有与所述计算任务相关联的数据镜像时,将所述计算任务分割为多个按顺序执行的任务节点。
4.根据权利要求1所述的终端,其特征在于,还包括: 设置单元,用于预设将所述空闲内存中的所述临时计算数据自动保存至所述存储单元的时间周期;以及 数据清除单元,用于在所述计算任务执行完毕时,自动清除所述存储单元中已经保存的数据镜像。
5.根据权利要求1至4中`任一项所述的终端,其特征在于,所述托管内存中保存有所述空闲内存的索引地址,所述数据处理单元根据所述索引地址将所述临时计算数据存放至所述空闲内存。
6.—种任务执行方法,其特征在于,包括: 步骤202,在接收到计算任务指令时,为计算任务分配一个托管内存; 步骤204,将在执行所述计算任务时产生的临时计算数据存放于所述空闲内存,所述空闲内存和所述托管内存分别是所述终端的物理内存中的指定存储区域; 步骤206,在检测到有中断指令到达时,镜像保存所述空闲内存中的所述临时计算数据单元。
7.根据权利要求6所述的任务执行方法,其特征在于,所述步骤202还包括: 检测所述存储单元中是否保存有与所述计算任务相关联的数据镜像;以及 在检测到所述存储单元中保存有与所述计算任务相关联的数据镜像时,将所述相关联的数据镜像导入到所述托管内存,根据导入的数据镜像继续执行所述计算任务。
8.根据权利要求7所述的任务执行方法,其特征在于,所述步骤202还包括: 在未检测到所述存储单元中保存有与所述计算任务相关联的数据镜像时,将所述计算任务分割为多个按顺序执行的任务节点。
9.根据权利要求6所述的任务执行方法,其特征在于,所述步骤206具体包括: 预设将所述空闲内存中的所述临时计算数据自动保存至所述存储单元的时间周期;以及 在所述计算任务执行完毕时,自动清除所述存储单元中已经保存的数据镜像。
10.根据权利要求6至9中任一项所述的任务执行方法,其特征在于,所述托管内存中保存有所述空闲内存的 索引地址,根据所述索引地址将所述临时计算数据存放至所述空闲内存。
全文摘要
本发明提出了一种终端,包括分配单元,用于在接收到计算任务指令时,为计算任务分配一个托管内存;数据处理单元,用于将在执行所述计算任务时产生的临时计算数据存放于所述空闲内存,所述空闲内存和所述托管内存分别是所述终端的物理内存中的指定存储区域;存储单元,用于在检测到有中断指令到达时,镜像保存所述空闲内存中的所述临时计算数据。相应地,本发明还提出了一种任务执行方法。通过本发明的技术方案,在中途退出计算任务的情况下,可以将所有的已计算数据进行保存,在恢复执行任务时,可以接着已保存的数据继续执行计算,从而避免了计算资源的浪费,缩短了计算的整体周期,提高了执行效率。
文档编号G06F9/48GK103106110SQ20121045736
公开日2013年5月15日 申请日期2012年11月14日 优先权日2012年11月14日
发明者田睿, 张弛, 吴振宇 申请人:深圳中兴网信科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1