VMware's most notable products are its hypervisors. VMware became well known for its first type 2 hypervisor known as GSX. This product has since evolved into two hypervisor products lines: VMware's type 1 hypervisors running directly on hardware and their hosted type 2 hypervisors.
VMware software provides a completely virtualized set of hardware to the guest operating system.[75] VMware software virtualizes the hardware for a video adapter, a network adapter, and hard disk adapters. The host provides pass-through drivers for guest USB, serial, and parallel devices. In this way, VMware virtual machines become highly portable between computers, because every host looks nearly identical to the guest. In practice, a system administrator can pause operations on a virtual machine guest, move or copy that guest to another physical computer, and there resume execution exactly at the point of suspension. Alternatively, for enterprise servers, a feature called vMotion allows the migration of operational guest virtual machines between similar but separate hardware hosts sharing the same storage[76] (or, with vMotion Storage, separate storage can be used, too). Each of these transitions is completely transparent to any users on the virtual machine at the time it is being migrated.
VMware Workstation, Server, and ESX take a more optimized path to running target operating systems on the host than that of emulators (such as Bochs) which simulate the function of each CPU instruction on the target machine one-by-one, or that of dynamic recompilation which compiles blocks of machine-instructions the first time they execute, and then uses the translated code directly when the code runs subsequently (Microsoft Virtual PC for macOS takes this approach). VMware software does not emulate an instruction setfor different hardware not physically present. This significantly boosts performance, but can cause problems when moving virtual machine guests between hardware hosts using different instruction sets (such as found in 64-bit Intel and AMD CPUs), or between hardware hosts with a differing number of CPUs. Software that is CPU agnostic can usually survive such a transition, unless it is agnostic by forking at startup, in which case, the software or the guest OS must be stopped before moving it, then restarted after the move.
VMware's products predate the virtualization extensions to the x86 instruction set, and do not require virtualization-enabled processors. On newer processors, the hypervisor is now designed to take advantage of the extensions. However, unlike many other hypervisors, VMware still supports older processors. In such cases, it uses the CPU to run code directly whenever possible (as, for example, when running user-mode and virtual 8086 mode code on x86). When direct execution cannot operate, such as with kernel-level and real-modecode, VMware products use binary translation (BT) to re-write the code dynamically. The translated code gets stored in spare memory, typically at the end of the address space, which segmentation mechanisms can protect and make invisible. For these reasons, VMware operates dramatically faster than emulators, running at more than 80% of the speed that the virtual guest operating system would run directly on the same hardware. In one study VMware claims a slowdown over native ranging from 0–6 percent for the VMware ESX Server.[77]
VMware's approach avoids some of the difficulties of virtualization on x86-based platforms. Virtual machines may deal with offending instructions by replacing them, or by simply running kernel code in user mode. Replacing instructions runs the risk that the code may fail to find the expected content if it reads itself; one cannot protect code against reading while allowing normal execution, and replacing in place becomes complicated. Running the code unmodified in user mode will also fail, as most instructions which just read the machine state do not cause an exception and will betray the real state of the program, and certain instructions silently change behavior in user mode. One must always rewrite, performing a simulation of the current program counter in the original location when necessary and (notably) remapping hardware code breakpoints.
Although VMware virtual machines run in user mode, VMware Workstation itself requires the installation of various device drivers in the host operating system, notably to dynamically switch the Global Descriptor Table (GDT) and the Interrupt Descriptor Table (IDT).
The VMware product line can also run different operating systems on a dual-boot system simultaneously by booting one partition natively while using the other as a guest within VMware Workstation.
Desktop software[edit]
- VMware Workstation, introduced in 1999, was the first product launched by VMware. This software suite allows users to run multiple instances of x86 or x86-64 -compatible operating systems on a single physical personal computer. Workstation Pro version 12 was released in 2016.[78]
- VMware Fusion provides similar functionality for users of the Intel Mac platform, along with full compatibility with virtual machines created by other VMware products.
- VMware Workstation Player is freeware for non-commercial use, without requiring a licence, and available for commercial use with permission. It is similar to VMware Workstation, with reduced functionality.
Server software[edit]
VMware ESXi[79], an enterprise software product, can deliver greater performance than the freeware VMware Server, due to lower system computational overhead. VMware ESXi, as a "bare-metal" product, runs directly on the server hardware, allowing virtual servers to also use hardware more or less directly. In addition, VMware ESXi integrates into VMware vCenter, which offers extra services
Cloud management software
- VMware vRealize Suite - a cloud management platform purpose-built for a hybrid cloud.
- VMware Go is a web-based service to guide users of any expertise level through the installation and configuration of VMware vSphere Hypervisor.[80]
- VMware Cloud Foundation - Cloud Foundation provides an easy way to deploy and operate a private cloud on an integrated SDDC system
- VMware vCloud Air is a public cloud computing service.
- VMware Horizon View is a virtual desktop infrastructure (VDI) product.
Application management
The VMware Workspace Portal was a self-service app store for workspace management.[81]
Storage and availability
VMware's storage and availability products are composed of two primary offerings:
- VMware vSAN (previously called VMware Virtual SAN) is a software-defined storage solution that is embedded in VMware ESXi.[82][83] The vSphere and vSAN software runs on industry-standard x86 servers to form a hyper-converged infrastructure (or HCI) solution. You need to have servers from HCL (Hardware Compatibility List) to put one into production though. [84] The first release, version 5.5, was released in March 2014.[85][86] The 6th generation, version 6.6, was released in April 2017.[87][88] New features available in VMware vSAN 6.6 include native data at rest encryption, local protection for stretched clusters, analytics, and optimized solid-state drive performance.[89]
- VMware Site Recovery Manager (SRM) is a disaster recovery solution that automates the failover and failback of virtual machines to and from a secondary site using policy-based management.[90][91]