SlideShare a Scribd company logo
1 of 78
Download to read offline
14: Operating Systems and Virtualization

                                        Zubair Nabi

                             zubair.nabi@itu.edu.pk


                                      April 21, 2013




Zubair Nabi          14: Operating Systems and Virtualization   April 21, 2013   1 / 24
Outline




  1    Operating Systems




  2    Virtualization




  Zubair Nabi           14: Operating Systems and Virtualization   April 21, 2013   2 / 24
Outline




  1    Operating Systems




  2    Virtualization




  Zubair Nabi           14: Operating Systems and Virtualization   April 21, 2013   3 / 24
Introduction




          Linux is the default choice




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   4 / 24
Introduction




          Linux is the default choice
          Due to its performance, modularity, power efficiency, scalability, open
          source nature, and ubiquity




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   4 / 24
Introduction




          Linux is the default choice
          Due to its performance, modularity, power efficiency, scalability, open
          source nature, and ubiquity
          Deployed by everyone, from Google to Dell and from Amazon to IBM




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   4 / 24
Introduction




          Linux is the default choice
          Due to its performance, modularity, power efficiency, scalability, open
          source nature, and ubiquity
          Deployed by everyone, from Google to Dell and from Amazon to IBM
          But which distribution?




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   4 / 24
Introduction




          Linux is the default choice
          Due to its performance, modularity, power efficiency, scalability, open
          source nature, and ubiquity
          Deployed by everyone, from Google to Dell and from Amazon to IBM
          But which distribution?
          All distros have different features




  Zubair Nabi              14: Operating Systems and Virtualization   April 21, 2013   4 / 24
Distributions




          Distributions overlap in most of their functionality




  Zubair Nabi              14: Operating Systems and Virtualization   April 21, 2013   5 / 24
Distributions




          Distributions overlap in most of their functionality
          Many share a common package manager




  Zubair Nabi              14: Operating Systems and Virtualization   April 21, 2013   5 / 24
Distributions




          Distributions overlap in most of their functionality
          Many share a common package manager
                CentOS, Red Hat, and Fedora use RPM packages




  Zubair Nabi              14: Operating Systems and Virtualization   April 21, 2013   5 / 24
Distributions




          Distributions overlap in most of their functionality
          Many share a common package manager
                CentOS, Red Hat, and Fedora use RPM packages
                Ubuntu and Debian use APT or .deb packages




  Zubair Nabi              14: Operating Systems and Virtualization   April 21, 2013   5 / 24
Distributions




          Distributions overlap in most of their functionality
          Many share a common package manager
                CentOS, Red Hat, and Fedora use RPM packages
                Ubuntu and Debian use APT or .deb packages
          Almost all distributions will run any type of software




  Zubair Nabi              14: Operating Systems and Virtualization   April 21, 2013   5 / 24
Ubuntu




          Designed for ease of use across desktops as well as servers




  Zubair Nabi            14: Operating Systems and Virtualization   April 21, 2013   6 / 24
Ubuntu




          Designed for ease of use across desktops as well as servers
          Latest software versions are rolled out regularly




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   6 / 24
Ubuntu




          Designed for ease of use across desktops as well as servers
          Latest software versions are rolled out regularly
          Two different versions available:
                1   LTS (Long Term Support) version with stable packages




  Zubair Nabi                  14: Operating Systems and Virtualization    April 21, 2013   6 / 24
Ubuntu




          Designed for ease of use across desktops as well as servers
          Latest software versions are rolled out regularly
          Two different versions available:
                1   LTS (Long Term Support) version with stable packages
                2   Normal version with cutting-edge packages




  Zubair Nabi                  14: Operating Systems and Virtualization    April 21, 2013   6 / 24
Ubuntu




          Designed for ease of use across desktops as well as servers
          Latest software versions are rolled out regularly
          Two different versions available:
                1   LTS (Long Term Support) version with stable packages
                2   Normal version with cutting-edge packages
          Due to their stability, LTS versions are deployed on production servers




  Zubair Nabi                  14: Operating Systems and Virtualization    April 21, 2013   6 / 24
CentOS




         Emphasizes reliability




 Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   7 / 24
CentOS




         Emphasizes reliability
         Well-suited to production environments




 Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   7 / 24
CentOS




         Emphasizes reliability
         Well-suited to production environments
         Packages have been tuned over time to work out as many bugs and
         security flaws as possible




 Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   7 / 24
CentOS




         Emphasizes reliability
         Well-suited to production environments
         Packages have been tuned over time to work out as many bugs and
         security flaws as possible
         On the downside, software versions are rarely the latest




 Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   7 / 24
Red Hat Enterprise Linux (RHEL)




          Targets enterprise-level servers




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   8 / 24
Red Hat Enterprise Linux (RHEL)




          Targets enterprise-level servers
          Stable and handles heavy loads well




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   8 / 24
Red Hat Enterprise Linux (RHEL)




          Targets enterprise-level servers
          Stable and handles heavy loads well
          Requires a small licensing fee for non-free software components and
          updates




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   8 / 24
Red Hat Enterprise Linux (RHEL)




          Targets enterprise-level servers
          Stable and handles heavy loads well
          Requires a small licensing fee for non-free software components and
          updates
          Useful if the target software/workload supports it; enterprise software




  Zubair Nabi             14: Operating Systems and Virtualization    April 21, 2013   8 / 24
Red Hat Enterprise Linux (RHEL)




          Targets enterprise-level servers
          Stable and handles heavy loads well
          Requires a small licensing fee for non-free software components and
          updates
          Useful if the target software/workload supports it; enterprise software
          If not, better off using CentOS




  Zubair Nabi             14: Operating Systems and Virtualization    April 21, 2013   8 / 24
Gentoo




         By default forces the compilation of software rather than grabbing
         precompiled packages




 Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   9 / 24
Gentoo




         By default forces the compilation of software rather than grabbing
         precompiled packages
         Achieves great system optimizations if compiler options for the target
         environment known




 Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   9 / 24
Gentoo




         By default forces the compilation of software rather than grabbing
         precompiled packages
         Achieves great system optimizations if compiler options for the target
         environment known
         Useful if fine-grained control over each aspect of the system is required




 Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   9 / 24
Arch




          A distribution for experienced sysadmins




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   10 / 24
Arch




          A distribution for experienced sysadmins
          Useful if good low-level control over program execution required




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   10 / 24
Outline




  1    Operating Systems




  2    Virtualization




  Zubair Nabi           14: Operating Systems and Virtualization   April 21, 2013   11 / 24
Virtual Machine Monitor or Hypervisor




          Sits between one or more operating systems and the hardware




  Zubair Nabi            14: Operating Systems and Virtualization   April 21, 2013   12 / 24
Virtual Machine Monitor or Hypervisor




          Sits between one or more operating systems and the hardware
          Multiplexes the hardware across OSes




  Zubair Nabi            14: Operating Systems and Virtualization   April 21, 2013   12 / 24
Virtual Machine Monitor or Hypervisor




          Sits between one or more operating systems and the hardware
          Multiplexes the hardware across OSes
          Major advantage is server consolidation




  Zubair Nabi            14: Operating Systems and Virtualization   April 21, 2013   12 / 24
Xen




         Hypervisor which enables many instances of different operating
         systems to run atop the same physical host




 Zubair Nabi            14: Operating Systems and Virtualization   April 21, 2013   13 / 24
Xen




         Hypervisor which enables many instances of different operating
         systems to run atop the same physical host
         Used as the basis for a large number of applications: server and
         desktop virtualization, IaaS, security, etc.




 Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   13 / 24
Xen




         Hypervisor which enables many instances of different operating
         systems to run atop the same physical host
         Used as the basis for a large number of applications: server and
         desktop virtualization, IaaS, security, etc.
         Powering some of the largest clouds in production




 Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   13 / 24
Features




          Small footprint (1MB in size) due to its microkernel design




  Zubair Nabi             14: Operating Systems and Virtualization      April 21, 2013   14 / 24
Features




          Small footprint (1MB in size) due to its microkernel design
          Main device drivers for a system can be run within a VM to ensure
          isolation




  Zubair Nabi             14: Operating Systems and Virtualization      April 21, 2013   14 / 24
Features




          Small footprint (1MB in size) due to its microkernel design
          Main device drivers for a system can be run within a VM to ensure
          isolation
          Paravirtualized guests optimized to run as VMs enabling greater
          performance




  Zubair Nabi             14: Operating Systems and Virtualization      April 21, 2013   14 / 24
Architecture




          The hypervisor runs directly atop the hardware




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   15 / 24
Architecture




          The hypervisor runs directly atop the hardware
                In charge of handling CPU, memory, and I/O




  Zubair Nabi              14: Operating Systems and Virtualization   April 21, 2013   15 / 24
Architecture




          The hypervisor runs directly atop the hardware
                In charge of handling CPU, memory, and I/O
          Running instance of a VM is called domU or guest




  Zubair Nabi              14: Operating Systems and Virtualization   April 21, 2013   15 / 24
Architecture




          The hypervisor runs directly atop the hardware
                In charge of handling CPU, memory, and I/O
          Running instance of a VM is called domU or guest
          A special domain, called dom0, contains the drivers for all devices in
          the system




  Zubair Nabi              14: Operating Systems and Virtualization   April 21, 2013   15 / 24
Architecture




          The hypervisor runs directly atop the hardware
                In charge of handling CPU, memory, and I/O
          Running instance of a VM is called domU or guest
          A special domain, called dom0, contains the drivers for all devices in
          the system
                Also contains the interface for VM creation, termination, and
                configuration




  Zubair Nabi               14: Operating Systems and Virtualization       April 21, 2013   15 / 24
Zubair Nabi   14: Operating Systems and Virtualization   April 21, 2013   16 / 24
Xen-enabled operating systems




          dom0 requires a Xen-enabled kernel




  Zubair Nabi            14: Operating Systems and Virtualization   April 21, 2013   17 / 24
Xen-enabled operating systems




          dom0 requires a Xen-enabled kernel
          Similarly, paravirtualized guests also require a PV-enabled kernel




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   17 / 24
Xen-enabled operating systems




          dom0 requires a Xen-enabled kernel
          Similarly, paravirtualized guests also require a PV-enabled kernel
          Most Linux distributions are Xen-enabled and by default contain the
          Xen tool chain




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   17 / 24
I/O



          dom0 is in charge of all hardware




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   18 / 24
I/O



          dom0 is in charge of all hardware
          Based on the configuration of a domU, dom0 exports a subset of the
          devices into that domU




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   18 / 24
I/O



          dom0 is in charge of all hardware
          Based on the configuration of a domU, dom0 exports a subset of the
          devices into that domU
          Devices are exported as “class devices”




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   18 / 24
I/O



          dom0 is in charge of all hardware
          Based on the configuration of a domU, dom0 exports a subset of the
          devices into that domU
          Devices are exported as “class devices”
                A block device or a network device, not as a specific hardware device




  Zubair Nabi               14: Operating Systems and Virtualization    April 21, 2013   18 / 24
I/O



          dom0 is in charge of all hardware
          Based on the configuration of a domU, dom0 exports a subset of the
          devices into that domU
          Devices are exported as “class devices”
                A block device or a network device, not as a specific hardware device
          dom0 runs the backend of the device which is connected to the
          frontend in the domU




  Zubair Nabi               14: Operating Systems and Virtualization    April 21, 2013   18 / 24
I/O



          dom0 is in charge of all hardware
          Based on the configuration of a domU, dom0 exports a subset of the
          devices into that domU
          Devices are exported as “class devices”
                A block device or a network device, not as a specific hardware device
          dom0 runs the backend of the device which is connected to the
          frontend in the domU
                netback and netfront in case of network devices and blockback and
                blockfront in case of block devices




  Zubair Nabi               14: Operating Systems and Virtualization    April 21, 2013   18 / 24
Linux Containers (LXC)




          Partition the resources managed by the OS into individual silos




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   19 / 24
Linux Containers (LXC)




          Partition the resources managed by the OS into individual silos
          Instructions are run native to the core CPU




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   19 / 24
Linux Containers (LXC)




          Partition the resources managed by the OS into individual silos
          Instructions are run native to the core CPU
          In contrast to virtualization, no overhead of instruction-level emulation




  Zubair Nabi              14: Operating Systems and Virtualization    April 21, 2013   19 / 24
Linux Containers (LXC)




          Partition the resources managed by the OS into individual silos
          Instructions are run native to the core CPU
          In contrast to virtualization, no overhead of instruction-level emulation
          Applications presented the illusion of running on a separate machine




  Zubair Nabi              14: Operating Systems and Virtualization    April 21, 2013   19 / 24
Linux Containers (LXC)




          Partition the resources managed by the OS into individual silos
          Instructions are run native to the core CPU
          In contrast to virtualization, no overhead of instruction-level emulation
          Applications presented the illusion of running on a separate machine
          A number of underlying resources are shared




  Zubair Nabi              14: Operating Systems and Virtualization    April 21, 2013   19 / 24
Linux Containers (LXC)




          Partition the resources managed by the OS into individual silos
          Instructions are run native to the core CPU
          In contrast to virtualization, no overhead of instruction-level emulation
          Applications presented the illusion of running on a separate machine
          A number of underlying resources are shared
          For instance, all containers share the same underlying kernel




  Zubair Nabi              14: Operating Systems and Virtualization    April 21, 2013   19 / 24
Linux Containers (LXC)




          Partition the resources managed by the OS into individual silos
          Instructions are run native to the core CPU
          In contrast to virtualization, no overhead of instruction-level emulation
          Applications presented the illusion of running on a separate machine
          A number of underlying resources are shared
          For instance, all containers share the same underlying kernel
          Part of the main kernel tree




  Zubair Nabi              14: Operating Systems and Virtualization    April 21, 2013   19 / 24
Bridging and Filesystem




          Linux bridge code is used to link the container to the network




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   20 / 24
Bridging and Filesystem




          Linux bridge code is used to link the container to the network
          Each virtual interface has two pairs: one inside the container, the other
          end connected to the bridge




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   20 / 24
Bridging and Filesystem




          Linux bridge code is used to link the container to the network
          Each virtual interface has two pairs: one inside the container, the other
          end connected to the bridge
          Also possible to create a filesystem for each container




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   20 / 24
Kernel-based Virtual Machine (KVM)




          Merges the hypervisor with the kernel




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   21 / 24
Kernel-based Virtual Machine (KVM)




          Merges the hypervisor with the kernel
          Reduces redundancy and speeds up execution times




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   21 / 24
Kernel-based Virtual Machine (KVM)




          Merges the hypervisor with the kernel
          Reduces redundancy and speeds up execution times
          KVM driver acts as the middleware between the kernel and a
          userspace VM




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   21 / 24
Kernel-based Virtual Machine (KVM)




          Merges the hypervisor with the kernel
          Reduces redundancy and speeds up execution times
          KVM driver acts as the middleware between the kernel and a
          userspace VM
          Scheduling of processes and memory management is handled by the
          kernel




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   21 / 24
QEMU




         Manages I/O and enables a virtual home for the guest OS




 Zubair Nabi            14: Operating Systems and Virtualization   April 21, 2013   22 / 24
QEMU




         Manages I/O and enables a virtual home for the guest OS
         QEMU itself runs as a user-space process




 Zubair Nabi            14: Operating Systems and Virtualization   April 21, 2013   22 / 24
QEMU




         Manages I/O and enables a virtual home for the guest OS
         QEMU itself runs as a user-space process
         Virtual processors within a virtual machine simply execute as threads
         in the host process




 Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   22 / 24
Advantages




          Reuse of existing software and infrastructure




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   23 / 24
Advantages




          Reuse of existing software and infrastructure
          Seamlessly works across all platforms: from servers to embedded
          devices




  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   23 / 24
Advantages




          Reuse of existing software and infrastructure
          Seamlessly works across all platforms: from servers to embedded
          devices
          Integrates with the existing Linux scheduler, I/O stack, and available
          filesystems




  Zubair Nabi             14: Operating Systems and Virtualization    April 21, 2013   23 / 24
References

     1    Linux: The Operating System of the Cloud:
          http://www.linuxfoundation.org/sites/main/
          files/publications/linuxincloud.html
     2    Choosing a Linux Distribution:
          http://www.rackspace.com/knowledge_center/
          article/choosing-a-linux-distribution
     3    Xen Overview:
          http://wiki.xenproject.org/wiki/Xen_Overview
     4    LXC: Linux container tools: http://www.ibm.com/
          developerworks/linux/library/l-lxc-containers/
     5    Kernel-based virtualization with KVM:
          http://www.linux-magazine.com/content/download/
          62512/485179/file/Kernel_Based_Virtualization_
          With_KVM.pdf

  Zubair Nabi             14: Operating Systems and Virtualization   April 21, 2013   24 / 24

More Related Content

Viewers also liked

AOS Lab 10: File system -- Inodes and beyond
AOS Lab 10: File system -- Inodes and beyondAOS Lab 10: File system -- Inodes and beyond
AOS Lab 10: File system -- Inodes and beyond
Zubair Nabi
 
AOS Lab 7: Page tables
AOS Lab 7: Page tablesAOS Lab 7: Page tables
AOS Lab 7: Page tables
Zubair Nabi
 
AOS Lab 1: Hello, Linux!
AOS Lab 1: Hello, Linux!AOS Lab 1: Hello, Linux!
AOS Lab 1: Hello, Linux!
Zubair Nabi
 
AOS Lab 5: System calls
AOS Lab 5: System callsAOS Lab 5: System calls
AOS Lab 5: System calls
Zubair Nabi
 
AOS Lab 6: Scheduling
AOS Lab 6: SchedulingAOS Lab 6: Scheduling
AOS Lab 6: Scheduling
Zubair Nabi
 
AOS Lab 9: File system -- Of buffers, logs, and blocks
AOS Lab 9: File system -- Of buffers, logs, and blocksAOS Lab 9: File system -- Of buffers, logs, and blocks
AOS Lab 9: File system -- Of buffers, logs, and blocks
Zubair Nabi
 
AOS Lab 2: Hello, xv6!
AOS Lab 2: Hello, xv6!AOS Lab 2: Hello, xv6!
AOS Lab 2: Hello, xv6!
Zubair Nabi
 
AOS Lab 12: Network Communication
AOS Lab 12: Network CommunicationAOS Lab 12: Network Communication
AOS Lab 12: Network Communication
Zubair Nabi
 
The Anatomy of Web Censorship in Pakistan
The Anatomy of Web Censorship in PakistanThe Anatomy of Web Censorship in Pakistan
The Anatomy of Web Censorship in Pakistan
Zubair Nabi
 
Raabta: Low-cost Video Conferencing for the Developing World
Raabta: Low-cost Video Conferencing for the Developing WorldRaabta: Low-cost Video Conferencing for the Developing World
Raabta: Low-cost Video Conferencing for the Developing World
Zubair Nabi
 
AOS Lab 1: Hello, Linux!
AOS Lab 1: Hello, Linux!AOS Lab 1: Hello, Linux!
AOS Lab 1: Hello, Linux!
Zubair Nabi
 
The Big Data Stack
The Big Data StackThe Big Data Stack
The Big Data Stack
Zubair Nabi
 

Viewers also liked (20)

AOS Lab 10: File system -- Inodes and beyond
AOS Lab 10: File system -- Inodes and beyondAOS Lab 10: File system -- Inodes and beyond
AOS Lab 10: File system -- Inodes and beyond
 
AOS Lab 7: Page tables
AOS Lab 7: Page tablesAOS Lab 7: Page tables
AOS Lab 7: Page tables
 
AOS Lab 1: Hello, Linux!
AOS Lab 1: Hello, Linux!AOS Lab 1: Hello, Linux!
AOS Lab 1: Hello, Linux!
 
AOS Lab 5: System calls
AOS Lab 5: System callsAOS Lab 5: System calls
AOS Lab 5: System calls
 
AOS Lab 6: Scheduling
AOS Lab 6: SchedulingAOS Lab 6: Scheduling
AOS Lab 6: Scheduling
 
AOS Lab 9: File system -- Of buffers, logs, and blocks
AOS Lab 9: File system -- Of buffers, logs, and blocksAOS Lab 9: File system -- Of buffers, logs, and blocks
AOS Lab 9: File system -- Of buffers, logs, and blocks
 
AOS Lab 2: Hello, xv6!
AOS Lab 2: Hello, xv6!AOS Lab 2: Hello, xv6!
AOS Lab 2: Hello, xv6!
 
AOS Lab 12: Network Communication
AOS Lab 12: Network CommunicationAOS Lab 12: Network Communication
AOS Lab 12: Network Communication
 
Topic 15: Datacenter Design and Networking
Topic 15: Datacenter Design and NetworkingTopic 15: Datacenter Design and Networking
Topic 15: Datacenter Design and Networking
 
Chingis Sandanov. Container virtualization
Chingis Sandanov. Container virtualizationChingis Sandanov. Container virtualization
Chingis Sandanov. Container virtualization
 
The Anatomy of Web Censorship in Pakistan
The Anatomy of Web Censorship in PakistanThe Anatomy of Web Censorship in Pakistan
The Anatomy of Web Censorship in Pakistan
 
Raabta: Low-cost Video Conferencing for the Developing World
Raabta: Low-cost Video Conferencing for the Developing WorldRaabta: Low-cost Video Conferencing for the Developing World
Raabta: Low-cost Video Conferencing for the Developing World
 
AOS Lab 1: Hello, Linux!
AOS Lab 1: Hello, Linux!AOS Lab 1: Hello, Linux!
AOS Lab 1: Hello, Linux!
 
MapReduce Application Scripting
MapReduce Application ScriptingMapReduce Application Scripting
MapReduce Application Scripting
 
MapReduce and DBMS Hybrids
MapReduce and DBMS HybridsMapReduce and DBMS Hybrids
MapReduce and DBMS Hybrids
 
The Big Data Stack
The Big Data StackThe Big Data Stack
The Big Data Stack
 
Virtualization
VirtualizationVirtualization
Virtualization
 
Evoluation of Linux Container Virtualization
Evoluation of Linux Container VirtualizationEvoluation of Linux Container Virtualization
Evoluation of Linux Container Virtualization
 
Chap 2 virtulizatin
Chap 2 virtulizatinChap 2 virtulizatin
Chap 2 virtulizatin
 
Operating systems Overview
Operating systems OverviewOperating systems Overview
Operating systems Overview
 

Similar to Topic 14: Operating Systems and Virtualization

Presentation1 linux os
Presentation1 linux osPresentation1 linux os
Presentation1 linux os
joycoronado
 
Presentation1 linux os
Presentation1 linux osPresentation1 linux os
Presentation1 linux os
ruzzelarpon
 
Ada in Fedora linux
Ada in Fedora linuxAda in Fedora linux
Ada in Fedora linux
Pavel Zhukov
 
Linux Operating SystemMigration ProposalCMIT 391 - Section .docx
Linux Operating SystemMigration ProposalCMIT 391 -  Section .docxLinux Operating SystemMigration ProposalCMIT 391 -  Section .docx
Linux Operating SystemMigration ProposalCMIT 391 - Section .docx
washingtonrosy
 

Similar to Topic 14: Operating Systems and Virtualization (20)

Picking a distro_1_
Picking a distro_1_Picking a distro_1_
Picking a distro_1_
 
Top Alternatives To CentOS Linux Server Distributions For Programmers – 2022 ...
Top Alternatives To CentOS Linux Server Distributions For Programmers – 2022 ...Top Alternatives To CentOS Linux Server Distributions For Programmers – 2022 ...
Top Alternatives To CentOS Linux Server Distributions For Programmers – 2022 ...
 
Best Alternatives To CentOS Linux Server Distributions For Programmers
Best Alternatives To CentOS Linux Server Distributions For ProgrammersBest Alternatives To CentOS Linux Server Distributions For Programmers
Best Alternatives To CentOS Linux Server Distributions For Programmers
 
What's new in FreeBSD 10
What's new in FreeBSD 10What's new in FreeBSD 10
What's new in FreeBSD 10
 
Top Alternatives To CentOS Linux Server Distributions For Programmers – 2022 ...
Top Alternatives To CentOS Linux Server Distributions For Programmers – 2022 ...Top Alternatives To CentOS Linux Server Distributions For Programmers – 2022 ...
Top Alternatives To CentOS Linux Server Distributions For Programmers – 2022 ...
 
Topic 11: Google Filesystem
Topic 11: Google FilesystemTopic 11: Google Filesystem
Topic 11: Google Filesystem
 
Popularity of Open source databases
Popularity of Open source databasesPopularity of Open source databases
Popularity of Open source databases
 
Presentation1 linux os
Presentation1 linux osPresentation1 linux os
Presentation1 linux os
 
Presentation1 linux os(2)
Presentation1 linux os(2)Presentation1 linux os(2)
Presentation1 linux os(2)
 
Presentation1 linux os
Presentation1 linux osPresentation1 linux os
Presentation1 linux os
 
Presentation1 linux os
Presentation1 linux osPresentation1 linux os
Presentation1 linux os
 
Глеб Смирнов: Что нового в FreeBSD 10.0
Глеб Смирнов: Что нового в FreeBSD 10.0Глеб Смирнов: Что нового в FreeBSD 10.0
Глеб Смирнов: Что нового в FreeBSD 10.0
 
Ada in Fedora linux
Ada in Fedora linuxAda in Fedora linux
Ada in Fedora linux
 
Linux Operating SystemMigration ProposalCMIT 391 - Section .docx
Linux Operating SystemMigration ProposalCMIT 391 -  Section .docxLinux Operating SystemMigration ProposalCMIT 391 -  Section .docx
Linux Operating SystemMigration ProposalCMIT 391 - Section .docx
 
Apache DeviceMap - ApacheCon core Europe 2015
Apache DeviceMap - ApacheCon core Europe 2015Apache DeviceMap - ApacheCon core Europe 2015
Apache DeviceMap - ApacheCon core Europe 2015
 
Fedora Operating System
Fedora Operating SystemFedora Operating System
Fedora Operating System
 
Take a step forward from user to maintainer or developer in open source secur...
Take a step forward from user to maintainer or developer in open source secur...Take a step forward from user to maintainer or developer in open source secur...
Take a step forward from user to maintainer or developer in open source secur...
 
Unix and Linux Common Boot Disk Disaster Recovery Tools by Dusan Baljevic
Unix and Linux Common Boot Disk Disaster Recovery Tools by Dusan BaljevicUnix and Linux Common Boot Disk Disaster Recovery Tools by Dusan Baljevic
Unix and Linux Common Boot Disk Disaster Recovery Tools by Dusan Baljevic
 
Apache DeviceMap - ApacheCon Europe 2014
Apache DeviceMap - ApacheCon Europe 2014Apache DeviceMap - ApacheCon Europe 2014
Apache DeviceMap - ApacheCon Europe 2014
 
Basics of linux.pptx
Basics of linux.pptxBasics of linux.pptx
Basics of linux.pptx
 

More from Zubair Nabi (10)

Lab 5: Interconnecting a Datacenter using Mininet
Lab 5: Interconnecting a Datacenter using MininetLab 5: Interconnecting a Datacenter using Mininet
Lab 5: Interconnecting a Datacenter using Mininet
 
Topic 12: NoSQL in Action
Topic 12: NoSQL in ActionTopic 12: NoSQL in Action
Topic 12: NoSQL in Action
 
Lab 4: Interfacing with Cassandra
Lab 4: Interfacing with CassandraLab 4: Interfacing with Cassandra
Lab 4: Interfacing with Cassandra
 
Topic 10: Taxonomy of Data and Storage
Topic 10: Taxonomy of Data and StorageTopic 10: Taxonomy of Data and Storage
Topic 10: Taxonomy of Data and Storage
 
Lab 3: Writing a Naiad Application
Lab 3: Writing a Naiad ApplicationLab 3: Writing a Naiad Application
Lab 3: Writing a Naiad Application
 
Topic 9: MR+
Topic 9: MR+Topic 9: MR+
Topic 9: MR+
 
Topic 8: Enhancements and Alternative Architectures
Topic 8: Enhancements and Alternative ArchitecturesTopic 8: Enhancements and Alternative Architectures
Topic 8: Enhancements and Alternative Architectures
 
Topic 7: Shortcomings in the MapReduce Paradigm
Topic 7: Shortcomings in the MapReduce ParadigmTopic 7: Shortcomings in the MapReduce Paradigm
Topic 7: Shortcomings in the MapReduce Paradigm
 
Lab 1: Introduction to Amazon EC2 and MPI
Lab 1: Introduction to Amazon EC2 and MPILab 1: Introduction to Amazon EC2 and MPI
Lab 1: Introduction to Amazon EC2 and MPI
 
Topic 6: MapReduce Applications
Topic 6: MapReduce ApplicationsTopic 6: MapReduce Applications
Topic 6: MapReduce Applications
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

Topic 14: Operating Systems and Virtualization

  • 1. 14: Operating Systems and Virtualization Zubair Nabi zubair.nabi@itu.edu.pk April 21, 2013 Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 1 / 24
  • 2. Outline 1 Operating Systems 2 Virtualization Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 2 / 24
  • 3. Outline 1 Operating Systems 2 Virtualization Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 3 / 24
  • 4. Introduction Linux is the default choice Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 4 / 24
  • 5. Introduction Linux is the default choice Due to its performance, modularity, power efficiency, scalability, open source nature, and ubiquity Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 4 / 24
  • 6. Introduction Linux is the default choice Due to its performance, modularity, power efficiency, scalability, open source nature, and ubiquity Deployed by everyone, from Google to Dell and from Amazon to IBM Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 4 / 24
  • 7. Introduction Linux is the default choice Due to its performance, modularity, power efficiency, scalability, open source nature, and ubiquity Deployed by everyone, from Google to Dell and from Amazon to IBM But which distribution? Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 4 / 24
  • 8. Introduction Linux is the default choice Due to its performance, modularity, power efficiency, scalability, open source nature, and ubiquity Deployed by everyone, from Google to Dell and from Amazon to IBM But which distribution? All distros have different features Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 4 / 24
  • 9. Distributions Distributions overlap in most of their functionality Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 5 / 24
  • 10. Distributions Distributions overlap in most of their functionality Many share a common package manager Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 5 / 24
  • 11. Distributions Distributions overlap in most of their functionality Many share a common package manager CentOS, Red Hat, and Fedora use RPM packages Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 5 / 24
  • 12. Distributions Distributions overlap in most of their functionality Many share a common package manager CentOS, Red Hat, and Fedora use RPM packages Ubuntu and Debian use APT or .deb packages Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 5 / 24
  • 13. Distributions Distributions overlap in most of their functionality Many share a common package manager CentOS, Red Hat, and Fedora use RPM packages Ubuntu and Debian use APT or .deb packages Almost all distributions will run any type of software Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 5 / 24
  • 14. Ubuntu Designed for ease of use across desktops as well as servers Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 6 / 24
  • 15. Ubuntu Designed for ease of use across desktops as well as servers Latest software versions are rolled out regularly Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 6 / 24
  • 16. Ubuntu Designed for ease of use across desktops as well as servers Latest software versions are rolled out regularly Two different versions available: 1 LTS (Long Term Support) version with stable packages Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 6 / 24
  • 17. Ubuntu Designed for ease of use across desktops as well as servers Latest software versions are rolled out regularly Two different versions available: 1 LTS (Long Term Support) version with stable packages 2 Normal version with cutting-edge packages Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 6 / 24
  • 18. Ubuntu Designed for ease of use across desktops as well as servers Latest software versions are rolled out regularly Two different versions available: 1 LTS (Long Term Support) version with stable packages 2 Normal version with cutting-edge packages Due to their stability, LTS versions are deployed on production servers Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 6 / 24
  • 19. CentOS Emphasizes reliability Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 7 / 24
  • 20. CentOS Emphasizes reliability Well-suited to production environments Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 7 / 24
  • 21. CentOS Emphasizes reliability Well-suited to production environments Packages have been tuned over time to work out as many bugs and security flaws as possible Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 7 / 24
  • 22. CentOS Emphasizes reliability Well-suited to production environments Packages have been tuned over time to work out as many bugs and security flaws as possible On the downside, software versions are rarely the latest Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 7 / 24
  • 23. Red Hat Enterprise Linux (RHEL) Targets enterprise-level servers Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 8 / 24
  • 24. Red Hat Enterprise Linux (RHEL) Targets enterprise-level servers Stable and handles heavy loads well Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 8 / 24
  • 25. Red Hat Enterprise Linux (RHEL) Targets enterprise-level servers Stable and handles heavy loads well Requires a small licensing fee for non-free software components and updates Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 8 / 24
  • 26. Red Hat Enterprise Linux (RHEL) Targets enterprise-level servers Stable and handles heavy loads well Requires a small licensing fee for non-free software components and updates Useful if the target software/workload supports it; enterprise software Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 8 / 24
  • 27. Red Hat Enterprise Linux (RHEL) Targets enterprise-level servers Stable and handles heavy loads well Requires a small licensing fee for non-free software components and updates Useful if the target software/workload supports it; enterprise software If not, better off using CentOS Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 8 / 24
  • 28. Gentoo By default forces the compilation of software rather than grabbing precompiled packages Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 9 / 24
  • 29. Gentoo By default forces the compilation of software rather than grabbing precompiled packages Achieves great system optimizations if compiler options for the target environment known Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 9 / 24
  • 30. Gentoo By default forces the compilation of software rather than grabbing precompiled packages Achieves great system optimizations if compiler options for the target environment known Useful if fine-grained control over each aspect of the system is required Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 9 / 24
  • 31. Arch A distribution for experienced sysadmins Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 10 / 24
  • 32. Arch A distribution for experienced sysadmins Useful if good low-level control over program execution required Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 10 / 24
  • 33. Outline 1 Operating Systems 2 Virtualization Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 11 / 24
  • 34. Virtual Machine Monitor or Hypervisor Sits between one or more operating systems and the hardware Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 12 / 24
  • 35. Virtual Machine Monitor or Hypervisor Sits between one or more operating systems and the hardware Multiplexes the hardware across OSes Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 12 / 24
  • 36. Virtual Machine Monitor or Hypervisor Sits between one or more operating systems and the hardware Multiplexes the hardware across OSes Major advantage is server consolidation Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 12 / 24
  • 37. Xen Hypervisor which enables many instances of different operating systems to run atop the same physical host Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 13 / 24
  • 38. Xen Hypervisor which enables many instances of different operating systems to run atop the same physical host Used as the basis for a large number of applications: server and desktop virtualization, IaaS, security, etc. Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 13 / 24
  • 39. Xen Hypervisor which enables many instances of different operating systems to run atop the same physical host Used as the basis for a large number of applications: server and desktop virtualization, IaaS, security, etc. Powering some of the largest clouds in production Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 13 / 24
  • 40. Features Small footprint (1MB in size) due to its microkernel design Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 14 / 24
  • 41. Features Small footprint (1MB in size) due to its microkernel design Main device drivers for a system can be run within a VM to ensure isolation Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 14 / 24
  • 42. Features Small footprint (1MB in size) due to its microkernel design Main device drivers for a system can be run within a VM to ensure isolation Paravirtualized guests optimized to run as VMs enabling greater performance Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 14 / 24
  • 43. Architecture The hypervisor runs directly atop the hardware Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 15 / 24
  • 44. Architecture The hypervisor runs directly atop the hardware In charge of handling CPU, memory, and I/O Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 15 / 24
  • 45. Architecture The hypervisor runs directly atop the hardware In charge of handling CPU, memory, and I/O Running instance of a VM is called domU or guest Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 15 / 24
  • 46. Architecture The hypervisor runs directly atop the hardware In charge of handling CPU, memory, and I/O Running instance of a VM is called domU or guest A special domain, called dom0, contains the drivers for all devices in the system Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 15 / 24
  • 47. Architecture The hypervisor runs directly atop the hardware In charge of handling CPU, memory, and I/O Running instance of a VM is called domU or guest A special domain, called dom0, contains the drivers for all devices in the system Also contains the interface for VM creation, termination, and configuration Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 15 / 24
  • 48. Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 16 / 24
  • 49. Xen-enabled operating systems dom0 requires a Xen-enabled kernel Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 17 / 24
  • 50. Xen-enabled operating systems dom0 requires a Xen-enabled kernel Similarly, paravirtualized guests also require a PV-enabled kernel Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 17 / 24
  • 51. Xen-enabled operating systems dom0 requires a Xen-enabled kernel Similarly, paravirtualized guests also require a PV-enabled kernel Most Linux distributions are Xen-enabled and by default contain the Xen tool chain Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 17 / 24
  • 52. I/O dom0 is in charge of all hardware Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 18 / 24
  • 53. I/O dom0 is in charge of all hardware Based on the configuration of a domU, dom0 exports a subset of the devices into that domU Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 18 / 24
  • 54. I/O dom0 is in charge of all hardware Based on the configuration of a domU, dom0 exports a subset of the devices into that domU Devices are exported as “class devices” Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 18 / 24
  • 55. I/O dom0 is in charge of all hardware Based on the configuration of a domU, dom0 exports a subset of the devices into that domU Devices are exported as “class devices” A block device or a network device, not as a specific hardware device Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 18 / 24
  • 56. I/O dom0 is in charge of all hardware Based on the configuration of a domU, dom0 exports a subset of the devices into that domU Devices are exported as “class devices” A block device or a network device, not as a specific hardware device dom0 runs the backend of the device which is connected to the frontend in the domU Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 18 / 24
  • 57. I/O dom0 is in charge of all hardware Based on the configuration of a domU, dom0 exports a subset of the devices into that domU Devices are exported as “class devices” A block device or a network device, not as a specific hardware device dom0 runs the backend of the device which is connected to the frontend in the domU netback and netfront in case of network devices and blockback and blockfront in case of block devices Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 18 / 24
  • 58. Linux Containers (LXC) Partition the resources managed by the OS into individual silos Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 19 / 24
  • 59. Linux Containers (LXC) Partition the resources managed by the OS into individual silos Instructions are run native to the core CPU Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 19 / 24
  • 60. Linux Containers (LXC) Partition the resources managed by the OS into individual silos Instructions are run native to the core CPU In contrast to virtualization, no overhead of instruction-level emulation Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 19 / 24
  • 61. Linux Containers (LXC) Partition the resources managed by the OS into individual silos Instructions are run native to the core CPU In contrast to virtualization, no overhead of instruction-level emulation Applications presented the illusion of running on a separate machine Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 19 / 24
  • 62. Linux Containers (LXC) Partition the resources managed by the OS into individual silos Instructions are run native to the core CPU In contrast to virtualization, no overhead of instruction-level emulation Applications presented the illusion of running on a separate machine A number of underlying resources are shared Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 19 / 24
  • 63. Linux Containers (LXC) Partition the resources managed by the OS into individual silos Instructions are run native to the core CPU In contrast to virtualization, no overhead of instruction-level emulation Applications presented the illusion of running on a separate machine A number of underlying resources are shared For instance, all containers share the same underlying kernel Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 19 / 24
  • 64. Linux Containers (LXC) Partition the resources managed by the OS into individual silos Instructions are run native to the core CPU In contrast to virtualization, no overhead of instruction-level emulation Applications presented the illusion of running on a separate machine A number of underlying resources are shared For instance, all containers share the same underlying kernel Part of the main kernel tree Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 19 / 24
  • 65. Bridging and Filesystem Linux bridge code is used to link the container to the network Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 20 / 24
  • 66. Bridging and Filesystem Linux bridge code is used to link the container to the network Each virtual interface has two pairs: one inside the container, the other end connected to the bridge Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 20 / 24
  • 67. Bridging and Filesystem Linux bridge code is used to link the container to the network Each virtual interface has two pairs: one inside the container, the other end connected to the bridge Also possible to create a filesystem for each container Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 20 / 24
  • 68. Kernel-based Virtual Machine (KVM) Merges the hypervisor with the kernel Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 21 / 24
  • 69. Kernel-based Virtual Machine (KVM) Merges the hypervisor with the kernel Reduces redundancy and speeds up execution times Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 21 / 24
  • 70. Kernel-based Virtual Machine (KVM) Merges the hypervisor with the kernel Reduces redundancy and speeds up execution times KVM driver acts as the middleware between the kernel and a userspace VM Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 21 / 24
  • 71. Kernel-based Virtual Machine (KVM) Merges the hypervisor with the kernel Reduces redundancy and speeds up execution times KVM driver acts as the middleware between the kernel and a userspace VM Scheduling of processes and memory management is handled by the kernel Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 21 / 24
  • 72. QEMU Manages I/O and enables a virtual home for the guest OS Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 22 / 24
  • 73. QEMU Manages I/O and enables a virtual home for the guest OS QEMU itself runs as a user-space process Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 22 / 24
  • 74. QEMU Manages I/O and enables a virtual home for the guest OS QEMU itself runs as a user-space process Virtual processors within a virtual machine simply execute as threads in the host process Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 22 / 24
  • 75. Advantages Reuse of existing software and infrastructure Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 23 / 24
  • 76. Advantages Reuse of existing software and infrastructure Seamlessly works across all platforms: from servers to embedded devices Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 23 / 24
  • 77. Advantages Reuse of existing software and infrastructure Seamlessly works across all platforms: from servers to embedded devices Integrates with the existing Linux scheduler, I/O stack, and available filesystems Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 23 / 24
  • 78. References 1 Linux: The Operating System of the Cloud: http://www.linuxfoundation.org/sites/main/ files/publications/linuxincloud.html 2 Choosing a Linux Distribution: http://www.rackspace.com/knowledge_center/ article/choosing-a-linux-distribution 3 Xen Overview: http://wiki.xenproject.org/wiki/Xen_Overview 4 LXC: Linux container tools: http://www.ibm.com/ developerworks/linux/library/l-lxc-containers/ 5 Kernel-based virtualization with KVM: http://www.linux-magazine.com/content/download/ 62512/485179/file/Kernel_Based_Virtualization_ With_KVM.pdf Zubair Nabi 14: Operating Systems and Virtualization April 21, 2013 24 / 24