System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种内存分配方法及装置制造方法及图纸_技高网

一种内存分配方法及装置制造方法及图纸

技术编号:40833267 阅读:4 留言:0更新日期:2024-04-01 14:57
一种内存分配方法,包括:获取目标任务的标记信息,其中,目标任务的标记信息用于表征目标任务的数据可靠性要求;在目标任务的标记信息为第一信息的情况下,将目标任务在运行过程中产生的数据分别写入至内存的镜像区域中的主内存和镜像内存中;其中,主内存和镜像内存中存储的数据互为备份;在目标任务的标记信息为第二信息的情况下,将目标任务在运行过程中产生的数据写入至内存的非镜像区域内,第一信息表征的数据可靠性要求高于第二信息表征的数据可靠性要求。预先对服务器中的任务的数据可靠性要求进行标记,对高可靠性要求的任务分配镜像内存,既保证了系统运行的可靠性,也提高了内存空间的利用率。

【技术实现步骤摘要】

本申请涉及服务器领域,尤其涉及一种内存分配方法及装置


技术介绍

1、内存是服务器系统中使用数量和故障率最高的部件之一,一条内存出现一次不可纠正错误(uncorrectable error,uce)即可使系统宕机,从而造成数据的丢失,然而若是在硬盘中对数据做备份,则会占用大量的内存,增加了内存的使用成本。


技术实现思路

1、本申请实施例提供了一种内存分配方法及装置,预先对服务器中的进程的可靠性要求进行标记。对高可靠性要求的进程分配镜像内存,既保证了系统运行的可靠性,也提高了内存空间的利用率。

2、第一方面,本申请实施例提供了一种内存分配方法,应用于服务器,该方法包括:获取目标任务的标记信息,其中,目标任务的标记信息用于表征目标任务的数据可靠性要求;在目标任务的标记信息为第一信息的情况下,将目标任务在运行过程中产生的数据分别写入至内存的镜像区域中的主内存和镜像内存中;其中,主内存和镜像内存中存储的数据互为备份;在目标任务的标记信息为第二信息的情况下,将目标任务在运行过程中产生的数据写入至内存的非镜像区域内,第一信息表征的数据可靠性要求高于第二信息表征的数据可靠性要求。

3、在本方案中,目标任务可以包括服务器系统中待执行的进程和正在执行的进程。根据预先标记的目标任务的标记信息,识别目标任务的数据可靠性要求。对于具有高可靠性要求的任务,将该任务执行过程中产生的数据写入到镜像区域的主内存和镜像内存中。对于非高可靠性要求的任务,将该任务执行过程中产生的数据写入到内存的非镜像区域。基于服务器系统中任务的数据可靠性要求不同,在执行任务时,将任务执行过程中产生的数据存储到不同的内存区域中(镜像区域和非镜像区域),既保证了系统运行的可靠性,也提高了内存空间的利用率。

4、在一个可能的实现方式中,在获取目标任务的标记信息之前,该方法还包括:根据目标任务的优先级、目标任务的类型或者与目标任务关联的应用程序,对目标任务进行标记,得到目标任务的标记信息。。

5、也就是说,预先根据目标任务的数据可靠性要求,对目标任务进行标记,得到目标任务的标记信息。使得服务器中的处理器可以根据目标任务的标记信息,确定目标任务的数据可靠性要求,进而根据目标任务的数据可靠性要求为确定将目标任务执行过程中产生的数据存储到镜像区域还是非镜像区域。既保证了系统运行的可靠性,也提高了内存空间的利用率。

6、在一个可能的实现方式中,对目标任务进行标记包括:获取目标任务的第一标识,第一标识用于表征目标任务的优先级;若目标任务的优先级为第一级别,在目标任务的任务描述符中标记上第一信息。

7、也就是说,在确定目标任务的数据可靠要求时,可以根据目标任务在服务器系统中执行的优先级进行确定。目标任务的优先级越高,目标任务的可靠性要求越高。

8、在一个可能的实现方式中,所述目标任务为系统任务,对目标任务进行标记包括:获取目标任务的任务id;若目标任务的任务id存在于预设的核心系统任务表中,在目标任务的任务描述符中标记上第一信息。

9、也就是说,在目标任务为系统任务的情况下,可以通过将目标任务的任务id与核心系统任务表任务id进行比较,确定目标任务是否为核心系统任务。由于核心系统任务决定着整个服务器是否能够正常运行。即,对于核心系统任务的数据可靠性要求高,需要在核心系统任务的任务描述符中标记上第一信息。

10、在一个可能的实现方式中,目标任务为服务器上的应用程序在执行过程中产生的任务,对目标任务进行标记包括:获取与目标任务关联的应用程序的标记信息,在标记信息为第一信息的情况下,在目标任务的任务描符中标记上第一信息。

11、也就是说,在目标任务为应用程序对应的任务时,可以基于应用程序的标记信息确定目标进程的标记信息。通过预先对目标任务的数据可靠性要求进行标记,使得服务器中的处理器可以根据目标任务的标记信息,确定目标任务的数据可靠性要求。进而根据目标任务的数据可靠性要求为确定将目标任务执行过程中产生的数据存储到镜像区域还是非镜像区域。既保证了系统运行的可靠性,也提高了内存空间的利用率。

12、在一个可能的实现方式中,该方法还包括:当所述镜像区域的剩余可使用内存的容量小于第一阈值时,增加所述内存中的第二区域作为镜像区域。

13、也就是说,在服务器系统运行过程中,根据镜像区域的剩余可使用内存的容量动态增加服务器中的镜像内存,提升了内存空间利用率。

14、在一个可能的实现方式中,将目标任务在运行过程中产生的数据分别写入至内存的镜像区域中的主内存和镜像内存中,包括:保存目标任务、主内存、镜像内存之间的关联关系。

15、也就是说,通过保存目标任务、主内存和镜像内存之间的关联关系,使得在主内存发生故障以后,可以通过保存的关联关系找到与主内存互为备份的镜像内存。

16、在一个可能的实现方式中,该方法还包括:在目标任务运行结束以后,删除目标任务在运行过程中,存储在主内存和镜像内存中的数据;删除目标任务、主内存、镜像内存的关联关系。

17、也就是说,在目标任务运行结束以后,释放目标任务运行过程中占用的主内存和镜像内存,以减少对镜像区域中的内存的占用。

18、在一个可能的实现方式中,该方法还包括:当镜像区域的剩余可使用内存的容量大于第二阈值时,回收镜像区域中的第三区域作为内存中的空闲区域。

19、也就是说,在服务器系统运行过程中,根据镜像区域的剩余可使用内存的容量动态减少服务器中的镜像内存,提升了内存空间利用率。

20、第二方面,本申请实施例提供了一种服务器,包括:

21、至少一个存储器,用于存储程序;

22、至少一个处理器,用于执行所述存储器存储的程序,当存储器存储的程序被执行时,处理器用于执行第一方面或第一方面的任一种可能的实现方式所描述的方法。

23、第三方面,本申请实施例提供了一种计算机存储介质,计算机存储介质中存储有指令,当指令在计算机上运行时,使得计算机执行第一方面或第一方面的任一种可能的实现方式所描述的方法。

24、第四方面,本申请实施例提供了一种包含指令的计算机程序产品,当指令在计算机上运行时,使得计算机执行第一方面或第一方面的任一种可能的实现方式所描述的方法。

本文档来自技高网...

【技术保护点】

1.一种内存分配方法,其特征在于,应用于服务器,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,在获取目标任务的标记信息之前,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,所述对所述目标任务进行标记包括:

4.根据权利要求2所述的方法,其特征在于,所述目标任务为系统任务,所述对所述目标任务进行标记包括:

5.根据权利要求2所述的方法,其特征在于,所述目标任务为所述服务器上的应用程序在执行过程中产生的任务,所述对所述目标任务进行标记包括:

6.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:

7.根据权利要求1-6任一项所述的方法,其特征在于,所述将所述目标任务在运行过程中产生的数据分别写入至所述内存的镜像区域中的主内存和镜像内存中,包括:

8.根据权利要求1所述的方法,其特征在于,所述方法还包括:

9.根据权利要求1-8任一项所述的方法,其特征在于,所述方法还包括:

10.一种服务器,其特征在于,包括:

【技术特征摘要】

1.一种内存分配方法,其特征在于,应用于服务器,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,在获取目标任务的标记信息之前,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,所述对所述目标任务进行标记包括:

4.根据权利要求2所述的方法,其特征在于,所述目标任务为系统任务,所述对所述目标任务进行标记包括:

5.根据权利要求2所述的方法,其特征在于,所述目标任务为所述服务器上的应用程序在执行过程中产生的任务,所...

【专利技术属性】
技术研发人员:王为
申请(专利权)人:超聚变数字技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1