Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS533 Concepts of Operating Systems Class 14 Virtualization and Exokernels.

Similar presentations


Presentation on theme: "CS533 Concepts of Operating Systems Class 14 Virtualization and Exokernels."— Presentation transcript:

1 CS533 Concepts of Operating Systems Class 14 Virtualization and Exokernels

2 CS533 - Concepts of Operating Systems 2 Questions  Is Disco a micro-kernel?  Is it a minimal kernel running in privileged mode?  Does it run OS code at user level?  Does it support modularization of OS code?  What granularity are the modules?  How does it implement protection?  Is virtualization a sandboxing technique?  How does it implement inter-module communication?  Does it support extensibility?  What abstractions does it export to its clients? o What system call interface does it export?

3 CS533 - Concepts of Operating Systems 3 Questions  At what granularity do VM monitors support multitasking? o How does this differ from conventional multitasking? o How do virtualized CPUs differ from threads/processes? o How do virtualized CPUs differ from scheduler activations?

4 CS533 - Concepts of Operating Systems 4 Questions  Do micro-kernels do virtualization?  Is a micro-kernel’s use of trap redirection for application binary compatibility the same as a virtual machine approach?  What else is needed for complete virtualization of a machine, such that an OS binary can run on it?

5 Questions  What characteristics would make a hardware architecture “difficult” to virtualize?  What characteristics would make a hardware architecture “expensive” to virtualize?  What hardware support would be useful for virtualization?  Does virtualization hide any critical characteristics of the real hardware?

6 Questions  How does virtualization help scalability? o Aren’t we just adding a level of indirection to the same hardware/software base that would not scale?  Why not just use a network of small cheap machines? o What is the advantage of pretending a large shared memory machine is a network of independent machines?

7 CS533 - Concepts of Operating Systems 7 Questions  Why is para-virtualization needed for high performance on architectures such as x86?  Why is it harder to virtualize CPUs with hardware specified page tables than software managed TLBs?  Why are tagged TLBs better for virualization?  Xen is not transparent to a guest OS. In what ways can the OS distinguish execution on Xen from execution on bare hardware?

8 CS533 - Concepts of Operating Systems 8 Questions  What is the difference between full virtualization and para virtualization?  Is Xen a micro-kernel?  Does Xen use colocation?  How does the Xen hypervisor enforce safety?

9 CS533 - Concepts of Operating Systems 9 Questions  Does Xen hide any critical characteristics of the real hardware?  Why are there three distinct “time” abstractions?  Why might a guest OS need machine addresses instead of just virtual physical addresses?  What hardware support would be nice to have?

10 CS533 - Concepts of Operating Systems 10 Questions  What do Exokernel and Disco have in common?  What do Exokernel and Xen have in common?  What is the difference between virtualization and secure multiplexing? o Do Xen or Disco do secure multiplexing? o Does Exokernel create virtual machines?  Is Exokernel a micro-kernel? o What abstractions does it support?

11 CS533 - Concepts of Operating Systems 11 Questions  How does Exokernel’s visible revocation relate to scheduler activations and strands in Spin? o How does it differ from Mach, L3/4, Disco, and Xen in this respect?  Does the Exokernel "paravirtualize" privileged instructions?  How are address translations and physical memory managed in the Exokernel?  How does PCT relate to LRPC? o What is the difference between synchronous and asynchronous PCT?

12 CS533 - Concepts of Operating Systems 12 Questions  How does Exokernel use “hardware support” to improve performance?  How are "software caches" used to improve performance?  How is "downloaded code" used to improve performance? o How does this relate to Sandboxing? o How does this relate to SPIN?


Download ppt "CS533 Concepts of Operating Systems Class 14 Virtualization and Exokernels."

Similar presentations


Ads by Google