Exokernel An Operating System Architecture for ApplicationLevel Resource

  • Slides: 21
Download presentation
Exokernel: An Operating System Architecture for Application-Level Resource Management By Dawson R. Engler, M.

Exokernel: An Operating System Architecture for Application-Level Resource Management By Dawson R. Engler, M. Frans Kaashoek, James O’Toole Jr. Presented by Seth Goldstein EECS 582 – W 16 1

Outline • Traditional Operating System • Exokernel • Implmentation • Kernel Comparisons • Conclusion

Outline • Traditional Operating System • Exokernel • Implmentation • Kernel Comparisons • Conclusion EECS 582 – W 16 2

Outline • Traditional Operating System • Exokernel • Implmentation • Kernel Comparisons • Conclusion

Outline • Traditional Operating System • Exokernel • Implmentation • Kernel Comparisons • Conclusion EECS 582 – W 16 3

Traditional Operating System • Centralized resource management • All applications must use the same

Traditional Operating System • Centralized resource management • All applications must use the same abstractions • High-level abstractions • • Overly general Provide all features possible Implementation cannot be modified Limited functionality • Information is hidden EECS 582 – W 16 4

Outline • Traditional Operating System • Exokernel • Implmentation • Kernel Comparisons • Conclusion

Outline • Traditional Operating System • Exokernel • Implmentation • Kernel Comparisons • Conclusion EECS 582 – W 16 5

Exokernel and Library Operating Systems • Implement traditional abstractions at the user-level EECS 582

Exokernel and Library Operating Systems • Implement traditional abstractions at the user-level EECS 582 – W 16 6

Hypotheses • Exokernels can be very efficient • Low-level, secure multiplexing of hardware resources

Hypotheses • Exokernels can be very efficient • Low-level, secure multiplexing of hardware resources can be implemented efficiently • Traditional operating system abstractions can be implemented efficiently at application level • Applications can create special-purpose implementations of these abstractions EECS 582 – W 16 7

Library Operating Systems • Simpler • Specialized • Multiple can exist • Few Kernel

Library Operating Systems • Simpler • Specialized • Multiple can exist • Few Kernel crossings EECS 582 – W 16 8

Exokernel Design • Avoid resource management • Allow the request of specific resources •

Exokernel Design • Avoid resource management • Allow the request of specific resources • Visible resource revocation • Secure bindings • Downloading code • Abort protocol • Extendable EECS 582 – W 16 9

Outline • Traditional Operating System • Exokernel • Implmentation • Kernel Comparisons • Conclusion

Outline • Traditional Operating System • Exokernel • Implmentation • Kernel Comparisons • Conclusion EECS 582 – W 16 10

Aegis • Scheduling • Processor events Time to perform null procedure and system call

Aegis • Scheduling • Processor events Time to perform null procedure and system call (µs) • Exceptions • Protected Control Transfers Exception dispatch time (µs) EECS 582 – W 16 11

Ex. OS: Interprocess Communication (IPC) IPC time EECS 582 – W 16 12

Ex. OS: Interprocess Communication (IPC) IPC time EECS 582 – W 16 12

Ex. OS: Virtual Memory Virtual memory operations (µs) EECS 582 – W 16 13

Ex. OS: Virtual Memory Virtual memory operations (µs) EECS 582 – W 16 13

Ex. OS: Application-Specific Safe Handlers (ASH) Roundtrip Latency vs Number of Processes 60 -byte

Ex. OS: Application-Specific Safe Handlers (ASH) Roundtrip Latency vs Number of Processes 60 -byte roundtrip latency over Ethernet (µs) EECS 582 – W 16 14

Outline • Traditional Operating System • Exokernel • Implmentation • Kernel Comparisons • Conclusion

Outline • Traditional Operating System • Exokernel • Implmentation • Kernel Comparisons • Conclusion EECS 582 – W 16 15

Kernel Comparisons Exokernel Multikernel EECS 582 – W 16 16

Kernel Comparisons Exokernel Multikernel EECS 582 – W 16 16

Other Related Systems • Nano. Kernel • Virtual Machines EECS 582 – W 16

Other Related Systems • Nano. Kernel • Virtual Machines EECS 582 – W 16 17

Outline • Traditional Operating System • Exokernel • Implmentation • Kernel Comparisons • Conclusion

Outline • Traditional Operating System • Exokernel • Implmentation • Kernel Comparisons • Conclusion EECS 582 – W 16 18

Conclusion • Exokernels can be very efficient • The lower the level of a

Conclusion • Exokernels can be very efficient • The lower the level of a primitive the more efficient it is EECS 582 – W 16 19

Questions and Discussion EECS 582 – W 16 20

Questions and Discussion EECS 582 – W 16 20

References • http: //web. eecs. umich. edu/~mosharaf/Readings/Exokernel. pdf • http: //web. eecs. umich. edu/~mosharaf/Readings/Multikernel.

References • http: //web. eecs. umich. edu/~mosharaf/Readings/Exokernel. pdf • http: //web. eecs. umich. edu/~mosharaf/Readings/Multikernel. pdf • https: //www. cs. utexas. edu/~dahlin/Classes/Grad. OS/papers/kaashoek 97 sosp. pdf • https: //thelinuxdesk. wordpress. com/tag/monolithic-kernel/ • https: //en. wikipedia. org/wiki/Monolithic_kernel#/media/File: OS-structure 2. svg EECS 582 – W 16 21