Kinaro's blog of things

Virtualization

June 07, 2019

Virtualization software abstracts compute environments from the underlying physical infrastructures. This therefore allows one to run, multiple operating systems and applications simultaneously on the same machine.

For instance if you use a Windows computer that has a multi-core CPU, you can run a Linux OS as a virtual machine . This is done using virtualization software such as Hyper-V, VMWare Workstation and VirtualBox. The OS in which the virtualization software is called the host, the software is called a hypervisor and the virtual machines are guests. Hosts must have sufficient RAM and CPU cores in order to run multiple guests concurrently. In addition, one has to enable virtualization in the firmware settings for a hypervisor to function correctly.

Common virtualization software

  1. Hyper-V
    Common to Windows operating systems

  2. VMware products (Player, Workstation, vSphere)
    VMware player is a free virtualization solution from VMware. It is supported on multiple operating systems.

  3. VirtualBox
    This is an open source virtualization solution from Oracle.

Uses of virtualization

  • Testing software.

This is an ideal way of testng software as opposed to using a separate computer, since resources are well utilized. One does not have to reinstall the OS, since guests can be cloned easily for sharing. A guest OS crashing has no effect on the host.

  • Software reverse engineering

You may be researching on a piece of software, such as malware where you don’t have the source code but need to analyze the software in order to understand how it functions. Conducting the analysis on your physical device could expose you to unknown risks.

  • Isolating services

You can create multiple virtual machines to handle specific services in a network. This would enforce the principle of security by separation. A compromised guest can be destroyed or restored to an ealier state easily using snapshots, thus reducing the risk of the entire system going down.

  • Running multiple OS’es concurrently

For instance, I can run Ubuntu Server, Kali Linux and Windows XP on my machine concurrently without having to install them on the hard drive directly. Multiple Guests However, the licensing requirements of the guest OS must be satisfied.


Felix Kinaro

Github TwitterContact