Jump to content

VMware

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 203.206.137.129 (talk) at 12:48, 20 March 2008 (typo ESC => ESX). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

VMware Inc.
Company typePublic (NYSEVMW)
IndustryComputer software
FoundedCalifornia, 1998
FounderMendel Rosenblum Edit this on Wikidata
HeadquartersUnited States Palo Alto, California, USA
Key people
Diane Greene
Mendel Rosenblum
ProductsVMware Workstation
VMware Fusion
VMware Player
VMware Server
Virtual Infrastructure
VMware ACE
VMware Lab Manager
VMware Converter
RevenueUS $ 1.33 Billion
2,022,000,000 United States dollar (2022) Edit this on Wikidata
1,314,000,000 United States dollar (2022) Edit this on Wikidata
Total assets14,662,000,000 United States dollar (2019) Edit this on Wikidata
Number of employees
5,000
ParentEMC Corporation
Websitewww.vmware.com

VMware, Inc. (NYSEVMW), a publicly-listed company, develops proprietary virtualization software products for x86-compatible computers, including both commercially-available and freeware versions. The company has its headquarters in Palo Alto, California, United States, with R&D offices located in Palo Alto; in San Francisco, California; and in Cambridge, Massachusetts.[1] Other offices exist in (for example) London in the UK; Aarhus, Denmark; Sofia, Bulgaria; Beijing, China; and in Bangalore and Pune, India.[1]

VMware's desktop software runs atop Microsoft Windows, Linux, and Mac OS X. VMware's enterprise-level software, VMware ESX Server, runs directly on server hardware (ESX is a modified, re-badged fork of RedHat Linux AS3 update 6[2] with some custom VMware drivers).

The name "VMware" comes from the acronym "VM", meaning "virtual machine".

Diane Greene, Mendel Rosenblum, Scott Devine, Edward Wang and Edouard Bugnion founded VMware in 1998.[3] Greene had earned a Master's Degree in Naval Architecture from MIT in 1978, and in 1988 she earned a second Master's Degree in Computer Science from the University of California at Berkeley.[4] Rosenblum and Greene first met while at Stanford.

On 2007-08-14, EMC Corporation released 10% of the company's shares in VMware in an initial public offering on the New York Stock Exchange. The stock debuted at 29 USD per share and closed the day at 51 USD.[5]

Products

Desktop software

VMware launched its first product, VMware Workstation, in 1999. This software suite allows users to run multiple instances of x86 or x86-64 -compatible operating systems on a single physical PC. VMware Fusion provides similar functionality for users of the MacIntel platform, along with full compatibility with virtual machines created by other VMware products. For users without a license to use VMware Workstation or VMware Fusion, VMware offers the freeware VMware Player product, which can run (but not create) virtual machines.

Server software

VMware markets two virtualization products for servers: VMware ESX Server and VMware Server (formerly called "GSX Server").

ESX Server, an enterprise-level product, can deliver greater performance than the freeware VMware Server, due to lower system overhead. In addition, ESX Server integrates into VMware Virtual Infrastructure, which offers extra services to enhance the reliability and manageability of a server deployment. The VMware Server product offers a user interface with a similar look-and-feel to VMware Workstation.

Other products

  • VMware Converter allows users to build virtual machines — compatible with VMware ESX Server, VMware Server and VMware Workstation — either from physical machines or from virtual machines made by other virtualization products. Converter replaces the older VMware products "P2V Assistant" and "Importer" — P2V Assistant allowed users to convert physical machines into virtual machines; and Importer allowed the import of virtual machines from other products into VMware Workstation.
  • VMware Capacity Planner, an information technology (IT) capacity planning tool, collects utilization-data in heterogeneous computing environments and compares it to industry-standard reference-data to provide analysis and decision-support modeling.
  • VMware ACE provides a means of distributing secured virtual desktops to networked client PCs.[6]

Generic operation

Keeping the hardware and virtual machine terminology unambiguous goes a long way in discussing virtualization. VMware Inc. refers to the physical hardware computer as the host machine, and identifies the operating system (or virtual appliance) running inside a virtual machine as the guest. This terminology applies to both personal and enterprise-wide VMware software.

Like an emulator, VMware software provides a completely virtualized set of hardware to the guest operating system. 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 systems 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. Alternately, 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 area network (SAN).

However, unlike an emulator, such as Virtual PC for PowerPC Macintosh computers, VMware software does not emulate an instruction set for 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. Stopping the virtual-machine guest before moving it to a different CPU type generally causes no issues.

The VMware Tools package adds drivers and utilities to improve the graphical performance for different guest operating systems, including mouse tracking. The package also enables some integration between the guest and host systems, including shared folders, plug-and-play devices, clock synchronisation, and cutting-and-pasting across environments. VMware Inc makes VMware Tools available for Microsoft Windows, Linux, Sun Solaris, FreeBSD, and Novell NetWare guest OSs.[7]

The VMware product line can also utilize different operating systems on a dual-boot system simultaneously by booting one partition natively while using the other as a guest operating system within VMware Workstation. Installers must take care, however, to reconfigure the guest partition to accept the new hardware configuration, as the VMware virtual machine presents a different set of hardware than the guest may expect. Furthermore with guests running a version of windows that requires activation switching between physical and virtual is likely to cause the system to demand reactivation.

Implementation of virtual processing

Conventional emulators (such as Bochs) emulate the microprocessor, executing each guest-CPU instruction by calling a software subroutine on the host machine that simulates the function of that CPU instruction. This allows the guest machine to run on host machines with a different type of microprocessor, but it operates very slowly.

Dynamic recompilation offers an improvement on this approach; it involves dynamically compiling blocks of machine-instructions the first time they execute, and then using the translated code directly when the code runs subsequently. (Microsoft's Virtual PC for Mac OS X takes this approach.)

VMware Workstation, Server, and ESX take an even more optimized path, using 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-mode code, VMware products re-write the code dynamically, a process VMware calls "binary translation" or BT. 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. VMware claims an overhead as small as 3% to 6% for computationally-intensive applications.

Although VMware virtual machines run in user-mode, VMware Workstation itself requires the installation of various drivers in the host operating-system, notably to dynamically switch the GDT and the IDT tables.

VMware's virtualization does not replace offending instructions and does not simply run kernel-code in user-mode. Both of these approaches run into difficulties on x86-based platforms. 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.

See also

References

  1. ^ a b "VMware Office Locations". VMware, Inc. Retrieved 2008-03-04.
  2. ^ "VMware ESX Source code".
  3. ^ "VMware Leadership".
  4. ^ Lashinsky, Adam (2007-10-02). "Full speed ahead". Fortune Magazine. Retrieved 2007-10-04. {{cite web}}: Check date values in: |date= (help)
  5. ^ Mullins, Robert (2007-08-14). "Update: VMware the bright spot on a gray Wall Street day". IDG News Service. Retrieved 2007-08-15. {{cite web}}: Check date values in: |date= (help)
  6. ^ VMware ACE product
  7. ^ "Installing and Upgrading VMware Tools" (PDF). Workstation User’s Manual. VMware, Inc. 2007-09-20. Retrieved 2007-11-02. {{cite web}}: Check date values in: |date= (help)