Session monitoring of virtual desktops in a virtual machine farm
AssigneeMicrosoft Corporation
InventorsArtem Belkine, Ido Ben-Shachar
Life of this patent
Estimating the term…
Abstract
Disclosed are techniques for determining the status of virtual machine sessions on a computing device for a user by reading from a memory location written to by a program executing within a virtual machine. The memory location is preferably a registry key that contains the status of a remote user session operating on a guest operating system operational on the virtual machine, the virtual machine executing in a virtual environment comprising a plurality of virtual machines operating on a computing device.
Claims18
A method comprising:
- writing from computer instruction executing within a virtual machine information into a memory location regarding the status of a remote user session operating on a guest operating system of the virtual machine, the virtual machine executing in a virtual environment comprising a plurality of virtual machines operating on a computing device;
- polling at a dynamic rate the status of the remote user session from the memory location by a host module operating on the computing device, the dynamic rate being defined based on a previous status of the remote user session written into the memory location;
- and
- updating a second computing device with the status of the user session.
A system adapted to connect a client computer to one of a plurality of virtual machines executing on a plurality of servers, comprising:
- at least one computing device comprising a processor;
- and
- at least one memory communicatively coupled to said at least one computing device when the system is operational, the memory having stored therein computer-executable instructions that when executed cause:
- a host module configured to determine a current state of a user session operating on a virtual machine by polling at a rate a memory location in which the virtual machine reports the current state of the user session, the host module reporting information about the current state to a server, the information allowing the server to reconnect a remote computing device with the user session, the rate being changed based on a previous state of the user session from the memory location;
- and
- the virtual machine configured to report the current state of the user session on the virtual machines by writing the current state of the user session to the memory location.
A computer-readable storage medium storing thereon computer executable instructions for facilitating a connection of a client computing device to one of a plurality of virtual machines executing on a plurality of servers, the computer executable instructions upon execution on a system cause the system to at least:
- receive at a server of the plurality of servers information about the connection from the client computing device, the information being indicative of a virtual machine session;
- determine whether the virtual machine session is hosted on a server of the plurality of servers by polling at a predefined rate a memory location for a current state of the virtual machine session, the current state being written to the memory location by a virtual machine of the plurality of virtual machines, the predefined rate being adjusted based on a previous state of the virtual machine session stored in the memory location;
- and
- facilitate the connection between the client computing device and the server that hosts the virtual machine session based on the determination.
Dependencies are inferred from the claim text.