Chapter 2
Chapter 2
Ch 2 Virtualization
What is Virtualization?
Virtualization is a process that allows a computer to share its hardware
resources with multiple digitally separated environments. Each virtualized
environment runs within its allocated resources, such as memory,
processing power, and storage. With virtualization, organizations can
switch between different operating systems on the same server without
rebooting.
Virtualization example
Consider a company that needs servers for three functions:
✓ Store business email securely
✓ Run a customer-facing application
✓ Run internal business applications
Dr. P. S. More
DKTE TEI’s Department of CSE 2
Cloud Computing: Ch 2 Virtualization
Infrastructure as a service
The company can go one step further and use a cloud instance or virtual
machine from a cloud computing provider such as AWS. AWS manages all
the underlying hardware, and the company can request server resources
with varying configurations. All the applications run on these virtual servers
without the users noticing any difference. Server management also
becomes easier for the company’s IT team.
Dr. P. S. More
DKTE TEI’s Department of CSE 3
Cloud Computing: Ch 2 Virtualization
Virtual machine
Hypervisor
Type 1 hypervisor
Type 2 hypervisor
2. Automated IT management
Now that physical computers are virtual, you can manage them by using
software tools. Administrators create deployment and configuration
programs to define virtual machine templates. You can duplicate your
infrastructure repeatedly and consistently and avoid error-prone manual
configurations.
After you install virtualization software on your computer, you can create
one or more virtual machines. You can access the virtual machines in the
same way that you access other applications on your computer. Your
computer is called the host, and the virtual machine is called the guest.
Several guests can run on the host. Each guest has its own operating
system, which can be the same or different from the host operating
system.
Dr. P. S. More
DKTE TEI’s Department of CSE 5
Cloud Computing: Ch 2 Virtualization
From the user’s perspective, the virtual machine operates like a typical
server. It has settings, configurations, and installed applications.
Computing resources, such as central processing units (CPUs), Random
Access Memory (RAM), and storage appear the same as on a physical
server. You can also configure and update the guest operating systems and
their applications as necessary without affecting the host operating system.
Hypervisors
Type 1 hypervisors
Type 2 hypervisors
Dr. P. S. More
DKTE TEI’s Department of CSE 6
Cloud Computing: Ch 2 Virtualization
Type 1 and type 2 hypervisors are software you use to run one or more
virtual machines (VMs) on a single physical machine. A virtual machine is
a digital replica of a physical machine. It’s an isolated computing
environment that your users experience as completely independent of the
underlying hardware. The hypervisor is the technology that makes this
possible. It manages and allocates physical resources to VMs and
communicates with the underlying hardware in the background.
The type 1 hypervisor sits on top of the bare metal server and has direct
access to the hardware resources. Because of this, the type 1 hypervisor is
also known as a bare metal hypervisor. In contrast, the type 2 hypervisor
is an application installed on the host operating system. It’s also known as
a hosted or embedded hypervisor.
Dr. P. S. More
DKTE TEI’s Department of CSE 7
Cloud Computing: Ch 2 Virtualization
Dr. P. S. More
DKTE TEI’s Department of CSE 8
Cloud Computing: Ch 2 Virtualization
Dr. P. S. More
DKTE TEI’s Department of CSE 9
Cloud Computing: Ch 2 Virtualization
The core components of a Xen system are the hypervisor, kernel, and
applications. The organi-zation of the three components is important. Like
other virtualization systems, many guest OSes can run on top of the
hypervisor. However, not all guest OSes are created equal, and one in
particular controls the others. The guest OS, which has control ability, is
called Domain 0, and the others are called Domain U. Domain 0 is a
privileged guest OS of Xen. It is first loaded when Xen boots without any
file system drivers being available. Domain 0 is designed to access
hardware directly and manage devices. Therefore, one of the
responsibilities of Domain 0 is to allocate and map hardware resources for
the guest domains (the Domain U domains).
For example, Xen is based on Linux and its security level is C2. Its
management VM is named Domain 0, which has the privilege to manage
other VMs implemented on the same host. If Domain 0 is compromised,
the hacker can control the entire system. So, in the VM system, security
policies are needed to improve the security of Domain 0. Domain 0,
behaving as a VMM, allows users to create, copy, save, read, modify, share,
migrate, and roll back VMs as easily as manipulating a file, which flexibly
Dr. P. S. More
DKTE TEI’s Department of CSE 10
Cloud Computing: Ch 2 Virtualization
To do this, one will need a hypervisor. Hence, the role of the hypervisor is
to bridge between the hardware and the virtual operating system, which
enables smooth functioning.
Dr. P. S. More
DKTE TEI’s Department of CSE 11
Cloud Computing: Ch 2 Virtualization
At the ISA level, virtualization can work via emulating a given ISA by the
ISA of the host machine. For instance, MIPS binary code can operate on an
x86-based host machine with the help of ISA emulation.
Thus, this strategy makes it possible to run a large volume of legacy binary
code written for several processors on any provided different hardware host
machine.
- Instruction set
Dr. P. S. More
DKTE TEI’s Department of CSE 12
Cloud Computing: Ch 2 Virtualization
The hardware on the physical server in cloud computing has its own
instruction set that it will process.
- Emulator
Instructions that the emulator gets for the resources from the virtual
machine can get mapped to the hardware instruction presented in the host
machine.
Therefore, after the processing emulator got the result back from the host
machine, it sent services to the user with the help of the virtual machine.
Dr. P. S. More
DKTE TEI’s Department of CSE 13
Cloud Computing: Ch 2 Virtualization
Dr. P. S. More
DKTE TEI’s Department of CSE 14
Cloud Computing: Ch 2 Virtualization
5. User-Application Level
Dr. P. S. More
DKTE TEI’s Department of CSE 15
Cloud Computing: Ch 2 Virtualization
Types of virtualizations?
You can use virtualization technology to get the functions of many different
types of physical infrastructure and all the benefits of a virtualized
environment. You can go beyond virtual machines to create a collection of
virtual resources in your virtual environment.
1. Server virtualization
2. Storage virtualization
Dr. P. S. More
DKTE TEI’s Department of CSE 16
Cloud Computing: Ch 2 Virtualization
physical data storage and creates a large unit of virtual storage that you
can assign and control by using management software. IT administrators
can streamline storage activities, such as archiving, backup, and recovery,
because they can combine multiple network storage devices virtually into
a single storage device.
3. Network virtualization
i. Software-defined networking
4. Application virtualization
Dr. P. S. More
DKTE TEI’s Department of CSE 17
Cloud Computing: Ch 2 Virtualization
5. Desktop virtualization
You can use desktop virtualization to run these different desktop operating
systems on virtual machines, which your teams can access remotely. This
type of virtualization makes desktop management efficient and secure,
saving money on desktop hardware. The following are types of desktop
virtualization.
Dr. P. S. More
DKTE TEI’s Department of CSE 18
Cloud Computing: Ch 2 Virtualization
Virtualization at OS Level:
Dr. P. S. More
DKTE TEI’s Department of CSE 19
Cloud Computing: Ch 2 Virtualization
- Advantages of OS Extensions
Compared to hardware-level virtualization, the benefits of OS extensions
are twofold: (1) VMs at the operating system level have minimal
startup/shutdown costs, low resource requirements, and high scalability;
and (2) for an OS-level VM, it is possible for a VM and its host environment
to synchro-nize state changes when necessary. These benefits can be
achieved via two mechanisms of OS-level virtualization: (1) All OS-level
VMs on the same physical machine share a single operating system kernel;
and (2) the virtualization layer can be designed in a way that allows
processes in VMs to access as many resources of the host machine as
possible, but never to modify them. In cloud computing, the first and
second benefits can be used to overcome the defects of slow initialization
of VMs at the hardware level, and being unaware of the current application
state, respectively.
- Disadvantages of OS Extensions
The main disadvantage of OS extensions is that all the VMs at operating
system level on a single container must have the same kind of guest
operating system. That is, although different OS-level VMs may have
Dr. P. S. More
DKTE TEI’s Department of CSE 20
Cloud Computing: Ch 2 Virtualization
1. Full Virtualization
With full virtualization, noncritical instructions run on the hardware directly
while critical instructions are discovered and replaced with traps into the
Dr. P. S. More
DKTE TEI’s Department of CSE 21
Cloud Computing: Ch 2 Virtualization
3. Host-Based Virtualization
An alternative VM architecture is to install a virtualization layer on top of
the host OS. This host OS is still responsible for managing the hardware.
The guest OSes are installed and run on top of the virtualization layer.
Dr. P. S. More
DKTE TEI’s Department of CSE 22
Cloud Computing: Ch 2 Virtualization
can also run with the host OS directly. This host-based architecture has
some distinct advantages, as enumerated next. First, the user can install
this VM architecture without modifying the host OS. The virtualizing
software can rely on the host OS to provide device drivers and other low-
level services. This will simplify the VM design and ease its deployment.
Dr. P. S. More
DKTE TEI’s Department of CSE 24
Cloud Computing: Ch 2 Virtualization
Dr. P. S. More
DKTE TEI’s Department of CSE 25
Cloud Computing: Ch 2 Virtualization
Questions:
1. What are the different levels at which virtualization can be
implemented?
2. What are some popular open-source virtualization
technologies?
3. What is binary translation, and how does it enable full
virtualization?
4. What are types of hypervisors? How do they work?
5. With a neat diagram explain Xen architecture.
Dr. P. S. More