Patents by Inventor Scott W. Devine

Scott W. Devine 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).

  • Publication number: 20120151117
    Abstract: Methods for providing shadow page tables that virtualize processor memory protection. In one embodiment, virtualization software maintains the following: (a) a mapping ? from guest domain identifier to a set of shadow L2 page tables that back guest L1 sections marked with a domain identifier; and (b) with each such shadow L2 page table, a set ? of back-pointers to “potentially referencing” shadow L1 descriptors.
    Type: Application
    Filed: December 13, 2010
    Publication date: June 14, 2012
    Applicant: VMWARE, INC.
    Inventors: Harvey TUCH, Prashanth P. BUNGALE, Scott W. DEVINE, Lawrence S. ROGEL
  • Patent number: 8127107
    Abstract: In a computing system having virtualization software including a guest operating system (OS), a method for providing page tables that includes: providing a guest page table used by the guest OS and a shadow page table and a shadow page directory used by the virtualization software wherein: at least a portion of the guest page table and the shadow page directory are the same; and the portions that are the same are shared in computer memory by the guest page table and the shadow page directory.
    Type: Grant
    Filed: May 14, 2009
    Date of Patent: February 28, 2012
    Assignee: VMware, Inc.
    Inventors: Scott W. Devine, Lawrence S. Rogel, Prashanth P. Bungale, Gerald A. Fry
  • Publication number: 20120047348
    Abstract: One or more embodiments provides a shadow page table used by a virtualization software wherein at least a portion of the shadow page table shares computer memory with a guest page table used by a guest operating system (OS) and wherein the virtualization software provides a mapping of guest OS physical pages to machine pages.
    Type: Application
    Filed: November 4, 2011
    Publication date: February 23, 2012
    Applicant: VMWARE, INC.
    Inventors: Scott W. DEVINE, Lawrence S. ROGEL, Prashanth P. BUNGALE, Gerald A. FRY
  • Patent number: 8086822
    Abstract: In a computing system having virtualization software including a guest operating system (OS), a method for providing page tables that includes: providing a guest page table used by the guest OS and a shadow page table used by the virtualization software wherein at least a portion of the guest page table and the shadow page table share computer memory.
    Type: Grant
    Filed: May 14, 2009
    Date of Patent: December 27, 2011
    Assignee: VMware, Inc.
    Inventors: Scott W. Devine, Lawrence S. Rogel, Prashanth P. Bungale, Gerald A. Fry
  • Patent number: 8074045
    Abstract: In a computing system having virtualization software including a guest operating system (OS), a method for providing page tables that includes: providing a guest page table used by the guest OS and a shadow page table used by the virtualization software wherein at least a portion of the guest page table and the shadow page table share computer memory; wherein: machine pages have a predetermined size; and the virtualization software maps guest OS physical pages to machine pages at a predetermined alignment.
    Type: Grant
    Filed: May 14, 2009
    Date of Patent: December 6, 2011
    Assignee: VMware, Inc.
    Inventors: Scott W. Devine, Lawrence S. Rogel, Prashanth P. Bungale, Gerald A. Fry
  • Publication number: 20100332635
    Abstract: One embodiment of the present invention is a method of migrating functionality to a target virtualized mobile device including virtualization software that supports one or more virtual machines, the method including: (a) embodying the functionality in a virtual machine; and (b) migrating the virtual machine to the target virtualized mobile device.
    Type: Application
    Filed: June 26, 2009
    Publication date: December 30, 2010
    Applicant: VMware, Inc.,
    Inventors: Lawrence S. ROGEL, Scott W. Devine
  • Publication number: 20100330953
    Abstract: One embodiment is a method of controlling usage in a virtualized mobile device including virtualization software that supports one or more virtual machines, the method including: (a) receiving control information at the virtualized mobile device that includes one or more limits pertaining to one or more uses of the virtualized mobile device; (b) collecting usage information relating to the one or more uses; (c) determining whether usage information corresponding to one of the one or more uses exceeds a corresponding one of the one or more limits; and if so; (d) carrying out a predetermined action relating to the one of the one or more uses.
    Type: Application
    Filed: June 26, 2009
    Publication date: December 30, 2010
    Applicant: VMWARE, INC.
    Inventors: Lawrence S. ROGEL, Julia B. AUSTIN, Scott W. DEVINE, Srinivas KRISHNAMURTI
  • Publication number: 20100333088
    Abstract: One embodiment is a virtualized mobile device including virtualization software that supports one or more virtual machines and further includes: (a) device emulation software that communicates with device driver software in the one or more virtual machines; (b) device driver software that communicates with one or more physical devices of the mobile device; and (c) transformer stack software that interacts with the device emulation software and the device driver software.
    Type: Application
    Filed: June 26, 2009
    Publication date: December 30, 2010
    Applicant: VMware, Inc.
    Inventors: Lawrence S. ROGEL, Scott W. Devine
  • Patent number: 7665088
    Abstract: The invention virtualizes a computer that includes a host computer system, which comprises a processor, memory, and physical system devices. A conventional operating system (referred to below as the “host operating system” or “HOS”) is installed on the hardware. A computer program product that is executable within the host computer system comprises computer-executable code for implementing an interface software layer, preferably a virtual machine monitor, between the host system and a virtual machine; for reading in and storing state information of the processor associated with the HOS; and for logically decoupling the HOS from the processor with respect to pre-determined functions of the interface software layer and the virtual machine by setting the processor state information to settings associated with the interface software layer.
    Type: Grant
    Filed: September 2, 2005
    Date of Patent: February 16, 2010
    Assignee: VMware, Inc.
    Inventors: Edouard Bugnion, Scott W. Devine, Mendel Rosenblum
  • Publication number: 20090300612
    Abstract: In a computing system having virtualization software including a guest operating system (OS), a method for operating wherein virtualization software address space is distributed in guest OS address space that includes: granting the guest OS execute, but not read or write, access, to pages in the virtualization software address space.
    Type: Application
    Filed: May 14, 2009
    Publication date: December 3, 2009
    Applicant: VMWARE, INC.
    Inventors: Scott W. DEVINE, Lawrence S. ROGEL, Prashanth P. BUNGALE, Gerald A. FRY
  • Publication number: 20090300264
    Abstract: In a computing system having virtualization software including a guest operating system (OS), a method for providing page tables that includes: providing a guest page table used by the guest OS and a shadow page table used by the virtualization software wherein at least a portion of the guest page table and the shadow page table share computer memory; wherein: machine pages have a predetermined size; and the virtualization software maps guest OS physical pages to machine pages at a predetermined alignment.
    Type: Application
    Filed: May 14, 2009
    Publication date: December 3, 2009
    Applicant: VMWARE, INC.
    Inventors: Scott W. DEVINE, Lawrence S. ROGEL, Prashanth P. BUNGALE, Gerald A. FRY
  • Publication number: 20090300645
    Abstract: In a computing system having virtualization software including a guest operating system (OS), a method for executing guest OS instructions that includes: replacing each of one or more guest OS instructions with: (a) a translated instruction, which translated instruction is a one-to-one translation, or (b) a trap instruction.
    Type: Application
    Filed: May 14, 2009
    Publication date: December 3, 2009
    Applicant: VMware, Inc.
    Inventors: Scott W. Devine, Lawrence S. Rogel, Prashanth P. Bungale, Gerald A. Fry
  • Publication number: 20090300611
    Abstract: In a computing system having virtualization software including a guest operating system (OS), a method for providing page tables that includes: providing a guest page table used by the guest OS and a shadow page table used by the virtualization software wherein at least a portion of the guest page table and the shadow page table share computer memory.
    Type: Application
    Filed: May 14, 2009
    Publication date: December 3, 2009
    Applicant: VMWARE, INC.
    Inventors: Scott W. DEVINE, Lawrence S. ROGEL, Prashanth P. BUNGALE, Gerald A. FRY
  • Publication number: 20090300263
    Abstract: In a computing system having virtualization software including a guest operating system (OS), a method for providing page tables that includes: providing a guest page table used by the guest OS and a shadow page table and a shadow page directory used by the virtualization software wherein: at least a portion of the guest page table and the shadow page directory are the same; and the portions that are the same are shared in computer memory by the guest page table and the shadow page directory.
    Type: Application
    Filed: May 14, 2009
    Publication date: December 3, 2009
    Applicant: VMWARE, INC.
    Inventors: Scott W. DEVINE, Lawrence S. ROGEL, Prashanth P. BUNGALE, Gerald A. FRY
  • Patent number: 7412702
    Abstract: A computer architecture includes a first operating system (COS), which may be a commodity operating system, and a kernel, which acts as a second operating system. The COS is used to boot the system as a whole. After booting, the kernel is loaded and displaces the COS from the system level, meaning that the kernel itself directly accesses predetermined physical resources of the computer. All requests for use of system resources then pass via the kernel. System resources are divided into those that, in order to maximize speed, are controlled exclusively by the kernel, those that the kernel allows the COS to handle exclusively, and those for which control is shared by the kernel and COS. In the preferred embodiment of the invention, at least one virtual machine (VM) runs via a virtual machine monitor, which is installed to run on the kernel. Each VM, the COS, and even each processor in a multiprocessor embodiment, are treated as separately schedulable entities that are scheduled by the kernel.
    Type: Grant
    Filed: September 30, 2005
    Date of Patent: August 12, 2008
    Assignee: VMware, Inc.
    Inventors: Michael Nelson, Scott W. Devine, Beng-Hong Lim
  • Patent number: 7149843
    Abstract: A computer system includes at least one virtual machine that has a plurality of virtual processors all running on an underlying hardware platform. A software interface layer such as a virtual machine monitor establishes traces on primary structures located in a common memory space as needed for the different virtual processors. Whenever any one of the virtual processors generates a trace event, such as accessing a traced structure, then a notification is sent to at least the other virtual processors that have a trace on the accessed primary structure. In some applications, the VMM derives and maintains secondary structures corresponding to the primary structures, such as where the VMM converts, through binary translation, original code intended to run on a virtual processor into code that can be run on an underlying physical processor of the hardware platform. In these applications, the VMM may rederive or invalidate the secondary structures as needed upon receipt of the notification of the trace event.
    Type: Grant
    Filed: July 19, 2005
    Date of Patent: December 12, 2006
    Assignee: VMware, Inc.
    Inventors: Ole Agesen, Pratap Subrahmanyam, Scott W. Devine, Mendel Rosenblum, Edouard Bugnion
  • Patent number: 6961941
    Abstract: A computer architecture includes a first operating system (COS), which may be a commodity operating system, and a kernel, which acts as a second operating system. The COS is used to boot the system as a whole. After booting, the kernel is loaded and displaces the COS from the system level, meaning that the kernel itself directly accesses predetermined physical resources of the computer. All requests for use of system resources then pass via the kernel. System resources are divided into those that, in order to maximize speed, are controlled exclusively by the kernel, those that the kernel allows the COS to handle exclusively, and those for which control is shared by the kernel and COS. In the preferred embodiment of the invention, at least one virtual machine (VM) runs via a virtual machine monitor, which is installed to run on the kernel. Each VM, the COS, and even each processor in a multiprocessor embodiment, are treated as separately schedulable entities that are scheduled by the kernel.
    Type: Grant
    Filed: June 8, 2001
    Date of Patent: November 1, 2005
    Assignee: VMware, Inc.
    Inventors: Michael Nelson, Scott W. Devine, Beng-Hong Lim
  • Patent number: 6961806
    Abstract: A computer system includes at least one virtual machine that has a plurality of virtual processors all running on an underlying hardware platform. A software interface layer such as a virtual machine monitor establishes traces on primary structures located in a common memory space as needed for the different virtual processors. Whenever any one of the virtual processors generates a trace event, such as accessing a traced structure, then a notification is sent to at least the other virtual processors that have a trace on the accessed primary structure. In some applications, the VMM derives and maintains secondary structures corresponding to the primary structures, such as where the VMM converts, through binary translation, original code intended to run on a virtual processor into code that can be run on an underlying physical processor of the hardware platform. In these applications, the VMM may rederive or invalidate the secondary structures as needed upon receipt of the notification of the trace event.
    Type: Grant
    Filed: December 10, 2001
    Date of Patent: November 1, 2005
    Assignee: VMware, Inc.
    Inventors: Ole Agesen, Pratap Subrahmanyam, Scott W. Devine, Mendel Rosenblum, Edouard Bugnlon
  • Patent number: 6944699
    Abstract: A virtual machine monitor (VMM) is included in a computer system that has a protected host operating system (HOS). A virtual machine running at least one application via a virtual operating system is connected to the VMM. Both the HOS and the VMM have separate operating contexts and disjoint address spaces, but are both co-resident at system level. A driver that is downloadable into the HOS at system level forms a total context switch between the VMM and HOS contexts. A user-level emulator accepts commands from the VMM via the system-level driver and processes these commands as remote procedure calls. The emulator is able to issue host operating system calls and thereby access the physical system devices via the host operating system. The host operating system itself thus handles execution of certain VMM instructions, such as accessing physical devices.
    Type: Grant
    Filed: November 27, 2002
    Date of Patent: September 13, 2005
    Assignee: VMware, Inc.
    Inventors: Edouard Bugnion, Scott W. Devine, Mendel Rosenblum
  • Patent number: 6795966
    Abstract: A computer system is interrupted, and its entire state information is extracted as one or more checkpoints at one or more respective points during operation of the system. The checkpoint may be restored into the system at any later time, even multiple times, and it may also even be loaded into one or more other systems; all systems loaded with the same checkpoint will then execute from the same checkpointed state. The state extraction mechanism is preferably a virtual machine monitor, on which one or more virtual machines are installed, each virtual machine constituting an encapsulated, virtualized computer system whose states can be checkpointed under control of the virtual machine monitor. Checkpoints may be stored on a portable memory device or transmitted as a batch or dynamically over a network so that even virtual machines installed at different sites may execute from the same state.
    Type: Grant
    Filed: February 4, 2000
    Date of Patent: September 21, 2004
    Assignee: VMWare, Inc.
    Inventors: Beng-Hong Lim, Edouard Bugnion, Scott W. Devine