公开用于注入事务以支持物理设备控制器的虚拟化的装置、方法和系统的实施例。在一个实施例中,装置包括处理器、系统存储器、物理设备控制器和虚拟化代理。物理设备控制器要由通过安装在处理器上的虚拟机监视器创建的多个虚拟机共享。虚拟化代理通过第一接口耦合到系统存储器,并通过第二接口耦合到物理设备控制器,以将物理设备控制器表示为可用于分配给所述多个虚拟机的多个虚拟设备控制器,并代表所述多个虚拟设备控制器将事务注入到第一接口和第二接口上。
【技术实现步骤摘要】
本公开涉及信息处理领域,更具体地说,涉及信息处理系统中的虚拟化领域。
技术介绍
一般来说,信息处理系统中的虚拟化概念允许一个或多个操作系统的多个实例 (均为“Os”)在单个信息处理系统上运行,即使每个OS设计成具有对系统及其资源的完 全、直接控制。通常通过利用软件(例如,虚拟机监视器或“VMM”)来实现虚拟化以向每个 OS呈现具有该OS可完全且直接控制的虚拟资源(包括一个或多个虚拟处理器)的“虚拟 机”(“VM”),而VMM维持用于实现诸如在VM之间共享和/或分配物理资源的虚拟化策略 的系统环境(“虚拟化环境”)。在VM上运行的每个OS和任何其它软件称为“访客”或“访 客软件”,而“主机”或“主机软件”是在虚拟化环境之外运行的诸如VMM的软件。信息处理系统中的物理处理器可通过例如支持进入虚拟化环境以在VM中的虚拟 处理器(即,在VMM施加的约束下的物理处理器)上运行“访客”的指令而支持虚拟化。在 虚拟化环境中,诸如访问有特权的寄存器或资源的外部中断或尝试的某些事件、操作和情 形可被拦截,即,使处理器退出虚拟化环境,以使得VMM可进行操作以便例如实现虚拟化策 略。 可在专用基础上将系统中的诸如输入/输出设备控制器的物理资源指定或分配 给VM0或者,通过拦截涉及某个物理资源的所有事务以使得VMM可执行、重定向或限制每个 事务,多个VM可共享该物理资源。第三种方法可以是将物理资源设计成使它具有用作多个 虚拟资源的能力。
技术实现思路
本专利技术涉及一种装置,包括处理器;系统存储器;要由多个虚拟机共享的物理设备控制器,所述多个虚拟机由安装在所述处理器上 的虚拟机监视器创建;通过第一接口耦合到所述系统存储器并通过第二接口耦合到所述物理设备控制 器的虚拟化代理,用于将所述物理设备控制器表示为可用于分配给所述多个虚拟机的多个 虚拟设备控制器,并代表所述多个虚拟设备控制器将事务注入到所述第一接口和所述第二 接口上。附图说明附图中举例而非限制性地示出本专利技术。图1示出根据本专利技术一个实施例用于注入事务的装置。图2示出根据本专利技术一个实施例用于注入事务的方法。具体实施例方式如下所述,本专利技术可在用于注入事务以支持物理设备控制器的虚拟化的装置或方法中实施。在本描述中,阐述了诸如组件和系统配置的众多具体细节,以便可以更全面地理 解本专利技术。但是,本领域技术人员将明白,没有这些具体细节也可实现本专利技术。另外,没有 详细示出一些熟知的结构、电路等,以免不必要地使本专利技术的描述晦涩难懂。希望多个虚拟机可共享单个物理设备控制器,而无需VMM拦截涉及该设备控制器 的所有事务,或无需将设备控制器重新设计成支持虚拟化。因此,本专利技术的实施例可通过捕 获涉及物理设备控制器的事务并代表虚拟设备控制器注入事务而支持将单个物理设备控 制器表示为多个虚拟设备控制器。本专利技术的实施例的元件可在硬件、软件、固件、或硬件、软件或固件的任何组合中 实现。术语“硬件”一般是指具有物理结构的元件,如电子、电磁、光、光电、机械、机电零件 等。术语“软件”一般是指逻辑结构、方法、过程、程序、例行程序、进程、算法、公式、表达式 等。术语“固件”一般是指在硬件结构(如闪速存储器或只读存储器)中实现或实施的逻 辑结构、方法、过程、程序、例行程序、进程、算法、公式或表达式。固件的实例有微代码、可写 控制存储和微编程结构。图1示出根据本专利技术一个实施例可在其中注入事务的信息处理系统100。信息处 理系统100包括裸平台硬件110,它可以是能够执行任何OS、VMM或其它软件的任何装置。 例如,裸平台硬件110可以是个人计算机、大型计算机、便携式计算机、手持设备、机顶盒、 服务器或任何其它计算系统的硬件。在此实施例中,裸平台硬件110包括处理器120、芯片 集130、系统存储器140和设备控制器150。处理器120可以是具有一个或多个执行核的任何组件,其中每个执行核可基于各 种不同类型的处理器中的任何处理器,这些不同类型的处理器包括通用微处理器,例如 Intel Pentium 处理器系列、Itanium 处理器系列、Intel .公司的其它处理器系列中的处理器或另一公司的另一处理器;或数字信号处理器或微控制器。尽管图1只示出一个 这样的处理器120,但裸处理硬件Iio可包括任何数量的处理器,包括任何数量的多核处 理器,每个多核处理器具有任何数量的执行核;以及任何数量的多线程处理器,每个多线程 处理器具有任何数量的线程。芯片集130可以是支持存储器操作、输入/输出操作、配置、控制、内部或外部接 口、连接、或通信功能(例如,“胶合”逻辑和总线桥)和/或处理器120和/或系统100的 任何类似功能的任何电路和逻辑组。芯片集130的各个元件可集合在单个芯片上、一对芯 片上、散布在多个芯片中,和/或部分地、全部地、冗余地、或根据分布式方法集成到包括处 理器120在内的一个或多个处理器中。在此实施例中,芯片集130包括如下所述的根据本 专利技术一个实施例用于注入事务的虚拟化逻辑132。在其它实施例中,虚拟化逻辑132可包含 在系统100的其它地方。系统存储器140可包括其上可存储诸如数据和/或指令的信息的任何介质,例如 静态或动态随机存取存储器、基于半导体的只读存储器或闪速存储器、磁或光盘存储器、或 可由处理器120读取的任何其它类型的介质、或这些介质的任何组合。设备控制器150可表示任何类型的I/O、外围设备或可由在VM中运行的访客软件使用的其它设备的控制器,例如硬盘控制器、音频控制器、网络接口控制器、外围总线控制 器等。设备控制器150可在离散组件中实施,或可包含在具有任何其它设备控制器的集成 组件中。在一个实施例中,设备控制器150可表示多功能I/O、外围设备或其它设备控制器 中的功能。设备控制器150可包括用于存储配置信息的配置存储设备152。处理器120、芯片集130、系统存储器140和设备控制器150可根据任何已知方法 彼此耦合或相互通信,这些已知方法可以是例如直接法、或通过一种或多种并行、顺序、流 水线、异步、同步、有线、无线或其它总线或点对点连接或通信方式的间接法。例如,在此实 施例中,处理器120和芯片集130可通过接口 170耦合到系统存储器140,并且芯片集130 可通过接口 180耦合到设备控制器150。系统100还可包括任何数量的额外代理、组件或连 接。系统100还包括VMM 160与VM 162和164。V匪160可以是经安装而可在裸平台硬件110上运行或可供裸平台硬件110访问以向访客呈现VM(即,裸平台硬件110的抽象) 或以其它方式创建VM、管理VM并在系统100内实现虚拟化策略的任何软件、固件或硬件主 机。在其它实施例中,主机可以是能够控制裸平台硬件110的任何VMM、管理程序、OS、或其 它软件、固件或硬件。访客可以是任何OS、包括VMM 160的另一实例在内的任何VMM、任何 管理程序、或任何应用或其它软件。根据VM中呈现的处理器和平台的体系结构,每个访客预期能访问裸平台硬件110 或由VMM 160虚拟化的平台的资源,例如处理器和平台寄存器、存储器和输入/输出设备。 图1示出两个VM 162和164,可在每个VM上安装访客OS和任何数量的访客应用。尽管图 1本文档来自技高网...
【技术保护点】
一种装置,包括:处理器;系统存储器;要由多个虚拟机共享的物理设备控制器,所述多个虚拟机由安装在所述处理器上的虚拟机监视器创建;通过第一接口耦合到所述系统存储器并通过第二接口耦合到所述物理设备控制器的虚拟化代理,用于将所述物理设备控制器表示为可用于分配给所述多个虚拟机的多个虚拟设备控制器,并代表所述多个虚拟设备控制器将事务注入到所述第一接口和所述第二接口上。
【技术特征摘要】
...
【专利技术属性】
技术研发人员:Z博金,S卡里纳海利,R纳拉瓦迪,E费拉拉,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。