Desktop virtualization is a software technology that separates the desktop environment and associated application software from the physical client device that is used to access it. Desktop virtualization can be used in conjunction with application virtualization and user profile management systems, now termed user virtualization, to provide a comprehensive desktop environment management system. In this mode, all the components of the desktop are virtualized, which allows for a highly flexible and much more secure desktop delivery model. In addition, this approach supports a more complete desktop disaster recovery strategy as all components are essentially saved in the data center and backed up through traditional redundant maintenance systems. If a user's device or hardware is lost, the restore is straightforward and simple, because the components will be present at login from another device. In addition, because no data are saved to the user's device, if that device is lost, there is much less chance that any critical data can be retrieved and compromised. System architectures Desktop virtualization implementations are classified based on whether the virtual desktop runs remotely or locally, on whether the access is required to be constant or is designed to be intermittent, and on whether or not the virtual desktop persists between sessions. Typically, software products that deliver desktop virtualization solutions can combine local and remote implementations into a single product to provide the most appropriate support specific to requirements. The degrees of independent functionality of the client device is necessarily interdependent with the server location and access strategy. And virtualization is not strictly required for remote control to exist. Virtualization is employed to present independent instances to multiple users and requires a strategic segmentation of the host server and presentation at some layer of the host's architecture. The enabling layer—usually application software—is called a hypervisor. Remote desktop virtualization Remote desktop virtualization implementations operate in a client/server computing environment. Application execution takes place on a remote operating system which communicates with the local client device over a network using a remote display protocol through which the user interacts with applications. All applications and data used remain on the remote system with only display, keyboard, and mouse information communicated with the local client device, which may be a conventional PC/laptop, a thin client device, a tablet, or even a smartphone. A common implementation of this approach involves hosting multiple desktop operating system instances on a server hardware platform running