Patents by Inventor Eric Traut
Eric Traut 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: 20170322829Abstract: Techniques for adjusting memory in virtual machines are disclosed. According to aspects, memory status is obtained for a guest operating system. Based on the obtained memory status, an amount of guest physical addresses is reported to a memory manager of the guest operating system. Moreover, the amount of memory assigned to the guest operating system may be adjusted during the runtime operation of the guest operating system.Type: ApplicationFiled: July 27, 2017Publication date: November 9, 2017Inventors: Andrey Shedel, Mohamed Bouchet, Eric Traut, Osama M. Salem, Kevin Broas
-
Patent number: 9753754Abstract: A virtual machine monitor (VMM) is configured to enforce deterministic execution of virtual machines in a multiprocessor machine. The VMM is configured to ensure that any communication by physical processors via shared memory is deterministic. When such VMMs are implemented in a distributed environment of multiprocessor machines coupled via a logical communication link, non-deterministic server applications running on virtual machines using the VMM may be replicated.Type: GrantFiled: July 20, 2006Date of Patent: September 5, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Jonathan R. Howell, Eric Traut, Jacob R. Lorch, John R. Douceur
-
Patent number: 9740517Abstract: Techniques for adjusting memory in virtual machines are disclosed. According to aspects, memory status is obtained for a guest operating system. Based on the obtained memory status, an amount of guest physical addresses is reported to a memory manager of the guest operating system. Moreover, the amount memory assigned to the guest operating system may be adjusted during the runtime operation of the guest operating system.Type: GrantFiled: December 29, 2008Date of Patent: August 22, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Andrey Shedel, Mohamed Bouchet, Eric Traut, Osama M. Salem, Kevin Broas
-
Publication number: 20170060619Abstract: In an exemplary embodiment, a virtual disk file can be assigned an identifier and a virtual disk files that is dependent on the virtual disk file can include a copy of the identifier. In the instance that the virtual disk file is opened and data is modified that causes the contents of a virtual disk extent to change the identifier can be changed. If the virtual disk file and the dependent virtual disk file are used to instantiate a virtual disk the difference between identifiers can be detected, which is indicative of the fact that the virtual disk may be corrupted. Other techniques are described in the detailed description, claims, and figures that form a part of this document.Type: ApplicationFiled: November 10, 2016Publication date: March 2, 2017Inventors: John A. Starks, Dustin L. Green, Todd William Harris, Mathew John, Senthil Rajaram, Eric Traut
-
Patent number: 9519496Abstract: In an exemplary embodiment, a virtual disk file can be assigned an identifier and a virtual disk files that is dependent on the virtual disk file can include a copy of the identifier. In the instance that the virtual disk file is opened and data is modified that causes the contents of a virtual disk extent to change the identifier can be changed. If the virtual disk file and the dependent virtual disk file are used to instantiate a virtual disk the difference between identifiers can be detected, which is indicative of the fact that the virtual disk may be corrupted. Other techniques are described in the detailed description, claims, and figures that form a part of this document.Type: GrantFiled: April 26, 2011Date of Patent: December 13, 2016Assignee: Microsoft Technology Licensing, LLCInventors: John A. Starks, Dustin L. Green, Todd William Harris, Mathew John, Senthil Rajaram, Eric Traut
-
Patent number: 8380987Abstract: This document describes tools capable of making a portion of operating-system memory associated with a protection agent unalterable or inaccessible from an operating-system privilege mode. In some embodiments, these tools are capable of creating a protection-agent privilege mode by requesting that a virtual machine monitor protect this portion of operating-system memory. In other embodiments, these tools are capable of creating the protection-agent privilege mode by virtualizing a physical processor into multiple virtual processors, at least one of which is a protection-agent virtual processor designed to run the protection agent. By making this portion of operating-system memory unalterable or inaccessible from the operating-system privilege mode, the protection agent may be less vulnerable to attacks by entities operating within the operating-system privilege mode.Type: GrantFiled: January 25, 2007Date of Patent: February 19, 2013Assignee: Microsoft CorporationInventors: Eric Traut, Forrest Foltz, Andrew Thornton, Suyash Sinha
-
Publication number: 20120278799Abstract: In an exemplary embodiment, a virtual disk file can be assigned an identifier and a virtual disk files that is dependent on the virtual disk file can include a copy of the identifier. In the instance that the virtual disk file is opened and data is modified that causes the contents of a virtual disk extent to change the identifier can be changed. If the virtual disk file and the dependent virtual disk file are used to instantiate a virtual disk the difference between identifiers can be detected, which is indicative of the fact that the virtual disk may be corrupted. Other techniques are described in the detailed description, claims, and figures that form a part of this document.Type: ApplicationFiled: April 26, 2011Publication date: November 1, 2012Applicant: Microsoft CorporationInventors: John A. Starks, Dustin L. Green, Todd William Harris, Mathew John, Senthil Rajaram, Eric Traut
-
Patent number: 8073926Abstract: Virtual machine image files are stored in a virtual machine storage by a virtual machine image file server. Users at virtual machine clients connect to the virtual machine image file server and are presented with a list of the available virtual machine image files in a virtual machine image store. Users of the virtual machine clients are able to select the desired virtual machine image, and begin executing in the selected virtual machine environment as soon as the selected virtual machine image file begins downloading to the client computer. When a virtual machine image file is selected for storage it is divided into several segments. Each segment is compared with segments of previously stored virtual machine image files already in storage. For example, only non-duplicate segments are stored.Type: GrantFiled: January 7, 2005Date of Patent: December 6, 2011Assignee: Microsoft CorporationInventors: Eric Traut, Dan Teodosiu
-
Patent number: 7849462Abstract: Virtual machine image files are stored in a virtual machine storage by a virtual machine image file server. Users at virtual machine clients connect to the virtual machine image file server and are presented with a list of the available virtual machine image files in a virtual machine image store. Users of the virtual machine clients are able to select the desired virtual machine image, and begin executing in the selected virtual machine environment as soon as the selected virtual machine image file begins downloading to the client computer. When a virtual machine image file is selected for storage it is divided into several segments. Each segment is compared with segments of previously stored virtual machine image files already in storage. For example, only non-duplicate segments are stored.Type: GrantFiled: January 7, 2005Date of Patent: December 7, 2010Assignee: Microsoft CorporationInventors: Eric Traut, Dan Teodosiu
-
Patent number: 7765374Abstract: This document describes tools capable of enabling a protection agent to determine, from memory inaccessible from an operating-system privilege mode, whether one or more resources of an operating system have been modified. In some instances, these tools may enable the protection agent to reside within a virtual machine monitor. In other instances, the tools may enable the protection agent to reside within a distinct virtual partition provided by the virtual machine monitor. By operating outside of the operating-system privilege mode, the protection agent may be less vulnerable to attacks by entities operating within the operating-system privilege mode.Type: GrantFiled: January 25, 2007Date of Patent: July 27, 2010Assignee: Microsoft CorporationInventors: Scott A. Field, Brandon Baker, Eric Traut, Suyash Sinha, Joy Ganguly, Forrest Foltz, David Cutler
-
Publication number: 20100169536Abstract: Techniques for adjusting memory in virtual machines are disclosed.Type: ApplicationFiled: December 29, 2008Publication date: July 1, 2010Applicant: Microsoft CorporationInventors: Andrey Shedel, Mohamed Bouchet, Eric Traut, Osama M. Salem, Kevin Broas
-
Systems and methods for bimodal device virtualization of actual and idealized hardware-based devices
Patent number: 7558723Abstract: Various embodiments of the present invention are directed to bimodal virtual device approaches (that is, “bimodal devices”). In certain embodiments, the bimodal device is a virtual device that is primarily based on a real piece of hardware to provide a broad degree of compatibility with software running in the guest environment (similar to the hardware device virtualization approach). However, to overcome the problem of poor performance that plague hardware virtual devices, these embodiments also provide an idealized “high-performance mode” that is not found in the original hardware-based device. Software drivers (and other software) developed for interacting with the original hardware device and which are unaware of (and unable to use) the high-performance mode will continue to use the “legacy mode” (hardware virtualization), while enhanced versions of guest software will be able to recognize and utilize the high-performance mode (idealized virtualization).Type: GrantFiled: December 12, 2003Date of Patent: July 7, 2009Assignee: Microsoft CorporationInventor: Eric Traut -
Patent number: 7552426Abstract: The present invention compensates for the shortcomings in x86 processor architectures by providing a set of “synthetic instructions” that cause a trap and thereby provide an opportunity for the virtual machine (VM) to process the instructions safely. By using instructions that are “illegal” to the x86 architecture, but which are nonetheless understandable by a virtual machine, the method of using these synthetic instructions to perform well-defined actions in the virtual machine that are otherwise problematic when performed by traditional instructions to an x86 processor but provide much-improved processor virtualization for x86 processor systems.Type: GrantFiled: October 14, 2003Date of Patent: June 23, 2009Assignee: Microsoft CorporationInventor: Eric Traut
-
Publication number: 20080183996Abstract: This document describes tools capable of enabling a protection agent to determine, from memory inaccessible from an operating-system privilege mode, whether one or more resources of an operating system have been modified. In some instances, these tools may enable the protection agent to reside within a virtual machine monitor. In other instances, the tools may enable the protection agent to reside within a distinct virtual partition provided by the virtual machine monitor. By operating outside of the operating-system privilege mode, the protection agent may be less vulnerable to attacks by entities operating within the operating-system privilege mode.Type: ApplicationFiled: January 25, 2007Publication date: July 31, 2008Applicant: Microsoft CorporationInventors: Scott A. Field, Brandon Baker, Eric Traut, Suyash Sinha, Joy Ganguly, Forrest Foltz, David Cutler
-
Publication number: 20080184373Abstract: This document describes tools capable of making a portion of operating-system memory associated with a protection agent unalterable or inaccessible from an operating-system privilege mode. In some embodiments, these tools are capable of creating a protection-agent privilege mode by requesting that a virtual machine monitor protect this portion of operating-system memory. In other embodiments, these tools are capable of creating the protection-agent privilege mode by virtualizing a physical processor into multiple virtual processors, at least one of which is a protection-agent virtual processor designed to run the protection agent. By making this portion of operating-system memory unalterable or inaccessible from the operating-system privilege mode, the protection agent may be less vulnerable to attacks by entities operating within the operating-system privilege mode.Type: ApplicationFiled: January 25, 2007Publication date: July 31, 2008Applicant: Microsoft CorporationInventors: Eric Traut, Forrest C. Foltz, Andrew Thornton, Suyash Sinha
-
Publication number: 20080127181Abstract: Virtualization of features present on a general-purpose computing device in order to expand the use of a fixed-function device, such as a game console, into a general-purpose application platform. Hardware capabilities are virtualized in order to run a general-purpose operating system on a fixed-function device that typically lacks physical implementations of those hardware capabilities. The operating system runs using the virtualized capabilities, and existing applications are run in the environment provided by the operating system. Thus, a fixed-function device can be used to run ordinary, existing application software.Type: ApplicationFiled: June 30, 2006Publication date: May 29, 2008Applicant: Microsoft CorporationInventors: James E. Allard, Kenneth Dwight Krossa, Todd G. Roshak, Bruno Silva, Eric Traut, Mike Neil
-
Publication number: 20080098154Abstract: A method is provided for increasing the efficiency of virtual machine processing. A parent virtual machine is provided on a host computer. The parent virtual machine is temporarily or permanently suspended. A child virtual machine is created at a new location by forking the parent virtual machine. The child virtual machine may not initially include all the stored data that is associated with the parent virtual machine.Type: ApplicationFiled: December 21, 2007Publication date: April 24, 2008Applicant: Microsoft CorporationInventors: Eric Traut, Rene Vega
-
Patent number: 7334076Abstract: A method of sharing pages between virtual machines in a multiple virtual machine environment includes initially allocating a temporary guest physical address range of a first virtual machine for sharing pages with a second virtual machine. The temporary range is within a guest physical address space of the first virtual machine. An access request, such as with a DMA request, from a second virtual machine for pages available to the first virtual machine is received. A reference count of pending accesses to the pages is incremented to indicate a pending access and the ages are mapped into the temporary guest physical address range. The pages are accessed and the reference count is decremented. The mapping in the temporary guest physical address range is then removed if the reference count is zero.Type: GrantFiled: March 8, 2005Date of Patent: February 19, 2008Assignee: Microsoft CorporationInventors: Matthew D. Hendel, Eric Traut
-
Publication number: 20070294505Abstract: 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.Type: ApplicationFiled: September 4, 2007Publication date: December 20, 2007Applicant: Microsoft CorporationInventors: Eric Traut, Matthew Hendel, Rene Vega
-
Publication number: 20070136506Abstract: Provided are optimizations to the memory virtualization model employed in a virtual machine environment. An opportunistic hypervisor page mapping process is used in order to utilize large memory pages in a virtual machine environment. Using these optimizations, physical memory is being virtualized for the virtual machine in a manner that allows the operating system (OS) running within the virtual machine to take real and full advantage of large physical memory pages.Type: ApplicationFiled: December 12, 2005Publication date: June 14, 2007Applicant: Microsoft CorporationInventors: Eric Traut, Idan Avraham, Matthew Hendel