CN101163133B - 一种多机虚拟环境下实现资源共享的通信系统及通信方法 - Google Patents

一种多机虚拟环境下实现资源共享的通信系统及通信方法 Download PDF

Info

Publication number
CN101163133B
CN101163133B CN2006101136381A CN200610113638A CN101163133B CN 101163133 B CN101163133 B CN 101163133B CN 2006101136381 A CN2006101136381 A CN 2006101136381A CN 200610113638 A CN200610113638 A CN 200610113638A CN 101163133 B CN101163133 B CN 101163133B
Authority
CN
China
Prior art keywords
resource
sharing
module
bus
resources
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2006101136381A
Other languages
English (en)
Other versions
CN101163133A (zh
Inventor
马一力
冯硕
沈玉良
宋震
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Zhongke Blue Whale Information Technology Co ltd
Tianjin Zhongke Bluewhale Information Technology Co ltd
Original Assignee
TIANJIN BRANCH BLUE WHALE INFORMATION TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by TIANJIN BRANCH BLUE WHALE INFORMATION TECHNOLOGY Co Ltd filed Critical TIANJIN BRANCH BLUE WHALE INFORMATION TECHNOLOGY Co Ltd
Priority to CN2006101136381A priority Critical patent/CN101163133B/zh
Publication of CN101163133A publication Critical patent/CN101163133A/zh
Application granted granted Critical
Publication of CN101163133B publication Critical patent/CN101163133B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Multi Processors (AREA)

Abstract

本发明公开了一种多机虚拟环境下实现资源共享的通信系统,用于实现对至少包含两台计算主机的多机虚拟环境中的硬件资源的共享,包括至少两个用于模拟总线访问行为的总线虚拟资源模块,至少两个用于传递不同计算主机间资源访问请求和资源访问结果的资源共享模块,和一台为资源共享数据通信提供数据通路、并整合所有共享资源的资源共享交换机,一个所述的总线虚拟资源模块与一台计算主机连接,该总线虚拟资源模块还与一个所述的资源共享模块电连接,所述的资源共享模块通过网络与所述的资源共享交换机连接。本发明还公开了一种多机虚拟环境下实现资源共享的通信方法。本发明解决了传统多处理器服务器系统价格贵,技术难度大,扩展性有限的缺点。

Description

一种多机虚拟环境下实现资源共享的通信系统及通信方法
技术领域
本发明涉及计算机通信技术,特别涉及一种在多机虚拟环境下实现资源共享的通信系统及通信方法。 
背景技术
随着电子技术和信息技术的发展,构成计算资源的基本部件,如CPU、内存等已经实现了标准化大批量的生产。使得标准化的个人计算机和低端服务器性能迅速上升,成本迅速下降,计算资源的生产总量相对于需求已经由紧缺转向饱和,甚至过剩。但是,计算资源的分配是不均衡的。在个人计算领域,通过大量生产的个人计算机可以获得充足的计算能力,却没有非常强大的需求。另一方面,在高端科学计算领域和商业计算领域,需要超强的计算能力和输入输出(I/O)带宽构成的超级计算环境,却由于技术的限制,无法满足应用的需求。造成这种矛盾的主要原因是资源聚合和共享方面的限制。具体来讲,高端科学计算和商业计算需要超过个人计算机几十倍甚至上百倍的计算资源,而在一台计算机的范围内,单纯依靠硬件频率的提升和电路密度的增加,很难满足这样的需求。解决问题的方法是多个计算资源的聚合,就是集中多个标准计算部件,组合成为超级计算机,满足高端计算的需求。 
现有计算资源聚合的主要方法有紧耦合的对称多处理(SMP)结构和松耦合的集群(cluster)结构。对称多处理结构通过内部总线连接多个处理器,多个处理器共享同样的物理内存。集群结构使用高速网络连接多个标准化计算机,每个计算机拥有各自独立的内存,通过消息通信的方法实现多个计算机之间的资源共享。 
这两种方法各有优缺点。SMP结构中,多处理器的资源共享由主板芯片组的硬件完成,处理器间的通信延迟小,而且不用占用CPU进行通信,比较适合于进程粒度比较小,交互频繁,资源交叉共享较多的场合,如大规模数据库应用,数据搜索,数据挖掘等高端商业计算。它的缺点是,由于高频电信号设计的限制,高速并行总线的扩展能力有限,系统中处理器的数目和物理内存总量都受到了限制,最终严重制约了系统的规模。 
cluster结构中,由于使用松耦合的网络结构进行连接,计算机模的扩展所受的限制较小,可以比较容易地构建到几百台以上的计算环境,比较适合计算资源需求高,进程粒度大,资源共享比较少的大规模科学计算。cluster结构的缺点是,由于计算机之间的通信是通过访问通信设备进行的,计算资源,尤其是内存资源无法直接共享,不可避免地花费计算资源,用软件进行通信处理,导致通信延迟增加,和计算资源的损耗。另外,cluster结构需要由软件显式设计计算的并行性,增加了应用程序开发的难度;cluster结构需要对操作系统核心进行较大修改,也限制了通用商品化软件的应用。所以cluster结构更适合专用计算系统。 
在目前的高端应用中,高端商业计算的计算规模需求低于科学计算,但是应用范围比科学计算广泛,需求更加强烈,而用传统方法设计的SMP结构的计算机系统设计难度大,造价高,规模有限,导致高端商业应用所需要的计算资源紧缺。设计多计算机之间的软件透明的资源共享系统,充分利用现有标准低端服务器丰富的软硬件资源,构造大规模可扩展的SMP结构服务器系统,缓解高端商业应用计算资源压力,是急需解决的问题。 
发明内容
本发明的目的是克服用传统方法设计的对称多处理结构的计算机系统设计难度大、造价高、规模有限的缺陷,从而提供一种在虚拟机环境下易设计,造价低廉,扩展方便的通信系统及方法,并以此为基础,用多计算机构建虚拟计算环境。 
为了实现上述目的,本发明提供了一种多机虚拟环境下实现资源共享的通信系统,用于实现对至少包含两台计算主机的多机虚拟环境中的硬件资源的共享,包括至少两个用于模拟总线访问行为的总线虚拟资源模块,至少两个用于传递不同计算主机间资源访问请求和资源访问结果的资源共享模块,和一台为资源共享数据通信提供数据通路,并整合所有共享资源的资源共享交换机,一个所述的总线虚拟资源模块与一台计算主机连接,该总线虚拟资源模块还与一个所述的资源共享模块电连接,所述的资源共享模块通过网络与所述的资源共享交换机连接;其中, 
所述的总线虚拟资源模块包括总线资源模拟单元和远程通信单元,所述的总线资源模拟单元模拟多机虚拟环境中的所有共享硬件资源,并响应计算主机对资源的访问,执行远程计算主机对共享资源的请求;所述的远程通信单元将本地计算主机对资源的访问请求转发到相连接的资源共享模块,并获取资源共享模块返回的资源 访问结果,以及获得远程计算主机对共享资源的访问请求,并将资源访问的执行结果转发到所述的资源共享模块; 
所述的资源共享模块包括本地通信单元和资源获取单元,所述的本地通信单元从所述的总线虚拟资源模块中获取计算主机对资源的访问请求,将资源访问结果返回所述的总线虚拟资源模块,并将远程计算主机对本地资源的请求转发到所述的总线虚拟资源模块,获得总线虚拟资源模块对远程计算主机资源请求的执行结果;所述的资源获取单元对资源访问请求进行解析和地址转换,将本地计算主机的资源访问地址转换为全局资源地址,并转发到拥有该资源的计算主机的资源共享模块,获取资源访问结果。 
上述技术方案中,所述的总线虚拟资源模块和资源共享模块在可编程逻辑器件上实现。 
所述的总线虚拟资源模块和资源共享模块在一块主机接口卡上,该接口卡安装在所述计算主机的通用总线接口插槽上。 
上述技术方案中,所述的资源共享交换机包括一个为各个资源共享模块提供数据交换通路的交换芯片,和用于对多机虚拟环境中的共享资源进行统一逻辑编址的嵌入式软件。 
本发明还提供了一种多机虚拟环境下实现资源共享的通信方法,包括资源配置方法和资源访问方法,其中,所述的资源配置方法包括: 
1)、在多机虚拟环境中的计算主机上运行虚拟机软件,获取本地的共享资源信息,并存储到与所述的计算主机相连的本地总线虚拟资源模块上,管理员为所述的资源共享交换机设置资源管理配置策略; 
2)、资源共享交换机获得各个计算主机上可共享的物理资源的信息,并对所有共享资源信息进行整合,将同一类的资源作统一编址,根据步骤1)中设定的资源管理配置策略,建立资源池,然后将整合后的共享资源信息发送到总线虚拟资源模块; 
3)、加载并运行操作系统软件,操作系统为共享资源建立本地资源地址,资源分配过程结束; 
所述的资源访问方法包括: 
4)、一台计算主机上的进程发出资源访问命令,根据步骤3)建立的本地资源地址,对资源进行访问,若所要访问的资源为本地资源,则执行下一步,否则执行 步骤6); 
5)、通过本地总线对本地资源进行访问,访问结束后回到步骤4),重新执行新的命令; 
6)、所要访问的资源不在本地计算主机上,将访问请求转发到访问资源所在的计算主机,对资源进行访问,并返回访问的结果; 
7)、与本地计算主机相连的总线虚拟资源模块收到访问结果后,由总线虚拟资源模块中的总线资源模拟单元,模拟本地总线行为,返回进程对所要访问资源的访问结果。 
上述技术方案中,所述的步骤2)包括: 
2-1)、资源共享交换机对与之相连的各个资源共享模块发出查询命令,请求获得各个计算主机上可共享的物理资源的信息; 
2-2)、资源共享模块收到查询命令后,通过其本地通信单元与所述的总线虚拟资源模块进行通信,得到步骤1)中保存在总线虚拟资源模块中的计算主机的共享资源信息,并将该信息发送到资源共享交换机; 
2-3)、所述的资源共享交换机对步骤2-2)得到的所有共享资源信息进行整合,将同一类的资源作统一编址,根据步骤1)中设定的资源管理配置策略,建立资源池; 
2-4)、资源共享交换机将步骤2-3)得到的整合后的共享资源信息通过资源共享模块发送到总线虚拟资源模块。 
上述技术方案中,所述的步骤6)包括: 
6-1)、所要访问的资源不在本地计算主机上,访问命令转发到总线资源虚拟模块中的总线资源模拟单元,总线资源模拟单元模拟外部总线的协议响应本地主机对总线资源的请求,并将请求转发给总线资源虚拟模块中的远程通信单元; 
6-2)、远程通信单元与资源共享模块中的本地通信单元进行通信,将访问请求转发到资源共享模块; 
6-3)、资源共享模块中的本地通信单元将所要访问资源的地址在步骤4)得到的整合后的共享资源信息中进行查找,得到所要访问资源所在计算主机的地址,然后通过资源共享交换机将访问请求转发到与访问资源所在计算主机相连的资源共享模块上; 
6-4)、与访问资源所在计算主机相连的资源共享模块将访问请求转发到与之相 连的总线虚拟资源模块; 
6-5)、步骤6-4)中所述的总线虚拟资源模块中的总线资源模拟单元模拟总线访问行为,对所要访问的资源进行访问; 
6-6)、总线虚拟资源模块将访问结果原路返回; 
上述技术方案中,在所述的步骤1)中,所述的资源管理配置策略描述了一个用户在多机虚拟环境下可用物理资源的多少。 
在所述的步骤2-3)中,根据不同的资源管理配置策略,所述的所有共享资源信息建立多个不同的独立资源池,资源池内的资源能共享,资源池间资源不能相互访问。 
本发明的优点在于: 
1、本发明提供了用标准通用计算机构造虚拟多处理器服务器的系统和方法,解决了传统多处理器服务器系统价格贵,技术难度大,扩展性有限的缺点。 
2、本发明使用硬件方法模拟计算机总线的行为,避免了软件对远程通信处理造成的计算效率的下降。 
3、本发明的多机虚拟环境下实现资源共享的通信方法避免了传统集群结构中需要修改操作系统内核的问题,提高了系统和应用程序的兼容性。 
4、本发明的多机虚拟环境下实现资源共享的通信方法提出了灵活的计算资源管理配置方法,使计算环境的规模可以根据应用的需求动态配置。 
5、本发明的多机虚拟环境下实现资源共享的通信方法建立了统一的资源逻辑地址空间,使多个计算机可以在同一个系统镜像内实现与软件无关的资源访问。 
附图说明
图1为本发明的多机虚拟环境下实现资源共享的通信系统的结构图; 
图2为本发明的多机虚拟环境下实现资源共享的通信方法中的资源配置方法的流程图; 
图3为本发明的多机虚拟环境下实现资源共享的通信方法中的资源访问方法的流程图。 
图面说明 
10计算主机         11计算主机         12计算主机 
13计算主机         20总线虚拟资源模块 21总线虚拟资源模块 
22总线虚拟资源模块 23总线虚拟资源模块 30资源共享模块 
31资源共享模块        32资源共享模块         33资源共享模块 
40资源共享交换机       201总线资源模拟单元    202远程通信单元 
211总线资源模拟单元    212远程通信单元        221总线资源模拟单元 
222远程通信单元        231总线资源模拟单元    232远程通信单元 
301本地通信单元        302资源获取单元        311本地通信单元 
312资源获取单元        321本地通信单元        322资源获取单元 
331本地通信单元        332资源获取单元 
具体实施方式
下面结合附图和具体实施方式对本发明的通信系统及通信方法作进一步的说明。 
如图1所示,在本发明的通信系统的一个实施例中,通信系统包括四个总线虚拟资源模块20、21、22、23,四个资源共享模块30、31、32、33,和一个资源共享交换机40。其中,总线虚拟资源模块20、21、22、23分别与外部的计算主机10、11、12、13相连接,同时总线虚拟资源模块20、21、22、23还分别连接到资源共享模块30、31、32、33上,资源共享模块30、31、32、33则通过网络与资源共享主机40连接。 
将本发明的通信系统与多台计算主机相连,可形成一个多机虚拟环境。在多机虚拟环境中,利用本发明的通信系统,可以实现对多台计算主机上资源的共享。 
对于一个总线虚拟资源模块,与它本身相连的计算主机视为本地计算主机,多机虚拟环境中的其他计算主机,对于该总线虚拟资源模块为远程计算主机。 
由于在实施例中,四个总线虚拟资源模块的功能与结构都相同,因此下面选择总线虚拟资源模块20进行详细说明。 
在本发明的通信系统中,总线虚拟资源模块20与计算主机10的总线接口相连接,并在硬件级别模拟总线上的硬件资源的行为,响应所述计算主机10对计算环境中所有共享资源的请求,也可以通过总线接口,对本地计算主机所提供的共享资源进行访问,完成远程计算主机对共享资源的访问请求。 
总线虚拟资源模块20又可以分为总线资源模拟单元201和远程通信单元202。其中的总线资源模拟单元201模拟多机虚拟环境中的所有共享硬件资源,并响应计算主机对资源的访问,并通过本地总线执行远程计算主机对共享资源的请求。远程通信单元202将本地计算主机对资源和访问请求转发到相连接的资源共享模块30, 并获取资源共享模块30返回的资源访问结果,以及获得远程计算主机对共享资源的访问请求,并将资源访问的执行结果转发到资源共享模块30。 
同样的,总线虚拟资源模块21可分为总线资源模拟单元211和远程通信单元212,总线虚拟资源模块22可分为总线资源模拟单元221和远程通信单元222,总线虚拟资源模块23可分为总线资源模拟单元231和远程通信单元232。 
在本实施例中,四个资源共享模块的功能与结构都相同,因此选择资源共享模块30作详细说明。 
在通信系统中,资源共享模块30与总线虚拟资源模块20连接,并将本地计算主机10对总线虚拟资源模块20所模拟出的硬件资源的访问,转化为虚拟计算环境真实资源的访问请求,通过资源共享模块之间的通信,获取资源访问结果,并将获得资源访问结果,通过所述总线虚拟资源模块20,返回到所述计算主机。资源共享模块30还可以接受其他计算主机对本地资源的访问请求,并将访问请求转发到本地总线虚拟资源模块20。 
资源共享模块30可分为本地通信单元301和资源获取单元302。其中,本地通信单元301从总线虚拟资源模块20中获取计算主机10对资源的访问请求,并将资源访问结果返回总线虚拟资源模块20;并将远程计算主机对本地资源的请求转发到所述的总线虚拟资源模块20,获得总线虚拟资源模块20对远程计算主机资源请求的执行结果。资源获取单元302对资源访问请求进行解析和地址转换,将本地计算主机10的资源访问地址转换为全局资源地址,并转发到拥有该资源的计算主机的资源共享模块,并获取资源访问结果。 
同样的,资源共享模块31可分为本地通信单元311和资源获取单元312,资源共享模块32可分为本地通信单元321和资源获取单元322,资源共享模块33可分为本地通信单元331和资源获取单元332。 
在本实施例中,上述的总线虚拟资源模块和资源共享模块在可编程逻辑器件上实现,为了连接方便,将总线资源模拟模块和资源共享模块的器件设计在一块主机接口卡上,该接口卡安装在计算主机的通用总线接口插槽上,以实现本发明的通信系统与计算主机间的连接。 
资源共享交换机40连接所有资源共享模块30、31、32、33,整合所述多机虚拟环境的所有共享资源,对所有资源统一定位和编址,建立统一的资源池,并向计算主机10、11、12、13提供资源共享机制。资源共享交换机40是一个独立的外部 设备,它包含一个为各个资源共享模块提供数据交换通路的交换芯片,在资源共享交换机40中还包括一个嵌入式软件,对交换芯片的地址进行统一配置。 
本发明的通信系统结合外部的计算主机形成一个多机虚拟环境,在该环境下,通信系统的工作流程分为资源配置和资源访问两大步骤,其具体实现如下。 
一、资源配置流程的实现如图2所示,包括: 
步骤100、在计算主机10、11、12、13上分别运行虚拟机软件,获得本机的资源信息,并且将资源信息分别存储到本地的总线虚拟资源模块20,21,22,23中,并通知资源共享交换机40开始一次新的配置,管理员将资源管理配置策略通知资源共享交换机。 
在本步骤中,所运行的虚拟机软件可以是名称为VMware或xen的虚拟机软件。所述的资源管理配置策略描述了一个用户在多机虚拟环境下可用物理资源的多少。在本实施例中,资源管理配置策略可设定为对计算主机10、11、12、13中的物理资源都可使用。 
在本实施例中,假设在计算主机10上,可供共享的物理资源包括一个CPU、一段内存,和五段IO端口空间。运行虚拟机软件后,得到物理资源信息,并将物理资源信息存储到总线虚拟资源模块20中的总线资源模拟单元201中。表1为存储在总线资源模拟单元201中的计算主机10可共享的物理资源信息。 
  名称   地址
  CPU   计算主机10,cpu1
  内存   计算主机10,内存地址  0x40000000-0x60000000
  IO空间1   计算主机10,IO地址0x1000-0x1800
  IO空间2   计算主机10,IO地址0x1900-0x2000
  IO空间3   计算主机10,IO地址0x2100-0x2400
  IO空间4   计算主机10,IO地址0x3000-0x3600
  IO空间5   计算主机10,IO地址0x5000-0x5200
表1 
同样的,计算主机11、12、13在运行虚拟软件后,都可得到计算主机中可供共享的物理资源信息,并保存在各自的总线资源模拟单元中。表2,表3,表4分别列出了计算主机11,12,13可以共享的资源。其中,表2为计算主机11可以共享的 物理资源,表3为计算主机12可以共享的物理资源,表4为计算主机13可以共享的物理资源。 
  名称   地址
  CPU   计算主机11,cpu1
  内存   计算主机11,内存地址  0x50000000-0x70000000
  IO空间1   计算主机11,IO地址0x1200-0x1800
  IO空间2   计算主机11,IO地址0x1900-0x2000
  IO空间3   计算主机11,IO地址0x2200-0x2400
  IO空间4   计算主机11,IO地址0x3000-0x3300
  IO空间5   计算主机11,IO地址0x5000-0x5200
表2 
  名称   地址
  CPU   计算主机12,cpu1
  内存   计算主机12,内存地址  0x20000000-0x60000000
  IO空间1   计算主机12,IO地址0x3000-0x3800
  IO空间2   计算主机12,IO地址0x1900-0x2000
  IO空间3   计算主机12,IO地址0x2100-0x2400
  IO空间4   计算主机12,IO地址0x3900-0x3f00
  IO空间5   计算主机12,IO地址0x5000-0x5200
表3 
  名称   地址
  CPU   计算主机13,cpu1
  内存   计算主机13,内存地址  0x40000000-0x50000000
  IO空间1   计算主机13,IO地址0x2000-0x2800
  IO空间2   计算主机13,IO地址0x1900-0x2300
  IO空间3   计算主机13,IO地址0x3100-0x3400
  IO空间4   计算主机13,IO地址0x6000-0x6800
  IO空间5   计算主机13,IO地址0x5000-0x5200
表4 
步骤200、资源共享交换机40开始工作,运行安装在资源共享交换机40上的嵌入式软件,查询资源共享模块30、31、32、33,请求获得计算主机10、11、12、13上可共享的物理资源的信息; 
步骤300、资源共享模块接收到资源共享交换机40发出的查询请求后,通过本地通信单元与总线虚拟资源模块进行通信,得到保存在总线资源模拟单元中的计算主机的资源信息,并将该资源信息传送到资源共享交换机40中。 
步骤400、资源共享交换机40将所有资源重新整合,将同一类的资源统一编址,构成统一的资源池,根据资源管理策略的不同,可以建立一个或多个不同尺度的资源池。然后将统一编址后的逻辑资源信息的总量和地址返回各个计算主机的资源共享模块30,31,32,33。表5是本实施例中对计算主机10、11、12、13统一编址后的资源列表。在该表中,计算主机10、11、12、13上的所有可共享资源都作了统一的编址,并建立了新地址与原地址间的映射关系。 
  资源名称   统一资源地址   物理资源地址
  Cpu1   Cpu1   计算主机10,cpu1
  Cpu2   Cpu2   计算主机11,cpu1
  Cpu3   Cpu3   计算主机12,cpu1
  Cpu4   Cpu4   计算主机13,cpu1
  内存   0-0x90000000其中:
  0-0x20000000   计算主机10,内存地址  0x40000000-0x60000000
  0x20000000-0x40000000   计算主机11,内存地址  0x50000000-0x70000000
  0x40000000-0x80000000   计算主机12,内存地址  0x40000000-0x60000000
  0x80000000-0x90000000   计算主机13,内存地址  0x40000000-0x50000000
  IO端口   0-0x6200其中
  0-0x0800   计算主机10,IO地址  0x1000-0x1800
  0x0800-0x0900   计算主机10,IO地址  0x 1900-0x2000
  0x0900-0x0C00   计算主机10,IO地址  0x2100-0x2400
  0x0C00-0x1200   计算主机10,IO地址  0x3000-0x3600
  0x1200-0x1400   计算主机10,IO地址  0x5000-0x5200
  0x1400-0x1A00   计算主机11,IO地址  0x1200-0x1800
  0x1A00-0x2100   计算主机11,IO地址  0x 1900-0x2000
  0x2100-0x2300   计算主机11,IO地址  0x2200-0x2400
  0x2300-0x2600   计算主机11,IO地址  0x3000-0x3300
  0x2600-0x2800   计算主机11,IO地址  0x5000-0x5200
  0x2800-0x3000   计算主机12,IO地址
  0x3000-0x3800
  0x2000-0x3700   计算主机12,IO地址  0x1900-0x2000
  0x3700-0x3a00   计算主机12,IO地址  0x2100-0x2400
  0x3a00-0x4100   计算主机12,IO地址  0x3900-0x3f00
  0x4100-0x4300   计算主机12,IO地址  0x5000-0x5200
  0x4300-0x4b00   计算主机13,IO地址  0x2000-0x2800
  0x4b00-0x5500   计算主机13,IO地址  0x1900-0x2300
  0x5500-0x5800   计算主机13,IO地址  0x3100-0x3400
  0x5800-0x6000   计算主机13,IO地址  0x6000-0x6800
  0x6000-0x6200   计算主机13,IO地址  0x5000-0x5200
表5 
步骤500、资源共享模块30,31,32,33分别与总线虚拟资源模块20,21,22,23通信,将步骤400得到的共享逻辑资源的信息返回到总线虚拟资源模块中。 
步骤600、虚拟机软件把操作系统软件加载到计算主机上,并运行该操作系统软件。 
步骤700、操作系统软件在初始化阶段进行资源查询时,将访问总线虚拟资源模块,获取当前系统中资源总量的信息,此时总线虚拟资源模块将会返回多机虚拟环境中所有共享的逻辑资源总量的信息。 
步骤800、操作系统软件将为共享的逻辑资源建立本地资源地址,资源分配过程完成。 
以计算主机10为例,表6为计算主机10的操作系统所能见到的逻辑资源列表。在该表中,左侧的逻辑资源地址就是操作系统软件为共享的逻辑资源所建立的本地资源地址,右侧为共享逻辑资源的物理地址。对于本地的逻辑资源,它们的物理地址可以直接查找到,对于远程的逻辑资源,它们需要通过总线虚拟资源模块作调度访问。 
  逻辑资源地址   物理资源位置
  Cpu1   本地cpu
  Cpu2,cpu3,cpu4   远程cpu,通过总线虚拟资源  模块调度访问
  内存地址0-0x20000000   本地物理内存  0x40000000-0x60000000
  内存地址  0x20000000-0x90000000   远程内存,通过总线虚拟资源  模块调度访问
  IO地址空间
  0-0x0800   本地IO地址  0x1000-0x1800
  0x0800-0x0900   本地,IO地址  0x 1900-0x2000
  0x0900-0x0C00   本地,IO地址  0x2100-0x2400
  0x0C00-0x1200   本地,IO地址  0x3000-0x3600
  0x1200-0x1400   本地,IO地址  0x5000-0x5200
  0x1400-0x6200   远程io地址,通过总线虚拟  资源模块调度访问
表6 
当多处理器操作系统软件运行结束后,将返回虚拟机软件。如果此时需要重新配置系统中的资源,建立新的多处理器计算环境,则返回步骤100。 
二、资源访问流程 
本发明的通信系统对资源配置结束后,即可实现对多机虚拟环境下,各种共享资源的访问。资源访问流程的具体实现步骤如图3所示,包括: 
步骤900、一台计算主机上的进程发出资源访问命令,根据步骤800建立的本地资源地址,对资源进行访问,若所要访问的资源为本地资源,则执行下一步,否则执行步骤1100; 
步骤1000、通过本地总线对本地资源进行访问,访问结束后回到步骤900,重新执行新的命令; 
步骤1100、所要访问的资源不在本地计算主机上,访问命令转发到资源虚拟模块中的总线资源模拟单元,总线资源模拟单元模拟外部总线的协议响应本地主机对总线资源的请求,并将请求转发给资源虚拟模块中的远程通信单元; 
步骤1200、远程通信单元与资源共享模块中的本地通信单元进行通信,将访问请求转发到资源共享模块; 
步骤1300、资源共享模块中的本地通信单元将所要访问资源的地址在步骤400得到的整合后的共享资源信息中进行查找,得到所要访问资源所在计算主机的地址,然后通过资源共享交换机将访问请求转发到与访问资源所在计算主机相连的资源共享模块上; 
步骤1400、与访问资源所在计算主机相连的资源共享模块将访问请求转发到与之相连的总线虚拟资源模块; 
步骤1500、步骤1400中所述的总线虚拟资源模块中的总线资源模拟单元模拟总线访问行为,对所要访问的资源进行访问; 
步骤1600、总线虚拟资源模块将访问结果原路返回; 
步骤1700、与本地计算主机相连的总线虚拟资源模块收到访问结果后,由总线虚拟资源模块中的总线资源虚拟单元,模拟本地总线行为,返回进程对所要访问资源的访问结果。 
在本实施例中,以计算主机10为例,假设在计算主机10的操作系统中运行一个进程,该进程需要对内存进行访问。资源访问的具体过程包括: 
1)、根据表6的记载,对所要访问的内存的地址进行判断,若所要访问的内存的地址在计算主机10的地址范围内(0_0x20000000之间),则进行一次正常的本地内存总线访问,否则执行下一步; 
2)、所要访问的内存的地址在计算主机10的地址范围外,如所要访问的内存地址为0x30000000,则访问请求会被本地的资源虚拟模块中的总线资源模拟单元201获得,总线资源模拟单元201模拟外部总线的协议响应本地主机对总线资源的请求,并将请求转发给资源虚拟模块中的远程通信单元202。 
3)、远程通信单元202负责和资源共享模块30中的本地通信单元301通信,将请求再转发到资源共享模块30。 
4)、资源共享模块30中的本地通信单元301通过查表5,发现0x30000000地址对应的是计算主机11上的物理内存,所以将请求通过资源获取单元302转发出去,通过资源共享交换机40,到达计算主机11上资源共享模块31。 
5)、资源共享模块31上的资源获取单元312通过查表5发现,所请求的资源在本地共享物理内存范围内,则将请求传递到本地通信单元311中。 
6)、本地通信单元311负责和总线虚拟资源模块21中的远程通信单元212通信,将请求转发到总线虚拟资源模块21。 
7)、远程通信单元212将请求转发到总线资源模拟单元211 
8)、总线资源模拟单元211模拟总线访问的行为,访问计算主机11的物理内存地址0x60000000(即统一的虚拟地址0x30000000) 
9)、总线资源模拟单元211将内存访问结果转发到远程通信单元212。 
10)、远程通信单元212将内存访问结果转发到资源共享模块31中的本地通信单元311。 
11)、本地通信单元311将内存访问结果转发到资源获取单元312 
12)、资源获取单元312通过通资源共享交换机40将内存访问结果转发出去,到达计算主机10上资源共享模块30的资源获取单元302 
13)、资源获取单元302,将内存访问结果转发到本地通信单元301 
14)、本地通信单元通过和总线虚拟资源模块20中的远程通信单元202通信,将内存访问结果转发到远程通信单元202。 
15)、远程通信单元202,将内存访问结果转发到本地的总线虚拟资源模块中的总线资源模拟单元201。 
16)、总线资源模拟单元201,模拟本地总线行为,返回进程对内存访问的结果。 
上述步骤完成了虚拟服务器环境下的一次资源访问过程,从操作系统的角度看,上述过程是一次正常的总线访问过程,不需要附加任何软件的工作。 

Claims (9)

1.一种多机虚拟环境下实现资源共享的通信系统,用于实现对至少包含两台计算主机的多机虚拟环境中的硬件资源的共享,包括至少两个用于模拟总线访问行为的总线虚拟资源模块,至少两个用于传递不同计算主机间资源访问请求和资源访问结果的资源共享模块,和一台为资源共享数据通信提供数据通路,并整合所有共享资源的资源共享交换机,其特征在于,一个所述的总线虚拟资源模块与一台计算主机连接,该总线虚拟资源模块还与一个所述的资源共享模块电连接,所述的资源共享模块通过网络与所述的资源共享交换机连接;其中,
所述的总线虚拟资源模块包括总线资源模拟单元和远程通信单元,所述的总线资源模拟单元模拟多机虚拟环境中的所有共享硬件资源,并响应计算主机对资源的访问,执行远程计算主机对共享资源的请求;所述的远程通信单元将本地计算主机对资源的访问请求转发到相连接的资源共享模块,并获取资源共享模块返回的资源访问结果,以及获得远程计算主机对共享资源的访问请求,并将资源访问的执行结果转发到所述的资源共享模块;
所述的资源共享模块包括本地通信单元和资源获取单元,所述的本地通信单元从所述的总线虚拟资源模块中获取计算主机对资源的访问请求,将资源访问结果返回所述的总线虚拟资源模块,并将远程计算主机对本地资源的请求转发到所述的总线虚拟资源模块,获得总线虚拟资源模块对远程计算主机资源请求的执行结果;所述的资源获取单元对资源访问请求进行解析和地址转换,将本地计算主机的资源访问地址转换为全局资源地址,并转发到拥有该资源的计算主机的资源共享模块,获取资源访问结果。
2.根据权利要求1所述的多机虚拟环境下实现资源共享的通信系统,其特征在于,所述的总线虚拟资源模块和资源共享模块在可编程逻辑器件上实现。
3.根据权利要求2所述的多机虚拟环境下实现资源共享的通信系统,其特征在于,所述的总线虚拟资源模块和资源共享模块在一块主机接口卡上,该接口卡安装在所述计算主机的通用总线接口插槽上。
4.根据权利要求1所述的多机虚拟环境下实现资源共享的通信系统,其特征在于,所述的资源共享交换机包括一个为各个资源共享模块提供数据交换通路的交换芯片,和用于对多机虚拟环境中的共享资源进行统一逻辑编址的嵌入式软件。 
5.一种应用于权利要求1所述的多机虚拟环境下实现资源共享的通信系统上的通信方法,包括资源配置方法和资源访问方法,其中,所述的资源配置方法包括:
1)、在多机虚拟环境中的计算主机上运行虚拟机软件,获取本地的共享资源信息,并存储到与所述的计算主机相连的本地总线虚拟资源模块上,管理员为所述的资源共享交换机设置资源管理配置策略;
2)、资源共享交换机获得各个计算主机上可共享的物理资源的信息,并对所有共享资源信息进行整合,将同一类的资源作统一编址,根据步骤1)中设定的资源管理配置策略,建立资源池,然后将整合后的共享资源信息发送到总线虚拟资源模块;
3)、加载并运行操作系统软件,操作系统为共享资源建立本地资源地址,资源分配过程结束;
所述的资源访问方法包括:
4)、一台计算主机上的进程发出资源访问命令,根据步骤3)建立的本地资源地址,对资源进行访问,若所要访问的资源为本地资源,则执行下一步,否则执行步骤6);
5)、通过本地总线对本地资源进行访问,访问结束后回到步骤4),重新执行新的命令;
6)、所要访问的资源不在本地计算主机上,将访问请求转发到访问资源所在的计算主机,对资源进行访问,并返回访问的结果;
7)、与本地计算主机相连的总线虚拟资源模块收到访问结果后,由总线虚拟资源模块中的总线资源模拟单元,模拟本地总线行为,返回进程对所要访问资源的访问结果。
6.根据权利要求5所述的多机虚拟环境下实现资源共享的通信方法,其特征在于,所述的步骤2)包括:
2-1)、资源共享交换机对与之相连的各个资源共享模块发出查询命令,请求获得各个计算主机上可共享的物理资源的信息;
2-2)、资源共享模块收到查询命令后,通过其本地通信单元与所述的总线虚拟资源模块进行通信,得到步骤1)中保存在总线虚拟资源模块中的计算主机的共享资源信息,并将该信息发送到资源共享交换机;
2-3)、所述的资源共享交换机对步骤2-2)得到的所有共享资源信息进行整合, 将同一类的资源作统一编址,根据步骤1)中设定的资源管理配置策略,建立资源池;
2-4)、资源共享交换机将步骤2-3)得到的整合后的共享资源信息通过资源共享模块发送到总线虚拟资源模块。
7.根据权利要求5所述的多机虚拟环境下实现资源共享的通信方法,其特征在于,所述的步骤6)包括:
6-1)、所要访问的资源不在本地计算主机上,访问命令转发到总线虚拟资源模块中的总线资源模拟单元,总线资源模拟单元模拟外部总线的协议响应本地主机对总线资源的请求,并将请求转发给总线虚拟资源模块中的远程通信单元;
6-2)、远程通信单元与资源共享模块中的本地通信单元进行通信,将访问请求转发到资源共享模块;
6-3)、资源共享模块中的本地通信单元将所要访问资源的地址在步骤4)得到的整合后的共享资源信息中进行查找,得到所要访问资源所在计算主机的地址,然后通过资源共享交换机将访问请求转发到与访问资源所在计算主机相连的资源共享模块上;
6-4)、与访问资源所在计算主机相连的资源共享模块将访问请求转发到与之相连的总线虚拟资源模块;
6-5)、步骤6-4)中所述的总线虚拟资源模块中的总线资源模拟单元模拟总线访问行为,对所要访问的资源进行访问;
6-6)、总线虚拟资源模块将访问结果原路返回。
8.根据权利要求5所述的多机虚拟环境下实现资源共享的通信方法,其特征在于,在所述的步骤1)中,所述的资源管理配置策略描述了一个用户在多机虚拟环境下可用物理资源的多少。
9.根据权利要求6所述的多机虚拟环境下实现资源共享的通信方法,其特征在于,在所述的步骤2-3)中,根据不同的资源管理配置策略,所述的所有共享资源信息建立多个不同的独立资源池,资源池内的资源能共享,资源池间资源不能相互访问。 
CN2006101136381A 2006-10-10 2006-10-10 一种多机虚拟环境下实现资源共享的通信系统及通信方法 Expired - Fee Related CN101163133B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2006101136381A CN101163133B (zh) 2006-10-10 2006-10-10 一种多机虚拟环境下实现资源共享的通信系统及通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2006101136381A CN101163133B (zh) 2006-10-10 2006-10-10 一种多机虚拟环境下实现资源共享的通信系统及通信方法

Publications (2)

Publication Number Publication Date
CN101163133A CN101163133A (zh) 2008-04-16
CN101163133B true CN101163133B (zh) 2011-06-29

Family

ID=39297961

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006101136381A Expired - Fee Related CN101163133B (zh) 2006-10-10 2006-10-10 一种多机虚拟环境下实现资源共享的通信系统及通信方法

Country Status (1)

Country Link
CN (1) CN101163133B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101686165B (zh) * 2008-09-28 2012-08-22 联想(北京)有限公司 芯片装置及用该装置访问网络共享文件的方法
KR101250666B1 (ko) * 2009-01-30 2013-04-03 후지쯔 가부시끼가이샤 정보 처리 시스템, 정보 처리 장치, 정보 처리 장치의 제어 방법, 및 컴퓨터 판독 가능한 기록 매체
CN102118288B (zh) * 2010-11-26 2015-06-17 浪潮(北京)电子信息产业有限公司 物理服务器、集群系统及其实现方法
CN102263665B (zh) * 2011-08-15 2018-07-31 中兴通讯股份有限公司 一种资源的处理方法和装置、单板及设备
CN102497410B (zh) * 2011-12-08 2014-08-27 曙光信息产业(北京)有限公司 一种云计算系统计算资源动态分区的方法
CN102546616B (zh) * 2011-12-28 2015-06-24 Tcl集团股份有限公司 一种媒体共享互动的实现方法及数字家庭媒体服务器
CN104038444B (zh) * 2013-03-05 2017-05-31 中国移动通信集团山西有限公司 一种资源分配的方法、设备及系统
CN105491082B (zh) 2014-09-16 2019-02-19 华为技术有限公司 远程资源访问方法和交换设备
CN104811483B (zh) * 2015-04-02 2018-07-06 广东睿江云计算股份有限公司 云系统部署方法及云系统
US9891945B2 (en) * 2016-03-21 2018-02-13 Qualcomm Incorporated Storage resource management in virtualized environments
CN109783144B (zh) * 2017-11-13 2022-03-25 深圳市创客工场科技有限公司 虚拟环境交互实现中变量的处理方法、装置和存储介质
CN110532063B (zh) * 2019-08-13 2022-04-01 南京芯驰半导体科技有限公司 一种同时支持总线虚拟化和功能安全的系统及方法
CN111767135A (zh) * 2020-05-27 2020-10-13 江苏和正特种装备有限公司 一种基于srio全局内存共享的数据分发方法
CN112783667B (zh) * 2020-12-10 2023-08-15 中国科学院深圳先进技术研究院 基于虚拟环境的内存共享系统及方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1149736A (zh) * 1995-06-05 1997-05-14 北京航空航天大学 一种分布式存储器共享管理方法
CN1761222A (zh) * 2005-11-22 2006-04-19 华中科技大学 一种支持虚拟接口的存储网络适配器

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1149736A (zh) * 1995-06-05 1997-05-14 北京航空航天大学 一种分布式存储器共享管理方法
CN1761222A (zh) * 2005-11-22 2006-04-19 华中科技大学 一种支持虚拟接口的存储网络适配器

Also Published As

Publication number Publication date
CN101163133A (zh) 2008-04-16

Similar Documents

Publication Publication Date Title
CN101163133B (zh) 一种多机虚拟环境下实现资源共享的通信系统及通信方法
US11934883B2 (en) Computer cluster arrangement for processing a computation task and method for operation thereof
US6510496B1 (en) Shared memory multiprocessor system and method with address translation between partitions and resetting of nodes included in other partitions
RU2220444C2 (ru) Компьютерная система и способ передачи данных в компьютерной системе
CN103150279B (zh) 一种主机与基板管理控制器共享设备的方法
WO2017072933A1 (ja) 計算機システムの管理システム及び管理方法
US8943294B2 (en) Software architecture for service of collective memory and method for providing service of collective memory using the same
CN101901207A (zh) 异构共享存储多处理机系统的操作系统及其工作方法
CN104303174A (zh) 通过处理器间互连来隧道传输平台管理消息
CN103927277A (zh) Cpu和gpu共享片上高速缓存的方法及装置
JP2001051959A (ja) 少なくとも1つのnuma(non−uniformmemoryaccess)データ処理システムとして構成可能な相互接続された処理ノード
CN101216781B (zh) 一种多处理器系统、装置及方法
CN102834813A (zh) 用于多通道高速缓存的更新处理机
US20130247038A1 (en) Device-integration method, terminal-apparatus, and distributed multi-terminal-apparatus system
US11656779B2 (en) Computing system and method for sharing device memories of different computing devices
CN115114042A (zh) 存储数据访问方法、装置、电子设备和存储介质
CN1464415A (zh) 一种多处理器系统
EP3602309B1 (en) A memory allocation manager and method performed thereby for managing memory allocation
CN113392052A (zh) 一种基于四路服务器的bios系统、方法及计算机可读存储介质
CN111045974A (zh) 一种基于交换结构的多处理器数据交互方法
JP2780662B2 (ja) マルチプロセッサシステム
US11281612B2 (en) Switch-based inter-device notational data movement system
US20240126469A1 (en) Apparatus and method for controlling a pooled memory device or a memory expander
US20050071545A1 (en) Method for embedding a server into a storage subsystem
KR20080089621A (ko) 공유 메모리형 멀티 프로세서에 있어서의 절차 호출 방법 및 절차 호출 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: TIANJIN ZHONGKE BLUE WHALE INFORMATION TECHNOLOGY

Free format text: FORMER OWNER: INST. OF COMPUTING TECHN. ACADEMIA SINICA

Effective date: 20091127

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20091127

Address after: Tianjin Huayuan Industrial Park New Technology Industrial Park Development Road No. 6 6 Haitai green industry base building F 5 door No. 201 post encoding: 300384

Applicant after: TIANJIN ZHONGKE BLUEWHALE INFORMATION TECHNOLOGY CO.,LTD.

Address before: Postal code 6, South Road, Zhongguancun Academy of Sciences, Beijing, Haidian District: 100080

Applicant before: Institute of Computing Technology, Chinese Academy of Sciences

C14 Grant of patent or utility model
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Communication system and method of implementing resource sharing under multi-machine virtual environment

Effective date of registration: 20130815

Granted publication date: 20110629

Pledgee: Bank of Shanghai Limited by Share Ltd. Tianjin branch

Pledgor: TIANJIN ZHONGKE BLUEWHALE INFORMATION TECHNOLOGY CO.,LTD.

Registration number: 2013120000025

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20140404

Granted publication date: 20110629

Pledgee: Bank of Shanghai Limited by Share Ltd. Tianjin branch

Pledgor: TIANJIN ZHONGKE BLUEWHALE INFORMATION TECHNOLOGY CO.,LTD.

Registration number: 2013120000025

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Communication system and method of implementing resource sharing under multi-machine virtual environment

Effective date of registration: 20140428

Granted publication date: 20110629

Pledgee: Bank of Shanghai Limited by Share Ltd. Tianjin branch

Pledgor: TIANJIN ZHONGKE BLUEWHALE INFORMATION TECHNOLOGY CO.,LTD.

Registration number: 2014120000025

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
ASS Succession or assignment of patent right

Owner name: BEIJING ZHONGKE BLUEWHALE INFORMATION TECHNOLOGY C

Effective date: 20140813

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20140813

Address after: 300384 Tianjin Huayuan Industrial Park New Technology Industrial Park Development Road No. 6 6 Haitai green industry base building F 5 Gate No. 201

Patentee after: TIANJIN ZHONGKE BLUEWHALE INFORMATION TECHNOLOGY CO.,LTD.

Patentee after: Beijing Zhongke blue whale Information Technology Co.,Ltd.

Address before: 300384 Tianjin Huayuan Industrial Park New Technology Industrial Park Development Road No. 6 6 Haitai green industry base building F 5 Gate No. 201

Patentee before: TIANJIN ZHONGKE BLUEWHALE INFORMATION TECHNOLOGY CO.,LTD.

PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20150526

Granted publication date: 20110629

Pledgee: Bank of Shanghai Limited by Share Ltd. Tianjin branch

Pledgor: TIANJIN ZHONGKE BLUEWHALE INFORMATION TECHNOLOGY CO.,LTD.

Registration number: 2014120000025

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Communication system and method of implementing resource sharing under multi-machine virtual environment

Effective date of registration: 20150727

Granted publication date: 20110629

Pledgee: Bank of Shanghai Limited by Share Ltd. Tianjin branch

Pledgor: TIANJIN ZHONGKE BLUEWHALE INFORMATION TECHNOLOGY CO.,LTD.|Beijing Zhongke blue whale Information Technology Co.,Ltd.

Registration number: 2015120000053

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20161019

Granted publication date: 20110629

Pledgee: Bank of Shanghai Limited by Share Ltd. Tianjin branch

Pledgor: TIANJIN ZHONGKE BLUEWHALE INFORMATION TECHNOLOGY CO.,LTD.|Beijing Zhongke blue whale Information Technology Co.,Ltd.

Registration number: 2015120000053

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Communication system and method of implementing resource sharing under multi-machine virtual environment

Effective date of registration: 20170302

Granted publication date: 20110629

Pledgee: Bank of Shanghai Limited by Share Ltd. Tianjin branch

Pledgor: TIANJIN ZHONGKE BLUEWHALE INFORMATION TECHNOLOGY CO.,LTD.|Beijing Zhongke blue whale Information Technology Co.,Ltd.

Registration number: 2017990000145

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110629

Termination date: 20211010