Systems and methods for initializing multiple virtual processors within a single virtual machine
    32.
    发明授权
    Systems and methods for initializing multiple virtual processors within a single virtual machine 有权
    在单个虚拟机中初始化多个虚拟处理器的系统和方法

    公开(公告)号:US08271976B2

    公开(公告)日:2012-09-18

    申请号:US10882967

    申请日:2004-06-30

    IPC分类号: G06F9/455 G06F9/46

    CPC分类号: G06F9/45533 G06F9/5077

    摘要: The present invention is a system for and method of initializing multiple virtual processors in a virtual machine (VM) environment. The method of initializing multiple virtual processors includes the steps of the host creating a multiple processor VM and activating a “starter virtual processor,” the “starter virtual processor” issuing a startup command to a next virtual processor, the virtual machine monitor (VMM) giving the target virtual processor the highest priority for accessing the hardware resources, the VMM forcing the “starter virtual processor” to relinquish control of the hardware resources, the VMM handing control of the hardware resources to the target virtual processor, the target virtual processor executing and completing its startup routine, the VMM forcing the target virtual processor to relinquish control of the hardware resources, and the VMM handing control of the hardware resources back to the “starter virtual processor” for activating subsequent virtual processors.

    摘要翻译: 本发明是在虚拟机(VM)环境中初始化多个虚拟处理器的系统和方法。 初始化多个虚拟处理器的方法包括以下步骤:主机创建多处理器VM并激活“起动器虚拟处理器”,向起动虚拟处理器发出启动命令的“起动器虚拟处理器”,虚拟机监视器(VMM) 使目标虚拟处理器成为访问硬件资源的最高优先级,VMM迫使“启动器虚拟处理器”放弃对硬件资源的控制,将VMM对目标虚拟处理器的硬件资源的控制,目标虚拟处理器执行 并完成其启动例程,VMM强制目标虚拟处理器放弃对硬件资源的控制,以及将硬件资源的VMM切换回“起动器虚拟处理器”以激活后续虚拟处理器。

    Systems and methods for an augmented interrupt controller and synthetic interrupt sources
    34.
    发明授权
    Systems and methods for an augmented interrupt controller and synthetic interrupt sources 有权
    扩展中断控制器和合成中断源的系统和方法

    公开(公告)号:US07689747B2

    公开(公告)日:2010-03-30

    申请号:US11092012

    申请日:2005-03-28

    IPC分类号: G06F13/24

    CPC分类号: G06F13/26

    摘要: Various embodiments of the present invention are directed to augmented interrupt controllers (AICs) and to synthetic interrupt sources (SISs) providing richer interrupt information (or “synthetic interrupts” or “SIs”). The AIC and SIS provide efficient means for sending and receiving interrupts, and particularly interrupts sent to and received by virtual machines. Several of these embodiments are specifically directed to an interrupt controller that is extended to accept and deliver additional information associated with an incoming interrupt. For certain such embodiments, a memory-mapped extension to the interrupt controller includes a data structure that is populated with the additional information as part of the interrupt delivery. Although several of the embodiments described herein are disclosed in the context of a virtual machine system, the inventions disclosed herein can also be applied to traditional computer systems (without a virtualization layer) as well.

    摘要翻译: 本发明的各种实施例涉及增强中断控制器(AIC)和提供更丰富的中断信息(或“合成中断”或“SI”)的合成中断源(SIS)。 AIC和SIS提供发送和接收中断的有效手段,特别是发送到虚拟机并由其接收的中断。 这些实施例中的几个具体涉及一个中断控制器,该中断控制器被扩展以接受和传送与进入中断相关联的附加信息。 对于某些这样的实施例,对中断控制器的存储器映射扩展包括作为中断传递的一部分的附加信息的数据结构。 虽然本文所描述的几个实施例在虚拟机系统的上下文中被公开,但是本文公开的发明也可以应用于传统的计算机系统(没有虚拟化层)。

    Systems and methods for multi-level intercept processing in a virtual machine environment
    35.
    发明授权
    Systems and methods for multi-level intercept processing in a virtual machine environment 有权
    在虚拟机环境中进行多级拦截处理的系统和方法

    公开(公告)号:US07685635B2

    公开(公告)日:2010-03-23

    申请号:US11078141

    申请日:2005-03-11

    IPC分类号: G06F7/04

    摘要: Various embodiments of the present invention are directed to a multi-level virtualizer that is designed to remove much of the intercept-related functionality from the base-level virtualizer (that exists outside of each partition) and, instead, incorporate much of this functionality directly into each partition. For several of the embodiments, certain intercept handling functions are performed by an “external monitor” that runs within a partition and responds to specific intercept events, and the base-level virtualizer installs these external monitors within each partition and thereafter manages the external monitors for both single-partition and cross-partition intercept events. This distributed approach to intercept handling allows for a much less complex virtualizer and moves the intercept functionality up into each partition where each external monitor uses the resources of the corresponding guest operating system in that partition to resolve the intercept event.

    摘要翻译: 本发明的各种实施例涉及一种多级虚拟器,其被设计为从基本级虚拟器(存在于每个分区之外)移除大部分拦截相关的功能,并且直接并入大部分功能 进入每个分区。 对于几个实施例,某些拦截处理功能由在分区内运行并响应特定拦截事件的“外部监视器”执行,并且基本级虚拟器在每个分区内安装这些外部监视器,然后管理外部监视器 单分区和跨分区拦截事件。 拦截处理的这种分布式方法允许一个不那么复杂的虚拟机,并将拦截功能移动到每个分区,每个外部监视器使用该分区中相应的客户机操作系统的资源来解决拦截事件。

    Enhanced shadow page table algorithms
    36.
    发明授权
    Enhanced shadow page table algorithms 有权
    增强的影子页表算法

    公开(公告)号:US07650482B2

    公开(公告)日:2010-01-19

    申请号:US11849774

    申请日:2007-09-04

    IPC分类号: G06F9/26

    摘要: Enhanced shadow page table algorithms are presented for enhancing typical page table algorithms. In a virtual machine environment, where an operating system may be running within a partition, the operating system maintains it's own guest page tables. These page tables are not the real page tables that map to the real physical memory. Instead, the memory is mapped by shadow page tables maintained by a virtualing program, such as a hypervisor, that virtualizes the partition containing the operating system. Enhanced shadow page table algorithms provide efficient ways to harmonize the shadow page tables and the guest page tables. Specifically, by using tagged translation lookaside buffers, batched shadow page table population, lazy flags, and cross-processor shoot downs, the algorithms make sure that changes in the guest pages tables are reflected in the shadow page tables.

    摘要翻译: 提出了增强的影子页表算法,用于增强典型的页表算法。 在虚拟机环境中,操作系统可能在分区内运行,操作系统维护它自己的访客页表。 这些页表不是映射到真实物理内存的真实页表。 相反,内存由虚拟化程序(例如虚拟机管理程序)维护的影子页表映射,虚拟化包含操作系统的分区。 增强的影子页表算法提供了有效的方式来协调阴影页表和访客页表。 具体来说,通过使用标记的翻译后备缓冲区,批量阴影页表群,延迟标记和跨处理器拍摄,算法确保访客页表中的更改反映在影子页表中。

    Operational efficiency of virtual TLBs
    37.
    发明申请
    Operational efficiency of virtual TLBs 有权
    虚拟TLB的运行效率

    公开(公告)号:US20080133875A1

    公开(公告)日:2008-06-05

    申请号:US11634782

    申请日:2006-12-05

    IPC分类号: G06F9/34

    摘要: Various mechanisms are disclosed for improving the operational efficiency of a virtual translation look-aside buffer (TLB) in a virtual machine environment. For example, one mechanism fills in entries in a shadow page table (SPT) and additionally, speculatively fills in other entries in the SPT based on various heuristics. Another mechanism allows virtual TLBs (translation look-aside buffers) to cache partial walks in a guest page table tree. Still another mechanism allows for dynamic resizing of the virtual TLB to optimize for run-time characteristics of active workloads. Still another mechanism allows virtual machine monitors (VMMs) to support legacy and enlightened modes of virtual TLB operation. Finally, another mechanism allows the VMM to remove only the stale entries in SPTs when linking or switching address spaces. All these mechanisms, together or in part, increase the operational efficiency of the virtual TLB.

    摘要翻译: 公开了用于提高虚拟机环境中的虚拟翻译后备缓冲器(TLB)的操作效率的各种机制。 例如,一个机制填充影子页表(SPT)中的条目,另外,基于各种启发式,推测性地填写SPT中的其他条目。 另一种机制允许虚拟TLB(转换后备缓冲区)在访客页表树中缓存部分散步。 另一种机制允许虚拟TLB的动态调整大小以优化活动工作负载的运行时特性。 另一种机制允许虚拟机监视器(VMM)支持传统和开明的虚拟TLB操作模式。 最后,另一种机制允许VMM在链接或切换地址空间时删除SPT中的陈旧条目。 所有这些机制,共同或部分地提高了虚拟TLB的运营效率。

    Systems and methods for voluntary migration of a virtual machine between hosts with common storage connectivity
    38.
    发明授权
    Systems and methods for voluntary migration of a virtual machine between hosts with common storage connectivity 有权
    在具有通用存储连接性的主机之间自愿迁移虚拟机的系统和方法

    公开(公告)号:US07383405B2

    公开(公告)日:2008-06-03

    申请号:US10882972

    申请日:2004-06-30

    IPC分类号: G06F12/00 G06F9/26

    CPC分类号: G06F9/4856

    摘要: The present invention is a system and method that performs disk migration in a virtual machine environment. The present invention quickly and easily migrates a virtual machine from one host to another thus improving flexibility and efficiency in a virtual machine environment for “load balancing” systems, performing hardware or software upgrades, handling disaster recovery, and so on. Certain of the embodiments are specifically directed to providing a mechanism for migrating the disk state along with the device and memory states, where the disk data resides in a remotely located storage device that is common to multiple host computer systems in a virtual machine environment. The virtual machine migration process, which includes disk data migration, occurs without the user's awareness and, therefore, without the user's experiencing any noticeable interruption.

    摘要翻译: 本发明是在虚拟机环境中执行磁盘迁移的系统和方法。 本发明快速且容易地将虚拟机从一个主机迁移到另一个主机,从而提高虚拟机环境中的“负载平衡”系统的灵活性和效率,执行硬件或软件升级,处理灾难恢复等。 某些实施例具体涉及提供一种用于随着设备和存储器状态迁移磁盘状态的机制,其中磁盘数据驻留在虚拟机环境中对于多个主机计算机系统公用的位于远程的存储设备中。 虚拟机迁移过程(包括磁盘数据迁移)在没有用户意识的情况下发生,因此没有用户经历任何明显的中断。

    Method and system for caching address translations from multiple address spaces in virtual machines
    39.
    发明授权
    Method and system for caching address translations from multiple address spaces in virtual machines 有权
    用于从虚拟机中的多个地址空间缓存地址转换的方法和系统

    公开(公告)号:US07363463B2

    公开(公告)日:2008-04-22

    申请号:US11128982

    申请日:2005-05-13

    IPC分类号: G06F12/00

    摘要: A method of virtualizing memory through shadow page tables that cache translations from multiple guest address spaces in a virtual machine includes a software version of a hardware tagged translation look-aside buffer. Edits to guest page tables are detected by intercepting the creation of guest-writable mappings to guest page tables with translations cached in shadow page tables. The affected cached translations are marked as stale and purged upon an address space switch or an indiscriminate flush of translations by the guest. Thereby, non-stale translations remain cached but stale translations are discarded. The method includes tracking the guest-writable mappings to guest page tables, deferring discovery of such mappings to a guest page table for the first time until a purge of all cached translations when the number of untracked guest page tables exceeds a threshold, and sharing shadow page tables between shadow address spaces and between virtual processors.

    摘要翻译: 通过影像页表虚拟化存储器的方法,其缓存来自虚拟机中的多个访客地址空间的转换,包括硬件标记的翻译后备缓冲器的软件版本。 通过拦截向客户页面表创建客户机可写映射,并通过缓存在阴影页表中的翻译来检测访客页面表的编辑。 受影响的缓存翻译被标记为陈旧,并被清除在地址空间开关或客人不加区别地翻译翻译。 因此,非陈旧的翻译仍保持高速缓存,但是陈旧的翻译将被丢弃。 该方法包括跟踪访客页面表的访客可写映射,将此类映射的发现推迟到访客页面表,直到当未跟踪的访客页面表的数量超过阈值时清除所有缓存的翻译,并共享阴影 阴影地址空间和虚拟处理器之间的页表。

    Enhanced shadow page table algorithms
    40.
    发明授权
    Enhanced shadow page table algorithms 有权
    增强的影子页表算法

    公开(公告)号:US07299337B2

    公开(公告)日:2007-11-20

    申请号:US11128665

    申请日:2005-05-12

    IPC分类号: G06F9/26

    摘要: Enhanced shadow page table algorithms are presented for enhancing typical page table algorithms. In a virtual machine environment, where an operating system may be running within a partition, the operating system maintains it's own guest page tables. These page tables are not the real page tables that map to the real physical memory. Instead, the memory is mapped by shadow page tables maintained by a virtualing program, such as a hypervisor, that virtualizes the partition containing the operating system. Enhanced shadow page table algorithms provide efficient ways to harmonize the shadow page tables and the guest page tables. Specifically, by using tagged translation lookaside buffers, batched shadow page table population, lazy flags, and cross-processor shoot downs, the algorithms make sure that changes in the guest pages tables are reflected in the shadow page tables.

    摘要翻译: 提出了增强的影子页表算法,用于增强典型的页表算法。 在虚拟机环境中,操作系统可能在分区内运行,操作系统维护它自己的访客页表。 这些页表不是映射到真实物理内存的真实页表。 相反,内存由虚拟化程序(例如虚拟机管理程序)维护的影子页表映射,虚拟化包含操作系统的分区。 增强的影子页表算法提供了有效的方式来协调阴影页表和访客页表。 具体来说,通过使用标记的翻译后备缓冲区,批量阴影页表群,延迟标记和跨处理器拍摄,算法确保访客页表中的更改反映在影子页表中。