Patents by Inventor Alain Kagi

Alain Kagi has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 7035963
    Abstract: In one embodiment, a method for resolving address space conflicts includes detecting that a guest operating system attempts to access a region occupied by a first portion of a virtual machine monitor and relocating the first portion of the virtual machine monitor within the first address space to allow the guest operating system to access the region previously occupied by the first portion of the virtual machine monitor.
    Type: Grant
    Filed: December 27, 2000
    Date of Patent: April 25, 2006
    Assignee: Intel Corporation
    Inventors: Gilbert Neiger, Stephen Chou, Erik Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Michael Kozuch, Richard Uhlig, Sebastian Schoenberg
  • Patent number: 7020738
    Abstract: One embodiment of the invention is method for resolving address space conflicts between a virtual machine monitor and a guest operating system. The method includes allocating an address space for the operating system and an address space for the monitor. The method also includes mapping a portion of the monitor into the address space allocated for the operating system and the address space allocated for the monitor, and locating another portion of the monitor in the address space allocated for the monitor. The method also includes detecting that the operating system attempts to access a region occupied by the portion of the monitor within the address space allocated for the operating system, and relocating that portion of the monitor within that address space to allow the operating system to access the region previously occupied by that portion of the monitor.
    Type: Grant
    Filed: September 30, 2003
    Date of Patent: March 28, 2006
    Assignee: Intel Corporation
    Inventors: Gilbert Neiger, Stephen Chou, Erik Cota-Robles, Stalinselvaraj Jevasingh, Alain Kagi, Michael Kozuch, Richard Uhlig, Sebastian Schoenberg
  • Publication number: 20060064697
    Abstract: A method for managing IO requests from a virtual machine to access IO resources on a physical machine includes determining a request priority associated with an IO request. The IO request is placed in an appropriate queue in response to determining the request priority.
    Type: Application
    Filed: September 23, 2004
    Publication date: March 23, 2006
    Inventors: Alain Kagi, Andrew Anderson, Steven Bennett, Erik Cota-Robles, Gregory Jablonski
  • Publication number: 20060036791
    Abstract: In one embodiment, an apparatus includes a set of multiplex blocks coupled with an interrupt controller and multiple interrupt request lines, and a virtual machine monitor block (VMM) coupled to the set of multiplex blocks. Each multiplex block corresponds to a distinct interrupt request line. Each multiplex block is to route the interrupt request signal received via the corresponding interrupt request line either to the interrupt controller or the VMM block depending on a current configuration value of this multiplex block.
    Type: Application
    Filed: October 13, 2005
    Publication date: February 16, 2006
    Inventors: Stalinselvaraj Jeyasingh, Andrew Anderson, Steven Bennett, Erik Cota-Robles, Alain Kagi, Gilbert Neiger, Richard Uhlig
  • Patent number: 6996748
    Abstract: In one embodiment, fault information relating to a fault associated with the operation of guest software is received. Further, a determination is made as to whether the fault information satisfies one or more fault filtering criteria. If the determination is positive, the guest software is permitted to disregard the fault.
    Type: Grant
    Filed: June 29, 2002
    Date of Patent: February 7, 2006
    Assignee: Intel Corporation
    Inventors: Richard Uhlig, Andrew V. Anderson, Steve Bennett, Erik Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Gilbert Neiger
  • Publication number: 20060005084
    Abstract: In one embodiment, information pertaining to a first fault occurring during operation of a virtual machine (VM) is stored in a first field. A second fault is detected while delivering the first fault to the VM, and a determination is made as to whether the second fault is associated with a transition of control to a virtual machine monitor (VMM). If this determination is positive, information pertaining to the second fault is stored in a second field, and control is transitioned to the VMM.
    Type: Application
    Filed: June 30, 2004
    Publication date: January 5, 2006
    Inventors: Gilbert Neiger, Andrew Anderson, Steven Bennett, Jason Brandt, Erik Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Sanjoy Mondal, Rajesh Parthasarathy, Dion Rodgers, Lawrence Smith, Richard Uhlig
  • Publication number: 20050240819
    Abstract: In one embodiment, a method includes receiving a request to transition control to a virtual machine (VM) from a virtual machine monitor (VMM), determining that a single-stepping indicator is set to a single stepping value, and transitioning control to the VM. Further, if an execution of a first instruction in the VM completes successfully, control is transitioned to the VMM following the successful completion of the execution of the first instruction.
    Type: Application
    Filed: March 30, 2004
    Publication date: October 27, 2005
    Inventors: Steven Bennett, Andrew Anderson, Erik Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Gilbert Neiger, Richard Uhlig, Sanjoy Mondal, Jason Brandt
  • Publication number: 20050240700
    Abstract: In one embodiment, a method includes transitioning control to a virtual machine (VM) upon receiving a request from a virtual machine monitor (VMM), determining that the request to transition control is associated with a request to be informed of an open event window, performing an event window check to determine whether an even window of the VM is open, and transitioning control to the VMM if the event window check indicates that the event window of the VM is open.
    Type: Application
    Filed: March 31, 2004
    Publication date: October 27, 2005
    Inventors: Steven Bennett, Andrew Anderson, Erik Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Gilbert Neiger, Richard Uhlig
  • Publication number: 20050240751
    Abstract: In one embodiment, a method for supporting address translation in a virtual-machine environment includes creating a guest translation data structure to be used by a guest operating system for address translation operations, creating an active translation data structure based on the guest translation data structure, and periodically modifying the content of the active translation data structure to conform to the content of the guest translations data structure. The content of the active translation data structure is used by a processor to cache address translations in a translation-lookaside buffer (TLB).
    Type: Application
    Filed: February 28, 2005
    Publication date: October 27, 2005
    Inventors: Gilbert Neiger, Stephen Chou, Erik Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Michael Kozuch, Richard Uhlig, Sebastian Schoenberg
  • Patent number: 6907600
    Abstract: In one embodiment, a method for supporting address translation in a virtual-machine environment includes creating a guest translation data structure to be used by a guest operating system for address translation operations, creating an active translation data structure based on the guest translation data structure, and periodically modifying the content of the active translation data structure to conform to the content of the guest translations data structure. The content of the active translation data structure is used by a processor to cache address translations in a translation-lookaside buffer (TLB).
    Type: Grant
    Filed: December 27, 2000
    Date of Patent: June 14, 2005
    Assignee: Intel Corporation
    Inventors: Gilbert Neiger, Stephen Chou, Erik Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Michael Kozuch, Richard Uhlig, Sebastian Schoenberg
  • Publication number: 20050080934
    Abstract: One embodiment of the present invention is a technique to invalidate entries in a translation lookaside buffer (TLB). A TLB in a processor has a plurality of TLB entries. Each TLB entry is associated with a virtual machine extension (VMX) tag word indicating if the associated TLB entry is invalidated according to a processor mode when an invalidation operation is performed. The processor mode is one of execution in a virtual machine (VM) and execution not in a virtual machine.
    Type: Application
    Filed: September 30, 2003
    Publication date: April 14, 2005
    Inventors: Erik Cota-Robles, Andy Glew, Stalinselvaraj Jeyasingh, Alain Kagi, Michael Kozuch, Gilbert Neiger, Richard Uhlig
  • Publication number: 20050080970
    Abstract: In one embodiment, an apparatus includes a set of multiplex blocks coupled with an interrupt controller and multiple interrupt request lines, and a virtual machine monitor block (VMM) coupled to the set of multiplex blocks. Each multiplex block corresponds to a distinct interrupt request line. Each multiplex block is to route the interrupt request signal received via the corresponding interrupt request line either to the interrupt controller or the VMM block depending on a current configuration value of this multiplex block.
    Type: Application
    Filed: September 30, 2003
    Publication date: April 14, 2005
    Inventors: Stalinselvaraj Jeyasingh, Andrew Anderson, Steven Bennett, Erik Cota-Robles, Alain Kagi, Gilbert Neiger, Richard Uhlig
  • Publication number: 20050080937
    Abstract: One embodiment of the present invention is a technique to invalidate entries in a translation lookaside buffer (TLB). A TLB in a processor has a plurality of TLB entries. Each TLB entry is associated with a virtual machine extension (VMX) tag word indicating if the associated TLB entry is invalidated according to a processor mode when an invalidation operation is performed. The processor mode is one of execution in a virtual machine (VM) and execution not in a virtual machine.
    Type: Application
    Filed: October 25, 2004
    Publication date: April 14, 2005
    Inventors: Erik Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Michael Kozuch, Gilbert Neiger, Richard Uhlig
  • Publication number: 20050071840
    Abstract: In one embodiment, a method for handling privileged events in a virtual machine environment includes detecting an occurrence of a privileged event, determining which one of multiple virtual machine monitors (VMMs) is to handle the privileged event, and transitioning control to this VMM.
    Type: Application
    Filed: September 15, 2003
    Publication date: March 31, 2005
    Inventors: Gilbert Neiger, Steven Bennett, Alain Kagi, Stalinselvaraj Jeyasingh, Andrew Anderson, Richard Uhlig, Erik Cota-Robles, Scott Rodgers, Lawrence Smith
  • Publication number: 20050060703
    Abstract: In one embodiment, a request to transition control to a virtual machine (VM) is received from a virtual machine monitor (VMM) and a determination is made as to whether the VMM has requested a delivery of a fault to the VM. If the determination is positive, the fault is delivered to the VM when control is transitioned to the VM.
    Type: Application
    Filed: September 15, 2003
    Publication date: March 17, 2005
    Inventors: Steven Bennett, Andrew Anderson, Stalinselvaraj Jeyasingh, Alain Kagi, Gilbert Neiger, Richard Uhlig, Michael Kozuch, Lawrence Smith, Scott Rodgers
  • Publication number: 20050060702
    Abstract: In one embodiment, a predefined behavior of a virtual machine monitor (VMM) with respect to one or more virtual machines (VMs) is identified, and processor-managed resources associated with the one or more VMs are utilized based on the predefined behavior of the VMM.
    Type: Application
    Filed: September 15, 2003
    Publication date: March 17, 2005
    Inventors: Steven Bennett, Andrew Anderson, Stalinselvaraj Jeyasingh, Alain Kagi, Gilbert Neiger, Richard Uhlig, Xiang Zou, Lawrence Smith, Scott Rodgers
  • Publication number: 20040123288
    Abstract: Methods and systems are provided to control transitions between a virtual machine (VM) and Virtual Machine Monitor (VMM). A processor uses state action indicators to load and/or store associated elements of machine state before completing the transition. The state action indicators may be stored in a Virtual Machine Control Structure (VMCS), predetermined, and/or calculated dynamically. In some embodiments, the values loaded can be directly acquired from the VMCS, predetermined and/or calculated dynamically. In some embodiments, the values stored may be acquired directly from machine state, predetermined and/or calculated dynamically.
    Type: Application
    Filed: December 19, 2002
    Publication date: June 24, 2004
    Applicant: Intel Corporation
    Inventors: Steven M. Bennett, Gilbert Neiger, Erik C. Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Michael A. Kozuch, Richard A. Uhlig
  • Publication number: 20040117539
    Abstract: Methods and systems are provided to control the execution of a virtual machine (VM). A VM Monitor (VMM) accesses VM Control Structures (VMCS) indirectly through access instructions passed to a processor. In one embodiment, the access instructions include VMCS component identifiers used by the processor to determine the appropriate storage location for the VMCS components. The processor identifies the appropriate storage location for the VMCS component within the processor storage or within memory.
    Type: Application
    Filed: December 17, 2002
    Publication date: June 17, 2004
    Applicant: Intel Corporation
    Inventors: Steve M. Bennett, Gilbert Neiger, Erik C. Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Michael A. Kozuch, Richard A. Uhlig, Larry Smith, Dion Rodgers, Andrew Glew, Erich Boleyn
  • Publication number: 20040117532
    Abstract: In one embodiment, an occurrence of an interrupt is identified during the operation of guest software. Further, a determination is made as to whether the interrupt is managed by guest software. The determination depends on the current value of an interrupt control indicator. If the interrupt is not managed by guest software, control is transitioned to a virtual machine monitor (VMM) if the VMM is ready to receive control.
    Type: Application
    Filed: December 11, 2002
    Publication date: June 17, 2004
    Inventors: Steven M. Bennett, Michael Kozuch, Gilbert Neiger, Erik Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Richard Uhlig
  • Publication number: 20040117593
    Abstract: In one embodiment, when it is determined that a modification of content of an active address translation data structure is required, an entry in the active address translation data structure is modified to conform to a corresponding entry in a guest address translation data structure. During the modification, a bit field including one or more access control indicators in the entry of the active address translation data structure is not overwritten with corresponding data from the guest address translation data structure.
    Type: Application
    Filed: December 12, 2002
    Publication date: June 17, 2004
    Inventors: Richard Uhlig, Gilbert Neiger, Erik Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Michael Kozuch, Steven M. Bennett