CN103309833A - 设备整合方法、终端装置和分布式多终端装置系统 - Google Patents
设备整合方法、终端装置和分布式多终端装置系统 Download PDFInfo
- Publication number
- CN103309833A CN103309833A CN201210067455.6A CN201210067455A CN103309833A CN 103309833 A CN103309833 A CN 103309833A CN 201210067455 A CN201210067455 A CN 201210067455A CN 103309833 A CN103309833 A CN 103309833A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- machine monitor
- remote equipment
- end device
- information
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Abstract
本发明公开了一种设备整合方法、终端装置和分布式多终端装置系统。所述设备整合方法应用于其上运行有虚拟机监视器的终端装置,所述方法包括:所述虚拟机监视器扫描所述终端装置的总线配置存储单元,以获取所述终端装置所具有各个本地设备的本地设备信息;所述虚拟机监视器将所获取的设备信息发送到相邻终端装置,并且从相邻终端装置接收所述相邻终端所具有的各个远程设备的远程设备信息;所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上。
Description
技术领域
本发明涉及虚拟化技术领域,并且更具体地,本发明涉及一种基于虚拟化技术的设备整合方法、使用该设备整合方法的终端装置和分布式多终端装置系统。
背景技术
虚拟化是一个广义的术语,在计算机方面通常是指计算元件在虚拟的基础上而不是真实的基础上运行。虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。虚拟化技术通过对资源的抽象化,通过将物理硬件设备与操作系统分开从而提供更高的资源利用率和灵活性。
近年来,随着集群的出现以及高性能计算的需要,一些特殊应用需要更强大的物理资源,单个终端装置已经满足不了应用需求,将多个终端装置的物理设备资源有效地进行整合并且提供给上层应用成为必然趋势。分布式虚拟机通过分布式虚拟机监视器(Distributed Virtual Machine Monitor)对硬件设备资源进行管理,并通过彼此间的协作给运行在上层的客户操作系统(Guest Operation System)提供统一的物理资源,从而满足高端服务需求。总线是终端装置的各种功能部件之间传送信息的公共通信干线,一般来说是由实体导线组成的传输线束,在传统的计算机体系结构中,所有设备都是通过各种各样的总线连接起来,特别是系统总线,诸如ISA、AGP、PCI/PCIE等,它们都是物理存在的总线。操作系统通过扫描这些总线以获取总线上连接的各个设备的信息。
在虚拟化技术中,虚拟机监视器可以通过基于本地总线的映射,为客户操作系统提供虚拟的总线和设备集合。这样虚拟的总线称为虚拟总线(VirtualBus)。因此,希望提供一种基于虚拟化技术的设备整合方法、使用该设备整合方法的终端装置以及包括多个终端装置的分布式多终端装置系统,在由本地终端装置和相邻的远程终端装置组成的分布式多终端装置系统中,通过利用虚拟总线,实现本地终端装置的设备资源和远程终端装置的设备资源的有效整合和设备信息的实时更新。
发明内容
根据本发明实施例,提供了一种设备整合方法,所述方法应用于其上运行有虚拟机监视器的终端装置,所述方法包括:所述虚拟机监视器扫描所述终端装置的总线配置存储单元,以获取所述终端装置所具有各个本地设备的本地设备信息;所述虚拟机监视器将所获取的设备信息发送到相邻终端装置,并且从相邻终端装置接收所述相邻终端所具有的各个远程设备的远程设备信息;所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上。
此外,根据本发明实施例的设备整合方法,其中所述虚拟机监视器以树状形式或链表形式组织所述本地设备信息和远程设备信息。
此外,根据本发明实施例的设备整合方法,还包括:所述虚拟机监视器周期性地扫描所述总线配置存储单元,以便更新所述本地设备信息。
此外,根据本发明实施例的设备整合方法,还包括:所述虚拟机监视器周期性地从相邻终端装置接收更新的所述远程设备信息。
此外,根据本发明实施例的设备整合方法,其中,所述本地设备信息和远程设备信息包括设备厂商号、设备号、I/O空间范围、中断号等。
此外,根据本发明实施例的设备整合方法,其中,所述终端装置是不包含BIOS系统的终端装置。
此外,根据本发明实施例的设备整合方法,其中所述终端装置是嵌入式终端装置、巨型机服务器或通信设备等。
此外,根据本发明实施例的设备整合方法,其中所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上包括:所述虚拟机监视器基于所述本地设备信息和所接收的所述远程设备信息,整合所述本地设备所占用的系统资源和所述远程设备所占用的系统资源。
此外,根据本发明实施例的设备整合方法,还包括:如果所述本地设备所占用的系统资源和所述远程设备所占用的系统资源存在冲突,则所述虚拟机监视器扫描所述终端装置以便为所述远程设备重新映射空余系统资源,并且如果不存在空余系统资源,则所述虚拟机监视器从所述虚拟总线上删除所述远程设备。
此外,根据本发明实施例的设备整合方法,其中所述终端设备上运行的操作系统访问所述虚拟总线上的所述本地设备和所述远程设备。
此外,根据本发明实施例的设备整合方法,中所述操作系统访问所述虚拟总线上的所述远程设备包括:所述操作系统向所述虚拟机监视器发出针对所述远程设备的I/O请求,如果所述I/O请求访问的I/O地址区间在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发给所述远程设备,并且如果所述I/O请求访问的I/O地址区间不在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发到本地设备上。
根据本发明另一实施例,提供了一种终端装置,其上运行有虚拟机监视器,并且所述终端装置具有多个本地设备,其中所述虚拟机监视器扫描所述终端装置的总线配置存储单元,以获取所述终端装置所具有各个本地设备的本地设备信息;所述虚拟机监视器将所获取的设备信息发送到相邻终端装置,并且从相邻终端装置接收所述相邻终端所具有的各个远程设备的远程设备信息;所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上。
此外,根据本发明实施例的终端装置,其中所述虚拟机监视器以树状形式或链表形式组织所述本地设备信息和远程设备信息。
此外,根据本发明实施例的终端装置,其中所述虚拟机监视器周期性地扫描所述总线配置存储单元,以便更新所述本地设备信息。
此外,根据本发明实施例的终端装置,其中所述虚拟机监视器周期性地从相邻终端装置接收更新的所述远程设备信息。
此外,根据本发明实施例的终端装置,其中,所述本地设备信息和远程设备信息包括设备厂商号、设备号、I/O空间范围、中断号等。
此外,根据本发明实施例的终端装置,其中,所述终端装置是不包含BIOS系统的终端装置。
此外,根据本发明实施例的终端装置,其中所述终端装置是嵌入式终端装置、巨型机服务器或通信设备等。
此外,根据本发明实施例的终端装置,其中所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上包括:所述虚拟机监视器基于所述本地设备信息和所接收的所述远程设备信息,整合所述本地设备所占用的系统资源和所述远程设备所占用的系统资源。
此外,根据本发明实施例的终端装置,其中,如果所述本地设备所占用的系统资源和所述远程设备所占用的系统资源存在冲突,则所述虚拟机监视器扫描所述终端装置以便为所述远程设备重新映射空余系统资源,并且如果不存在空余系统资源,则所述虚拟机监视器从所述虚拟总线上删除所述远程设备。
此外,根据本发明实施例的终端装置,其中所述终端设备上运行的操作系统访问所述虚拟总线上的所述本地设备和所述远程设备。
此外,根据本发明实施例的终端装置,其中所述操作系统访问所述虚拟总线上的所述远程设备包括:所述操作系统向所述虚拟机监视器发出针对所述远程设备的I/O请求,如果所述I/O请求访问的I/O地址区间在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发给所述远程设备,并且如果所述I/O请求访问的I/O地址区间不在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发到本地设备上。
根据本发明另一实施例,提供了一种分布式多终端装置系统,所述系统包括多个终端装置,其中每个所述终端装置上运行有虚拟机监视器,并且每个所述终端装置具有多个本地设备,其中所述虚拟机监视器扫描所述终端装置的总线配置存储单元,以获取所述终端装置所具有各个本地设备的本地设备信息;所述虚拟机监视器将所获取的设备信息发送到相邻终端装置,并且从相邻终端装置接收所述相邻终端所具有的各个远程设备的远程设备信息;所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上。
此外,根据本发明实施例的分布式多终端装置系统,其中所述虚拟机监视器以树状形式或链表形式组织所述本地设备信息和远程设备信息。
此外,根据本发明实施例的分布式多终端装置系统,其中所述虚拟机监视器周期性地扫描所述总线配置存储单元,以便更新所述本地设备信息。
此外,根据本发明实施例的分布式多终端装置系统,其中所述虚拟机监视器周期性地从相邻终端装置接收更新的所述远程设备信息。
此外,根据本发明实施例的分布式多终端装置系统,其中,所述本地设备信息和远程设备信息包括设备厂商号、设备号、I/O空间范围、中断号等。
此外,根据本发明实施例的分布式多终端装置系统,其中,所述终端装置是不包含BIOS系统的终端装置。
此外,根据本发明实施例的分布式多终端装置系统,其中所述终端装置是嵌入式终端装置、巨型机服务器或通信设备等。
此外,根据本发明实施例的分布式多终端装置系统,其中所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上包括:所述虚拟机监视器基于所述本地设备信息和所接收的所述远程设备信息,整合所述本地设备所占用的系统资源和所述远程设备所占用的系统资源。
此外,根据本发明实施例的分布式多终端装置系统,其中,如果所述本地设备所占用的系统资源和所述远程设备所占用的系统资源存在冲突,则所述虚拟机监视器扫描所述终端装置以便为所述远程设备重新映射空余系统资源,并且如果不存在空余系统资源,则所述虚拟机监视器从所述虚拟总线上删除所述远程设备。
此外,根据本发明实施例的分布式多终端装置系统,其中所述终端设备上运行的操作系统访问所述虚拟总线上的所述本地设备和所述远程设备。
此外,根据本发明实施例的分布式多终端装置系统,其中所述操作系统访问所述虚拟总线上的所述远程设备包括:所述操作系统向所述虚拟机监视器发出针对所述远程设备的I/O请求,如果所述I/O请求访问的I/O地址区间在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发给所述远程设备,并且如果所述I/O请求访问的I/O地址区间不在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发到本地设备上。
根据本发明实施例的基于虚拟化技术的设备整合方法、使用该设备整合方法的终端装置以及包括多个终端装置的分布式多终端装置系统,通过利用虚拟总线,实现本地终端装置的设备资源和远程终端装置的设备资源的有效整合和设备信息的实时更新。
要理解的是,前面的一般描述和下面的详细描述两者都是示例性的,并且意图在于提供要求保护的技术的进一步说明。
附图说明
图1是图示现有技术中的用于整合设备的传统总线结构的示意图;
图2是图示根据本发明实施例的用于整合设备的虚拟总线结构的示意图;
图3是图示根据本发明实施例的利用虚拟总线结构的分布式多终端装置系统的示意图;
图4是图示根据本发明实施例的设备整合方法的流程图;以及
图5是图示根据本发明实施例的分布式多终端装置系统中的终端设备的功能性框图。
具体实施方式
以下,将参考附图详细描述本发明的优选实施例。
首先,将参照图1描述现有技术的总线结构。图1所示的总线结构可以应用于各种终端装置,所述终端装置优选地例如是智能手机、个人计算机、巨型机服务器或通信设备等。要注意的是,本领域的普通技术人员容易理解的是,图1仅是示意性的,并且为了说明的简要,仅仅示出与描述本发明紧密相关的部件,而省略其它部件及其描述。
本领域的普通技术人员容易理解,总线是终端装置的各种功能部件之间传送信息的公共通信干线,一般来说是由实体导线组成的传输线束,在传统的计算机体系结构中,所有设备都是通过各种各样的总线连接起来,特别是系统总线,诸如ISA、AGP、PCI/PCIE等,它们都是物理存在的总线。如图1所示,终端装置10的CPU 101以树形拓扑分别连接和控制PCI总线102、PCIE总线103以及其它总线104。PCI总线102下同样以树形拓扑连接有USB总线105、AC_97总线106,而PCIE总线103下则连接有USB总线107、其它总线108。此外,如图1所示,USB总线105下可以连接有设备109、设备110,AC_97总线106下连接有音频设备111,而PCIE总线103下连接有设备112。也就是说,在图1所示的传统总线结构下,所有设备资源安装在某种总线下,通过树形拓扑结果组织设备资源和总线资源。本领域的普通技术人员容易理解的是,终端装置可以包括其它类型的总线和设备资源,而不限于图1所示。
随着终端装置的设备资源越来越丰富,单个终端装置所能携带的设备资源收到其物理总线和端口数目的限制。通过虚拟化技术,实现不同终端装置之间设备资源的共享,将解决上述问题,并且大大提高资源利用率和灵活性。以下,将参照图2描述通过基于虚拟化技术的虚拟总线(VBUS)整合硬件资源。
图2是图示根据本发明实施例的用于整合设备的虚拟总线结构的示意图。如图2所示,本地终端装置10具有如图1所示的本地总线结构。此外,本地终端装置10与远程终端装置20将共享一条虚拟总线200。本地终端装置10通过虚拟总线200,能够访问远程终端装置20所拥有的与该虚拟总线200相连接的总线资源和设备资源。具体地,如图2所示,本地终端装置10将通过虚拟总线200访问属于远程终端装置20的设备202、PCIE总线201、以及音频设备203。换句话说,远程终端装置20同样可以通过虚拟总线200访问属于远程终端装置10的PCI总线102、PCIE总线103、其它总线104以及所述总线下整合的设备109、设备110、音频设备111、设备112等。
如上图2所述,本地终端装置10和远程终端装置20通过虚拟总线200实现了各自所拥有的设备资源的共享。从而,本地终端装置10和远程终端装置20利用虚拟总线200形成了一个分布式多终端装置系统。下面将参照图3进一步描述该分布式多终端装置系统。
图3示出了终端装置31和终端装置32通过虚拟总线33构成的分布式多终端装置系统30。要理解的是,构成分布式多终端装置系统30的终端装置的数目不限于2,而是可以由更多终端装置构成。如图3所示,终端装置31和终端装置32各自的物理总线PCI总线34、PCIE总线35、PCI总线36、PCIE总线37以预定的拓扑结构布置在虚拟总线33之下。同时,终端装置31和终端装置32各自的设备资源,诸如设备40到设备46也以预定的拓扑结构通过各自的物理总线布置在虚拟总线33之下。在如图3所示的分布式多终端装置系统30中,终端装置31或终端装置32可以通过虚拟总线33访问分布式多终端装置系统30所具有的所有设备资源。显而易见的是,终端装置31或终端装置32所能访问的设备资源将不局限于其自身具有的设备资源,而是包括分布式多终端装置系统30中的其它终端装置所具有的设备资源。
以上,参照图2和图3概述了终端装置通过利用虚拟总线结构构成分布式多终端装置系统。以下,将参照图4具体描述由其上运行有虚拟机监视器的终端装置执行的设备整合方法。
图4是图示根据本发明实施例的设备整合方法的流程图。根据本发明实施例的设备整合方法应用于其上运行有虚拟机监视器(Hypervisor)的终端装置。
如图4所示,在步骤S401中,所述虚拟机监视器扫描所述终端装置的总线配置存储单元,以获取所述终端装置所具有各个本地设备的本地设备信息。在本发明的一个优选实施例中,所述终端装置是不包含BIOS系统的终端装置。具体地,所述终端装置是嵌入式终端装置、巨型机服务器或通信设备等。此外,在本发明的一个优选实施例中,所述虚拟机监视器扫描PCI/PCIE配置空间,即设备本身自带的ROM,以便获取本地设备信息。在本发明的另一个优选实施例中,所述本地设备信息和远程设备信息包括设备厂商号、设备号、I/O空间范围、中断号等。此后,处理进到步骤S402。
在步骤S402中,所述虚拟机监视器将所获取的设备信息发送到相邻终端装置,并且从相邻终端装置接收所述相邻终端所具有的各个远程设备的远程设备信息。在本发明的一个优选实施例中,所述终端装置可以通过UPnP(通用即插即用)与所述相邻终端装置连接和进行设备信息的交换。此后,处理进到步骤S403。
在步骤S403中,所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上。在本发明的一个优选实施例中,所述虚拟机监视器以树状形式组织所述本地设备信息和远程设备信息。在本发明的另一个优选实施例中,所述虚拟机监视器以链表形式组织所述本地设备信息和远程设备信息。
具体地,所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上包括:所述虚拟机监视器基于所述本地设备信息和所接收的所述远程设备信息,整合所述本地设备所占用的系统资源和所述远程设备所占用的系统资源。也就是说,如果所述本地设备所占用的系统资源和所述远程设备所占用的系统资源存在冲突,则所述虚拟机监视器扫描所述终端装置以便为所述远程设备重新映射空余系统资源,并且如果不存在空余系统资源,则所述虚拟机监视器从所述虚拟总线上删除所述远程设备。如此,所述虚拟机监视器避免了本地设备与远程设备之间的资源冲突。
此外,根据本发明实施例的设备整合方法还将实现设备信息的实时更新。具体地,所述虚拟机监视器周期性地扫描所述总线配置存储单元,以便更新所述本地设备信息。同样地,所述虚拟机监视器周期性地从相邻终端装置接收更新的所述远程设备信息。此外,所述虚拟机监视器对于本地设备信息和远程设备信息的更新也可以是支持热插拔操作的。也就是说,一旦新的本地设备或远程设备接入到本地终端装置或远程终端装置,则所述虚拟机监视器将自动更新所述本地设备信息和所述远程设备信息。
在根据图4所示的设备整合方法整合设备资源之后,所述终端设备的操作系统将可以访问虚拟总线上的设备资源。具体来说,所述操作系统访问所述虚拟总线上的所述远程设备包括:所述操作系统向所述虚拟机监视器发出针对所述远程设备的I/O请求,如果所述I/O请求访问的I/O地址区间在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发给所述远程设备,并且如果所述I/O请求访问的I/O地址区间不在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发到本地设备上。也就是说,对于操作系统来说,其不会对本地设备和远程设备进行区分。而只有当对于设备的I/O请求访问的I/O地址区间在所述虚拟机监视器重映射的地址区间时,所述虚拟机监视器才将所述I/O请求转发给所述远程设备。
以上,参照图4描述了根据本发明实施例的设备整合方法。以下,将参照图5描述执行根据本发明实施例的设备整合方法的终端设备的各部件的功能。
图5是图示根据本发明实施例的分布式多终端装置系统中的终端设备的功能性框图。如图5所示,终端装置500和终端装置600构成一个分布式多终端装置系统。终端装置500包括但不限于客户操作系统501和虚拟机监视器502。同样,终端装置600包括但不限于客户操作系统601和虚拟机监视器602。此外,客户操作系统501和客户操作系统601分别管理用于存储设备信息的设备信息数据库503和603。在本发明的一个优选实施例中,设备信息数据库503和603用于存储由虚拟机监视器502和602组织在虚拟总线结构上的本地设备信息和远程设备信息。
具体地,在步骤S1中,终端装置600的虚拟机监视器602向终端装置500的虚拟机监视器502报告/更新其设备信息。
终端装置500的虚拟机监视器502基于从终端装置600接收的设备信息以及其本地设备信息,更新其设备信息数据库503。并且,在步骤S2中,虚拟机监视器502基于更新的设备信息,进行中断请求(IRQ)和直接存储器访问请求(DMA)的重映射。
当终端装置500的客户操作系统501需要访问设备信息数据库503中存在的硬件资源时,客户操作系统501将在步骤S3中向虚拟机监视器502发送I/O请求。
在虚拟机监视器502接收到所述I/O请求之后,其判断所述I/O请求访问的I/O地址区间是否在重映射的地址区间。如果获得肯定结果,则虚拟机监视器502将向虚拟机监视器602转发所述I/O请求。
通过如上所述的步骤S1到S4,在由终端装置500和终端装置600构成一个分布式多终端装置系统中,实现了对于设备资源的实时更新,以及终端装置对于远程终端装置上的远程设备的虚拟化使用。
以上,通过参照图1到图5描述了根据本发明实施例的基于虚拟化技术的设备整合方法、使用该设备整合方法的终端装置以及包括多个终端装置的分布式多终端装置系统。根据本发明的实施例,通过利用虚拟总线,实现本地终端装置的设备资源和远程终端装置的设备资源的有效整合、设备信息的实时更新、以及设备资源的高效共享。
需要说明的是,在本说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
最后,还需要说明的是,上述一系列处理不仅包括以这里所述的顺序按时间序列执行的处理,而且包括并行或分别地、而不是按时间顺序执行的处理。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (33)
1.一种设备整合方法,所述方法应用于其上运行有虚拟机监视器的终端装置,所述方法包括:
所述虚拟机监视器扫描所述终端装置的总线配置存储单元,以获取所述终端装置所具有各个本地设备的本地设备信息;
所述虚拟机监视器将所获取的设备信息发送到相邻终端装置,并且从相邻终端装置接收所述相邻终端所具有的各个远程设备的远程设备信息;
所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上。
2.如权利要求1所述的设备整合方法,其中所述虚拟机监视器以树状形式或链表形式组织所述本地设备信息和远程设备信息。
3.如权利要求1所述的设备整合方法,还包括:
所述虚拟机监视器周期性地扫描所述总线配置存储单元,以便更新所述本地设备信息。
4.如权利要求1所述的设备整合方法,还包括:
所述虚拟机监视器周期性地从相邻终端装置接收更新的所述远程设备信息。
5.如权利要求1到4的任一所述的设备整合方法,其中,所述本地设备信息和远程设备信息包括设备厂商号、设备号、I/O空间范围、中断号等。
6.如权利要求1到4的任一所述的设备整合方法,其中,所述终端装置是不包含BIOS系统的终端装置。
7.如权利要求6所述的设备整合方法,其中所述终端装置是嵌入式终端装置、巨型机服务器或者通信设备等。
8.如权利要求1所述的设备整合方法,其中所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上包括:
所述虚拟机监视器基于所述本地设备信息和所接收的所述远程设备信息,整合所述本地设备所占用的系统资源和所述远程设备所占用的系统资源。
9.如权利要求8所述的设备整合方法,还包括:
如果所述本地设备所占用的系统资源和所述远程设备所占用的系统资源存在冲突,则所述虚拟机监视器扫描所述终端装置以便为所述远程设备重新映射空余系统资源,并且如果不存在空余系统资源,则所述虚拟机监视器从所述虚拟总线上删除所述远程设备。
10.如权利要求9所述的设备整合方法,其中所述终端设备上运行的操作系统访问所述虚拟总线上的所述本地设备和所述远程设备。
11.如权利要求10所述的设备整合方法,其中所述操作系统访问所述虚拟总线上的所述远程设备包括:所述操作系统向所述虚拟机监视器发出针对所述远程设备的I/O请求,如果所述I/O请求访问的I/O地址区间在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发给所述远程设备,并且如果所述I/O请求访问的I/O地址区间不在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发到本地设备上。
12.一种终端装置,其上运行有虚拟机监视器,并且所述终端装置具有多个本地设备,其中
所述虚拟机监视器扫描所述终端装置的总线配置存储单元,以获取所述终端装置所具有各个本地设备的本地设备信息;
所述虚拟机监视器将所获取的设备信息发送到相邻终端装置,并且从相邻终端装置接收所述相邻终端所具有的各个远程设备的远程设备信息;
所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上。
13.如权利要求12所述的终端装置,其中所述虚拟机监视器以树状形式或链表形式组织所述本地设备信息和远程设备信息。
14.如权利要求12所述的终端装置,其中
所述虚拟机监视器周期性地扫描所述总线配置存储单元,以便更新所述本地设备信息。
15.如权利要求12所述的终端装置,其中
所述虚拟机监视器周期性地从相邻终端装置接收更新的所述远程设备信息。
16.如权利要求12到15的任一所述的终端装置,其中,所述本地设备信息和远程设备信息包括设备厂商号、设备号、I/O空间范围、中断号等。
17.如权利要求12到15的任一所述的终端装置,其中,所述终端装置是不包含BIOS系统的终端装置。
18.如权利要求17所述的设备整合方法,其中所述终端装置是嵌入式终端装置、巨型机服务器或通信设备等。
19.如权利要求12所述的终端装置,其中所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上包括:
所述虚拟机监视器基于所述本地设备信息和所接收的所述远程设备信息,整合所述本地设备所占用的系统资源和所述远程设备所占用的系统资源。
20.如权利要求19所述的终端装置,其中,如果所述本地设备所占用的系统资源和所述远程设备所占用的系统资源存在冲突,则所述虚拟机监视器扫描所述终端装置以便为所述远程设备重新映射空余系统资源,并且如果不存在空余系统资源,则所述虚拟机监视器从所述虚拟总线上删除所述远程设备。
21.如权利要求12所述的终端装置,其中所述终端设备上运行的操作系统访问所述虚拟总线上的所述本地设备和所述远程设备。
22.如权利要求21所述的终端装置,其中所述操作系统访问所述虚拟总线上的所述远程设备包括:所述操作系统向所述虚拟机监视器发出针对所述远程设备的I/O请求,如果所述I/O请求访问的I/O地址区间在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发给所述远程设备,并且如果所述I/O请求访问的I/O地址区间不在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发到本地设备上。
23.一种分布式多终端装置系统,所述系统包括多个终端装置,其中每个所述终端装置上运行有虚拟机监视器,并且每个所述终端装置具有多个本地设备,其中
所述虚拟机监视器扫描所述终端装置的总线配置存储单元,以获取所述终端装置所具有各个本地设备的本地设备信息;
所述虚拟机监视器将所获取的设备信息发送到相邻终端装置,并且从相邻终端装置接收所述相邻终端所具有的各个远程设备的远程设备信息;
所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上。
24.如权利要求23所述的分布式多终端装置系统,其中所述虚拟机监视器以树状形式或链表形式组织所述本地设备信息和远程设备信息。
25.如权利要求23所述的分布式多终端装置系统,其中
所述虚拟机监视器周期性地扫描所述总线配置存储单元,以便更新所述本地设备信息。
26.如权利要求23所述的分布式多终端装置系统,其中
所述虚拟机监视器周期性地从相邻终端装置接收更新的所述远程设备信息。
27.如权利要求23到26的任一所述的分布式多终端装置系统,其中,所述本地设备信息和远程设备信息包括设备厂商号、设备号、I/O空间范围、中断号等。
28.如权利要求23到26的任一所述的分布式多终端装置系统,其中,所述终端装置是不包含BIOS系统的终端装置。
29.如权利要求28所述的分布式多终端装置系统,其中所述终端装置是嵌入式终端装置、巨型机服务器或通信设备等。
30.如权利要求23所述的分布式多终端装置系统,其中所述虚拟机监视器将所述本地设备和所述远程设备组织在所述终端装置的虚拟总线上包括:
所述虚拟机监视器基于所述本地设备信息和所接收的所述远程设备信息,整合所述本地设备所占用的系统资源和所述远程设备所占用的系统资源。
31.如权利要求30所述的分布式多终端装置系统,其中,如果所述本地设备所占用的系统资源和所述远程设备所占用的系统资源存在冲突,则所述虚拟机监视器扫描所述终端装置以便为所述远程设备重新映射空余系统资源,并且如果不存在空余系统资源,则所述虚拟机监视器从所述虚拟总线上删除所述远程设备。
32.如权利要求23所述的分布式多终端装置系统,其中所述终端设备上运行的操作系统访问所述虚拟总线上的所述本地设备和所述远程设备。
33.如权利要求32所述的分布式多终端装置系统,其中所述操作系统访问所述虚拟总线上的所述远程设备包括:所述操作系统向所述虚拟机监视器发出针对所述远程设备的I/O请求,如果所述I/O请求访问的I/O地址区间在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发给所述远程设备,并且如果所述I/O请求访问的I/O地址区间不在重映射的地址区间,则所述虚拟机监视器将所述I/O请求转发到本地设备上。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210067455.6A CN103309833A (zh) | 2012-03-14 | 2012-03-14 | 设备整合方法、终端装置和分布式多终端装置系统 |
US13/799,427 US20130247038A1 (en) | 2012-03-14 | 2013-03-13 | Device-integration method, terminal-apparatus, and distributed multi-terminal-apparatus system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210067455.6A CN103309833A (zh) | 2012-03-14 | 2012-03-14 | 设备整合方法、终端装置和分布式多终端装置系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103309833A true CN103309833A (zh) | 2013-09-18 |
Family
ID=49135075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210067455.6A Pending CN103309833A (zh) | 2012-03-14 | 2012-03-14 | 设备整合方法、终端装置和分布式多终端装置系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20130247038A1 (zh) |
CN (1) | CN103309833A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109074525A (zh) * | 2016-05-17 | 2018-12-21 | 三菱电机大楼技术服务株式会社 | 维护管理装置、维护管理系统和程序 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9952877B2 (en) * | 2014-04-23 | 2018-04-24 | Cisco Technology, Inc. | Booting a physical device using custom-created frozen partially-booted virtual machines |
US9798567B2 (en) | 2014-11-25 | 2017-10-24 | The Research Foundation For The State University Of New York | Multi-hypervisor virtual machines |
US11579861B2 (en) | 2016-02-12 | 2023-02-14 | Nutanix, Inc. | Virtualized file server smart data ingestion |
US10838620B2 (en) * | 2016-05-26 | 2020-11-17 | Nutanix, Inc. | Efficient scaling of distributed storage systems |
US10922142B2 (en) | 2018-10-31 | 2021-02-16 | Nutanix, Inc. | Multi-stage IOPS allocation |
CN109684084A (zh) * | 2018-12-12 | 2019-04-26 | 浪潮(北京)电子信息产业有限公司 | 一种总线资源的分配方法、系统及相关组件 |
CN111917733B (zh) * | 2020-07-11 | 2022-08-30 | 深圳新贝奥数字科技有限公司 | 基于集成平台的设备集成方法、装置、设备及存储介质 |
-
2012
- 2012-03-14 CN CN201210067455.6A patent/CN103309833A/zh active Pending
-
2013
- 2013-03-13 US US13/799,427 patent/US20130247038A1/en not_active Abandoned
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109074525A (zh) * | 2016-05-17 | 2018-12-21 | 三菱电机大楼技术服务株式会社 | 维护管理装置、维护管理系统和程序 |
CN109074525B (zh) * | 2016-05-17 | 2022-08-23 | 三菱电机大楼技术服务株式会社 | 维护管理装置和维护管理系统 |
Also Published As
Publication number | Publication date |
---|---|
US20130247038A1 (en) | 2013-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103309833A (zh) | 设备整合方法、终端装置和分布式多终端装置系统 | |
CN107995215B (zh) | 智能家居设备的控制方法、装置及云平台服务器 | |
CN106569727B (zh) | 一种多控制器间多存储器共享并行数据读写装置及其写入、读取方法 | |
US10102035B2 (en) | Techniques for computing resource discovery and management in a data center | |
CN102722414B (zh) | 用于多根i/o 虚拟化共享系统的i/o 资源管理方法 | |
CN103150279B (zh) | 一种主机与基板管理控制器共享设备的方法 | |
CN101163133B (zh) | 一种多机虚拟环境下实现资源共享的通信系统及通信方法 | |
CN104657308A (zh) | 一种用fpga实现的服务器硬件加速的方法 | |
WO2017080257A1 (zh) | 一种基于键值对的数据处理方法及系统 | |
US10027596B1 (en) | Hierarchical mapping of applications, services and resources for enhanced orchestration in converged infrastructure | |
CN110290166B (zh) | 跨集群数据交互方法、系统、装置及可读存储介质 | |
CN104754008A (zh) | 网络存储节点、网络存储系统以及用于网络存储节点的装置和方法 | |
CN103034295A (zh) | 输入输出能力增强的可重构微服务器 | |
CN105472291A (zh) | 多处理器集群的数字硬盘录像机及其实现方法 | |
WO2020215752A1 (zh) | 图计算方法及装置 | |
CN105677605A (zh) | 一种高效的可配置片上互联系统及其实现方法、装置 | |
CN103167037A (zh) | 基于模块化的云计算系统 | |
CN107070709A (zh) | 一种基于底层numa感知的nfv实现方法 | |
CN108737499A (zh) | 服务器配置方法和装置 | |
CN105630718A (zh) | 提供主机即时切换分享通用串行总线电子设备的电子装置 | |
CN105359122A (zh) | 多cpu系统中的增强型数据传输 | |
CN115114042A (zh) | 存储数据访问方法、装置、电子设备和存储介质 | |
CN104657216A (zh) | 一种资源池的资源分配方法及装置 | |
CN105491082A (zh) | 远程资源访问方法和交换设备 | |
CN103441925A (zh) | 家庭网关设备及在家庭网关设备上挂载存储设备的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130918 |