Trace collection for a virtual machine
    1.
    发明授权
    Trace collection for a virtual machine 有权
    虚拟机的跟踪收集

    公开(公告)号:US08832682B2

    公开(公告)日:2014-09-09

    申请号:US12058545

    申请日:2008-03-28

    IPC分类号: G06F9/455

    摘要: One embodiment is a computer-implemented method of trace collection for a virtual machine that includes: executing a sequence of instructions from an initial state of the virtual machine; accessing an event log of data relating to nondeterministic events, which data includes an execution point; making at least a portion of the data available to the virtual machine when the sequence reaches the execution point; collecting trace information in response to expansion parameters; and storing the trace information in a trace file.

    摘要翻译: 一个实施例是用于虚拟机的跟踪收集的计算机实现的方法,包括:从虚拟机的初始状态执行指令序列; 访问与非确定性事件有关的数据的事件日志,所述数据包括执行点; 当所述序列到达所述执行点时,使所述数据的至少一部分可用于所述虚拟机; 根据扩展参数收集跟踪信息; 并将跟踪信息存储在跟踪文件中。

    Trace Collection for a Virtual Machine
    2.
    发明申请
    Trace Collection for a Virtual Machine 有权
    虚拟机的跟踪收集

    公开(公告)号:US20090248611A1

    公开(公告)日:2009-10-01

    申请号:US12058545

    申请日:2008-03-28

    IPC分类号: G06F17/30

    摘要: One embodiment is a computer-implemented method of trace collection for a virtual machine that includes: executing a sequence of instructions from an initial state of the virtual machine; accessing an event log of data relating to nondeterministic events, which data includes an execution point; making at least a portion of the data available to the virtual machine when the sequence reaches the execution point; collecting trace information in response to expansion parameters; and storing the trace information in a trace file.

    摘要翻译: 一个实施例是用于虚拟机的跟踪收集的计算机实现的方法,包括:从虚拟机的初始状态执行指令序列; 访问与非确定性事件有关的数据的事件日志,所述数据包括执行点; 当所述序列到达所述执行点时,使所述数据的至少一部分可用于所述虚拟机; 根据扩展参数收集跟踪信息; 并将跟踪信息存储在跟踪文件中。

    Virtual machine fault tolerance
    3.
    发明授权
    Virtual machine fault tolerance 有权
    虚拟机容错

    公开(公告)号:US08201169B2

    公开(公告)日:2012-06-12

    申请号:US12484640

    申请日:2009-06-15

    IPC分类号: G06F9/455 G06F9/46 G06F11/00

    摘要: In a computer system running a primary virtual machine (VM) on virtualization software on a primary virtualized computer system (VCS) and running a secondary VM on virtualization software on a secondary VCS, a method for the secondary VM to provide quasi-lockstep fault tolerance for the primary VM includes: as the primary VM is executing a workload, virtualization software in the primary VCS is: (a) causing predetermined events to be recorded in an event log, (b) keeping output associated with the predetermined events pending, and (c) sending the log entries to the virtualization software in the secondary VCS; as the secondary VM is replaying the workload, virtualization software in the secondary VCS is: (a) sending acknowledgements indicating that log entries have been received; (b) when the virtualization software encounters one of the predetermined events, searching the log entries to determine whether a log entry corresponding to the same event was received from the primary VCS, and if so, comparing data associated with the predetermined event produced by the secondary VM with that of the primary VM; if there is a match, the virtualization software in the secondary VCS transmitting an acknowledgement to the virtualization software in the primary VCS; one of the virtualization software in the primary or secondary VCS dropping the event and the other dispatching the output; and if there is no match, performing a checkpoint resynchronization.

    摘要翻译: 在主虚拟化计算机系统(VCS)上的虚拟化软件上运行主虚拟机(VM)并在辅助VCS上运行虚拟化软件上的辅助虚拟机的计算机系统中,辅助虚拟机提供准锁步骤容错 对于主虚拟机包括:当主虚拟机正在执行工作负载时,主VCS中的虚拟化软件是:(a)使事件日志中记录预定事件,(b)保持与预定事件挂起的输出挂起,以及 (c)将日志条目发送到二级VCS中的虚拟化软件; 当辅助虚拟机正在重播工作负载时,辅助VCS中的虚拟化软件是:(a)发送指示已经接收到日志条目的确认; (b)当虚拟化软件遇到预定事件之一时,搜索日志条目以确定是否从主VCS接收到与同一事件相对应的日志条目,如果是,则将与由该VCS生成的预定事件相关联的数据进行比较 辅助虚拟机与主虚拟机的辅助虚拟机; 如果存在匹配,则次级VCS中的虚拟化软件向主VCS中的虚拟化软件发送确认; 主要或次要VCS中的虚拟化软件之一放弃事件,另一个调度输出; 如果没有匹配,则执行检查点重新同步。

    Adaptive dynamic selection and application of multiple virtualization techniques
    5.
    发明授权
    Adaptive dynamic selection and application of multiple virtualization techniques 有权
    自适应动态选择和应用多种虚拟化技术

    公开(公告)号:US08561061B2

    公开(公告)日:2013-10-15

    申请号:US12152517

    申请日:2008-05-14

    IPC分类号: G06F9/455

    摘要: Autonomous selection between multiple virtualization techniques implemented in a virtualization layer of a virtualized computer system. The virtual machine monitor implements multiple virtualization support processors that each provide for the comprehensive handling of potential virtualization exceptions. A virtual machine monitor resident virtualization selection control is operable to select between use of first and second virtualization support processors dependent on identifying a predetermined pattern of temporally local privilege dependent instructions within a portion of an instruction stream as encountered in the execution of a guest operating system.

    摘要翻译: 在虚拟化计算机系统的虚拟化层中实现的多个虚拟化技术之间的自主选择。 虚拟机监视器实现多个虚拟化支持处理器,每个虚拟化支持处理器都可以全面处理潜在的虚拟化异常。 虚拟机监视器驻留虚拟化选择控制可操作以在使用第一和第二虚拟化支持处理器之间进行选择,这取决于在客户机操作系统的执行中遇到的指令流的一部分内识别时间上依赖于本地特权依赖指令的预定模式 。

    Adaptive dynamic selection and application of multiple virtualization techniques
    6.
    发明申请
    Adaptive dynamic selection and application of multiple virtualization techniques 有权
    自适应动态选择和应用多种虚拟化技术

    公开(公告)号:US20080288941A1

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

    申请号:US12152517

    申请日:2008-05-14

    IPC分类号: G06F9/455

    摘要: Autonomous selection between multiple virtualization techniques implemented in a virtualization layer of a virtualized computer system. The virtual machine monitor implements multiple virtualization support processors that each provide for the comprehensive handling of potential virtualization exceptions. A virtual machine monitor resident virtualization selection control is operable to select between use of first and second virtualization support processors dependent on identifying a predetermined pattern of temporally local privilege dependent instructions within a portion of an instruction stream as encountered in the execution of a guest operating system.

    摘要翻译: 在虚拟化计算机系统的虚拟化层中实现的多个虚拟化技术之间的自主选择。 虚拟机监视器实现多个虚拟化支持处理器,每个虚拟化支持处理器都可以全面处理潜在的虚拟化异常。 虚拟机监视器驻留虚拟化选择控制可操作以在使用第一和第二虚拟化支持处理器之间进行选择,这取决于在客户机操作系统的执行中遇到的指令流的一部分内识别时间上依赖于本地特权依赖指令的预定模式 。

    Virtualization system for computers having multiple protection mechanisms
    7.
    发明授权
    Virtualization system for computers having multiple protection mechanisms 有权
    具有多重保护机制的计算机的虚拟化系统

    公开(公告)号:US07908646B1

    公开(公告)日:2011-03-15

    申请号:US11865670

    申请日:2007-10-01

    IPC分类号: G06F7/04

    CPC分类号: G06F12/1466 G06F9/45537

    摘要: In a virtual computer system, the invention virtualizes a primary protection mechanism, which restricts memory accesses based on the type of access attempted and a current hardware privilege level, using a secondary protection mechanism, which is independent of the hardware privilege level. The invention may be used to virtualize the protection mechanisms of the Intel IA-64 architecture. In this embodiment, virtual access rights settings in a virtual TLB are translated into shadow access rights settings in a hardware TLB, while virtual protection key settings in a virtual PKR cache are translated into shadow protection key settings in a hardware PKR cache, based in part on the virtual access rights settings. The shadow protection key settings are dependent on the guest privilege level, but the shadow access rights settings are not.

    摘要翻译: 在虚拟计算机系统中,本发明使用独立于硬件特权级别的次级保护机制来虚拟化主保护机制,其基于尝试的访问类型和当前硬件特权级别来限制存储器访问。 本发明可以用于虚拟化Intel IA-64架构的保护机制。 在该实施例中,虚拟TLB中的虚拟访问权限设置被转换为硬件TLB中的影子访问权限设置,而虚拟PKR高速缓存中的虚拟保护密钥设置被部分地转换为硬件PKR高速缓存中的影子保护密钥设置 对虚拟访问权限设置。 影子保护键设置取决于访客权限级别,但影子访问权限设置不是。

    Restricting memory access to protect data when sharing a common address space
    8.
    发明授权
    Restricting memory access to protect data when sharing a common address space 有权
    限制内存访问以在共享公共地址空间时保护数据

    公开(公告)号:US07506122B1

    公开(公告)日:2009-03-17

    申请号:US11865641

    申请日:2007-10-01

    IPC分类号: G06F12/00

    摘要: A first software entity occupies a portion of a linear address space of a second software entity and prevents the second software entity from accessing the memory of the first software entity. For example, in one embodiment of the invention, the first software entity is a virtual machine monitor (VMM), which supports a virtual machine (VM), the second software entity. The VMM sometimes directly executes guest instructions from the VM and, at other times, the VMM executes binary translated instructions derived from guest instructions. When executing binary translated instructions, the VMM uses memory segmentation to protect its memory. When directly executing guest instructions, the VMM may use either memory segmentation or a memory paging mechanism to protect its memory. When the memory paging mechanism is active during direct execution, the protection from the memory segmentation mechanism may be selectively deactivated to improve the efficiency of the virtual computer system.

    摘要翻译: 第一软件实体占用第二软件实体的线性地址空间的一部分,并且防止第二软件实体访问第一软件实体的存储器。 例如,在本发明的一个实施例中,第一软件实体是支持虚拟机(VM)的第二软件实体的虚拟机监视器(VMM)。 VMM有时直接从VM执行访客指令,而在其他时候,VMM执行从访客指令导出的二进制翻译指令。 当执行二进制转换指令时,VMM使用存储器分段来保护其内存。 当直接执行访客指令时,VMM可以使用存储器分段或存储器寻呼机制来保护其存储器。 当存储器分页机制在直接执行期间有效时,可以选择性地停止对存储器分段机制的保护,以提高虚拟计算机系统的效率。

    Restricting memory access to protect data when sharing a common address space

    公开(公告)号:US07487313B1

    公开(公告)日:2009-02-03

    申请号:US11865635

    申请日:2007-10-01

    IPC分类号: G06F12/00

    摘要: A first software entity occupies a portion of a linear address space of a second software entity and prevents the second software entity from accessing the memory of the first software entity. For example, in one embodiment of the invention, the first software entity is a virtual machine monitor (VMM), which supports a virtual machine (VM), the second software entity. The VMM sometimes directly executes guest instructions from the VM and, at other times, the VMM executes binary translated instructions derived from guest instructions. When executing binary translated instructions, the VMM uses memory segmentation to protect its memory. When directly executing guest instructions, the VMM may use either memory segmentation or a memory paging mechanism to protect its memory. When the memory paging mechanism is active during direct execution, the protection from the memory segmentation mechanism may be selectively deactivated to improve the efficiency of the virtual computer system.

    Dynamic Selection and Application of Multiple Virtualization Techniques
    10.
    发明申请
    Dynamic Selection and Application of Multiple Virtualization Techniques 有权
    多虚拟化技术的动态选择与应用

    公开(公告)号:US20080288940A1

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

    申请号:US12057191

    申请日:2008-03-27

    IPC分类号: G06F9/46

    摘要: Autonomous selection between multiple virtualization techniques implemented in a virtualization layer of a virtualized computer system. The virtual machine monitor implements multiple virtualization support subsystems that each provide for the comprehensive handling of potential virtualization exceptions. A virtual machine monitor resident performance monitor computes relative virtualization overhead costs that are and would be incurred in using different virtualization support subsystems for virtualization exceptions that occur in executing a guest operating system within a defined interval. Dependent on the relative virtualization overhead costs determined, the virtual machine monitor resident virtualization selection control switches the virtual machine monitor to use the optimal virtualization support subsystem for handling virtualization exceptions that occur over a second defined interval.

    摘要翻译: 在虚拟化计算机系统的虚拟化层中实现的多个虚拟化技术之间的自主选择。 虚拟机监视器实现多个虚拟化支持子系统,每个虚拟化支持子系统都可以全面处理潜在的虚拟化异常。 虚拟机监视器驻留性能监视器计算在使用不同的虚拟化支持子系统以在定义的间隔内执行客户机操作系统时发生的虚拟化异常所引起并将会引起的相对虚拟化开销成本。 依赖于确定的相对虚拟化开销成本,虚拟机监视器驻留虚拟化选择控制切换虚拟机监视器以使用最佳虚拟化支持子系统来处理在第二个定义的间隔内发生的虚拟化异常。