What is a virtual machine. Overview of virtual machines by different developers

What do you think is the most?

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

  • What is a virtual machine
  • Why 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

If a plain language, no tediousness, then 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 checking programs. Among which, as you understand, there may be. Another virtual machine is used by hackers to test their own and other people's Trojans, and other miracle files. No matter which 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 constraints) with fresh Arc Linux. In addition to the proprietary VMware (version 7.1.0 Player and 30-day trial period of Workstation 11), we used the official Arch packages, which very closely follow the releases of the developers. 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 non-Linux OS called Windows. To evaluate performance, we compiled the main Mint kernel, ran the SunSpider JavaScript benchmark, and played a variety of games from our Steam library. To test the real world, we ran it on an 8-core machine with 16GB 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 this is a new invention (early mainframes used it as a means of providing resources), 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 building, and the work of data centers has become much more efficient. It is also possible to imitate another architecture, say, ARM, which is convenient for embedded system developers.

This is also good for ordinary users: familiarity with the 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 new program, it's much safer to do this in a virtual machine instead of risking your current setup. Support for in-kernel virtualization (via KVM) and the Qemu emulator means that Linux users no longer need to resort to proprietary tools.

In the old days, Sun's VirtualBox (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 stuffing. You will then get an init script to load the specified modules, although it will be useless for Systemd users. If this is your case, you may wish to create own file init instead of running this script as root all the time (or seeing the same error messages). At the time of writing, the 3.19 kernels required patching up the VMware sources, but I hope 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 starts, which you will be kindly notified, and if you are using a full desktop environment, it will do this for you; you will only have to enter the root password.

Both VirtualBox and VMware Workstation are pretty straightforward, unless you want to get distracted by every option. VMware Player, on the other hand, doesn't have too many options, and you'll get your machine up and running in no time. But if you are determined to use all these options to the maximum, you will have to install guest additions.

The Linux Guest Additions for VirtualBox are much easier to install (the CD will run automatically) than the VMware "tools" that require you to copy programs from an imaginary CD, change permissions, and then run a script. Is it really 1999? But by doing all this, you will be rewarded with improved graphics and a number of additional features, which we will discuss next.

The easiest to use of our selection is Boxes, even though it only provides the bare minimum of Qemu/libvirt features. VMware Player and VirtualBox come in second, followed by their paid rival (nominally they are more difficult due to more options). Virt-Manager isn't particularly difficult to use, but it has just enough of Qemu's labyrinth of settings to overwhelm a beginner. In addition, the mechanism for managing storage is rather 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, your own distribution will provide all the necessary exotic modules, in which case why not take a chance.

Performance

Will they create a slow or agile VM for you?

Thanks to hardware enhancements and paravirtualization technologies, it has become possible to perform some tasks at speeds close to the speed of real hardware.

However, the way it is, there is usually some performance hit. Pretty much every configuration we tested the guest desktop on showed some sort of stuttering. But you get used to it, and you can turn off all sorts of prettiness or turn on the appropriate mode of neutralization of faults, 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 are unlikely to notice much difference between our candidates. Kernel compilation experiments have shown that VirtualBox is well behind in the competition. Comparison test JavaScript SunSpider confirmed this conclusion: both tasks completed 20% slower than the others. Disk input / output (I / O) (especially if you have an SSD drive) and network traffic were fast for all of our candidates. Ultimately, VMware secured the upper hand with support for newer Intel processors.

Functionality

What can each candidate offer?

All of our candidates are designed for different use cases and therefore each has its own individual benefits. Of course, the presence of some standard features is certainly implied: these include, for example, 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, however, some applications are capable of more heroic deeds.

A caveat here is that Gnome Boxes and Virt-Manager are just interfaces to Qemu (via the libvirt abstraction layer). And Qemu is essentially a CPU emulator that is capable of virtualization via KVM, but is a whole world nonetheless.

So let's take a look at our candidates one by one.

Gnome Boxes ★★

When called from command line Qemu supports a lot of options, most of which are not in Gnome Boxes: its goal (implemented) is simplicity and clarity in appearance and operation. Through its user-friendly wizard interface, you can set up a virtual machine in just three clicks - just point it to the appropriate ISO. Boxes abstracts away 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 at least it provides all the NAT magic you need to keep your virtual machine talking to the world. The rest of the candidates successfully set up 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 many more Qemu features (but again, not all). It seems to have overdone it with its list of supported x86 operating systems, in particular from Linux families.


Virt Manager

That aside, Virt-Manager makes it relatively easy to set up a machine of any complexity - you can add any hardware, including multiple network interfaces. In addition to KVM VMs, Virt-Manager can use Qemu/libvirt support for Xen guests and LXC containers. Optionally, it can also poll guest resources and thus provide very nice graphs (like those in the Performance section on page 25, which takes about 30 seconds after Windows startup ten). In addition, Virt-Manager uses Qemu's newly added USB support 3.0.

Compatibility and snapshots

Is it possible to move virtual machines between real ones?

Sometimes it may be necessary 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 tar archive with 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 multiple system snapshots to be stored 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 allows you to have only one snapshot per machine in addition to its current state. So deep regression testing is excluded.

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

VirtualBox ★★★★

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


virtual box

It can import any virtual disks, but it only offers USB 2.0 host controller support, and even then only if you install Oracle's proprietary extension pack. The shared clipboard and drag-and-drop options (in one or both directions, as you wish) are quite handy. VirtualBox has handy indicators for network and disk I/O and for 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 ★★★

The free offering from VMware 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 handy if you are testing latest version, say, a DDoS client or see how many malware you can hang on your Windows XP virtual machine until it bursts. VMware also supports USB devices 3.0, and installing guest tools will allow for brilliant graphics, shared clipboard and shared 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 a higher-quality Workstation instead. This application has many additional features for developers, including the ability to group virtual machines into a kind of virtual phalanx so that you can make them all go into action at the same time with a single click.

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

Desktop integration

Will they conflict with your color scheme?

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

VirtualBox uses Qt4, which is especially annoying 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, which is to be expected; Virt-Manager and VMware use GTK3 and also pair 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 keyboard shortcut.

The standout modes are Unity in VMware (no, that's not the way to make everything ubuntu-like) and Seamless in Virtual-Box - both display application windows directly from the guest on the host's desktop. This is very good for a Linux VM (avoiding potential confusion between guest and host windows), but trying to run
the preview was not very successful; Windows 7 with Aero turned on wasn't the most pleasant experience either.

All of our candidates support running a guest in full screen mode, and they can be configured to change the resolution when the window is resized. To exit this scenario suitable hotkeys are provided. The drag-and-drop capability on VMware machines is very handy, 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 wanted to just set up a virtual machine with no intention of doing anything graphics intensive.

But if you need 3D acceleration, you need to take VMware or VirtualBox. Once you get the hang of installing the Guest Additions (including VirtualBox's misleading double-denial question that tries to turn you away from its experimental WDDM support needed for Windows 7's Aero interface, for example), you should 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 a virtual graphics card, while VMware allows up to 2 GB. Note that these gigabytes are not taken from your actual graphics card, so you often won't see much improvement beyond 256MB. VirtualBox also provides 2D acceleration for Windows guests, which should help speed up video rendering, screen enlargement, and color correction, although this largely depends on the host configuration - a fast machine will not be affected much by this setting. Virtual windows machine, probably won't run Battlefield 4 or Middle-earth: Shadow of Mordor (so we're pretty lucky they're ported to Linux) when everything is up to 11 but older or less demanding games will do 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 it was a more advantageous configuration - on Arch Linux we used the latest proprietary nvidia driver, which could lead to a preponderance of one over the other.

Verdict

Virtualization is a topic for Comparisons that is old and complex. If you want to run 3D games, you won't even look at Gnome Boxes or Virt-Manager, and unless you get VirtualBox Best results than us, you choose your VMware hypervisor. But then again, this technology is by no means as mature as native DirectX 11. You might even have better luck playing games in Wine [Ed.: - Or not.] with some experimental performance patches. We're generally not thrilled with VMware licenses, especially one that forces you to pay after a 30-day trial, but for some, the enterprise-level features in Workstation will be a boon. In particular, if you use VMware's vCenter Converter to virtualize a machine with a single click - perfect if you want to test something new on your current system.

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


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

But only one wins (a draw is a rare exception), and this time it's Virt-Manager - well, we couldn't let VMware win. Virt-Manager allows you to bridle most of Qemu's power 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 graphics acceleration support, but who knows, maybe it will appear. VMware Player and Gnome Boxes are tied for second place as they both score high for their simplicity, and we love the Boxes icon that features a tesseract (or a hypercube or a cube within a cube, whichever 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 failed.

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

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

The rapid development of virtualization technologies has had a significant impact not only on the development of the IT infrastructure of large enterprises. desktop power personal computers have reached the point where a single physical machine can support multiple simultaneously running operating systems in virtual machines. Until a few years ago, virtual machines were something exotic for end users who installed them, mostly for evaluation purposes. Now multi-core processors and large volumes random access memory on a home or office computer is not uncommon, and this allows you to come up with new options for their use in the context of virtualization technologies.

Many users find 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 much greater flexibility in terms of portability to another physical platform. In addition, the quality of desktop virtualization platforms has grown significantly over the past couple of years in terms of functionality, ease of use, and speed. The relatively recent support for hardware virtualization in desktop systems suggests that leading processor manufacturers such as Intel and AMD believe in the future of virtualization technologies on personal computers.

Of course, such cumbersome and hardware-demanding operating systems as Windows Vista, are capable of absorbing the power of user desktops, no matter how high they are, however, progress does not stand still, and further development of desktop hardware platforms will soon make it possible to support several such systems simultaneously, satisfying performance requirements. However, many users feel that home virtualization technologies are not necessary and see virtualization as another specific technology that won't affect them much. For the most part, this is due to the fact that they do not see worthy ways to use virtual machines.

In the business world, virtualization technologies are implemented mainly to maintain a company's virtual server infrastructure and have very little impact on end users. In this article, we will show that almost any PC user can use virtualization technologies to improve 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 are often faced with the problem of using potentially dangerous or unstable applications that can either damage the operating system or affect the operation of other programs. Often home computer, which also contains working documents, 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, and working at a computer in this mode significantly limits its use. Of course, many also face the problem of transferring operating system and installed applications to another computer when you buy 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, it is necessary not only to synchronize files, but also 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, working in Linux, the user needs to access Windows applications, and for this you have to restart the computer. And the main problem in training is the impossibility of modeling a real network between several computers if one is available. All these and many other problems can be solved by using virtual machines in desktop virtualization systems.

Main Options home use virtual machines are as follows:

  • Creation of a personal virtual environment isolated from the host system, which allows using several copies of working environments on one computer, completely isolated from each other. Unfortunately, this model excludes the use case virtual environments for 3D games, since virtualization platform manufacturers have not yet learned how to fully support the emulation of all the functions of video adapters. Ahead of everyone this moment in this regard, VMware has included experimental support for Direct-3D and shaders in recent versions of its VMware Workstation desktop platform. However, recently PCI-SIG, the developer of the PCI Express standard, published new specifications for the PCI Express 2.0 standard, which claims support for I/O virtualization features that make it much easier for guests to access physical hardware. Undoubtedly, the time is not far off when we will play games on virtual machines.
  • Create portable virtual machines that are ready to use on any other architecture-compatible platform. If you need to demonstrate the operation of a program, while it or the operating system environment must be configured in a certain way - virtual machines the best option in this case. Do all the necessary actions 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. Indeed, in software, including operating systems, there are many vulnerabilities through which malware can damage important data. A virtual machine in this case is a better option, since a malicious program, after gaining control over the operating system in a virtual machine, can cause harm only 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 impersonate in this case, however, so far there are only a few such malicious programs, and in any case, damage to important data will not be done until the infected objects are transferred to the host OS . Therefore, the use of virtual machines in this case does not exclude the use of anti-virus software.
  • Creation of environments for experiments with potentially dangerous software. On a virtual machine, you can painlessly try out a new registry cleaner or disk utility. You can also safely install application software that may, under certain conditions, damage the system or your data. In this case, the virtual machine acts as a "sandbox" in which your programs are played. You can safely observe their work and study them without worrying about the safety of data.
  • Convenient and simple backup 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, you do not need to create images hard drive to backup your system.
  • The ability to learn how to work with operating systems other than your host. 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 ideal: you run the OS you need in parallel with the host OS and switch between them if necessary. In many systems, file sharing between the guest and host systems is organized simply by 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 when using desktop virtualization systems open up in business, where availability and saving time and costs for the purchase of additional equipment are important, first of all.

Desktop virtualization platforms in business

For most companies, when it comes to virtualization, it primarily means virtualizing the enterprise's server infrastructure. However, there are many virtual machine-based solutions for end users that significantly increase the efficiency of the company's employees. Consider the main areas of application of virtual machines in business on virtualization platforms for desktop users:

  • Creation of repositories of typical templates of user working environments. Depending on the specifics of the organization, its employees need to use a certain set of software. When a new employee joins the organization, he needs to install the operating system, configure it in a certain way, in accordance with the requirements of the organization and security policies, and install all the necessary application software. When using virtual machine templates, this problem is solved very simply: the employee installs a desktop virtualization platform, and a virtual machine from the set of organization templates is launched in it, in which all the necessary software is installed and the corresponding operating system settings are made. This model will significantly reduce the time spent on deployment, as well as provide high flexibility when transferring an employee's virtual desktop to another physical machine. Of course, such a use case may require increased hardware resources of the equipment, but this will more than pay off if the employee has to deal with large amounts of heterogeneous data, the backup of which will require a significant amount of time. For example, marketing people who install a lot of software they need, try things and work with different documents every day. In this case, they can copy the folder with the files of their working virtual machine at the end of the working day, without fear that everything will “break” when installing another program tomorrow.
  • Creating a virtual desktop infrastructure that allows you to centrally store user environments on secure company servers. The end users themselves use the means remote access to the desktop of their environments (for example, Terminal Services) stored in the corporate data center. This option for using virtual machines requires significant implementation costs, since it requires support server platforms virtualization of the company's data center. However, this provides the best level of security and availability. Since all working environments are stored and maintained centrally in a secure data center, the likelihood of a leak confidential information is significantly reduced. At the same time, the degree of availability of such environments is significantly increased, because access to them can be provided from anywhere with a high-speed connection. Strictly speaking, this decision 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 the organization's servers in the corporate data center. The structure of such a model is shown in the figure:
  • Application of virtual machines protected by security policies. IT professionals who need to ensure the confidentiality of their personal data, as well as frequent demonstrations of various software to customers, are perfect solutions for creating secure virtual machines, which provide means of restricting access to various functions for working with a virtual machine. You can also set the expiration date of the virtual machine and thus distribute software, so that a certain circle of people cannot use the virtual machine for more than the allowed time. An example of such a solution is VMware's ACE Manager.
  • Simplify user training by creating classrooms with virtual machines where various operating systems and application software are installed. If you need to train a group of people in your organization to use a particular product or program, you can create one virtual machine template and install the virtualization platform on each of the computers in the classroom. Further, the virtual machine can be copied to all computers and run with all the necessary number of programs. If you need training for a different product, you can create a new VM template and deploy it to all the computers in the classroom as well.
  • Development and testing of software in the company. The virtual machine, being an isolated environment, is ideal for software development. Developers and testers can create the configurations of operating systems and user environments they need to simulate the behavior of the program on various platforms. As part of this use case, it is also possible to model the working bundles of virtual machines on the same physical platform that carry out network interaction with each other. In addition, some platforms, such as VMware Workstation, allow you to create virtual machine state trees, each with a specific user configuration saved. Each of these states can be rolled back with a single mouse click. An example of such a tree:

Comparative overview 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 make them accessible even to the most inexperienced user. The leaders in the production of virtualization systems for end users at the moment are the following companies: VMware with VMware Workstation, VMware ACE and VMware Fusion products, Microsoft with the Virtual PC product, Parallels promoting its virtualization platform for Mac OS with the Parallels Desktop product for Mac, and InnoTek with a free open source platform source code virtual box. Let's take a quick look at the features of some of these products.

VMware Workstation


VMware is the undisputed leader in desktop virtualization today. Its products are easy to use, feature rich and fast. Almost all manufacturers of desktop virtualization platforms are guided by the product. The process of creating a virtual machine and installing a guest operating system does not cause any particular difficulties: when creating it, 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 a guest installation distribution. After installing the operating system in a virtual machine, be sure to install VMware Tools and disable all unnecessary emulated devices in the settings in order to optimize performance. You can also create a snapshot (snapshot) of the "clean" state of the guest system, with all the data virtual disks at that point will be saved and you can return to their saved state at any time. To key features VMware Workstation can be attributed to:

  • Support for various types of virtual disks (controllers are emulated for both IDE and SCSI drives):
    • fixed size (Preallocated) or growing as it fills up (Growing), while the former are optimized for speed, and the latter are convenient in that they do not take up much space before they are filled
    • Independent drives that are not affected by operating system snapshots. Such disks are convenient for organizing file storages, the change of which is not required when working with snapshots of the state of the guest system
    • support for disks whose state is not saved when the virtual machine is turned off
    • ability to write directly to physical disk
  • Support for various types of network interaction between virtual machines, including the association of 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- virtual machine shares resources network card with the host operating system and works with a network external to it as an independent machine.
    • Host-only Networking- The virtual machine receives an IP address on the host's own subnet from the VMware DHCP server. Accordingly, you can work on the network only with other virtual machines on this host and from the OS of the host itself.
    • NAT- the virtual machine also works in its own subnet of the host (but different), however, through NAT, the VMware server can initiate connections to the external network. It is not possible to initiate a connection to such a virtual machine from an external network. Within the host, networking is provided.
    • Disks can also be mounted on the host system using the utility vmware-mount and expand with utility vmware-vdiskmanager(this utility also serves to perform a number of other actions on virtual disks).
  • Possibility simple exchange files using the Drag&Drop interface, as well as by creating shared folders(Shared Folders) between 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's also worth noting that VMware Workstation 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

Appearing as a competitor to VMware Workstation, the Connectix product, which was later bought by Microsoft together with the company, did not receive worthy development in its hands. As a result, at the moment, in almost all respects, it loses to the VMware Workstation platform and can only be run 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 satisfies the basic need for 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 techniques. VM Additions can also be installed on Linux guest operating systems.

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

  • Complete Windows support Vista, both as a host and as a guest operating system. In terms of performance, Virtual PC 2007 has taken a significant step forward from the previous version, and now the performance of Windows Vista in a virtual machine is quite acceptable.
  • Support for 64-bit host Windows 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 (similar to Preallocated in VMware Workstation)
    • Differencing - a disk that stores changes from the current state of the virtual disk
    • Linked to a hard disk (similar to direct disk writing in VMware Workstation)
  • The presence of various types of networking 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 than IT professionals and software developers, while VMware Workstation, having much more functionality, is able to cover the needs of the latter. At the same time, Virtual PC is free and is mainly intended to simplify migration to new operating systems. Microsoft systems and support for their outdated versions. And, of course, the popularity of the Virtual PC platform is rendered free of charge, creating a certain 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 Parallels (actually owned by the Russian company SWSoft) has now focused mainly on the product, the development of this product is currently somewhat suspended 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 one for computers from Apple. In addition, at the moment the development of this platform is very dynamic, which is due, first of all, to the fact that VMware is seriously intending 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 with Parallels Installation Assistant. Creating a virtual machine and installing a guest operating system in it is effortless.
  • 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 provides a simple file exchange between the guest and host operating systems.
  • USB 2.0 interface support
  • Support for Mac OS X "Leopard"

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 face.

virtual box


InnoTek recently entered the desktop virtualization market with an unexpected twist. free solution open source. 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, have stated that on their desktops, virtual machines on the platform run noticeably faster than virtual machines in 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. Given the full openness of the platform and its free, many enthusiasts are ready to take on the refinement of the platform and increasing the functionality, hopefully, without compromising its performance. At the moment, VirtualBox does not have as wide functionality as the leading platforms, does not support 64-bit systems and networking with Windows Vista, but on the site you can get up-to-date information on which system functions are being worked on. At the moment, the platform has the following main features:

  • A fairly 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 (similar 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?

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

Undoubtedly, when it comes to using desktop virtualization at home on Windows hosts, one 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 the corporate environment of an enterprise, where the deployment of desktop virtualization systems places high demands on functionality and reliability, one cannot do without VMware Workstation, which is significantly superior to other platforms described. The VirtualBox product can also find its place here, as the most optimized for performance.

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

Virtualization technologies for personal computers are getting 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 secure 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 higher resolution supported by the monitor, while the guest window will have scroll bars. This will allow you to test the website or application on high resolutions in the absence of an appropriate monitor. This example shows that the options for using virtual machines on desktops are up to your imagination. And rapidly evolving custom virtualization platforms will help you meet your needs.

Virtual machines such as Virtualbox are used to emulate virtual hardware and run multiple operating systems on a computer. The better your CPU and the more RAM you have, the faster the virtual machines on your computer will run.
I offer a few tips to help you save time when initial setup virtual machines. This will be useful for working with virtual VirtualBox machines, VMware, Parallels, or whatever.

Be sure to install the VirtualBox Guest Additions or VMware Tools

After installing the guest operating system in a virtual machine, the first thing to do is install the virtual machine software - "Guest OS Additions for VirtualBox" or VMware Tools for VMware". These packages include special drivers that will help your guest operating system run faster on using the hardware of your main machine.

Installing the package is easy - in VirtualBox, once the guest operating system is loaded, click the Devices menu button and select "Install Guest Additions". If you are using VMware, select "Install VMware Tools" from the Virtual Machine menu. Follow the instructions on the screen to complete the installation - if you are using Windows as a guest operating system, it will be the same as installing any other application.

Make sure you have the latest version of Guest Additions - if you see a notification that an update is available for Guest Additions or VMware Tools, you should install it.

Creating a fixed size disks on initial setup

When creating a virtual machine, you can create two various types virtual disks. By default, the program usually suggests using dynamically allocated disks that grow with the guest OS footprint.

For example, if you create a new virtual machine with a dynamically allocated disk with a maximum size of 30 GB, it will not take up to 30 GB of hard disk space at once. After installing the operating system and programs, the disk can only take up to 10 GB. As files are added to virtual disk, it will expand to a maximum size of 30 GB.

This can be convenient - each virtual machine will not take up unreasonably much space on your hard drive. However, this is slower than creating a fixed disk size (a disk with preallocated space). When you create a fixed disk size, all 30 GB will be occupied immediately on your computer.

There is a trade-off here - a fixed disk size takes up more hard disk space, but works with a virtual hard drive faster. You will also get rid of file fragmentation - the space will be occupied by a large block instead of smaller pieces being added all over the disk.

Exclude the virtual machine directory in your antivirus

Your antivirus can scan virtual machine files as they are accessed, slowing down performance. The antivirus will not be able to detect a virus inside a virtual machine running on your guest operating system, so this check only hurts.

To speed up the process, you can add your machine's virtual directory to the antivirus author's exclusion list. Once it is in the list, your antivirus will ignore all files in that directory.

Allocate more memory

Virtual machines love a lot virtual memory. Microsoft recommends 2 GB of RAM for 64-bit Windows 7, and this recommendation also applies to Windows 7 x32 when running in a virtual machine. If you are running large applications in a virtual machine, you may want to allocate more than 2 GB of RAM.

You can allocate more RAM in your virtual machine's settings dialog (the virtual machine must be turned off to do this). If your computer does not have enough memory to comfortably work with a virtual machine, you may notice a very large decrease in computer performance when using a paging file on your hard drive.

Allocate more processors

If you have a computer with multiple processors or cores, you can allocate additional processors for your virtual machine from the VM settings window. A VM with a dual-core (or quad-core) processor will be more responsive.

If you are going to install OS of MS-Windows family and in the future in order to be able to use more cores during installation, specify 2 cores in order to install the correct HAL, after installation you can turn off the machine and set 1 core by default for everyday use. But for the future, you can always add kernels without uninstalling the OS. The Linux VM can dynamically detect any number of cores when the OS boots.

Adjust video settings

Tweaking your video settings and allocating more video memory will also help improve the speed of your virtual machine. For example, enabling 2D acceleration in VirtualBox improves video playback in virtual machines, enabling 3D acceleration will allow you to use some 3D applications.

By and large, you need to minimize the use of 3D for example Windows 7 by disabling Aero.

Make sure Intel VT-x or AMD-V features are enabled

Intel VT-x and AMD-V are special processor extensions that improve virtualization speed. Newer Intel and AMD processors usually include these features. However, some computers do not automatically enable VT-x or AMD-V - you will have to enable this setting in your computer's BIOS.

To determine if your Intel processor Intel VT extension, use the utilities that show system information. If your processor supports this feature, but the option is not available in your virtual machine, you must enable this feature in your computer's BIOS. This setting is usually enabled by default in motherboards with AMD processors.

Put the virtual machine files on a different drive

Disk performance can limit the speed of your virtual machine. Placing virtual machine files on a separate physical disk or not on the system disk can improve performance. Your virtual machine and system will not concurrently read and write from the same disk.

However, you must not start the virtual machine with external drive(USB) - this will be much slower.

  1. Dedicating additional processors is rarely a good idea. Use 1 CPU for desktop OS.
  2. Try not to use graphical hypervisors for server operating systems.
  3. Don't allocate more cores to running VMs than you have on your computer.

Greetings to all readers of the blog site!

At the request of readers, I decided to prepare detailed guide on the use of so-called virtual machines (computers) and tell you why it can be useful, in particular for us - Surfers :)

In my penultimate article, where it was about Autosurfing (you can read it here - Autosurfing. What is it and how much can you earn on it?), I just mentioned virtual machines for the first time. Then among good benefits using virtual machines for autosurfing, I noted that in this way the autosurfing program will not interfere with your main activity at the computer and you can perform this surfing for at least a day while the computer is on. It is also not unimportant that you can not be afraid for viruses, which will certainly be picked up from any sites of "bad" content.

In this article, I will try to tell you in as much detail as possible about what else virtual machines can be used for, about what they are, how to create and configure them.

So let's start.

What is a virtual machine for and what are the options for creating them

The virtual machine is exact copy a real computer with any operating system (Windows of any version, Linux of any version, Mac and others), which runs as a program in a separate window and has its own allocated hard disk space, as well as all the features that you have access to in your real operating system.

The example uses the actual Windows 8 Professional operating system. It can be seen that a program is running in the center of the window that displays the operating system inside Windows system XP, which works in parallel with the real one and you can perform absolutely any actions in it, as in a real system, with the exception, perhaps, of launching resource-intensive games.

“What is all this for?” - you ask. And the use of virtual machines can be useful for several reasons. Because all of us who read this blog, are interested in making money on the Internet, then this will be the main reason for using virtual machines. And here we will consider 2 earnings that are convenient to implement on a virtual machine:

    In one of my articles, I wrote about the possibility of making money with the help of autosurfing. If you read, then remember how small the earnings there are. According to the minimum estimates - about $ 35, this is when using several real computers already. Of course, there will be 2-3 times more if you increase the statuses. And I really do not advise you to implement this type of earnings without a virtual machine. Because the program for autosurfing will open a huge number of sites and you won’t be protected from viruses. Even if your computer is protected good antivirus(Personally, in my opinion, good and reliable, but resource-intensive - Kaspersky Anti-Virus), it will still miss something (How to protect your computer from various network threats is described here Overview of ways to protect your computer from various network threats). And when using a virtual machine, your real system is safe. Viruses, if any, will remain in it.

    If your computer has very good performance, then it is convenient to work through a virtual machine using multi-accounts in boxes.

    Because in this way in a real system it will be convenient for you to do other things, and all the work in the boxes will be in virtual system and a bunch of open profiles won't get in the way on a real system. But this is only possible if the RAM on your computer is 8 > Gigabytes.

    In addition, I will also list other reasons why it is convenient to use a virtual machine:

      All unknown and unfamiliar programs that you want to try out and not clog your real system easier to test in a virtual machine. That's what I usually do. In a virtual machine, I register accounts in boxes (it’s more convenient for me), I test autoclickers, autosurfing. At the same time, I did not install an antivirus in the virtual machine, it is simply not needed there.

      If you are not sure about the safety of applying or changing any settings on your system, it is easy to try it out in a virtual machine and see the consequences. Also easy to learn various settings networks and more. But this is rather for those who are interested in the IT field.

    Anyone who simply makes money on the Internet will always find benefit in using a virtual machine.

We got a little familiar with processor virtualization technology and learned how to enable this feature. Today we will continue the topic, we will install virtual operating systems on a computer, configure resources, and launch.

This issue provides a brief overview of the two most popular shells for creating and using virtual machines. These programs are also called hypervisors.

Virtual machines can be easily and independently installed on ordinary home computers, but they are also widely used on servers.

Virtual servers with virtual remote desktops are created to solve various tasks on one physical computer.

What is a virtual machine on a PC and its purpose

For personal use It is quite suitable if you decide to master a new operating system on your own. Now you don't have to have additional computer. No need to remove the familiar Windows. You can study while browsing your mail and social network and at the same time gain skills in installing, configuring new, useful and interesting programs. Developers test how applications work in new and old environments, test the operation of both operating systems and programs and hardware.

But the main purpose is perhaps not in this, but in the obvious savings. After all, it is not for nothing that this technology has been developed for a long time. For servers to work, first of all, you need high-performance equipment, which is expensive. A typical server uses its resources somewhere around 40-60%. And if there are two or more such servers, then it turns out that half of the capacities are idle.

To get rid of clustering, do not implement a bunch of physical servers and virtual machines are designed. On one computer, you can install, for example, mail server, DNS server, domain controller, and proxy server. With the right calculation and configuration, you will have four servers running on one physical server. The physical computer will run at optimal power.

How to set up a Hyper -V virtual machine for Windows?

The hypervisor program is designed to install, configure, run and manage virtual machines. In Windows 10, the developers made their own, built-in, and you don’t have to buy anything in this way. By default, this snap-in is not visible in the operating system and we need to install it as an additional component. To do this, in the "Control Panel" we find the link "Programs", and in it "Install additional Windows components"

Check the boxes for the required components:

The installation of the hypervisor will begin, and the changes will be applied. The system will ask you to reboot.

When rebooting, do not forget to check if processor virtualization is enabled in the BIOS!

What else do we need to run a virtual operating system? We just need to find her. iso image and download it to your computer. I have a distro of Linux Fedora for astronomy enthusiasts in the form of Iso. I wonder what operating system it is? Let's first find our Hypervisor. To do this, click on the "Start" menu, go down and find "Administrative Tools".

You can display shortcuts on the desktop for convenience. The manager is designed to manage virtual machines. BUT " quick creation' speaks for itself. Click on this label. By default, the system prompts you to create a Windows 10 virtual machine or Linux-Ubuntu. But today we will look for another image, click "Change installation source":

Do not forget to specify in the "additional parameters" network adapter and the name of the virtual machine.

In the "Explorer" we are looking for our desired image of the operating system:

Then press the big blue button:

Virtual machine Hyper-V created with default parameters, usually minimal system requirements for start. The system itself selects the number of processor cores, allocates the optimal amount of RAM, creates a VIRTUAL HDD based on available space available. The location of the virtual machine is also automatically selected on the disk. But you can change all the settings for yourself. Before connecting, go to:

All parameters are changeable; carefully read what and for what it is intended:

After you can connect.

Like any operating system, the virtual one also requires installation. Everything is the same as in real life :)

Typical Linux installation:

After loading the KDE graphical shell, we will continue to install the distribution kit on the VIRTUAL hard drive by selecting the appropriate shortcut:

The Hyper-V virtual machine is managed by clicking the buttons at the top of the panel:

Buttons allow you to start, pause, shut down, create checkpoint, as well as export the virtual machine. Everything is like in a real computer :). Hyper-V will be fine on server editions of Windows. True, there is a lot to set up. And this hypervisor crashed a couple of times after major cumulative updates of the “dozens”. It had to be reinstalled.

VM Workstation virtual machine overview, how to set up and install

Another popular solution is VM Ware Workstation. It's very flexible software solution I had no problems with him. It's not free. But it is lightweight, and works flawlessly, it was easy to set up. Downloading and setting up the program. On the latest editions of Windows 10, the hypervisor will not start, the program will give an error. If you get an error when you first start the virtual machine vmware player and device/credential guard are not compatible, first .

We agree with the instructions of the master; after installation, restart the computer. We find the launch file through the Start menu and click on it:

Open the program, create a new virtual machine.

Choose the usual type of installation:

Next, the wizard, as expected, will offer to install the operating system. He offers to do this either from a CD / DVD disc or from ISO file. I have a file on the disk, and I will use it. In this example, I'm installing Windows XP.

Using " quick installation» settings such as computer name, keyboard layout, product key, username, Account, will be set by default. This is not always convenient, and this data is corrected after installation, or at the time of creating an image of the operating system. But in the latter case, you will have to go through all the steps manually - just like on a physical computer.

Do not forget to specify the name of the virtual machine and its location in the next window.

Here we come to the key settings. You need to specify the size of the virtual hard disk:

Almost done. For most operating systems, the hypervisor selects the optimal sizes for both memory and hard disk, but they can be changed later:

We start the virtual machine, after that the installation of the operating system will begin. Please note that connected to physical computer Peripherals can also be used in a virtual machine. Some of them (flash drives, external hard drives) will need to be connected manually through the menu "Virtual machine" - "Connected equipment"

Management of virtual machines is clear and simple. There is also a control panel, which is located at the top of the window:


Windows XP virtual machine on Windows 10 video

Let's see an example of creating a virtual machine in a short video:

Nothing complicated! Good luck!

Internet