









































Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
An overview of virtualization, its benefits, and the different types and techniques used in virtualization. It covers virtualization layers, hypervisors, virtualization architectures, and virtualization techniques such as full virtualization, para-virtualization, and hardware-assisted virtualization. The document also discusses virtualization issues and the role of virtualization in cloud computing.
Typology: Slides
1 / 49
This page cannot be seen from the preview
Don't miss anything!
Outlook
Maximize hardware utilization, Decrease hardware costs, Reduce power consumption and Simplify system management and security
The deployment of virtualization and The number of available virtualization solutions
The concept of virtualization, involves the use of a variety of different technologies to allow multiple and potentially varied operating system instances to run concurrently on a single physical computer system, each sharing the physical resources of the host computer system ( such as memory, network connectivity, CPU and storage). Within a virtualized infrastructure, a single physical computer server might, for example, run two instances of Windows Server 2012 and one instance of Linux.
Hypervisor Types of Hypervisors Type-1 : Bare-Metal Hypervisor or Native Hypervisor : Type-1 or the native hypervisors run directly on the host hardware and control the hardware and monitor the guest operating systems Type-2 : Hosted Hypervisor : Type 2 hypervisors or hosted hypervisors run on top of a conventional (main/host) operating system and monitor the guest operating systems. Figure-2 : Type-1 {adopted from [1]} Figure-3 : Type-2 {adopted from [1]}
Virtualization Types
Examples:
A Virtual Machine Monitor (VMM) is a software program that: Enables the creation, management and governance of virtual machines (VM) Manages the operation of a virtualized environment on top of a physical host machine. VMM is also known as Virtual Machine Manager and Hypervisor. However, the provided architectural
Protection Ring Only Ring-0 has diRect access tO the memORy and cPU, sO if a PROcess RUnning in the OUteR Ring cRashes, it can be RestaRted withOUt lOsing data OR caUsing an eRROR in the cPU. tO execUte instRUctiOns that ReqUiRe mORe access tO ResOURces, the PROcess mUst ReqUest the PeRmissiOns fROm the OPeRating system. the Os can then decide whetheR tO gRant the ReqUest OR deny it. this selectiOn PROcess helPs tO PROtect yOUR system fROm Unwanted OR maliciOUs behaviOR. Ring 0 (most privileged) and 3 (least privileged)
Ring- Ring 0 is accessible to the kernel, which is a central part of most operating systems and can access everything. Code running here is said to be running in kernel mode. Processes running in kernel mode can affect the entire system; if anything fails here, it will probably result in a system shutdown. This ring has direct access to the CPU and the system memory, so any instructions requiring the use of either will be executed here. Ring-1 & 2 Rings-1 and 2 have special privileges that ring 3 (user mode) does not have. Ring-1 is used to interact with and control hardware connected to your computer. Playing a song through speakers or headphones, or displaying video on your monitor, are examples of instructions that would need to run in Ring-1. Ring-2 is used for instructions that need to interact with the system storage, loading or saving files. These sorts
involve moving data into or out of working memory (RAM). Loading a Word document from storage, for example, would be in Ring-2.
Desktop Virtualization Architecture
hOsted aRchitectURe baRe-metal aRchitectURe A hosted architecture installs and runs the virtualization layer as an application on top of an operating system and supports the broadest range of hardware configurations Bare-metal Architecture installs the virtualization layer directly on a clean x86- based system. As it has direct access to the hardware resources rather than going through an operating system, a BARE-METAL hypervisor is more efficient than a hosted architecture and delivers greater scalability, robustness and performance.
Hypervisor is installed on the top of Host O/S “Bare-Metal” Hypervisor Architecture
Full virtualization using binary translation OS assisted virtualization or para-virtualization Hardware assisted virtualization [1]->Full Virtualization Guest OS (unmodified) does not know that it is virtualized. Sensitive OS calls are trapped using binary translation Hypervisor translates kernel code to replace non- virtualizable instructions with new sequences of instructions that have the intended effect on the virtual hardware. Meanwhile, user level code is directly executed on the processor for high performance virtualization. Each virtual machine monitor provides each Virtual Machine with all the services of the physical system, including a virtual BIOS, virtual devices and virtualized memory management.
This combination of binary translation and direct execution provides Full Virtualization as the guest OS is fully abstracted (completely decoupled) from the underlying hardware by the virtualization layer. The guest OS is not aware it is being virtualized and requires no modification. Full virtualization is the only option that requires no hardware assist or operating system assist to virtualize sensitive and privileged instructions. The hypervisor translates all operating system instructions on the fly and caches the results for future use, while user level instructions run unmodified at native speed. Full virtualization offers the best isolation and security for virtual machines, and simplifies migration and portability as the same guest OS instance can run virtualized or on native hardware.
Para-virtualization is an enhancement of virtualization technology wherein a guest operating system (OS) is recompiled prior to the installation within a virtual machine. Para-virtualization is designed to allows several different operating systems to run on a single set of hardware by the effective use of the computer resources such as processors and memory. The OS is normally altered to work with a virtual machine. This allows for the guest operating system to be aware that it is a guest and accordingly has driver that doesn't give commands directly to the hardware but instead gives commands to the host system.
Para-Virtualization
[3-] Hardware Assisted Virtualization
Hardware Support for Virtualization Intel has produced a new virtualization technology that supports hypervisors for both the x86 (VT-x) and Itanium® (VT-i) architectures. Intel Virtualization Technology is comprised of a set of processor enhancements that improve traditional software-based virtualization solutions. These integrated features give virtualization software the ability to take advantage of offloading workload to the system hardware, enabling more streamlined virtualization software stacks and near native performance characteristics. Hardware Support for Virtualization
one for the VMM (root), and other for guest operating systems (non-root).
Full Virtualization with BT Hardware Assisted Virtualization OS Assisted Virtualization / Para-virtualization Performance Good Fair Current performance lags BT-virtualization on various workloads but shall improve progressively Better in certain cases Used By VMware, Microsoft, Parallels VMware, Microsoft, Parallels, Xen VMware, Xen Guest OS Hypervisor Independent? Yes Yes Xen-Linux runs only on Xen Hypervisor VMI-Linux is Hypervisor agnostic Architectures of Hypervisors
Simplified Architecture of VMware ESXi Vmkernel Vmkernel contains all of the necessary processes for: Supporting Virtual Machines Managing the Hardware Managing Resource Availability Infrastructure Services (such as timekeeping and logging) Integration with VMware’s management tools and other authorized 3 rd^ party modules, such as hardware drivers and hardware monitoring tools can also run in vmkernel.