0% found this document useful (0 votes)
57 views17 pages

Virtualization: Ahmed Aley Supervisor: DR Mohamed Abo Elhoda

Virtualization is a technology that combines or divides computing resources to present multiple operating environments. It allows applications and operating systems to run in isolation from each other via hardware and software partitioning, emulation, or para-virtualization. There are several levels of virtualization including virtualizing at the instruction set architecture level, hardware abstraction layer, operating system level, and library level. Virtualization provides benefits such as server consolidation, secure computing environments, and improved hardware throughput.

Uploaded by

Samir Sabry
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views17 pages

Virtualization: Ahmed Aley Supervisor: DR Mohamed Abo Elhoda

Virtualization is a technology that combines or divides computing resources to present multiple operating environments. It allows applications and operating systems to run in isolation from each other via hardware and software partitioning, emulation, or para-virtualization. There are several levels of virtualization including virtualizing at the instruction set architecture level, hardware abstraction layer, operating system level, and library level. Virtualization provides benefits such as server consolidation, secure computing environments, and improved hardware throughput.

Uploaded by

Samir Sabry
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 17

Virtualization

Ahmed Aley
Supervisor: Dr Mohamed Abo ElHoda
What is virtualization
• Technology that combines or divides
computing resources to present one or many
operating environments using methodologies
like HW & SW partitioning, aggregation,
partial or complete machine simulation,
emulation, time-sharing and others.
Virtualization Applications
• Applications:
– Server consolidation (merging of servers)
– Secure Computing (sandboxing)
– Multiple OS support
– Kernel Debugging and development
– HPC
– HTC
– Application Consolidation
– Testing/QA
Advantages
• Test what ever you want with out fearing
system crashes
• Improving throughput using HW by allowing
multiple users to use the same HW
Virtualization at the ISA level
• Think X86 on Sun Sparc !
• We want to implement an emulation layer for
an instruction set architecture completely in
SW
• Tries to execute instructions issued by the
guest machine (the VM) by translating them
into native instructions and executing them on
the available HW
Virtualization at the ISA level Examples

• Bochs :
• open source X-86 PC emulator written in C++
• Can run on PowerPC, Alpha, Sun, MIPS
• Crusoe:
– From x86 to VLIW Cruseo
Virtualization at the HW abstraction layer

• Exploits the similarity in architecture between


the guest and host platforms for better
performance
• When the emulated machine needs to talk to
critical physical resources, the simulator takes
over and multiplexes appropriately
Host OS Vs. Guest OS
• Host OS: The main operating system on the
machine
• Guest OS: The operating system virtualized
Virtualization at the HW abstraction layer @
NU

Application Application

OS OS

VM VM

VM Monitor

PC Hardware
Virtualization at the HW abstraction layer:
Hosted

Application Application

OS OS

VM VM

Host OS VM Monitor

PC Hardware
Virtualization at the HW abstraction layer:
Examples
• VMWare
• Free and industrial versions
• Standalone (ESX version) as in the previous slide or
hosted (Workstation version)
• VirtualPC:
• Similar to the workstation version of VMWare
• Microsoft
• Linux, FREEBSD, Solaris, etc are not supported
Virtualization at the HW abstraction layer:
Paravirtualization Examples
• Denali
• At the university of Washington
• Project to support thousands of VMs simultaneously
• Think Simulation ?!!
• New virtualization architecture called lightweight VMs\
• Xen
• Open source
• @ Cambridge
• seeing both real and virtual time might help the guest OS
better support time-sensitive tasks and come up with good
round trip time (RTT) estimates for handling TCP timeouts
Virtualization at the OS Level
• Why go through the hassle of reinstalling what
is already installed?
• Used for sandboxing mainly
• So, go to a higher layer
– Linux Kernel-mode virtualization
– Give each user his own space on the machine
– Users are totally isolated
Virtualization for programming languages

• Came with the JVM


• Idea is to be able to create a VM at the
application level
• Supports its own instruction set (Java Byte
Code)
JVM Legacy
• Java is machine platform independent
• JVM runtime which carries out emulation runs
java byte code
• Java Platform=JVM+JRE
• Java Rune Time environment is an operating
environment
• SECURITY
Virtualization at the Library level
• WINE:
– Does not emulate a processor
– Implementation of the windows API
– Used to port Windows applications to Unix
– Emulates behavior of windows to .EXE files
Part 2: P2P Bioinformatics
Chinook
• “The Chinook Project aims to create a platform for
any community trying to manage distributed
computation and a large number of available
utilities. Whether for integration into a workbench
application, for accessing over a script or web
application, or for being able to maintain the state
of development (the state-of-the-art) in a
heterogeneous environment. Decentralized peer-
to-peer technology enables communities to be
self-forming (whether for public or private use),
failure resilient, and administration independent.”

You might also like