Fast virtual machine for windows. Programs for the computer operating system - virtual machines

Which one do you think is the best? best virtual machine?

I will not invent a story and retell others. I’d rather suggest you read an article from Linux Format magazine. In which experts made a comparative review of five popular virtual machines in the hope of finding the one... the best virtual machine. By the way, I highly recommend it to those who renounced and were able to escape from the captivity of Windows.

  • What is a virtual machine
  • Why do you need a virtual machine?
  • How we tested Virtual Machines
  • Performance
  • Functionality
  • Compatibility and snapshots
  • Desktop integration
  • Graphics acceleration
  • Verdict

What is a virtual machine

In simple terms, without getting bore, a virtual machine is an operating system within an operating system.

Why do I need a virtual machine

In our case, a virtual machine is primarily a platform for testing programs. Among which, as you understand, there may be . The virtual machine is also used by hackers to test their own and other people’s Trojans and other miracle files. No matter what group you belong to, you will still be interested in learning more about virtual machines and how they work.

How we tested virtual machines

First, we took a dual-core computer (due to budget restrictions) with fresh Arc Linux. In addition to proprietary VMware (version 7.1.0 of Layer and a 30-day trial of Workstation 11), we used the official Arch packages, which follow developer releases very closely. Each machine had 2 GB of system RAM and 128 MB of video memory (256 MB if needed).

We tested each candidate on different guest OSes: Mint 17.1 and Kubuntu 15.04 beta, as well as different versions of a non-Linux OS called Windows. To evaluate performance, we compiled the core Mint core, ran the SunSpider JavaScript benchmark, and played various games from our Steam library. To test the real world, we ran it on an 8-core machine with 16GB of RAM and a 4GB Nvidia GTX, but then we were forced to return it.

Virtualization technology has fundamentally changed the computing landscape. We'd be embarrassed to say that this is a new invention (early mainframes used it as a means of provisioning), but decade-old CPU innovations mean that you'll only get near-native performance with x86 code. And now we manage to cram dozens of machines (easily copied and restored) into one case, and the work of data centers has become much more efficient. You can also imitate another architecture, say, ARM, which is convenient for embedded system developers.

This is also a benefit for ordinary users: getting to know a new OS no longer has to be such a time-consuming exercise in constant fear of ruining your system. Even if you just want to test out a new program, it's much safer to do it in a virtual machine instead of risking your current setup. Support for in-kernel virtualization (via KVM) and the Qemu emulator means Linux users no longer need to resort to proprietary tools.

In the old days, VirtualBox from Sun (once owned by Innotek, now Oracle) was the only real option. But times have changed, so let's look at other virtualization applications.

Both VMware and VirtualBox use kernel-dependent modules that are loaded to work their magic. VMware will need to compile them, which will require installing the kernel header packages and all the compiler stuff. You will then receive an init script to load the specified modules, although this will be of no use to Systemd users. If this is your case, you might want to create your own init file instead of running this script as root all the time (or seeing the same error messages). At the time of writing, the 3.19 series kernels required patching up the VMware source code, but hopefully this will be fixed by the time the magazine is published. VirtualBox packages are available in most distributions, and if you have a standard kernel, you don't have to worry about anything.

Virt-Manager requires the libvirtd service to be running on your system before it can be launched, which a helpful message will notify you of, and if you're using a full-featured desktop environment, it will do this for you; All you have to do is enter the root password.

Both VirtualBox and VMware Workstation are quite simple, as long as you don't get distracted by each option. But in VMware Player there are not so many options, and you will get your machine up and running very quickly. But if you're determined to make the most of all these options, you'll have to install the Guest Additions.

The Linux Guest Additions for VirtualBox are much easier to install (the CD will run automatically) than the VMware add-ons, which require you to copy programs from an imaginary CD, change the permissions, and then run the script. Is it really 1999? But, having done all this, you will be rewarded with improved graphics and a number of additional functions, which we will discuss further.

The easiest to use of our selection is Boxes, even if this is due to providing only the bare minimum of Qemu / libvirt functions. VMware Player and VirtualBox come in second, followed by their paid rival (nominally more difficult, due to more options). Virt-Manager isn't particularly difficult to use, but it has just enough of Qemu's maze of settings to overwhelm a newbie. In addition, its mechanism for managing storage is quite confusing, especially if you are going to store your virtual disk in a non-standard location: then you first need to add the required directory as a “storage pool”. However, all the necessary exotic modules will be provided by your own distribution, and in this case, why not take a risk.

Performance

Will they create a slow or agile VM for you?

Thanks to hardware enhancements and paravirtualization technologies, it is now possible to perform some tasks at speeds close to those of real hardware.

However, as it is, there is usually some performance hit. Almost every configuration on which we tested the guest desktop exhibited some kind of slowdown. But you get used to it, and you can turn off all the beauties or turn on the appropriate troubleshooting mode if it bothers you.

We're not taking 3D performance into account here - that wouldn't be entirely fair, and it has its own category across the page. However, for everyday tasks using Terminal, you're unlikely to notice much difference between our candidates. Experiments with kernel compilation have shown that VirtualBox is significantly behind the competition. SunSpider's JavaScript benchmark test confirmed this finding, with both tasks running 20% ​​slower than the others. Disk input/output (I/O) (especially if you have an SSD) and network traffic were fast for all of our candidates. Ultimately, VMware gained an edge by supporting newer Intel processors.

Functionality

What does each candidate have to offer?

All of our candidates target different use cases and therefore each have their own, individual benefits. Of course, the presence of some standard features is certainly implied: these, for example, include the ability to create snapshots, support for Intel VT-x and AMD-V processor extensions, and flexible configuration of virtual hardware. All this is offered by everyone, but some applications are capable of more heroic feats.

A disclaimer here is that Gnome Boxes and Virt-Manager are just interfaces to Qemu (via the libvirt abstraction layer). And Qemu is essentially a processor emulator that is capable of virtualization via KVM, but is still a world of its own.

So, let's look at our candidates individually.

Gnome Boxes ★★

When invoked from the command line, Qemu supports a ton of options, most of which are missing from Gnome Boxes: its goal (implemented) is to be simple and straightforward in appearance and operation. Through its user-friendly wizard interface, you can set up a virtual machine in literally three clicks - just point it to the appropriate ISO. Boxes abstracts the difference between a virtual machine and a remote machine, and you can connect to both via VNC, SPICE (which allows audio to work over a network), or OVirt.

Gnome Boxes

Boxes doesn't offer much in the way of managing your virtual machine over the network, but it at least provides all the NAT wizardry you need to make sure your virtual machine communicates with the world. The remaining candidates successfully configure NAT, network bridges or host-only networks, and all this can be very convenient in certain circumstances.

Virt-Manager ★★★★

Virt-Manager (aka Virtual Machine Manager) offers significantly more Qemu features (but again, not all). It seems to have gone overboard with its list of supported x86 operating systems, particularly those from the Linux family.


Virt-Manager

Leaving this aside, Virt-Manager makes it relatively easy to configure a machine of any complexity - you can add any equipment, including several network interfaces. In addition to KVM VMs, Virt-Man-ager can enable Qemu/libvirt support for Xen guests and LXC containers. Optionally, it can also poll guest resources and thus provide very nice graphs (like the ones in the Performance section on page 25, which take about 30 seconds after Windows 10 starts). Additionally, Virt-Manager takes advantage of Qemu's recently added USB 3.0 support.

Compatibility and snapshots

Is it possible to move virtual machines between real ones?

Sometimes you need to move a VM between hypervisors. All of our programs can import machines stored in the Open Virtual Appliance (OVA) format, which is simply a tarball of a VMDK (VMware) disk image, and virtual hardware data. VirtualBox allows export to this format, but also has its own - Virtual Disk Image (VDI), and also copes with all the others.

The qemu-img command can be used to convert formats. Of particular note is his favorite QCOW2 format, which allows you to store multiple snapshots of the system internally, using the excellent Copy On Write (COW) technique.

Boxes, Virt-Manager, VirtualBox and VMware Workstation support system snapshots, saving different states of their VM. VMware Player only allows you to have one snapshot per machine in addition to its current state. So deep regression testing is excluded.

VirtualBox and VMware Workstation can also "clone" a VM, and this is an effective method of creating system snapshots: data is written to the corresponding clone only if its state is different from the state of the parent. VMware allows you to mount a guest VMDK image on the host, which can also be convenient, although the same trick can be done by converting to a raw disk image and using standard Linux tools and arithmetic to calculate the partition offset.

VirtualBox ★★★★

Originally a desktop virtualization client, VirtualBox is still probably the go-to tool for many. This program has a clear structure that simplifies setting up a virtual machine, and many useful options. In addition to limiting the number of CPU cores that the guest OS has access to, VirtualBox allows you to specify a limit on the guest's CPU usage as a percentage. VirtualBox also supports video recording, so you can record a Windows tutorial for your YouTube channel in an evening.


VirtualBox

It can import any virtual disks, but only offers USB 2.0 host controller support, and then only if you install Oracle's proprietary extension pack. Options for distributed clipboard access and drag-and-drop (in one or both directions, as you wish) are quite convenient. VirtualBox has convenient indicators for network and disk I/O and CPU usage.

By the way, in the article “” we talked in detail about how to install and properly configure the VirtualBox virtual machine.

VMware Player ★★★

VMware's free offering has come a long way since its introduction in 2008. The most remarkable thing is that this is no longer a player: it is more than capable of creating a high-quality virtual machine for you.


VMware Player

In addition to supporting a number of network configurations (NAT, bridged, host-only, etc.), it offers very nice network traffic shaping options, which is quite useful if you are testing the latest version of, say, a DDoS client or seeing how much malware you can hang Windows XP on your virtual machine until it crashes. VMware also supports USB 3.0 devices, and installing guest tools will allow you to use brilliant graphics, a distributed clipboard, and distributed directories. Player is somewhat inferior when it comes to snapshots (it only allows you to take one), but we criticized it in the previous section.

VMware Workstation ★★★★★

There is a non-free version of VMware Player (VMware Player Pro), but we decided that for this Comparison it would be more appropriate to take the higher-end Workstation instead. The app has a lot of extra features for developers, including the ability to group virtual machines into a sort of virtual phalanx so you can have them all come online at the same time with a single click.

VMware Workstation also offers support for new commands on modern Intel processors, and also allows you to configure machines with virtual CPUs, up to 16 and 64 GB of RAM. However, Workstation is very much aimed at integrating with the rest of the (rather heavy) VMware suite, and therefore will look more at home in an enterprise environment.

Desktop integration

Will they clash with your color scheme?

Some users love the perfect harmony of the interfaces of virtual machines and their corresponding hypervisors with the host desktop, while others are just confused.

VirtualBox uses Qt4, which is especially infuriating on the Qt-based Arch Linux desktop, which uses Qt5 everywhere, but it's just something of a niche flaw. Boxes fits perfectly with Gnome 3, as you'd expect; Virt-Manager and VMware use GTK3 and also work perfectly with it.

All of our candidates allow us to switch the virtual machine to full-screen mode, and fortunately they all allowed us to switch back using the appropriate key combination.

Standout modes include Unity in VMware (no, this is not a way to make everything Ubuntu-like) and Seamless in Virtual-Box - both display application windows directly from the guest on the host desktop. This is very good for a Linux VM (eliminating the potential confusion between guest and host windows), however trying to run
the preview didn't go well; Windows 7 with Aero enabled was also not the most pleasant experience.

All of our candidates support running the guest in full screen mode, and can be configured to change resolution when the window size is changed. Suitable hotkeys are provided to exit this scenario. The drag-and-drop feature on VMware machines is very convenient, which is why VMware wins in this category.

Graphics acceleration

Is it possible to avoid software rendering problems?

Any of our candidates would serve you well if you just wanted to install a virtual machine with no intention of doing anything graphics-intensive.

But if you need 3D acceleration, you need to use VMware or VirtualBox. Once you get past installing the Guest Additions (including the double-negative VirtualBox question that tries to sway you from its experimental WDDM support needed for, say, the Windows 7 Aero interface), you'll be able to enjoy 3D acceleration in VirtualBox and in two VMware clients.


Boom-boom, Maxwell's silver hammer landed on the, uh, beehive. He died shortly after this screenshot was taken in Don't Starve.

VirtualBox allows you to allocate up to 256 MB of system RAM to the virtual video card, and VMware - up to 2 GB. Note that these gigabytes are not taken from your actual graphics card, so you often won't see much improvement above 256 MB. VirtualBox also provides 2D acceleration for Windows guests, which should help speed up video rendering, screen enlargement, and color correction, although a lot of this depends on the host configuration—on a fast machine this setting won't have much of an impact. A Windows VM probably won't run Battlefield 4 or Middle-earth: Shadow of Mordor (we're lucky they're ported to Linux) when everything is cranked up to 11, but more older or less demanding games will work just fine: we spent a good hour playing the popular indie game Don't Starve, completely forgetting about our Comparison.

Everything worked better on VMware than on VirtualBox, but perhaps this was due to a more advantageous configuration - on Arch Linux we were using the latest proprietary Nvidia driver, which could lead to an advantage of one over the other.

Verdict

Virtualization is a long-standing and complex topic for comparisons. If you want to run 3D games, you won't even look at Gnome Boxes or Virt-Manager, and unless you get better results with VirtualBox than we do, you'll choose VMware as your hypervisor. But again, this technology is by no means as mature as DirectX 11 running in the native format. You may have even better luck with games in Wine [Ed.: - Or not.] with some experimental performance patches. We're generally not crazy about VMware licenses, especially ones that force you to pay after a 30-day trial, but for some, Workstation's enterprise-grade features will be a boon. Particularly if you use vCenter Converter from VMware, you virtualize a machine with one click - ideal if you want to test something new on your current system.

We haven't covered the ton of command line tools that come with all of our candidates, but they are there, along with more than copious documentation. You can use them in your scripts when you go all out on virtualization, pushing out a whole host of virtual machines from the safety of the command line environment. Perhaps hackers will prefer to work with Qemu directly, but those looking for a simple free and open source solution will be happy with Gnome Boxes.


The bubbles look good if you don't see the effort that went into rendering them.

But there is only one winner (a tie is a rare exception), and this time it is Virt-Manager - well, we couldn’t let VMware win. Virt-Manager allows you to harness most of the power of Qemu without resorting to lengthy command-line spells. Virtual machines can be paused, reconfigured, moved and cloned - all without much hassle. The only thing it lacks is support for graphics acceleration, but who knows, maybe it will appear. VMware Player and Gnome Boxes are tied for second place as they both score highly for their simplicity, and we love the Boxes icon, which features a tesseract (or a hypercube, or a cube within a cube - whatever you prefer).

Virt-Manager ★★★★
All managers should do such a good job.

VirtualBox ★★
Once the only solution, now on the sidelines.

VMware Player ★★★
Fast and convenient, but the license let me down.

VMware Workstation ★★
Fast and full-featured, but not free.

Boxes ★★★
The simplest way to install and configure a VM.

What is a virtual machine and what is it for?

A virtual machine is a program that allows you to emulate a real computer with all its components (BIOS, hard drive, drive, etc.). You can install any operating system, as well as programs and drivers, on this virtual PC. You can seamlessly exchange data between your real system and the virtual one.

I won’t say that absolutely every user needs a virtual machine, but an advanced user often needs one. A virtual machine is used for various purposes and tasks:

  • To install another or second same OS;
  • For testing various software;
  • To emulate a computer network;
  • To run applications that cannot be launched from your OS.

To give a specific example, for example, Windows XP is installed on your PC, and you can install Windows 7, Windows 8 or Linux on a virtual PC.

In this article I will talk about three popular emulators, their main features and the advantages of each of them. As a bonus, I will present an Android emulator for Windows and give an example of creating a virtual machine using one of the emulators as an example.

VMware is one of the most famous and widespread virtual machines. It is usually used by large corporations. VMware is presented in two forms: Player and Workstation, the first of which is free, and the second is paid.

VMware also supports 32-bit and 64-bit systems, as well as USB 3.0 and various operating systems.

Key Features:

  • VMware allows you to connect USB devices, CD/DVD drives, network interfaces, and others to virtual machines;
  • Supports moving and copying files using drag and drop;
  • You can connect new virtual machines using a step-by-step wizard;
  • You can create a virtual machine using the installation disk or from a ready-made disk image;
  • VMware Player supports virtual machines that were created on paid VMware.

Microsoft Virtual PC

Microsoft Virtual PC is a free virtual machine with a user-friendly interface and great functionality. The only small drawback is that only Windows operating systems are supported.

Main features:

  • It is possible to select the equipment that is needed on the virtual machine;
  • You can add or remove hardware on a virtual computer;
  • You can copy virtual machines;
  • It is possible to quickly switch between virtual PCs using bookmarks;
  • It is possible to drag and drop files from the main PC to the virtual one and vice versa;
  • You can connect virtual and real computers over a network.

VirtualBox

VirtualBox is a free emulator on which you can install the most popular operating systems, such as Windows, Linux, FreeBSD, Mac OS. Both 32 and 64 bit versions of operating systems are supported. VirtualBox can also work with virtual computers that were created in the paid VMware Workstation program.

Main features of the program:

  • VirtualBox can be controlled either through a graphical interface or through the command line;
  • VirtualBox makes it possible to connect USB devices to virtual computers and allow them to work with them directly;
  • All parameters of the virtual machine are described in XML format and therefore do not depend in any way on the physical PC on which the system is running;
  • VirtualBox supports remote control;
  • There is a special SDK package to expand the program's functions.

After analyzing the reviews of all three emulators, we can come to the conclusion that VirtualBox is the most suitable program for creating and managing virtual machines. Therefore, we will look at installing a virtual machine using VirtualBox as an example.

Installing a VirtualBox virtual machine

Let's look at how to install VirtualBox, and in the next chapter we'll see how to configure it.
Download the latest version of the program from the official website or from our Download program
We launch the installation and see the first welcome window. Click “Next” and move on to the next stage.

At the second stage of installation, we see the program components that will be installed and the directory into which the program will be installed. The installation directory can be changed, but it is recommended to install all components. Even if not all components are needed right now, but they will be needed in the future, you will need to reinstall the virtual machine.

At the next stage, a warning appears about the computer being temporarily disconnected from the network during installation.

A window will then appear informing you that you can begin installation. Click the “Install” button and wait for the installation to complete.

During the installation process, pop-ups may appear with the message “Install software for this device?” Click the “Install” button.
When the installation is complete, click the “Finish” button. The virtual machine will automatically start after installation is complete.

Creating a VirtualBox virtual machine

In order to create a virtual machine, in the VirtualBox program window, click on the “Create” button in the upper left corner.

At the first stage, enter the name of the machine being created and select the type of operating system. For example, let's create a virtual machine with the Windows 7 operating system. Let's move on.

At the second stage, we set the amount of RAM that is needed for the virtual machine. We install based on the needs of the selected operating system. The system requirements for Windows 7 indicate that it requires at least 1 GB of RAM. Let's indicate, for example, 1.5 GB. Here you need to take into account that you cannot install more than half of the RAM of a physical computer in a virtual machine.

Now you can connect a virtual hard disk to the created virtual machine. First we create it. Select “Create a new virtual hard disk” and click on the “Create” button.

Specify the type of hard drive. If you are not familiar with the formats described there, you can leave it as is and click “Next”.

Now you need to specify the format for storing data on the virtual hard disk. A dynamic virtual hard disk can expand, while a fixed one has a strictly defined size. Choose what you like best.

Specify the name of the virtual hard disk and its size. Click “Create”.

Setting up a VirtualBox virtual machine

Let's see what settings the virtual machine has. Click the “Configure” button in the upper left corner of the program.
The settings window appears. Here you can change various parameters of the virtual machine (for example, the amount of allocated RAM, enabling 2D acceleration, device boot order, etc.)
All settings are divided into categories.

If you make a mistake in the settings, the program will inform you about this by appearing at the bottom of the settings window the inscription “Incorrect settings detected.”

Usually the first 3 categories of settings are enough for the user. If the virtual machine is running slowly, you can increase the amount of RAM or use more processor power.

Having completed the settings, click the “OK” button. To start (enable) the created virtual machine, click on the “Launch” button. Now we insert the installation disk with the operating system into the drive, install and configure the operating system and your virtual computer is ready for use.

That's all, we looked at 3 popular emulators, identified all their strengths, chose the most suitable one for us, installed and configured the VirtualBox virtual machine, and now the promised Bonus.

BlueStacks - Android emulator for Windows

BlueStacks Player is a program that allows you to run Android applications on a computer running Windows or MacOS. BlueStacks allows you not only to get acquainted with the capabilities of Android, but also to fully test applications created for this operating system. Using the BlueStacks emulator, users can install and run on their PC any of the numerous programs available on Google Play, GetJar, Amazon Appstore, 1Mobile and other online catalogs of Android applications. The best part is, BlueStacks is completely free.

Key features of BlueStacks

The most important feature of the BlueStacks emulator is its support for LayerCake technology, which simulates an ARM processor. This technology allows Android applications to run on x86 processors. The ARM graphics subsystem is also simulated, which makes it possible to run the most modern games written for Android tablets on BlueStacks. The actions of moving pages with your fingers, which tablet users are used to, are performed on BlueStacks with the mouse.

Unlike other virtual machines, BlueStacks does not need to install the operating system manually - all Android functions are available immediately after launch. One tweak you need to make is to change the interface language. Russian language is fully supported.
BlueStacks works on Windows 7, Windows Vista, Windows XP.

This concludes our review for today. Good luck with the emulation.

Virtualization allows you to encapsulate the internals of operating systems or parts of them within virtual hardware and software. In other words, create a virtual space that will be real from the point of view of the operating system running in this space. This is exactly what virtual machines do for Windows 7, Linux and Mac OS X. Virtualization also allows you to simulate devices that are not even on your computer.

Note: In a sense, virtual machines allow you to create a computer within a computer.

There are two important aspects of machine virtualization:

  • interaction between a physical host (computer) and a virtual host
  • interaction between the operating system running in the virtual space and the hardware used

Virtualization software, namely virtual machines for Windows 7 (Linux, Mac OS X), is typically a regular operating system application or service that allows you to create hosts. A host is any physical machine (computer). Within virtualization software, the operating system runs on a host similar or identical to the actual host, called a virtual machine. For convenience, the operating system running in a virtual machine is called a guest operating system.

In addition, there are various virtualization methods that affect not only the implementation of applications for creating virtual machines, but also the capabilities provided to guest systems. There is conventional emulation, in which hardware and software calls pass through an intermediate layer. There is also para-virtualization, where part of the actions inside the virtual machine takes place on real hardware, while the other part passes through an intermediate layer. There is also virtualization at the system level, when each guest system boots in a special kernel, which allows you to run only similar versions of the operating system.

Some of these methods can be performed on the fly, without significant changes to the actual host and its operating system. Others require the host to be rebooted into a special instance of the operating system that supports virtualization. Others use special hosts that support and are designed for virtualization at the hardware device level. The latter are also known as bare metal virtualization methods (although this is not entirely true, since some software kernel is still used).

The virtualization software that manages the creation and operation of virtual machines, as well as the allocation and limitation of the resources provided, is often called a hypervisor. Some virtualization applications can also use special processor extensions to improve the performance of virtual machines. The presence of such extensions is called hardware support for virtualization. Examples of this support are VT-X (Intel) and AMD-V (AMD) technologies.

What is not virtualization and virtual machine?

Some people like to call virtualization programs (virtual machines) anything that creates a layer of abstraction between the operating system and some of the running processes. For example, there is Sandboxie, which allows you to isolate browsers from the system (see browser protection utilities). Some programs allow you to freeze the state of the system so that it cannot be changed. Others also allow you to use the so-called shadow mode, in which all programs run normally, but any changes are canceled when you restart the computer.

Of course, all of these programs provide various benefits, but they are not considered virtualization technologies and are not virtual machines because they do not simulate system calls, and they do not allow guest operating systems to run on top of the current system. Such programs only create additional layers of separation, mainly to increase the level of security. If we continue the topic of security, then...

Why use virtualization and virtual machines?

If security comes first for you and is the first thing you think about in any situation, then virtualization (the use of virtual machines) can certainly help you with this. But don’t assume that virtualization is mainly used for security. Its initial goals are: testing, cost reduction, flexibility, legacy product support, and education. Increasing the level of security is just a pleasant bonus, which also has many pitfalls.

Note: Although virtualization allows you to isolate one operating system from another, there are still ways to get from the guest system to the main one.

What is needed to run virtualization technology and virtual machines?

The first thing to consider is the physical host. Depending on the type of virtualization software (virtual machines), completely different hardware and operating systems may be required. Virtualization does not imply any single solution that will run wherever needed. Virtual machines need to be selected for the system (Windows, Linux, Mac) and for the hardware (hardware). In addition, the host must have the necessary .

So if you are going to run guest operating systems on top of your system, you will need additional resources to run them, such as a processor and RAM. For example, if your computer only has 2 GB of RAM and you want to run a guest system on Windows 7, then you will have to severely limit resource usage on the real system in order for the virtual machine to function properly. Unless, of course, you're trying to run Windows XP with 256 MB of memory. However, if you have 16 GB of RAM, then you can run more than one guest system without experiencing any shortage of resources.

Pros: Easy to install and use.

Cons: Limited functionality. Does not support snapshots or directory sharing.

Virtual machine for Windows 7, Linux and Mac OS X - VirtualBox

VirtualBox is another cross-platform virtual machine creation program for Windows 7 and above, as well as Linux and Mac systems, currently owned by Oracle. VirtualBox is similar to VMware Player, but has more features, including a more advanced networking stack, unlimited snapshots, some OpenGL and DirectX support, and much more. The app is easy to install and just as easy to use. You can also use the command line for automatic deployment. VirtualBox also supports USB and shared directories. There is also a portable version of VirtualBox. However, there are also disadvantages. You cannot take screenshots of guest systems. Disk management is a bit confusing.

Audience: beginners and experienced users.

Pros: Easy to install and use, many features.

Cons: No support for screenshots, importing existing machines is difficult, disk management is not intuitive.

VMware ESXi hypervisor for creating virtual machines

ESXi is a bare metal hypervisor with reduced functionality compared to ESX. The app requires a host and can be controlled from the console (the console is locked by default, but you can enable it manually). You will not be able to take screenshots or record video of the screen of your virtual machines. Transferring and cloning guest systems is done only manually. But what you get is memory sharing for improved RAM efficiency, powerful monitoring and management, and command line access via SSH (when unlocked). You can also install VMware Tools to improve the performance of virtual machines. Para-virtualization is also supported by ESXi.

Pros: Powerful, advanced virtual machine capabilities.

Cons: Requires a host and a lot of resources. Not easy to install and run.

Virtual machine for Unix/Linux - Kernel-based Virtual Machine (KVM)

KVM supports virtualization only for UNIX-like operating systems (Linux). The application can be run on any hardware or in emulation mode, however without processor extensions the performance will be terrible. KVM is designed to be used via a console. But, it has a decent management interface that allows you to start and stop virtual machines, take screenshots and much more. The interface is known as the Virtual Machine Manager (VMM) and is also used to manage Xen virtual machines (see below). Supports local and remote control. There is a known conflict with VirtualBox, but it can be resolved relatively easily

Audience: advanced users and professionals.

Pros: Full control and flexibility, very high performance under the right conditions.

Cons: UNIX-like systems only. Requires hardware virtualization extensions for normal execution. Emphasis on the command line. Not easy to install and run.

Virtual machine for Unix/Linux - Xen

Xen is another application for virtualizing UNIX-like operating systems (Linux). It must boot in its own kernel instance. The emphasis is on the command line. But, you can also use VMM. Officially, Xen has been supported by OpenSUSE for many years and was recently added to the main kernel release branch. Xen can run in hardware-assisted or para-virtualization mode. However, for para-virtualization, Xen is extremely problematic to install and run. Additionally, Xen has limited support for CD-ROM and network devices. The program is also available as a bare metal virtualization hypervisor on a Live CD. There are numerous third party extensions for managing Xen.

Audience: advanced users and professionals.

Pros: Full control and flexibility, very good performance, native kernel support.

Cons: UNIX-like systems only. Para-virtualization mode is buggy. Emphasis on the command line. A few command line utilities that can be confusing. Not easy to install and run. You must boot your own instance of the kernel.

Other solutions for creating virtual machines

There are many other solutions that were not listed here, such as Parallels Virtuozzo, OpenVZ and VMLite-based VirtualBox. There are also a number of redesigned solutions, including examples of crossing virtualization and thin clients. Linux also has a huge number of its own modifications. And don’t forget about cloud technologies with their virtualization applications.

However, if you are a novice user, then you should not chase possibilities and colorful modifications. Otherwise, trying to create a virtual machine to run a couple of programs can result in several sleepless nights.

A few words about virtualization programs

This review will be useful not only for novice users, but also for experts. The listed products cover a wide range of virtualization technologies at all levels. All solutions described are free for personal use. Choose what you want or need based on the available hardware, requirements for ease of setup and startup, as well as the availability of the required set of functions.

Typically, most people start learning virtualization with VMware Player or VirtualBox. Linux users may prefer KVM and perhaps Xen. Advanced users might want to take a look at ESXi.


A virtual machine is a software environment that emulates the hardware of a computer with all its components. Essentially, a virtual machine is a separate virtual computer on which operating systems, programs, drivers, etc. can be installed, which can then be run in isolation from the main operating system installed on this computer.

In this article we will look at what a virtual machine is and what it is needed for. Using a virtual machine goes something like this: you install a special virtualization program (virtual machine) on your computer, into which you can then install one or more operating systems supported by this program.

For example, your computer has the Windows 7 operating system installed, and you want to try another operating system: Windows 8.1, or Windows 10. You are not yet ready to immediately switch to a newer operating system, so by installing Windows 10 on a virtual machine, you can Familiarize yourself with its work and capabilities in detail and gain the necessary skills.

In parallel, you can install other operating systems into the virtual machine: various Linux distributions, Mac OS X, etc. At the same time, you can use Windows 10 on your computer, for example, and Windows 7, Ubuntu, and Mac on the virtual machine OS X

The most popular programs for creating virtual machines (VMs) for ordinary users (there is a large corporate segment of virtualization systems): Oracle VirtualBox (free), VMware (free for personal use VMware Player, paid VMware Workstation), Parallels (for computers with Mac OS X ), Windows Virtual PC (Windows 7, starting with the Pro edition, supports free installation of the Windows XP Mode virtual environment), Hyper-V (works in x64 bit versions of Windows, starting with Windows 8) and others.

Virtual machines from different manufacturers differ in their capabilities and features. It will be possible to download virtual machines from the websites of software manufacturers.

Using virtual machines

Virtual machines (VMs) are mainly used for the following purposes:

  • installing another operating system to study or work with
  • testing unfamiliar programs without risk to the main operating system
  • using programs that cannot run on your computer
  • setting up a local network
  • Safely launch suspicious applications
  • simultaneous installation of several operating systems on a computer

For example, on my computer at different times, the following operating systems were installed in a virtual environment: Windows XP, Windows 7, Windows 8.1, Windows 10, Mac OS X, Linux Mint, Android.

Working in an operating system installed in a virtual machine is no different from working in a regular system installed on a computer. This is a regular OS running in a virtual environment. You can do whatever you want without fear of killing Windows or another system. If as a result of your actions the OS becomes inoperable, then you can simply remove this operating system and install another one instead.

Many virtual machines have the ability to create a snapshot of the system, so you can easily restore a “dead” OS.

Most likely, powerful, resource-intensive games will not run on a virtual machine, because such games will most likely slow down greatly. The performance of the operating system installed on a virtual machine depends on the power of the particular computer.

In this image you can see that Windows 10 is installed on my computer, and in the virtual machine window (I deliberately made the virtualization program window smaller) the Windows 8.1 operating system is running. Thus, at that moment, two different operating systems were running simultaneously on my computer, independently of each other.

The operating system installed in the virtual machine will run in isolation from the main operating system installed on your computer. You can do whatever you want with Windows (or another operating system) installed in a virtual machine. The main system installed on your computer will not be affected by running in the virtual machine, or by other changes made to the operating system installed on the virtual machine.

You can test unfamiliar programs on a virtual machine before installing them on a real system. Windows OS, or another operating system (if it is not free), will need to be activated.

Some programs do not run on a particular operating system, so you can install such a program on a supported operating system in a virtual machine. In this case, you can continue to use the required application on your computer.

A virtual machine can be used for security purposes. For example, you may not immediately install a program on your computer that makes you suspicious, but will first install such a program on a virtual machine. If your suspicions are confirmed, the main operating system installed on your computer will not be affected in any way.

You can safely visit suspicious sites, risking only the guest system installed in the VM.

In this image, the virtual machine is running the Mac OS X operating system with the Safari browser open in its window. In VMware Workstation, the guest system can be expanded to fill the entire screen of your computer monitor.

When using a virtual machine, along with the advantages, there are also some disadvantages. The main problem: on low-power computers, work in a guest system installed on a virtual machine may slow down (freeze, slow down). This is due to the fact that at this time the resources of your computer are simultaneously consumed by two operating systems: the main operating system installed on your computer and the guest operating system installed in the virtual machine.

In order not to overload your computer, I recommend, while working in the guest operating system, to close currently unnecessary applications in the main system. After this, the load on your computer’s resources will decrease somewhat, and working in the guest OS installed on the virtual machine will become more comfortable. On powerful computers, such problems usually do not arise.

If you want to try another Windows operating system on your computer, but due to the low power of the computer, working in a virtual machine will be difficult, then you can install another system on a virtual hard disk (VHD). You can read more about this. With this option, you will launch operating systems on your computer one by one.

When working with a virtual machine, you can easily remove any operating system from there without any consequences for your computer, and also remove the virtual machine program from your computer.

Conclusions of the article

Using a special program: a virtual machine (Virtual Machine), you can install another operating system on your computer to familiarize yourself with its operation, test applications, solve compatibility problems, for security purposes, etc. You can try several different ones virtual machines and choose the most convenient option for yourself.

The rapid development of virtualization technologies has had a significant impact not only on the development of the IT infrastructure of large enterprises. The power of desktop personal computers has reached a level where one physical machine can support several simultaneously running operating systems in virtual machines. Just a few years ago, virtual machines were something exotic for end users, who installed them mostly for evaluation purposes. Nowadays, multi-core processors and large amounts of RAM are not uncommon on a home or office computer, and this allows us to come up with new options for using them in the context of virtualization technologies.

Many users are finding a variety of uses for desktop virtualization platforms, both at home and at work. After all, a virtual machine, compared to a physical one, has significantly greater flexibility in terms of portability to another physical platform. In addition, over the past couple of years, the quality of desktop virtualization platforms has increased significantly in terms of functionality, ease of use and performance. The relatively recent introduction of support for hardware virtualization on desktop systems means that leading processor manufacturers such as Intel and AMD believe in the future of virtualization technologies on personal computers.

Of course, such bulky and hardware-intensive operating systems as Windows Vista are capable of absorbing the power of user desktops, no matter how high they are, but progress does not stand still, and further development of desktop hardware platforms will soon make it possible to support several such systems simultaneously , satisfying the performance requirements. However, many users believe that the use of virtualization technologies at home is not necessary and consider virtualization as another specific technology that will not have much impact on them. Mostly, this is due to the fact that they do not see worthy ways to use virtual machines.

In business, virtualization technologies are implemented mainly to maintain the virtual infrastructure of the company's servers and have very little impact on end users. In this article we will show that almost any personal computer user can use virtualization technologies to increase the efficiency of their work on a personal computer at home, as well as for everyday tasks in the workplace.

How to use virtual machines at home

Most personal computer users often encounter the problem of using potentially dangerous or unstable applications that can either damage the operating system or affect the operation of other programs. Often, a home computer, on which work documents are also located, is used by several people, among whom not everyone understands how to handle it correctly so as not to damage important data or the operating system. Creating user accounts does not solve this problem, since many applications require administrative rights to install, and using the computer in this mode significantly limits its use. Of course, many also face the problem of transferring the operating system and installed applications to another computer when purchasing it. The category of users who actively use laptops is faced with the problem of synchronizing data between it and a desktop computer. After all, not only is file synchronization necessary, but you also need to use the same applications at work and at home. For many people, it is also important to be able to learn how to work with various operating systems, which in this case do not require high performance. In this case, for example, when working in Linux, the user needs to access Windows applications, and to do this he has to restart the computer. And the main problem during training is the impossibility of simulating a real network between several computers if only one is available. All these and many other problems can be solved by using virtual machines in desktop virtualization systems.

The main options for home use of virtual machines are the following:

  • Creating a personal virtual environment isolated from the host system, which allows you to use several copies of working environments on one computer, completely isolated from each other. Unfortunately, this model excludes the option of using virtual environments for 3D games, since virtualization platform manufacturers have not yet learned to fully support the emulation of all functions of video adapters. VMware is currently ahead of everyone in this regard; in the latest versions of its desktop platform VMware Workstation, it has included features for experimental support for Direct-3D and shaders. However, recently PCI-SIG, the company developing the PCI Express standard, published new specifications for the PCI Express 2.0 standard, which claim support for I/O virtualization functions that significantly simplify guest systems' access to physical hardware. Undoubtedly, the time is not far off when we will play games on virtual machines.
  • Create portable virtual machines that are ready for use on any other architecture-compatible platform. If you need to demonstrate the operation of a program, and it or the operating system environment must be configured in a certain way - virtual machines are the best option in this case. Do all the necessary things in the virtual machine, burn it to a DVD and where you need to show how everything works, install the virtualization platform and start the virtual machine.
  • Obtaining secure user environments for the Internet. When working on the Internet, which, as everyone knows, is fairly filled with viruses and Trojan horses, running an Internet browser in user-mode is not an acceptable solution for many from a security point of view. After all, there are many vulnerabilities in software, including operating systems, through which malware can damage important data. A virtual machine in this case is a more advantageous option, since a malware, after gaining control of the operating system in a virtual machine, can only cause harm inside it, without affecting the host OS. By the way, recently viruses have begun to appear that detect their presence in a virtual machine and do not reveal themselves in this case, however, so far there are only a few such malicious programs, and in any case, no harm will be done to important data until the infected objects are transferred to the host OS . Therefore, the use of virtual machines in this case does not at all exclude the use of anti-virus software.
  • Creating environments for experimenting with potentially dangerous software. In a virtual machine, you can safely try out a new registry cleaner or disk utility. You can also safely install application software that could, under certain conditions, damage your system or your data. In this case, the virtual machine acts as a sandbox in which your programs are played. You can safely observe and study their work without worrying about the safety of your data.
  • Convenient and simple backup of user environments. Ultimately, a virtual machine is just a folder of files on your computer that can be copied to backup media and then easily restored. In this case, there is no need to create hard disk images to back up your system.
  • Possibility of training to work with operating systems other than your host one. Of course, you can install a second OS in parallel with your main system, but in this case, if you need any application from the main system, you will have to reboot. In this case, a virtual machine is an ideal option: you run the OS you need in parallel with the host OS and switch between them if necessary. On many systems, sharing files between the guest and host systems is as simple as dragging and dropping files and folders with the mouse pointer.

We have listed only the main options for using virtual machines at home; of course, there are other, more specific areas of their application. But the real prospects for using desktop virtualization systems open up in business, where, above all, accessibility and saving time and costs on purchasing additional equipment are important.

Desktop virtualization platforms in business

For most companies, when it comes to virtualization, this primarily means virtualizing the enterprise server infrastructure. However, there are many VM-based solutions for end users that can significantly improve the productivity of a company's employees. Let's consider the main areas of application of virtual machines in business on virtualization platforms for desktop users:

  • Creation of repositories of typical templates for user work environments. Depending on the specifics of the organization’s work, its employees need to use a certain set of software. When a new employee joins an organization, he needs to install an operating system, configure it in a certain way, in accordance with the requirements of the organization and security policies, and also install all the necessary application software. When using virtual machine templates, this problem is solved very simply: an employee is installed with a desktop virtualization platform, and a virtual machine from a set of organization templates is launched in it, in which all the necessary software is installed and the appropriate operating system settings are made. This model will significantly reduce deployment time, as well as provide high flexibility when transferring an employee’s virtual desktop to another physical machine. Of course, this use case may require increased hardware resources, but this will more than pay off if an employee has to operate with large volumes of heterogeneous data, the backup of which will require significant time. For example, marketing employees, who install many of the programs they need, try things out every day and work with different documents. In this case, they can copy the folder with files of their working virtual machine at the end of the working day, without fear that tomorrow when installing the next program everything will “break”.
  • Creation of a virtual desktop infrastructure that allows for centralized storage of user environments on secure company servers. The end users themselves use remote desktop access tools for their environments (for example, Terminal Services) stored in the corporate data center. This option for using virtual machines requires significant costs for its implementation, since in this case it requires support for server virtualization platforms of the company’s data center. However, this method provides the best level of security and availability. Since all work environments are stored and maintained centrally in a secure data center, the likelihood of confidential information leakage is significantly reduced. At the same time, the degree of accessibility of such environments increases significantly, because access to them can be provided from anywhere with a high-speed connection. Strictly speaking, this solution does not apply to desktop virtualization platforms, but it does affect end users. An example of such a solution is VMware Virtual Desktop Infrastructure, based on the virtual infrastructure of an organization’s servers in a corporate data center. The structure of such a model is shown in the figure:
  • Use of virtual machines protected by security policies. IT professionals who need to ensure the confidentiality of their personal data, as well as frequently demonstrate various software to customers, are ideal for solutions for creating secure virtual machines that provide a means of restricting access to various functions for working with a virtual machine. You can also set the validity period of the virtual machine and thus distribute the software so that a certain circle of people cannot use the virtual machine for more than the permitted time. An example of such a solution is VMware's ACE Manager product.
  • Simplify user training by creating classrooms with virtual machines running various operating systems and application software. If a group of employees in an organization needs to be trained to use a certain product or program, you can create one virtual machine template and install the virtualization platform on each of the computers in the classroom. Next, the virtual machine can be copied to all computers and launched with all the required number of programs. If you need training on another product, you can create a new virtual machine template and also deploy it to all computers in your classroom.
  • Development and testing of software in the company. A virtual machine, being an isolated environment, is ideal for software development. Developers and testers can create the operating system configurations and user environments they need to simulate program behavior on various platforms. As part of this use case, it is also possible to model working pairs of virtual machines on the same physical platform that interact with each other through networking. In addition, some platforms, such as VMware Workstation, allow you to create virtual machine state trees, each of which stores a specific user configuration. Each of these states can be rolled back with one click. An example of such a tree:

Comparative review of desktop virtualization platforms

Leading companies in the field of desktop virtualization platforms have done a lot over the past two years to make them as easy to use as possible and accessible to even the most inexperienced user. The leaders in the production of virtualization systems for end users at the moment are the following companies: VMware with the products VMware Workstation, VMware ACE and VMware Fusion, Microsoft with the Virtual PC product, Parallels, which is promoting its virtualization platform for Mac OS with the Parallels Desktop for Mac product, and the company InnoTek with the free and open source VirtualBox platform. Let's take a quick look at the capabilities of some of these products.

VMware Workstation


VMware is today the undisputed leader in the field of desktop virtualization systems. Its products are easy to use, feature rich functionality and are fast. Almost all manufacturers of desktop virtualization platforms are focused on the product. The process of creating a virtual machine and installing a guest operating system is not particularly difficult: during creation, you must specify the amount of RAM allocated for the guest system, the type and size of the virtual disk, the folder where the virtual machine files will be located and the type of guest OS to be installed. A bootable CD or DVD or ISO image can be used as the guest system installation distribution. After installing the operating system in a virtual machine, you must install VMware Tools and disable all unnecessary emulated devices in the settings in order to optimize performance. You can also create a snapshot of the “clean” state of the guest system, in which all data on the virtual disks at that moment will be saved, and you can return to their saved state at any time. Key features of VMware Workstation include:

  • Support for various types of virtual disks (controllers for both IDE and SCSI disks are emulated):
    • fixed size (Preallocated) or growing as they are filled (Growing), while the former are optimized for performance, and the latter are convenient because they do not take up much space before they are filled
    • Independent disks that are not affected by operating system snapshots. Such disks are convenient for organizing file storage, the changes of which are not required when working with snapshots of the guest system states
    • support for disks whose state is not saved when the virtual machine is turned off
    • possibility of direct recording to a physical disk
  • Support for various types of network interaction between virtual machines, including combining virtual machines into “teams” (Teams), which allows you to create virtual subnets consisting of virtual machines with a different number of virtual network adapters (up to three). The virtual network interface can operate in three different modes:
    • Bridged Networking- the virtual machine shares the resources of the network card with the host operating system and works with the network external to it as an independent machine.
    • Host-only Networking- the virtual machine receives an IP address in its own host subnet from the VMware DHCP server. Accordingly, you can only work on the network with other virtual machines on this host and with the OS of the host itself.
    • NAT- the virtual machine also operates on the host’s own subnet (but different), however, through the VMware NAT server, it can initiate connections to an external network. It is impossible to initiate a connection to such a virtual machine from an external network. Within the host, network communication is ensured.
    • Disks can also be mounted on the host system using the utility vmware-mount and expand using the utility vmware-vdiskmanager(this utility also serves to perform a number of other actions on virtual disks).
  • The ability to easily exchange files using the Drag&Drop interface, as well as by creating Shared Folders between the host and guest OS.
  • Support for a large list of guest and host operating systems.

The latest version of VMware Workstation 6 also includes the following useful features:

  • Full support for USB 2.0 interface
  • ability to record virtual machine activity
  • integrated product VMware Converter (for Windows hosts) for importing virtual machines from other manufacturers
  • running a virtual machine as a service

It is also worth noting that the VMware Workstation product is currently the only virtualization platform that experimentally supports Direct-3D in guest operating systems. The main and perhaps the only drawback of this platform is the fact that it is not free.

Microsoft Virtual PC

Having appeared as a competitor to VMware Workstation, the Connectix product, which was later purchased by Microsoft Corporation along with the company, did not receive worthy development in its hands. As a result, at the moment, in almost all respects it is inferior to the VMware Workstation platform and can only be launched on the Windows host operating system. However, a fair number of users use it as a desktop virtualization platform because Virtual PC is free and covers the basic needs of using virtual machines. The guest installation process is also very simple and intuitive. After the operating system is installed, you need to install Virtual Machine Additions (analogous to VMware Tools in VMware Workstation), which significantly increase the performance of the guest OS by improving virtualization technology. VM Additions can also be installed on Linux guest operating systems.

The main advantages of the Microsoft Virtual PC product include the following features:

  • Full support for Windows Vista as both a host and guest operating system. In terms of performance, Virtual PC 2007 has taken a significant step forward compared to the previous version, and now the performance of Windows Vista in a virtual machine is quite acceptable.
  • Support for 64-bit Windows host systems.
  • Improved performance by taking advantage of improvements introduced in Microsoft Virtual Server 2005 R2.
  • Availability of different types of virtual disks:
    • Dynamically expanding (similar to Growing in VMware Workstation)
    • Fixed Size (analogous to Preallocated in VMware Workstation)
    • Differencing - a disk that stores changes from the current state of the virtual disk
    • Linked to a hard disk (analogous to direct writing to disk in VMware Workstation)
  • The presence of various types of network communication between virtual machines and the host:
    • analogue of Bridged Networking in VMware Workstation
    • Local only (analogous to Host-only in VMware Workstation)
    • Shared Networking (similar to NAT in VMware Workstation)

It should be noted that the Virtual PC product is aimed more at home users rather than IT professionals and software developers, while VMware Workstation, with much greater functionality, is able to cover the needs of the latter. At the same time, Virtual PC is free and is intended mainly to simplify migration to new Microsoft operating systems and support their legacy versions. And, of course, the popularity of the Virtual PC platform is influenced by its free nature, creating a specific niche for the use of this product.

Parallels Workstation and Parallels Desktop for Mac


The product is intended for use on Windows and Linux platforms as a desktop virtualization system. Due to the fact that the Parallels company (actually owned by the Russian company SWSoft) is now focused mainly on the product, the development of this product has now somewhat stalled and in terms of functionality it is inferior to the two leading desktop platforms from VMware and Microsoft. Therefore, we will talk about the Parallels Desktop for Mac platform, which is now the main platform for Apple computers. In addition, at the moment the development of this platform is very dynamic, which is due, first of all, to the fact that VMware seriously intends to invade the virtualization market for Macs with its VMware Fusion product, which is almost ready for final release. Key features of the Parallels Desktop for Mac platform:

  • Easily create virtual machines in three steps using Parallels Installation Assistant. To create a virtual machine and install a guest operating system in it, no extra effort is required.
  • The presence of the Parallels Transporter utility, which allows you to migrate from a physical machine to a virtual one.
  • Full support for Windows Vista guest OS. This ensures simple file exchange between the guest and host operating systems
  • USB 2.0 interface support
  • Mac OS X "Leopard" support

Like most products for the Mac OS X platform, Parallels Desktop provides the user with a simple and user-friendly interface. It's no secret that many Mac users often feel the need to use Windows products, and Parallels Desktop provides them with this opportunity, allowing them to feel “in two worlds.”

You can also mention Parallels products such as Parallels Compressor Workstation and Parallels Compressor Server, which allow you to compress disks not only of Parallels virtual machines, but also of VMware, which is a solution to one of the problems that users often encounter.

VirtualBox


InnoTek recently entered the desktop virtualization market with an unexpected free and open source solution. At a time when it would seem that a new virtualization platform is difficult to bring to a decent level, InnoTek has achieved unexpectedly rapid success and popular recognition.

Many bloggers loyal to VMware, however, said that on their desktops, virtual machines on the platform run noticeably faster than virtual machines on VMware Workstation. In addition, until recently the VirtualBox platform was available only for Linux and Windows hosts, and at the end of April the first build for Mac OS X appeared, where the platform is planned to compete with such “monsters” of virtualization systems as Parallels and VMware. And, of course, she has every chance of winning. Considering the complete openness of the platform and its free nature, many enthusiasts are ready to take on improving the platform and increasing its functionality, hopefully without compromising its performance. At the moment, VirtualBox does not have such wide functionality as leading platforms; it does not support 64-bit systems and network interaction with Windows Vista, but on the website you can get up-to-date information on what system functions are being worked on. At the moment, the platform has the following main features:

  • Quite a large list of supported host and guest operating systems.
  • Support for multiple snapshots of the current state of the guest system (snapshots).
  • Dynamically expanding and fixed-size disks.
  • Ability to install Guest Additions (analogous to VMware Tools) to increase the degree of integration with the host OS

Of course, in terms of functionality, VirtualBox is a very immature product, but its performance indicators indicate that the platform has a future, and the Open Source community will make every effort to improve and develop it.

What to choose as a desktop virtualization system?

To summarize, we can say that each of the platforms described above currently occupies its own niche in the application of virtualization technologies on desktop computers. Each virtualization system has advantages and disadvantages. Over time, of course, many of them will acquire the necessary functionality that satisfies most user needs. It is also hoped that tools will be provided to convert virtual machine formats between platforms.

Undoubtedly, when it comes to using a desktop virtualization system at home on Windows hosts, you should choose between the Microsoft Virtual PC or VirtualBox platforms, since they are free and have the necessary functionality to support virtual machines at home. However, when it comes to the use of virtual machines in business, in a corporate enterprise environment, where the deployment of desktop virtualization systems places high demands on functionality and reliability, you cannot do without VMware Workstation, which is significantly superior to other described platforms. The VirtualBox product can also find its place here, as it is the most optimized for performance.

Virtual PC should be used when providing support for older versions of Windows and running Windows Vista as a guest OS. And users of the Mac platform cannot do without the Parallels Desktop product: this is evidenced by the fact that the result of more than 100,000 copies of the product sold was recorded back in 2006. Mac users should also pay attention to the VMware Fusion platform, which in the future claims to be the leader in the field of desktop virtualization platforms.

Virtualization technologies for personal computers are becoming closer to the end user and can now be used both in the daily work of employees of organizations and on home computers to create protected or isolated personal environments. In addition, the use of virtual machines on desktops is not limited to the described options. For example, in a VMware virtual machine, in the windowed mode of the guest operating system console, you can set a resolution higher than that supported by the monitor, and scroll bars will appear in the guest system window. This will allow you to test a website or application at high resolutions if you do not have an appropriate monitor. This example shows that the options for using virtual machines on desktop computers depend on your imagination. And rapidly evolving custom virtualization platforms can help you meet your needs.