VMware Tools
VMware Tools is a utility suite that enhances the performance of a virtual machine's guest OS. If VMware Tools is not installed in the guest operating system, the guest will be lacking in some important functionality. The VMware Tools utility improves virtual machine management by replacing the generic OS drivers with VMware drivers optimized for virtual hardware. The following components are included after the installation of VMware Tools:
The VMware Tools service
VMware Tools device drivers
The VMware user process
VIX
The VMware Tools service passes information between guest operating systems and the ESXi host; service starts when the guest OS boots. This runs as a vmtoolsd.exe
program in Windows, vmware-tools-daemon
in Mac OS X, and vmtoolsd
in Solaris, FreeBSD, and Linux guest operating systems.
This service can run scripts that help automate repetitive guest operating system operations. Synchronization of the guest operating system time with the time on the ESXi host (with the exception of Mac OS X) can be configured with VMware Tools, though this is not necessarily recommended. Another benefit is the ability to move the mouse cursor freely between a Windows guest operating system in the VM and the vSphere Client (otherwise, Ctrl + Alt must be pressed in order to release the cursor from the VM console). Windows operating systems have the ability to quiesce snapshots used by certain backup operations provided by the service. VMware Tools also provides the process that sends heartbeats to VMware products to indicate that the guest operating system is running.
VMware Tools device drivers refine mouse operations and improve performance of networking, sound, and graphics. The guest OS will determine which drivers are installed with VMware Tools. The following device drivers can be included with VMware Tools:
Driver |
Description |
---|---|
SVGA driver |
Replaces the default VGA driver (640 x 480 resolution and 16-color graphics), enabling 32-bit displays, high display resolution, and faster graphics performance. Windows OSes that are Vista or later will use the VMware SVGA 3D driver. |
SCSI driver |
The VMware Paravirtual SCSI driver is included with VMware Tools for use. Other storage adapter drivers are bundled with the OS or are available via third-party vendors. |
Paravirtual SCSI driver |
High performance storage adapter that can produce greater throughput and lower processor utilization. This is best suited for a VM with an application that produces a very high amount of I/O throughput. |
VMXNET NIC drivers |
When installed, the VMXNET family of adapters can replace the default emulated networking drivers. These paravirtualized VMXNET adapters improve network performance and increase features. |
Mouse driver |
Improves mouse performance. |
Audio driver |
Required for many Windows OSes. |
vShield Endpoint |
When using vShield, a custom VMware Tools installation can install the vShield Endpoint Thin Agent component. vShield Endpoint offloads antivirus scans to the hypervisor without a large agent. |
ThinPrint driver |
Enables virtual printing for Windows VMs; printers will be listed in the guest OS that are added to the OS on the client or host. |
Memory control driver |
Used for efficient memory allocation between virtual machines, commonly called the balloon driver. |
Modules and drivers for support of automatic virtual machine backups |
Allows for third-party, vSphere integrated backup software to create application consistent snapshots. The virtual machine's disks are quiesced and certain processes are paused during the snapshot process. The Volume Shadow Copy Services (VSS) for Windows Server 2003 or newer, and the Filesystem Sync driver for older Windows OSes are installed. |
VMCI and VMCI Sockets drivers |
The Virtual Machine Communication Interface driver allows for efficient and fast communication between VMs on the same ESXi host. |
The VMware user process starts when a user logs in to a Windows guest OS or starts a desktop environment session in Linux. The process' program file is called vmtoolsd.exe
on Windows guest OSes and vmusr
for FreeBSD, Solaris, and Linux operating systems. This allows for copy-and-paste interaction between the guest operating system and the vSphere Client, matching the screen display resolution of the guest with that of the vSphere Client.
VIX support is provided for using the VMware VIX API for guest operating system-bound API calls. The VIX API allows for the automation of virtual machine operations on the ESXi platform.