管理内存的方法、装置和系统制造方法及图纸

技术编号:19511106 阅读:53 留言:0更新日期:2018-11-21 07:40
提供一种管理内存的方法、装置和系统,能够容易地实现内存资源的共享。该方法包括:请求节点发送第一指示信息,该第一指示信息用于指示该请求节点所需内存的长度;该请求节点接收第二指示信息,该第二指示信息用于指示能够提供远程内存的至少一个贡献节点中的目标贡献节点向该请求节点提供的第一远程内存;该请求节点从能够使用的虚拟地址中,确定与该第一远程内存相对应的第一虚拟地址;及当需要读写指针在该第一虚拟地址范围内的第一数据时,该请求节点发送针对该第一数据的第一数据读写指令,该第一数据读写指令包括第三指示信息,该第三指示信息用于指示该第一远程内存中用于存储该第一数据的存储空间。

【技术实现步骤摘要】
管理内存的方法、装置和系统
本专利技术涉及计算机领域,并且更具体地,涉及管理内存的方法、装置和系统
技术介绍
目前,管理资源的服务器系统根据规模不同,通常由几十台、几百台、甚至上万台计算机服务器节点组成。这些服务器节点大部分都是采用市场上的商用标准服务器,它们拥有各自独立内存等硬件设备。随着云计算模式的不断普及和广为接受,服务器节点需要为云计算服务,因此,应用负载变得越来越多样化,与事务处理和网络服务这样的传统负载相比,新出现的工作负载均是以数据为中心的。这些新的输入输出(IO,Input/Output)密集型的负载运行在大规模集群上(几百或几千台服务器),处理着多种多样的数据(有结构化的、无结构的、多媒体的)。因此,需要一种能够使各服务器节点之间容易地共享内存资源的方法。
技术实现思路
本专利技术实施例提供一种管理内存的方法、装置和系统,能够容易地实现内存资源的共享。第一方面,提供了一种管理内存的方法,该方法包括:内存管理系统中的请求节点发送第一指示信息,该第一指示信息用于指示该请求节点所需内存的长度;接收第二指示信息,该第二指示信息用于指示能够提供远程内存的至少一个贡献节点中的目标贡献节点向该请求节点提供的第一远程内存,其中,该第一远程内存是根据该第一指示信息确定的,该第一远程内存的长度大于或等于该请求节点所需内存的长度;从能够使用的虚拟地址中,确定与该第一远程内存相对应的第一虚拟地址;当需要读写指针在该第一虚拟地址范围内的第一数据时,发送针对该第一数据的第一数据读写指令,该第一数据读写指令包括第三指示信息,该第三指示信息用于指示该第一远程内存中用于存储该第一数据的存储空间,以便于该目标贡献节点根据该第三指示信息,存取该第一数据。在一种可能的实施方式中,该内存管理系统中的请求节点发送第一指示信息包括:内存管理系统中的请求节点获取用于指示该目标贡献节点的贡献节点信息;根据该贡献节点信息,向该目标贡献节点发送第一指示信息;以及该接收第二指示信息包括:接收该目标贡献节点发送的第二指示信息。结合第一方面和第一种可能的实施方式,在第二种可能的实施方式中,该根据该贡献节点信息,向该目标贡献节点发送第一指示信息,包括:根据该贡献节点信息,向该目标贡献节点发送针对第二数据的第二数据写指令,该第二数据写指令包括该第一指示信息;以及该接收该目标贡献节点发送的第二指示信息包括:接收该目标贡献节点发送的用于指示该第二数据存储完成的第二数据写应答,该第二数据写应答包括该第二指示信息。结合第一方面、第一种可能的实施方式和第二种可能的实施方式,在第三种可能的实施方式中,该内存管理系统中的请求节点发送第一指示信息包括:内存管理系统中的请求节点向控制中心发送第一指示信息,以便于该控制中心根据该第一指示信息和该贡献节点能够提供的远程内存的长度,从该贡献节点中确定该目标贡献节点以及该第一远程内存,其中,该贡献节点能够提供的远程内存的长度是该控制中心根据该贡献节点发送的用于指示该贡献节点能够提供的远程内存的长度的第四指示信息确定的;以及该接收第二指示信息包括:接收该控制中心发送的第二指示信息。结合第一方面、第一种可能的实施方式、第二种可能的实施方式和第三种可能的实施方式,在第四种可能的实施方式中,该方法还包括:接收该控制中心发送的用于指示该目标贡献节点的贡献节点信息,以及该发送针对该第一数据的第一数据读写指令,包括:根据该贡献节点信息,向该目标贡献节点发送针对该第一数据的第一数据读写指令。结合第一方面、第一种可能的实施方式、第二种可能的实施方式、第三种可能的实施方式和第四种可能的实施方式,在第五种可能的实施方式中,该发送针对该第一数据的第一数据读写指令,包括:广播针对该第一数据的第一数据读写指令,以便于该贡献节点在确定该存储空间在该贡献节点能够提供的远程内存的范围内后,存取该第一数据。结合第一方面、第一种可能的实施方式、第二种可能的实施方式、第三种可能的实施方式、第四种可能的实施方式和第五种可能的实施方式,在第六种可能的实施方式中,内存管理系统包括至少两个贡献节点,该至少两个贡献节点能够提供的远程内存的物理地址相异。结合第一方面、第一种可能的实施方式、第二种可能的实施方式、第三种可能的实施方式、第四种可能的实施方式、第五种可能的实施方式和第六种可能的实施方式,在第七种可能的实施方式中,该根据该第一远程内存,确定第一虚拟地址,包括:从该请求节点内的本地内存中,确定与该第一远程内存相对应的第一本地内存,根据该第一本地内存,确定第一虚拟地址。结合第一方面、第一种可能的实施方式、第二种可能的实施方式、第三种可能的实施方式、第四种可能的实施方式、第五种可能的实施方式、第六种可能的实施方式和第七种可能的实施方式,在第八种可能的实施方式中,该第一远程内存的长度与该请求节点所需内存的长度相同,以及该第二指示信息用于指示该第一远程内存的起始物理地址;该第一远程内存的长度与该第一数据的长度相同,以及该第三指示信息用于指示该存储空间的起始物理地址。结合第一方面、第一种可能的实施方式、第二种可能的实施方式、第三种可能的实施方式、第四种可能的实施方式、第五种可能的实施方式、第六种可能的实施方式、第七种可能的实施方式和第八种可能的实施方式,在第九种可能的实施方式中,该第二指示信息用于指示该第一远程内存的起始物理地址和长度;以及当该第一数据的长度与该第二指示信息指示的该第一远程内存的长度相同时,该第三指示信息用于指示该第一远程内存的起始物理地址;当该第一数据的长度小于该第二指示信息指示的该第一远程内存的长度时,该第三指示信息用于指示该存储空间的起始物理地址和长度。第二方面,提供了一种管理内存的方法,该方法包括:内存管理系统中的贡献节点确定第一远程内存,该第一远程内存是根据来自请求节点的第一指示信息确定的,该第一指示信息用于指示该请求节点所需内存的长度,该第一远程内存的长度大于或等于该请求节点所需内存的长度;接收该请求节点发送的针对第一数据的第一数据读写指令,该第一数据读写指令用于指示该贡献节点存取该第一数据,该第一数据读写指令包括第三指示信息,该第三指示信息用于指示该第一远程内存中用于存储该第一数据的存储空间;根据第一数据读写指令和该第三指示信息,存取该第一数据。在一种可能的实施方式中,该内存管理系统中的贡献节点确定第一远程内存包括:内存管理系统中的贡献节点接收该请求节点发送的该第一指示信息;根据该第一指示信息,确定该第一远程内存;以及该方法还包括:向该请求节点发送用于指示该第一远程内存的第二指示信息。结合第二方面和第一种可能的实施方式,在第二种可能的实施方式中,该内存管理系统中的贡献节点接收该请求节点发送的该第一指示信息包括:内存管理系统中的贡献节点接收该请求节点发送的针对第二数据的第二数据写指令以及该第二数据,该第二数据写指令包括该第一指示信息;根据该第一指示信息,确定该第一远程内存,并将该第一数据存储在该第一远程内存中;以及该向该请求节点发送用于指示该第一远程内存的第二指示信息包括:向该请求节点发送的用于指示该第二数据存储完成的第二数据写应答,该第二数据写应答包括用于指示该第一远程内存的第二指示信息。结合第二方面、第一种可能的实施方式和第二种可能的实施方式,本文档来自技高网...

【技术保护点】
1.一种管理内存的方法,其特征在于,所述方法包括:贡献节点发送所述贡献节点能够提供的远程内存的起始物理地址和长度至控制中心;所述贡献节点接收所述控制中心发送的用于指示第一远程内存的指示信息,所述第一远程内存是所述控制中心根据所述贡献节点能够提供的远程内存的起始物理地址和长度及请求节点所请求的内存长度决定的;所述贡献节点为所述请求节点提供所述第一远程内存,其中,所述第一远程内存的长度大于或等于所述请求节点所请求的内存长度。

【技术特征摘要】
1.一种管理内存的方法,其特征在于,所述方法包括:贡献节点发送所述贡献节点能够提供的远程内存的起始物理地址和长度至控制中心;所述贡献节点接收所述控制中心发送的用于指示第一远程内存的指示信息,所述第一远程内存是所述控制中心根据所述贡献节点能够提供的远程内存的起始物理地址和长度及请求节点所请求的内存长度决定的;所述贡献节点为所述请求节点提供所述第一远程内存,其中,所述第一远程内存的长度大于或等于所述请求节点所请求的内存长度。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述贡献节点接收所述请求节点发送的针对第一数据的第一数据读写指令,所述第一数据读写指令用于指示所述贡献节点存取所述第一数据,并用于指示所述第一远程内存中用于存储所述第一数据的存储空间;所述贡献节点根据所述第一数据读写指令存取所述第一数据。3.根据权利要求2所述的方法,其特征在于,所述贡献节点存取所述第一数据,包括:所述贡献节点确定所述存储空间在所述第一远程内存的范围内;所述贡献节点根据第一数据读写指令,在所述存储空间内存取所述第一数据。4.根据权利要求1至3任意一项所述的方法,其特征在于,所述方法还包括:所述贡献节点获取用于指示所述请求节点的请求节点信息;所述贡献节点根据所述请求节点信息,确定所述请求节点;所述贡献节点禁止除所述请求节点以外的节点使用所述第一远程内存。5.一种管理内存的方法,其特征在于,所述方法包括:控制中心从至少一个贡献节点接收每个贡献节点能够提供的远程内存的起始物理地址和长度;所述控制中心接收请求节点发送用于指示所述请求节点所需内存的长度;所述控制中心根据所述每个贡献节点能够提供的远程内存的起始物理地址和长度及所述请求节点所需内存长度,从所述至少一个贡献节点中确定目标贡献节点以及所述目标贡献节点向所述请求节点提供的第一远程内存,所述第一远程内存的长度大于或等于所述请求节点所需内存的长度;所述控制中心向所述请求节点和所述目标贡献节点发送所述第一远程内存的信息,以便于所述请求节点访问由所述目标贡献节点提供的第一远程内存。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:所述控制中心向所述贡献节点发送用于指示所述请求节点的请求节点信息,以便于所述目标贡献节点根据所述请求节点信息,确定所述请求节点,并禁止除所述请求节点以外的节点使用所述第一远程内存...

【专利技术属性】
技术研发人员:张立新侯锐张科江涛
申请(专利权)人:华为技术有限公司中国科学院计算技术研究所
类型:发明
国别省市:广东,44

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

1