Patents by Inventor Erik Cota-Robles

Erik Cota-Robles 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: 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: 20060010440
    Abstract: In one embodiment, the present invention includes a method of transitioning control to guest software in a virtual machine from a virtual machine monitor, receiving control following a transition from the virtual machine to the virtual machine monitor upon an event, and determining whether to modify a state of the guest code, a state of the virtual machine monitor or a state of controls. If such a determination is made, the state may be modified and control is transitioned back to the guest software.
    Type: Application
    Filed: July 7, 2004
    Publication date: January 12, 2006
    Inventors: Andrew Anderson, Steven Bennett, Erik Cota-Robles, Stalinselvaraj Jeyasingh, Alani Kagi, Michael Goldsmith, Sebastian Schoenberg, Richard Uhlig
  • 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: 20050289542
    Abstract: A system and method for allowing a virtual machine monitor to assume control of a system when the current privilege level of guest software meets a privilege level exiting criteria. The processor detects that the current privilege level meets the criteria and then transfers control from the guest software to the virtual machine monitor. The virtual machine monitor may decline to assume control for certain privilege level changes or values.
    Type: Application
    Filed: June 28, 2004
    Publication date: December 29, 2005
    Inventors: Volkmar Uhlig, Steven Bennett, Erik Cota-Robles, Sebastian Schoenberg, Andrew Anderson, Richard Uhlig, Gilbert Neiger
  • 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
  • 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
  • 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: 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: 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: 20050080965
    Abstract: In one embodiment, a method includes recognizing an interrupt pending during an operation of guest software, determining that the interrupt is to cause a transition of control to a virtual machine monitor (VMM), determining whether the interrupt is to be acknowledged prior to the transition of control to the VMM, and if the interrupt is to be acknowledged, acknowledging the interrupt and transitioning control to the VMM.
    Type: Application
    Filed: September 30, 2003
    Publication date: April 14, 2005
    Inventors: Steven Bennett, Erik Cota-Robles, Stalinselvaraj Jeyasingh, 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: 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
  • 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: 20040064813
    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: Application
    Filed: September 30, 2003
    Publication date: April 1, 2004
    Inventors: Gilbert Neiger, Stephen Chou, Erik Cota-Robles, Stalinselvaraj Jevasingh, Alain Kagi, Michael Kozuch, Richard Uhlig, Sebastian Schoenberg
  • Publication number: 20040003324
    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: Application
    Filed: June 29, 2002
    Publication date: January 1, 2004
    Inventors: Richard Uhlig, Andrew V. Anderson, Steve Bennett, Erik Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Gilbert Neiger
  • Patent number: 6658447
    Abstract: A simultaneous multi-threaded architecture combines OS priority information with thread execution heuristics to provide dynamic priorities for selecting thread instructions for processing. The dynamic priority of a thread is determined by adjusting a heuristic measure of the thread's execution dynamics with a priority-dependent scaling function determined from the OS priority of the thread. An SMT processor includes logic for calculating a scaling function for each thread scheduled on the processor, tracking the threads' heuristics, and combing the scaling function and heuristic information into a dynamic priority for each thread. Instructions are selected for execution from among the scheduled threads according to the threads' dynamic priorities.
    Type: Grant
    Filed: July 8, 1997
    Date of Patent: December 2, 2003
    Assignee: Intel Corporation
    Inventor: Erik Cota-Robles
  • Publication number: 20030217250
    Abstract: In one embodiment, a command pertaining to one or more portions of a register is received from guest software. Further, a determination is made as to whether the guest software has access to all of the requested portions of the register based on indicators within a mask field that correspond to the requested portions of the register. If the guest software has access to all of the requested portions of the register, the command received from the guest software is executed on the requested portions of the register.
    Type: Application
    Filed: April 16, 2002
    Publication date: November 20, 2003
    Inventors: Steve Bennett, Andrew V. Anderson, Erik Cota-Robles, Stalinselvaraj Jeyasingh, Alain Kagi, Gilbert Neiger, Richard Uhlig, Michael A. Kozuch
  • Publication number: 20030120856
    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: Application
    Filed: December 27, 2000
    Publication date: June 26, 2003
    Inventors: Gilbert Neiger, Stephen Chou, Erik Cota-Robles, Stalinselvaraj Jevasingh, Alain Kagi, Michael Kozuch, Richard Uhlig, Sebastian Schoenberg