Patents by Inventor Mike Neil

Mike Neil 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: 9785458
    Abstract: Certain embodiments of the present invention are directed to a system for and method of providing seamless software compatibility by using virtual machines to provide an improved, more seamless method of user interaction with one or more virtual machines (VMs) that are resident on a host computer system. Several embodiments of the present invention provide a means in the host environment for directly invoking one or more guest operating system (OS) applications or files and displaying them in the host environment, rather than in a separate VM window. Furthermore, each embodiment of the present invention allows the possibility of multiple applications on multiple OSs (i.e., legacy or modem OSs), respectively, to run simultaneously and with the appearance of running seamlessly in the host environment.
    Type: Grant
    Filed: March 2, 2015
    Date of Patent: October 10, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: Mike Neil
  • Publication number: 20150169344
    Abstract: Certain embodiments of the present invention are directed to a system for and method of providing seamless software compatibility by using virtual machines to provide an improved, more seamless method of user interaction with one or more virtual machines (VMs) that are resident on a host computer system. Several embodiments of the present invention provide a means in the host environment for directly invoking one or more guest operating system (OS) applications or files and displaying them in the host environment, rather than in a separate VM window. Furthermore, each embodiment of the present invention allows the possibility of multiple applications on multiple OSs (i.e., legacy or modem OSs), respectively, to run simultaneously and with the appearance of running seamlessly in the host environment.
    Type: Application
    Filed: March 2, 2015
    Publication date: June 18, 2015
    Inventor: Mike Neil
  • Patent number: 8972977
    Abstract: Certain embodiments of the present invention are directed to a system for and method of providing seamless software compatibility by using virtual machines to provide an improved, more seamless method of user interaction with one or more virtual machines (VMs) that are resident on a host computer system. Several embodiments of the present invention provide a means in the host environment for directly invoking one or more guest operating system (OS) applications or files and displaying them in the host environment, rather than in a separate VM window. Furthermore, each embodiment of the present invention allows the possibility of multiple applications on multiple OSs (i.e., legacy or modern OSs), respectively, to run simultaneously and with the appearance of running seamlessly in the host environment.
    Type: Grant
    Filed: June 30, 2004
    Date of Patent: March 3, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: Mike Neil
  • Patent number: 8527690
    Abstract: An exemplary method includes writing data to locations in non-volatile solid-state memory and deciding whether to move data written to one location in the memory to another location in the memory based on generation of the data and wear of the other location. Such a method may be used for non-volatile random access memory (NVRAM). Various other methods, devices, systems, etc., are also disclosed.
    Type: Grant
    Filed: June 26, 2008
    Date of Patent: September 3, 2013
    Assignee: Microsoft Corporation
    Inventors: James R Hamilton, Michael R Fortin, Mike Neil, Burton J Smith
  • Patent number: 8504703
    Abstract: The present invention is a system for and method of providing instruction sequence compounding by (1) the virtual machine monitor's (VMM) looking ahead when an initial trap (exception) event occurs and recognizing traps within successive nearby instructions, combining and virtually executing the effects of multiple instructions while remaining inside the VMM's trap handler, and thereby minimizing the number of individual traps that would otherwise occur at each instruction and/or (2) the VMM's looking ahead when an initial context switch event occurs and recognizing context switches within successive nearby instructions, virtually combining the effects of multiple instructions and handing off this combined instruction to the host operating system, and thereby minimizing the number of individual context switches that would otherwise occur at each instruction. As a result, the number of processor cycles is reduced for exception handling and context switching in a virtual machine environment.
    Type: Grant
    Filed: June 30, 2004
    Date of Patent: August 6, 2013
    Assignee: Microsoft Corporation
    Inventors: Rene Antonio Vega, Eric P. Traut, Mike Neil
  • Patent number: 8271976
    Abstract: The present invention is a system for and method of initializing multiple virtual processors in a virtual machine (VM) environment. The method of initializing multiple virtual processors includes the steps of the host creating a multiple processor VM and activating a “starter virtual processor,” the “starter virtual processor” issuing a startup command to a next virtual processor, the virtual machine monitor (VMM) giving the target virtual processor the highest priority for accessing the hardware resources, the VMM forcing the “starter virtual processor” to relinquish control of the hardware resources, the VMM handing control of the hardware resources to the target virtual processor, the target virtual processor executing and completing its startup routine, the VMM forcing the target virtual processor to relinquish control of the hardware resources, and the VMM handing control of the hardware resources back to the “starter virtual processor” for activating subsequent virtual processors.
    Type: Grant
    Filed: June 30, 2004
    Date of Patent: September 18, 2012
    Assignee: Microsoft Corporation
    Inventors: Rene Antonio Vega, Eric P. Traut, Mike Neil
  • Patent number: 8001403
    Abstract: An exemplary method for managing power consumption of a data center includes monitoring power consumption of a data center, assessing power consumption with respect to a billing equation for power, based on the assessment, deciding whether to implement a power policy where the power policy reduces instantaneous power consumption by the data center and increases a load factor wherein the load factor is an average power consumed by the data center divided by a peak power consumed by the data center over a period of time. Various other methods, devices, systems, etc., are also disclosed.
    Type: Grant
    Filed: March 14, 2008
    Date of Patent: August 16, 2011
    Assignee: Microsoft Corporation
    Inventors: James R Hamilton, James J Freely, Mike Neil, Michael J Manos, Michael R Fortin
  • Patent number: 7996785
    Abstract: The present invention includes systems for and methods of visually integrating application windows in a virtual machine environment. Embodiments of the present invention are directed to a system for and method of visually integrating application windows of host and guest operating system in a virtual machine environment in order to reduce difficulties that the users of computers experience in navigating between applications in a virtual machine environment. The present invention accomplishes this by using a composite window list in the virtual machine monitor (VMM) to manage the configuration, the focus, the geometry, the Z-order of the windows across guest and host operating systems, and the arrangement of doppelgangers (virtual application windows, in this case) in a way that allows host and guest application windows to appear integrated in a single display window.
    Type: Grant
    Filed: June 30, 2004
    Date of Patent: August 9, 2011
    Assignee: Microsoft Corporation
    Inventor: Mike Neil
  • Patent number: 7689987
    Abstract: Several embodiments of the present invention provide a means for reducing overhead and, thus, improving operating efficiency in virtualized computing systems. Certain of these embodiments are specifically directed to providing a bypass mechanism for jumping directly from a first stack in the guest operating system to a second stack in the host operating system for a virtual machine environment. More specifically, certain embodiments of the present invention are directed to a system for and method of eliminating redundancy in execution of certain virtual machine commands and executing host environment equivalents by using bypass mechanisms, thereby bypassing redundant software layers within the guest and host stacks. For some of these embodiments, the bypass mechanism operates at a high-level component of the stack or, alternatively, the bypass mechanism operates at a low-level component of the stack.
    Type: Grant
    Filed: June 30, 2004
    Date of Patent: March 30, 2010
    Assignee: Microsoft Corporation
    Inventor: Mike Neil
  • Publication number: 20090327580
    Abstract: An exemplary method includes writing data to locations in non-volatile solid-state memory and deciding whether to move data written to one location in the memory to another location in the memory based on generation of the data and wear of the other location. Such a method may be used for non-volatile random access memory (NVRAM). Various other methods, devices, systems, etc., are also disclosed.
    Type: Application
    Filed: June 26, 2008
    Publication date: December 31, 2009
    Applicant: Microsoft Corporation
    Inventors: James R. Hamilton, Michael R. Fortin, Mike Neil, Burton J. Smith
  • Publication number: 20090235097
    Abstract: An exemplary method for managing power consumption of a data center includes monitoring power consumption of a data center, assessing power consumption with respect to a billing equation for power, based on the assessment, deciding whether to implement a power policy where the power policy reduces instantaneous power consumption by the data center and increases a load factor wherein the load factor is an average power consumed by the data center divided by a peak power consumed by the data center over a period of time. Various other methods, devices, systems, etc., are also disclosed.
    Type: Application
    Filed: March 14, 2008
    Publication date: September 17, 2009
    Applicant: Microsoft Corporation
    Inventors: James R. Hamilton, James J. Freely, Mike Neil, Michael J. Manos, Michael R. Fortin
  • Patent number: 7383405
    Abstract: The present invention is a system and method that performs disk migration in a virtual machine environment. The present invention quickly and easily migrates a virtual machine from one host to another thus improving flexibility and efficiency in a virtual machine environment for “load balancing” systems, performing hardware or software upgrades, handling disaster recovery, and so on. Certain of the embodiments are specifically directed to providing a mechanism for migrating the disk state along with the device and memory states, where the disk data resides in a remotely located storage device that is common to multiple host computer systems in a virtual machine environment. The virtual machine migration process, which includes disk data migration, occurs without the user's awareness and, therefore, without the user's experiencing any noticeable interruption.
    Type: Grant
    Filed: June 30, 2004
    Date of Patent: June 3, 2008
    Assignee: Microsoft Corporation
    Inventors: Rene Antonio Vega, Eric P. Traut, Mike Neil
  • Publication number: 20080127181
    Abstract: 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: Application
    Filed: June 30, 2006
    Publication date: May 29, 2008
    Applicant: Microsoft Corporation
    Inventors: James E. Allard, Kenneth Dwight Krossa, Todd G. Roshak, Bruno Silva, Eric Traut, Mike Neil
  • Publication number: 20060085784
    Abstract: The present invention is directed to a system for authoring and accessing computer-based materials, a high-level method of using the system, and method of saving the state and data from an authoring host onto a storage host. The system and methods employ virtual machines to save the state and data of the authoring host onto a storage host, which can then be accessed by any number of access hosts. Virtual machines are utilized to (1) save snapshots of the state of the processor and devices within the authoring host, and (2) save the data from the authoring host with differencing drives. The present invention solves a large set of problems related to inconsistencies that exist in the combinations of (a) operating systems, (b) hardware, and (c) software on computers.
    Type: Application
    Filed: October 15, 2004
    Publication date: April 20, 2006
    Applicant: Microsoft Corporation
    Inventors: Eric Traut, Mike Neil
  • Publication number: 20060010433
    Abstract: Certain embodiments of the present invention are directed to a system for and method of providing seamless software compatibility by using virtual machines to provide an improved, more seamless method of user interaction with one or more virtual machines (VMs) that are resident on a host computer system. Several embodiments of the present invention provide a means in the host environment for directly invoking one or more guest operating system (OS) applications or files and displaying them in the host environment, rather than in a separate VM window. Furthermore, each embodiment of the present invention allows the possibility of multiple applications on multiple OSs (i.e., legacy or modem OSs), respectively, to run simultaneously and with the appearance of running seamlessly in the host environment.
    Type: Application
    Filed: June 30, 2004
    Publication date: January 12, 2006
    Applicant: Microsoft Corporation
    Inventor: Mike Neil
  • Publication number: 20060005190
    Abstract: The present invention includes systems for and methods of implementing an operating system that is capable of ascertaining whether it is operating in a virtual machine environment and is further capable of modifying its behavior to operate more efficiently in a virtual machine environment. Embodiments of the present invention are directed to a system and method for providing operating systems that are aware that they are operating in a virtual machine environment and, as a result of this realization, are able to reduce some of the performance overhead associated with a virtual machine environment. The invention relaxes the illusion that a guest operating system is operating on dedicated hardware and describes ways for the guest operating system to operate more efficiently now that this illusion has been relaxed.
    Type: Application
    Filed: June 30, 2004
    Publication date: January 5, 2006
    Applicant: Microsoft Corporation
    Inventors: Rene Vega, Eric Traut, Mike Neil
  • Publication number: 20060005189
    Abstract: The present invention is a system for and method of performing disk migration in a virtual machine environment. The present invention provides a means for quickly and easily migrating a virtual machine from one host to another and, thus, improving flexibility and efficiency in a virtual machine environment for “load balancing” systems, performing hardware or software upgrades, handling disaster recovery, and so on. Certain of these embodiments are specifically directed to providing a mechanism for migrating the disk state along with the device and memory states, wherein the disk data resides in a remotely located storage device that is common to multiple host computer systems in a virtual machine environment. The virtual machine migration process of the present invention, which includes disk data migration, occurs without the user's awareness and, therefore, without the user's experiencing any noticeable interruption.
    Type: Application
    Filed: June 30, 2004
    Publication date: January 5, 2006
    Applicant: Microsoft Corporation
    Inventors: Rene Vega, Eric Traut, Mike Neil
  • Publication number: 20060005186
    Abstract: Several embodiments of the present invention provide a means for reducing overhead and, thus, improving operating efficiency in virtualized computing systems. Certain of these embodiments are specifically directed to providing a bypass mechanism for jumping directly from a first stack in the guest operating system to a second stack in the host operating system for a virtual machine environment. More specifically, certain embodiments of the present invention are directed to a system for and method of eliminating redundancy in execution of certain virtual machine commands and executing host environment equivalents by using bypass mechanisms, thereby bypassing redundant software layers within the guest and host stacks. For some of these embodiments, the bypass mechanism operates at a high-level component of the stack or, alternatively, the bypass mechanism operates at a low-level component of the stack.
    Type: Application
    Filed: June 30, 2004
    Publication date: January 5, 2006
    Applicant: Microsoft Corporation
    Inventor: Mike Neil
  • Publication number: 20060004667
    Abstract: Several embodiments of the present invention provide means for collecting license revenue for operating systems or applications software that resides in a virtualized computer system. Certain of these embodiments are specifically directed to providing a means for collecting license revenue for modern or legacy operating systems or applications in a virtual machine environment and further provide an ongoing revenue stream, rather than a one-time transaction, for a software manufacturer. More specifically, certain embodiments are directed to a system for and method of providing software license enforcement by using a license manager in a virtual machine environment and thereby provide improved methods of collecting license revenue in a computer system that supports legacy operating systems and applications. Finally, several embodiments of the present invention are directed to providing incremental software support and upgrades for operating systems and applications that run in a virtual machine environment.
    Type: Application
    Filed: June 30, 2004
    Publication date: January 5, 2006
    Applicant: Microsoft Corporation
    Inventor: Mike Neil
  • Publication number: 20060005188
    Abstract: The present invention is a system for and method of initializing multiple virtual processors in a virtual machine (VM) environment. The method of initializing multiple virtual processors includes the steps of the host creating a multiple processor VM and activating a “starter virtual processor,” the “starter virtual processor” issuing a startup command to a next virtual processor, the virtual machine monitor (VMM) giving the target virtual processor the highest priority for accessing the hardware resources, the VMM forcing the “starter virtual processor” to relinquish control of the hardware resources, the VMM handing control of the hardware resources to the target virtual processor, the target virtual processor executing and completing its startup routine, the VMM forcing the target virtual processor to relinquish control of the hardware resources, and the VMM handing control of the hardware resources back to the “starter virtual processor” for activating subsequent virtual processors.
    Type: Application
    Filed: June 30, 2004
    Publication date: January 5, 2006
    Applicant: Microsoft Corporation
    Inventors: Rene Vega, Eric Traut, Mike Neil