Last Sunday it was my turn to handle session at Sunday school ( Week end session organized by FSMK on every Sundays to introduce new technologies around free and open source software ecosystem). I chose to introduce the virtualization tool VirtualBox. I was using virtualbox in my personal laptop for quite some time mainly for testing docker and someother tools. Hence I did not take much time preparing for the session.
Hereby I am sharing notes and list of sources referred while preparing for this session.
There are several scenarios that make virtualization attractive:
- Operating system support. With a virtualizer such as VirtualBox, one can run software written for one operating system on another (say, Windows software on Linux) without having to reboot.
- Infrastructure consolidation. Since the full performance of today’s computers is rarely needed full-time, instead of running many such physical computers, one can “pack” many virtual machines onto a few powerful hosts and balance the loads between them. This can save a lot of hardware costs: e.g. by consolidating many servers into a few.
- Testing and disaster recovery. Especially with the use of snapshots. One can mess with a computing environment by running it as a virtual machine. If something goes wrong, one can easily switch back to a previous snapshot and avoid the need of frequent backups and restores.
VirtualBox is a hypervisor for x86 computers from Oracle Corporation.
Developed initially by Innotek GmbH, it was acquired by Sun Microsystems in 2008 which was in turn acquired by Oracle in 2010.
For some guest operating systems, a “Guest Additions” package of device drivers and system applications is available which typically improves performance, especially of graphics
Initial release 15 January 2007; 8 years ago
The core package is, since version 4 in December 2010, free software under GNU General Public License version 2 (GPLv2). The separate “VirtualBox Oracle VM VirtualBox extension pack” providing support for USB 2.0 devices, Remote Desktop Protocol (RDP) and Preboot Execution Environment (PXE) is under a proprietary Personal Use and Evaluation License (PUEL), which permits use of the software for personal use, educational use, or evaluation, free of charge
A hypervisor or virtual machine monitor (VMM) is a piece of computer software, firmware or hardware that creates and runs virtual machines. A computer on which a hypervisor is running one or more virtual machines is defined as a host machine. Each virtual machine is called a guest machine. There are two types of hypervisors (in fact three type the third type Type 0 , the same is not implemented anywhere , hence you can just ignore it)
Type-1: native or bare-metal hypervisors
These hypervisors run directly on the host’s hardware to control the hardware and to manage guest operating systems. For this reason, they are sometimes called bare metal hypervisors. A guest operating system runs as a process on the host. Modern equivalents include Oracle VM Server for SPARC, Oracle VM Server for x86, the Citrix XenServer, VMware ESX/ESXi and Microsoft Hyper-V 2008/2012 are few examples.
Type-2: hosted hypervisors
These hypervisors run on a conventional operating system just as other computer programs do. Type-2 hypervisors abstract guest operating systems from the host operating system. VMware Workstation, VMware Player and VirtualBox are examples of type-2 hypervisors.
Everything is virtual
A real computer comes with set of hardware parts (touchable ) , system softwares and application softwares. The hardware parts consist of mother board, hard disks, RAM, CD/DVD drives etc. For a computer to run all these devices are important and absence/failure of anyone would result computer not to work.
When we say a virtual machine all these hardware component that I mentioned above should also be available as virtual components (nothing but software programs). In VM you have equivalent virtual component available for the actual hardware parts in a computer.
Downloading and installing virtualbox
Note : If you are using 64bit OS you may have to enable hardware virtualization in BIOS level for virtual box to function properly. Follow this link to achieve this.
Download pre-built images for several open-source operating systems