Presentation is loading. Please wait.

Presentation is loading. Please wait.

Virtualization Neependra Khare

Similar presentations


Presentation on theme: "Virtualization Neependra Khare"— Presentation transcript:

1 Virtualization Neependra Khare neependra.khare@gmail.com

2 Abstraction, Virtualization of Computer System Levels of Abstraction –Allows implementation details at lower levels of design to be ignored or simplified –Each level is seperated by well-defined interfaces Design of a higher level can be decoupled from the lower levels

3 Abstraction, Virtualization of Computer System Disadvantage –Components designed to specification for one interface will not work with those designed for another. Component A Interface A Component A Interface AInterface B Component A Interface B

4 Abstraction, Virtualization of Computer System Virtualization –Similar to Abstraction but doesn’t always hide low layer’s details –Real system is transformed so that it appears to be different –Virtualization can be applied not only to subsystem, but to an Entire Machine → Virtual Machine Resource A Resource AA B BB B’ BB’ isomorphism

5 Abstraction, Virtualization of Computer System Real Disk File Virtualized Disk Abstraction Virtualization Applications or OS Application uses virtual disk as Real disk

6 Virtualization, Why? Server consolidation Multiple execution environments Virtual hardware Debugging Software migration (Mobility) Testing/Quality Assurance Maintenance – Live Migration –Balancing Resources

7 Architecture, Implementation Layers Architecture –Level of Abstraction= = Implementation layer ISA, ABI, API Application Programs Libraries Operating System Execution Hardware Memory Translation IO Devices, Networking Controllers System Interconnect (Bus)‏ Controllers Main Memory Drivers Memor y Manag er Schedu ler ISA ABI API

8 Architecture, Implementation Layers ISA –Divides hardware and software –User ISA and System ISA ABI –Provides a program with access to the hardware resource and services available in a system –Consists of User ISA and System Call Interfaces API –Key element is Standard Library ( or Libraries )‏ –clib in Unix environment : supports the UNIX/C programming

9 Virtualization Properties Isolation –Fault Isolation –Software Isolation –Performance Isolation Encapsulation –All VM state can be captured into a file. – mv, cp, rm Interposition –All guests goes through a monitor. –Monitor can inspect, modify, deny operations.

10 Process VM vs. System VM Process VM at the ABI level –Virtualization of individual processes –E.g., running x86 applications on Alpha CPU System VM at the ISA level –Virtualization of complete systems –E.g., running Linux (and its applications) on Windows.

11 Process Virtualization Multiprogramming Allows running programs compiled for other systems. High-Level Language Virtual Machines : Platform Independence.

12 Process Virtualization A matter of correct functioning –Not a matter of Performance

13 Hardware emulation A hardware VM is created on a host system to emulate the hardware of interest. Run an unmodified operating –system intended for a PowerPC® on an ARM processor host. Multiple virtual machines. Each simulating a different processor.

14 Hypervisor

15 Full virtualization Certain protected instructions must be trapped and handled within the hypervisor because the underlying hardware shared by it through the hypervisor. An operating system can run unmodified.

16 Paravirtualization Virtualization-aware code into the operating system itself. Paravirtualization offers performance near that of an unvirtualized system.

17 Virtualization technologies available for Linux XEN KVM UML QEMU http://virt.kernelnewbies.org/TechComparison

18 KVM Turns a Linux kernel into a hypervisor. The kernel module exports a device called /dev/kvm, which enables a guest mode of the kernel. With /dev/kvm, a VM has its own address space separate from that of the kernel or any other VM that's running. Devices in the device tree (/dev) are common to all user- space processes. But /dev/kvm is different in that each process that opens it sees a different map (to support isolation of the VMs).

19 KVM Each guest OS is a single process Hardware platform that is virtualization capable.(currently, this means an Intel VT or AMD-SVM processor). Performing I/O from a guest operating system is provided with QEMU. QEMU is a platform virtualization solution that allows virtualization of an entire PC environment including disks, graphic adapters, and network devices.

20 References http://www1.cs.columbia.edu/~nieh/teaching/e6998/lect ures/http://www1.cs.columbia.edu/~nieh/teaching/e6998/lect ures/ http://www.ibm.com/developerworks/library/l- linuxvirt/index.htmlhttp://www.ibm.com/developerworks/library/l- linuxvirt/index.html http://www.ibm.com/developerworks/linux/library/l- linux-kvm/http://www.ibm.com/developerworks/linux/library/l- linux-kvm/ http://www.kernelthread.com/publications/virtualization/

21 Q & A

22 THANKS!!!


Download ppt "Virtualization Neependra Khare"

Similar presentations


Ads by Google