System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及内存管理领域,特别涉及一种服务器的物理内存扩展架构、服务器、方法、设备及介质。
技术介绍
1、早期的计算机设备,程序是直接运行在物理内存上的,具体是指程序在运行时所访问的地址都是物理地址;这种方式实现简单,但是并不适应于复杂的系统,尤其是拥有多任务的操作系统。
2、以上这种使用物理内存运行程序时,物理内存不足是一个很大的问题。如果一个程序需要使用64k的内存,而机器上只有32k的物理内存,就会导致程序无法运行。其次,程序运行的物理地址不确定,同一个程序,每次被装载到物理内存的物理地址可能不一样,这使得程序难以调试和优化。此外,物理内存使用率低也是一个问题,需要运行某个程序,就需要将整个程序全部装入物理内存才能够运行,而实际运行时可能只需要用到部分程序。最后,在多任务os中,进程间地址空间不隔离的问题也十分严重,这样一个任务失败了,可能会影响其他任务,进而导致整个系统崩溃。
3、为了解决这些问题,引入了虚拟内存管理技术。虚拟内存管理技术可以将物理内存和磁盘上的存储空间组合成一个统一的地址空间,程序可以像直接运行在物理内存上一样访问内存,但实际上它们访问的是虚拟地址。操作系统通过虚拟内存管理单元(mmu,memory management unit)将虚拟地址转换为物理地址,从而实现了内存的管理和保护。虚拟内存管理技术解决了直接在物理内存上运行程序的很多缺陷,但也引入了一些新问题。如现有的cpu(central processing unit,中央处理器)一般是64位的,意味着虚拟地址的范围为0—0
技术实现思路
1、本申请的目的是提供一种服务器的物理内存扩展架构、服务器、方法、设备及介质,通过连接多个扩展设备来扩展服务器的物理内存空间,这样一来,即使单个服务器的物理地址空间受限,但通过连接多个扩展设备,可以实现更大范围的物理内存空间,应用程序可以在更大范围的物理内存空间中运行,而无需更改应用程序架构或分布式部署在多台服务器上,从而解决了单个服务器无法高效运行超大型应用程序的问题。
2、为解决上述技术问题,本申请提供了一种服务器的物理内存扩展架构,包括设于所述服务器中的本地物理内存和与所述本地物理内存连接的中央处理器,所述中央处理器包括扩展端口,所述物理内存扩展架构包括:
3、与所述中央处理器的扩展端口连接的第一扩展设备,所述第一扩展设备包括第一物理内存,且所述第一物理内存配置有第一物理地址;
4、至少一级第i扩展设备,所述第i扩展设备与第i-1扩展设备连接,所述第i扩展设备包括第i物理内存,且所述第i物理内存配置有第i物理地址,i≥2且i为整数;
5、所述中央处理器,用于在接收到目标虚拟地址的数据处理指令时,根据所述目标虚拟地址确定目标物理地址,并对所述目标物理地址中的数据执行目标操作,所述目标物理地址为所述本地物理地址、所述第一物理地址至所述第i物理地址中的任意地址。
6、在一种实施例中,所述第一扩展设备还包括至少两个设备端口,其中第一设备端口与自身对应的所述第一物理内存连接,第二设备端口与第二扩展设备连接。
7、在一种实施例中,所述第一扩展设备还包括第一网络模块,所述第i扩展设备还包括第i网络模块;
8、所述第一网络模块与所述第二设备端口连接,所述第i网络模块的一端与所述第i物理内存连接,所述第i网络模块的另一端与一个第i-1网络模块或至少一个第i+1网络模块连接。
9、在一种实施例中,所述第一网络模块和/或所述第i网络模块为远程直接地址访问网络模块。
10、在一种实施例中,所述中央处理器中还包括控制器,所述控制器通过所述扩展端口与所述第一扩展设备连接;
11、所述控制器,用于实时获取所述目标物理地址,在所述目标物理地址为所述第一物理地址或所述第i物理地址中的地址时,拦截所述数据处理指令,并将所述数据处理指令通过所述扩展端口转发至所述第一扩展设备。
12、在一种实施例中,所述第一扩展设备,用于在接收到所述数据处理指令之后,若所述目标物理地址为所述第一物理地址中的地址,则对所述目标物理地址中的数据执行目标操作;若所述目标物理地址不是所述第一物理地址中的地址,则将所述数据处理指令转发至第二扩展设备。
13、为解决上述技术问题,本申请还提供了一种服务器,包括设于所述服务器中的本地物理内存和与所述本地物理内存连接的中央处理器,所述中央处理器包括扩展端口,还包括上述所述的服务器的物理内存扩展架构,所述物理内存扩展架构与所述扩展端口连接。
14、为解决上述技术问题,本申请还提供了一种服务器的物理内存扩展方法,应用于上述所述的服务器的物理内存扩展架构,所述物理内存扩展方法包括:
15、在所述服务器的操作系统启动后,获取第一扩展设备的第一物理内存及所述第i扩展设备的第i物理内存;
16、根据所述第一物理内存及所述第i物理内存为所述第一扩展设备分配第一物理地址以及为所述第i扩展设备分配第i物理地址;
17、在接收到目标虚拟地址的数据处理指令时,根据所述目标虚拟地址确定目标物理地址,并对所述目标物理地址中的数据执行目标操作,所述目标物理地址为所述本地物理地址、所述第一物理地址至所述第i物理地址中的任意地址。
18、在一种实施例中,在接收到目标虚拟地址的数据处理指令时,根据所述目标虚拟地址确定目标物理地址,并对所述目标物理地址中的数据执行目标操作,包括:
19、接收到目标虚拟地址的数据处理指令时,根据所述目标虚拟地址确定目标物理地址;
20、判断所述目标物理地址是否为本地物理地址;
21、若是所述本地物理地址,则直接对所述目标物理地址中的数据执行所述目标操作;
22、若不是所述本地物理地址,则将所述数据处理指令通过所述扩展端口转发至所述第一扩展设备,以触发所述第一扩展设备根据所述数据处理指令对所述目标物理地址中的数据执行所述目标操作。
23、在一种实施例中,所述中央处理器中还包括控制器,所述控制器通过所述扩展端口与所述第一扩展设备连接;根据所述第一物理内存及所述第i物理内存为所述第一扩展设备分配第一物理地址以及为所述第i扩展设备分配第i物理地址之后,所述物理内存扩展方法还包括:
24、配置所述控制器,以使所述控制器实时获取所述目标物理地址,在所述目标物理地址为所述第一物理地址或所述第i物理地址中的地址时,拦截所述数据处理指令,并将所述数据处理指令通过所述扩展端口转发至所述第一扩展设备;
25、将本文档来自技高网...
【技术保护点】
1.一种服务器的物理内存扩展架构,其特征在于,包括设于所述服务器中的本地物理内存和与所述本地物理内存连接的中央处理器,所述中央处理器包括扩展端口,所述本地物理内存配置有本地物理地址,所述物理内存扩展架构包括:
2.如权利要求1所述的服务器的物理内存扩展架构,其特征在于,所述第一扩展设备还包括至少两个设备端口,其中第一设备端口与自身对应的所述第一物理内存连接,第二设备端口与第二扩展设备连接。
3.如权利要求2所述的服务器的物理内存扩展架构,其特征在于,所述第一扩展设备还包括第一网络模块,所述第i扩展设备还包括第i网络模块;
4.如权利要求3所述的服务器的物理内存扩展架构,其特征在于,所述第一网络模块和/或所述第i网络模块为远程直接地址访问网络模块。
5.如权利要求1-4任一项所述的服务器的物理内存扩展架构,其特征在于,所述中央处理器中还包括控制器,所述控制器通过所述扩展端口与所述第一扩展设备连接;
6.如权利要求5所述的服务器的物理内存扩展架构,其特征在于,所述第一扩展设备,用于在接收到所述数据处理指令之后,若所述目标物理
7.一种服务器,其特征在于,包括设于所述服务器中的本地物理内存和与所述本地物理内存连接的中央处理器,所述中央处理器包括扩展端口,还包括如权利要求1-6任一项所述的服务器的物理内存扩展架构,所述物理内存扩展架构与所述扩展端口连接。
8.一种服务器的物理内存扩展方法,其特征在于,应用于权利要求1-6任一项所述的服务器的物理内存扩展架构,所述物理内存扩展方法包括:
9.如权利要求8所述的服务器的物理内存扩展方法,其特征在于,在接收到目标虚拟地址的数据处理指令时,根据所述目标虚拟地址确定目标物理地址,并对所述目标物理地址中的数据执行目标操作,包括:
10.如权利要求9所述的服务器的物理内存扩展方法,其特征在于,中央处理器中还包括控制器,所述控制器通过所述扩展端口与所述第一扩展设备连接;根据所述第一物理内存及所述第i物理内存为所述第一扩展设备分配第一物理地址以及为所述第i扩展设备分配第i物理地址之后,所述物理内存扩展方法还包括:
11.如权利要求9所述的服务器的物理内存扩展方法,其特征在于,所述第一扩展设备还包括至少两个设备端口,其中第一设备端口与自身对应的所述第一物理内存连接,第二设备端口与第二扩展设备连接,所述物理内存扩展方法还包括:
12.如权利要求11所述的服务器的物理内存扩展方法,其特征在于,触发所述第一扩展设备根据所述数据处理指令对所述目标物理地址中的数据执行所述目标操作,包括:
13.如权利要求12所述的服务器的物理内存扩展方法,其特征在于,将所述数据处理指令通过所述目标设备端口发出,以对所述实际目标物理地址中的数据执行所述目标操作,包括:
14.如权利要求13所述的服务器的物理内存扩展方法,其特征在于,所述第一扩展设备还包括第一网络模块,所述第i扩展设备还包括第i网络模块;所述第一网络模块与所述第二设备端口连接,所述第i网络模块的一端与所述第i物理内存连接,所述第i网络模块的另一端与一个第i-1网络模块或至少一个第i+1网络模块连接;
15.如权利要求14所述的服务器的物理内存扩展方法,其特征在于,在判定所述目标设备端口为所述第二设备端口时,则将所述数据处理指令通过所述第二设备端口发出,触发所述第二扩展设备根据所述数据处理指令对所述实际目标物理地址中的数据执行所述目标操作,包括:
16.如权利要求14所述的服务器的物理内存扩展方法,其特征在于,在所述第一网络模块及所述第i网络模块为远程直接地址访问网络模块时,将所述数据处理指令通过所述第二设备端口发送至所述第一网络模块之后,所述物理内存扩展方法还包括:
17.如权利要求8-16任一项所述的服务器的物理内存扩展方法,其特征在于,根据所述第一物理内存及所述第i物理内存为所述第一扩展设备分配第一物理地址以及为所述第i扩展设备分配第i物理地址之前,还包括:
18.如权利要求8-16任一项所述的服务器的物理内存扩展方法,其特征在于,获取第一扩展设备的第一物理内存及所述第i扩展设备的第i物理内存,包括:
19.一种电子设备,其特征在于,包括:
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求8-18任...
【技术特征摘要】
1.一种服务器的物理内存扩展架构,其特征在于,包括设于所述服务器中的本地物理内存和与所述本地物理内存连接的中央处理器,所述中央处理器包括扩展端口,所述本地物理内存配置有本地物理地址,所述物理内存扩展架构包括:
2.如权利要求1所述的服务器的物理内存扩展架构,其特征在于,所述第一扩展设备还包括至少两个设备端口,其中第一设备端口与自身对应的所述第一物理内存连接,第二设备端口与第二扩展设备连接。
3.如权利要求2所述的服务器的物理内存扩展架构,其特征在于,所述第一扩展设备还包括第一网络模块,所述第i扩展设备还包括第i网络模块;
4.如权利要求3所述的服务器的物理内存扩展架构,其特征在于,所述第一网络模块和/或所述第i网络模块为远程直接地址访问网络模块。
5.如权利要求1-4任一项所述的服务器的物理内存扩展架构,其特征在于,所述中央处理器中还包括控制器,所述控制器通过所述扩展端口与所述第一扩展设备连接;
6.如权利要求5所述的服务器的物理内存扩展架构,其特征在于,所述第一扩展设备,用于在接收到所述数据处理指令之后,若所述目标物理地址为所述第一物理地址中的地址,则对所述目标物理地址中的数据执行目标操作;若所述目标物理地址不是所述第一物理地址中的地址,则将所述数据处理指令转发至第二扩展设备。
7.一种服务器,其特征在于,包括设于所述服务器中的本地物理内存和与所述本地物理内存连接的中央处理器,所述中央处理器包括扩展端口,还包括如权利要求1-6任一项所述的服务器的物理内存扩展架构,所述物理内存扩展架构与所述扩展端口连接。
8.一种服务器的物理内存扩展方法,其特征在于,应用于权利要求1-6任一项所述的服务器的物理内存扩展架构,所述物理内存扩展方法包括:
9.如权利要求8所述的服务器的物理内存扩展方法,其特征在于,在接收到目标虚拟地址的数据处理指令时,根据所述目标虚拟地址确定目标物理地址,并对所述目标物理地址中的数据执行目标操作,包括:
10.如权利要求9所述的服务器的物理内存扩展方法,其特征在于,中央处理器中还包括控制器,所述控制器通过所述扩展端口与所述第一扩展设备连接;根据所述第一物理内存及所述第i物理内存为所述第一扩展设备分配第一物理地址以及为所述第i扩展设备分配第i物理地址之后,所述物理内...
【专利技术属性】
技术研发人员:刘伟,宿栋栋,沈艳梅,王彦伟,
申请(专利权)人:浪潮北京电子信息产业有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。