SlideShare a Scribd company logo
1 of 37
OS Structure
with Research Paper Discussion
Presented by Vimukthi Wickramasinghe & Sameera Nelson
Overview
• Introduction to operating systems structure
• Layered OS structure
• Some alternative OS structures
• “Application Performance and Flexibility on Exokernel
Systems” paper discussion
Introduction to OS structure
An operating system is a complex beast.
Introduction to OS structure
• An OS needs to have a good structure.
• Traditional Unix OS which had a
monolithic structure - bad
• Monolithic Unix kernel makes it hard to
implement and maintain.
Layered OS structure
Problems with monolithic approach gave way to layered
approach.
Advantages Disadvantages
Simplicity of construction Difficulty in appropriately defining
the various layers
Ease of debugging Tend to be less efficient than
other types
Layers are independent of
Some Alternative OS Structures
• Microkernel approach
• Modular kernel approach
• Exokernel approach
Application Performance & Flexibility on
Exokernel Systems
*
• Principles of exokernels
• Xok, an exokernel for Intel x86-based computers
• XN - Xok storage system
• Performance comparisons
• Conclusion
• Q & A
Principles of Exokernels
• Separate protection and management
• Expose allocation
• Expose names
• Expose revocation
• Expose information
*
• Library operating systems.
• “Unix as a library”
• Can implement traditional OS abstraction.
• Most application programs can choose the LibOS.
• Unprivileged libraries – can be modified or replaced at will.
• Different libOSes can coexist on the top of same exokernel.
*
LibOSs
*
Microkernel Vs Exokernel
*
Xok
Xok is an exokernel for Intel x86-based computers.
• Can safely multiplex resources on x86 based systems.
• Allows efficient and powerful virtual memory abstractions to be built at the
application level.
• Wake up predicates can be injected to the kernel.
• Provides access control through hierarchical named capabilities.
• Xok’s 3 design techniques:
● Access control on all resources is uniform.
● Bind hardware together with software abstractions.
● Allow downloaded code where necessary.
*
Xok : Protected Abstractions
LibOSs can maintain invariants in shared abstractions,
• Software regions
• Hierarchically-named capabilities
• Wake-up predicates
• Robust critical sections
Three levels of trust in determining what optimizations can be used,
• Mutual trust
• Unidirectional trust
• Mutual distrust
*
Xok : Protected Sharing
• ExOS is Xok’s default library.
• Much code borrowed from OpenBSD.
*
EXOS
• Multiple library file systems (libFSes) in each libOS
• Four requirements to allow libFS file management
● Creating new file formats should not require any special privilege
● LibFSes should be able to safely share blocks at the raw disk block level
● Storage system should be efficient
● Storage system should facilitate cache sharing among distinct libFSes.
Stable Storage System
*
Stable Storage System
*
VS
• Access to stable storage at the level of disk blocks.
• Efficiently determine the access rights to a given disk block.
• Prevent a malicious user from claiming another user’s disk blocks as part of her
own files
• XN uses Untrusted Deterministic Functions(UDF)
• C-FFS (Co-locating fast file system) is ExOS’s default file system.
*
XN : Xok Storage System
*
XN : Usage
Type creation The libFS describes its types by storing templates.
LibFS persistence To ensure that libFS data is persistent across reboots, a libFS can register the root of its tree
in XN’s root catalogue.
Startup libFS loads its root(s) and any types it needs from the root catalogue into the buffer cache
registry.
Read 1) libFS creates entries in the registry.
2) libFS initiates a read request
Allocate A libFS selects blocks to allocate by reading XN’s map of free blocks.
Write A libFS writes dirty blocks to disk by passing the blocks to write to XN
Deallocate XN uses UDFs to check deallocate operations analogously to allocate operations.
• Performance Comparison
• Performance Evaluation
• Invisible Optimisation
• Performance Evaluation
• Cheetah HTTP Server
• Global Performance
• Exokernel : Advantages/ Drawbacks/ Lessons
• Conclusion
*
Topics Ahead ...
• Configuration, 200-MHz Intel Pentium Pro, 64MB of memory
• E2E application performance on Xok vs 4.4 BSD UNIX Systems
(FreeBSD & OpenBSD)
• Usage of C-FFS to Xok & OPenBSD
• Reported times are the minimum time of ten trials
• Xok/ExOS vs OpenBSD/C-FFS, vs OpenBSD, FreeBSD
*
Performance Comparison
*
Performance Comparison
Unmodified UNIX applications:
*
Better
Comparable
Performance Evaluation
Unmodified UNIX applications
● Applications perform comparably or significantly better at a
speed of up to 4x on Xok/ExOS than BSD UNIXes.
● Performance of 8/11 applications are comparable to BSD
Unixes.
● On 3 applications (pax, cp, diff) Xok/ExOS runs considerably
faster. *
Performance Evaluation
Modified Andrew Benchmark
• Difference in performance on MAB is less profound
● MAB stresses in fork(), expensive function in Xok
● Due to not sharing page tables
● Take 6 ms, freeBSD < 1 ms
• Xok leads in I/O intensive benchmark *
Invisible Optimisation
Xok/ExO
S
OpenBSD/C-
FFS
OpenBSD FreeBSD
TIme (s) 11.5 12.5 14.2 11.5
Modified UNIX applications
• Fast Simple Binary Emulation
● Emulator replaces system calls to procedure calls in to ExOS
• XCP : A zero touch file copy system
● Eliminate data touching by CPU, 3X faster
● Improvements - Prefetching, SUny reads/Writes, disk restructuring
• The Cheetah Http Server *
Performance Evaluation 2
Modified UNIX applications
• HTTP server - Finds the appropriate document, sends it.
• Developed upon extensible I/O library(XIO) for fast servers
• Customized FS & TCP implementation for the properties of HTTP
traffic.
• I/O centric nature of servers, OS based optimizations profitable.
*
Cheetah HTTP Server
• Performs 8X faster than the best UNIX HTTP server.
• Exokernel is well suited to building fast servers
*
Cheetah HTTP Server
• Merged File Cache and Retransmission Pool
● Avoid in memory data touching
● Data transmitted to client directly, from file cache.
• Knowledge-based Packet Merging
● Use knowledge of per-request state transitions to reduce number of I/O actions.
• HTML-based File Grouping
Co-locates files included in HTML by allocating them in adjacent disk blocks, HTTP
throughput improved by up to a factor of two
Cheetah HTTP Server, How ...
File
Cache
Client
• Performance Comparison
• Performance Evaluation
• Invisible Optimisation
• Cheetah HTTP Server
• Global Performance
• Exokernel : Advantages/ Drawbacks/ Lessons
• Conclusion
*
Topics Ahead ...
• Run multiple applications concurrently
• Exokernel Architecture is potentially weak
• Not extensively studied
• FreeBSD performs better than openBSD, due to small non-unified
buffer cache
• Challenge in Xok, Not to enforce global policies, but to deriving
information needed to decide enforcement. *
Global Performance
Exposing kernel data structures
• Can be accessed without system call overhead
• Flexibility
• libOSes can be modified and debugged than kernels
• Edit, compile, debug cycle is faster than “edit, compile, reboot, debug”
cycle of kernel.
• Performance *
Exokernel : Advantages
*
Exokernel : Advantages
The CPU Interface
• Combination of time slots
• Initiation/termination of upcalls
• Direct Yields has proven the value
• Global gang scheduling
• Robust critical section
Libraries are simple than kernels
• Interface design is not simple, multiple designs over several years
• Ease of creation/mixing libOSes lead to code messes, maintenance
issues
• Information loss, Implementing OS abstractions in application level
• Self-paging is difficult, paging can be caused by external entities
*
Exokernel : Drawbacks
• Fast apps not required good microbenchmark performance
• Inexpensive critical section
• User level page tables are complex
• Downloaded interrupt handlers are questionable
• Downloaded code is powerful
*
Exokernel : Lessons
Exokernel Architecture
• Goal: safe application control of all resources.
• How: by separating resource management from protection.
Results found promising
• Unmodified applications run same or 4x better.
• Customized applications can run up to 8x better.
• Global performance is similarly good like UNIX. *
Conclusion
*
Q & A ...
*
Thank You

More Related Content

What's hot

Monitoring MySQL with DTrace/SystemTap
Monitoring MySQL with DTrace/SystemTapMonitoring MySQL with DTrace/SystemTap
Monitoring MySQL with DTrace/SystemTapPadraig O'Sullivan
 
Architecture Of The Linux Kernel
Architecture Of The Linux KernelArchitecture Of The Linux Kernel
Architecture Of The Linux Kernelguest547d74
 
Linux Initialization Process (2)
Linux Initialization Process (2)Linux Initialization Process (2)
Linux Initialization Process (2)shimosawa
 
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)William Liang
 
Unix operating system
Unix operating systemUnix operating system
Unix operating systemmidhunjose4u
 
Linux container, namespaces & CGroup.
Linux container, namespaces & CGroup. Linux container, namespaces & CGroup.
Linux container, namespaces & CGroup. Neeraj Shrimali
 
Linux Memory Analysis with Volatility
Linux Memory Analysis with VolatilityLinux Memory Analysis with Volatility
Linux Memory Analysis with VolatilityAndrew Case
 
Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022Stefano Stabellini
 
Memory management in Linux kernel
Memory management in Linux kernelMemory management in Linux kernel
Memory management in Linux kernelVadim Nikitin
 
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...The Linux Foundation
 
Xen and the art of embedded virtualization (ELC 2017)
Xen and the art of embedded virtualization (ELC 2017)Xen and the art of embedded virtualization (ELC 2017)
Xen and the art of embedded virtualization (ELC 2017)Stefano Stabellini
 
User Interface Analysis and Design
User Interface Analysis and DesignUser Interface Analysis and Design
User Interface Analysis and Design Saqib Raza
 

What's hot (20)

Linux Systems: Getting started with setting up an Embedded platform
Linux Systems: Getting started with setting up an Embedded platformLinux Systems: Getting started with setting up an Embedded platform
Linux Systems: Getting started with setting up an Embedded platform
 
Monitoring MySQL with DTrace/SystemTap
Monitoring MySQL with DTrace/SystemTapMonitoring MySQL with DTrace/SystemTap
Monitoring MySQL with DTrace/SystemTap
 
Architecture Of The Linux Kernel
Architecture Of The Linux KernelArchitecture Of The Linux Kernel
Architecture Of The Linux Kernel
 
Linux Internals - Part I
Linux Internals - Part ILinux Internals - Part I
Linux Internals - Part I
 
Linux Kernel Overview
Linux Kernel OverviewLinux Kernel Overview
Linux Kernel Overview
 
Linux Initialization Process (2)
Linux Initialization Process (2)Linux Initialization Process (2)
Linux Initialization Process (2)
 
RPC Over DDS
RPC Over DDSRPC Over DDS
RPC Over DDS
 
Linux-Internals-and-Networking
Linux-Internals-and-NetworkingLinux-Internals-and-Networking
Linux-Internals-and-Networking
 
Linux Internals - Part II
Linux Internals - Part IILinux Internals - Part II
Linux Internals - Part II
 
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
 
Unix operating system
Unix operating systemUnix operating system
Unix operating system
 
Linux container, namespaces & CGroup.
Linux container, namespaces & CGroup. Linux container, namespaces & CGroup.
Linux container, namespaces & CGroup.
 
Linux device drivers
Linux device drivers Linux device drivers
Linux device drivers
 
Linux Memory Analysis with Volatility
Linux Memory Analysis with VolatilityLinux Memory Analysis with Volatility
Linux Memory Analysis with Volatility
 
Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022
 
Android Booting Scenarios
Android Booting ScenariosAndroid Booting Scenarios
Android Booting Scenarios
 
Memory management in Linux kernel
Memory management in Linux kernelMemory management in Linux kernel
Memory management in Linux kernel
 
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
 
Xen and the art of embedded virtualization (ELC 2017)
Xen and the art of embedded virtualization (ELC 2017)Xen and the art of embedded virtualization (ELC 2017)
Xen and the art of embedded virtualization (ELC 2017)
 
User Interface Analysis and Design
User Interface Analysis and DesignUser Interface Analysis and Design
User Interface Analysis and Design
 

Similar to Application Performance & Flexibility on Exokernel Systems paper review

Application Performance and Flexibility on ExoKernel Systems
Application Performance and Flexibility on ExoKernel SystemsApplication Performance and Flexibility on ExoKernel Systems
Application Performance and Flexibility on ExoKernel SystemsWSO2
 
Linux operating system
Linux operating systemLinux operating system
Linux operating systemITz_1
 
introduction.pdf
introduction.pdfintroduction.pdf
introduction.pdfxiso
 
Operating system components
Operating system componentsOperating system components
Operating system componentsSyed Zaid Irshad
 
Operating System Structure Part-II.pdf
Operating System Structure Part-II.pdfOperating System Structure Part-II.pdf
Operating System Structure Part-II.pdfHarika Pudugosula
 
Operating system lect3 Autosaved.pptx
Operating system lect3 Autosaved.pptxOperating system lect3 Autosaved.pptx
Operating system lect3 Autosaved.pptxAryanGour1
 
Regarding About Operating System Structure
Regarding About Operating System StructureRegarding About Operating System Structure
Regarding About Operating System Structuresankarkvdc
 
Get the Facts: Oracle's Unbreakable Enterprise Kernel
Get the Facts: Oracle's Unbreakable Enterprise KernelGet the Facts: Oracle's Unbreakable Enterprise Kernel
Get the Facts: Oracle's Unbreakable Enterprise KernelTerry Wang
 
An Updated Performance Comparison of Virtual Machines and Linux Containers
An Updated Performance Comparison of Virtual Machines and Linux ContainersAn Updated Performance Comparison of Virtual Machines and Linux Containers
An Updated Performance Comparison of Virtual Machines and Linux ContainersKento Aoyama
 
Linux操作系统01 简介
Linux操作系统01 简介Linux操作系统01 简介
Linux操作系统01 简介lclsg123
 
Présentation d'Unikernel
Présentation d'UnikernelPrésentation d'Unikernel
Présentation d'UnikernelProto204
 
F9: A Secure and Efficient Microkernel Built for Deeply Embedded Systems
F9: A Secure and Efficient Microkernel Built for Deeply Embedded SystemsF9: A Secure and Efficient Microkernel Built for Deeply Embedded Systems
F9: A Secure and Efficient Microkernel Built for Deeply Embedded SystemsNational Cheng Kung University
 
Central Iowa Linux Users Group: November Meeting -- Container showdown
Central Iowa Linux Users Group: November Meeting -- Container showdownCentral Iowa Linux Users Group: November Meeting -- Container showdown
Central Iowa Linux Users Group: November Meeting -- Container showdownAndrew Denner
 

Similar to Application Performance & Flexibility on Exokernel Systems paper review (20)

Application Performance and Flexibility on ExoKernel Systems
Application Performance and Flexibility on ExoKernel SystemsApplication Performance and Flexibility on ExoKernel Systems
Application Performance and Flexibility on ExoKernel Systems
 
Factored operating systems
Factored operating systemsFactored operating systems
Factored operating systems
 
Linux operating system
Linux operating systemLinux operating system
Linux operating system
 
UNIT I.pptx
UNIT I.pptxUNIT I.pptx
UNIT I.pptx
 
introduction.pdf
introduction.pdfintroduction.pdf
introduction.pdf
 
Operating system components
Operating system componentsOperating system components
Operating system components
 
Linux
LinuxLinux
Linux
 
Operating System Structure Part-II.pdf
Operating System Structure Part-II.pdfOperating System Structure Part-II.pdf
Operating System Structure Part-II.pdf
 
Operating system lect3 Autosaved.pptx
Operating system lect3 Autosaved.pptxOperating system lect3 Autosaved.pptx
Operating system lect3 Autosaved.pptx
 
Regarding About Operating System Structure
Regarding About Operating System StructureRegarding About Operating System Structure
Regarding About Operating System Structure
 
Get the Facts: Oracle's Unbreakable Enterprise Kernel
Get the Facts: Oracle's Unbreakable Enterprise KernelGet the Facts: Oracle's Unbreakable Enterprise Kernel
Get the Facts: Oracle's Unbreakable Enterprise Kernel
 
linux kernel overview 2013
linux kernel overview 2013linux kernel overview 2013
linux kernel overview 2013
 
Os
OsOs
Os
 
An Updated Performance Comparison of Virtual Machines and Linux Containers
An Updated Performance Comparison of Virtual Machines and Linux ContainersAn Updated Performance Comparison of Virtual Machines and Linux Containers
An Updated Performance Comparison of Virtual Machines and Linux Containers
 
Linux操作系统01 简介
Linux操作系统01 简介Linux操作系统01 简介
Linux操作系统01 简介
 
Présentation d'Unikernel
Présentation d'UnikernelPrésentation d'Unikernel
Présentation d'Unikernel
 
The Linux System
The Linux SystemThe Linux System
The Linux System
 
F9: A Secure and Efficient Microkernel Built for Deeply Embedded Systems
F9: A Secure and Efficient Microkernel Built for Deeply Embedded SystemsF9: A Secure and Efficient Microkernel Built for Deeply Embedded Systems
F9: A Secure and Efficient Microkernel Built for Deeply Embedded Systems
 
Central Iowa Linux Users Group: November Meeting -- Container showdown
Central Iowa Linux Users Group: November Meeting -- Container showdownCentral Iowa Linux Users Group: November Meeting -- Container showdown
Central Iowa Linux Users Group: November Meeting -- Container showdown
 
kerch04.ppt
kerch04.pptkerch04.ppt
kerch04.ppt
 

More from Vimukthi Wickramasinghe

Exploring Strategies for Training Deep Neural Networks paper review
Exploring Strategies for Training Deep Neural Networks paper reviewExploring Strategies for Training Deep Neural Networks paper review
Exploring Strategies for Training Deep Neural Networks paper reviewVimukthi Wickramasinghe
 
Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...
Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...
Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...Vimukthi Wickramasinghe
 
Improved Query Performance With Variant Indexes - review presentation
Improved Query Performance With Variant Indexes - review presentationImproved Query Performance With Variant Indexes - review presentation
Improved Query Performance With Variant Indexes - review presentationVimukthi Wickramasinghe
 
A parallel gpu version of the traveling salesman problem slides
A parallel gpu version of the traveling salesman problem slidesA parallel gpu version of the traveling salesman problem slides
A parallel gpu version of the traveling salesman problem slidesVimukthi Wickramasinghe
 

More from Vimukthi Wickramasinghe (8)

Beanstalkg
BeanstalkgBeanstalkg
Beanstalkg
 
pgdip-project-report-final-148245F
pgdip-project-report-final-148245Fpgdip-project-report-final-148245F
pgdip-project-report-final-148245F
 
Factored Operating Systems paper review
Factored Operating Systems paper reviewFactored Operating Systems paper review
Factored Operating Systems paper review
 
Exploring Strategies for Training Deep Neural Networks paper review
Exploring Strategies for Training Deep Neural Networks paper reviewExploring Strategies for Training Deep Neural Networks paper review
Exploring Strategies for Training Deep Neural Networks paper review
 
Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...
Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...
Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...
 
Improved Query Performance With Variant Indexes - review presentation
Improved Query Performance With Variant Indexes - review presentationImproved Query Performance With Variant Indexes - review presentation
Improved Query Performance With Variant Indexes - review presentation
 
A parallel gpu version of the traveling salesman problem slides
A parallel gpu version of the traveling salesman problem slidesA parallel gpu version of the traveling salesman problem slides
A parallel gpu version of the traveling salesman problem slides
 
Smart mrs bi project-presentation
Smart mrs bi project-presentationSmart mrs bi project-presentation
Smart mrs bi project-presentation
 

Recently uploaded

(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)Suman Mia
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Christo Ananth
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performancesivaprakash250
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Christo Ananth
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduitsrknatarajan
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 

Recently uploaded (20)

(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduits
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 

Application Performance & Flexibility on Exokernel Systems paper review

  • 1. OS Structure with Research Paper Discussion Presented by Vimukthi Wickramasinghe & Sameera Nelson
  • 2. Overview • Introduction to operating systems structure • Layered OS structure • Some alternative OS structures • “Application Performance and Flexibility on Exokernel Systems” paper discussion
  • 3. Introduction to OS structure An operating system is a complex beast.
  • 4. Introduction to OS structure • An OS needs to have a good structure. • Traditional Unix OS which had a monolithic structure - bad • Monolithic Unix kernel makes it hard to implement and maintain.
  • 5. Layered OS structure Problems with monolithic approach gave way to layered approach. Advantages Disadvantages Simplicity of construction Difficulty in appropriately defining the various layers Ease of debugging Tend to be less efficient than other types Layers are independent of
  • 6. Some Alternative OS Structures • Microkernel approach • Modular kernel approach • Exokernel approach
  • 7. Application Performance & Flexibility on Exokernel Systems * • Principles of exokernels • Xok, an exokernel for Intel x86-based computers • XN - Xok storage system • Performance comparisons • Conclusion • Q & A
  • 8. Principles of Exokernels • Separate protection and management • Expose allocation • Expose names • Expose revocation • Expose information *
  • 9. • Library operating systems. • “Unix as a library” • Can implement traditional OS abstraction. • Most application programs can choose the LibOS. • Unprivileged libraries – can be modified or replaced at will. • Different libOSes can coexist on the top of same exokernel. * LibOSs
  • 11. * Xok Xok is an exokernel for Intel x86-based computers. • Can safely multiplex resources on x86 based systems. • Allows efficient and powerful virtual memory abstractions to be built at the application level. • Wake up predicates can be injected to the kernel. • Provides access control through hierarchical named capabilities.
  • 12. • Xok’s 3 design techniques: ● Access control on all resources is uniform. ● Bind hardware together with software abstractions. ● Allow downloaded code where necessary. * Xok : Protected Abstractions
  • 13. LibOSs can maintain invariants in shared abstractions, • Software regions • Hierarchically-named capabilities • Wake-up predicates • Robust critical sections Three levels of trust in determining what optimizations can be used, • Mutual trust • Unidirectional trust • Mutual distrust * Xok : Protected Sharing
  • 14. • ExOS is Xok’s default library. • Much code borrowed from OpenBSD. * EXOS
  • 15. • Multiple library file systems (libFSes) in each libOS • Four requirements to allow libFS file management ● Creating new file formats should not require any special privilege ● LibFSes should be able to safely share blocks at the raw disk block level ● Storage system should be efficient ● Storage system should facilitate cache sharing among distinct libFSes. Stable Storage System *
  • 17. • Access to stable storage at the level of disk blocks. • Efficiently determine the access rights to a given disk block. • Prevent a malicious user from claiming another user’s disk blocks as part of her own files • XN uses Untrusted Deterministic Functions(UDF) • C-FFS (Co-locating fast file system) is ExOS’s default file system. * XN : Xok Storage System
  • 18. * XN : Usage Type creation The libFS describes its types by storing templates. LibFS persistence To ensure that libFS data is persistent across reboots, a libFS can register the root of its tree in XN’s root catalogue. Startup libFS loads its root(s) and any types it needs from the root catalogue into the buffer cache registry. Read 1) libFS creates entries in the registry. 2) libFS initiates a read request Allocate A libFS selects blocks to allocate by reading XN’s map of free blocks. Write A libFS writes dirty blocks to disk by passing the blocks to write to XN Deallocate XN uses UDFs to check deallocate operations analogously to allocate operations.
  • 19. • Performance Comparison • Performance Evaluation • Invisible Optimisation • Performance Evaluation • Cheetah HTTP Server • Global Performance • Exokernel : Advantages/ Drawbacks/ Lessons • Conclusion * Topics Ahead ...
  • 20. • Configuration, 200-MHz Intel Pentium Pro, 64MB of memory • E2E application performance on Xok vs 4.4 BSD UNIX Systems (FreeBSD & OpenBSD) • Usage of C-FFS to Xok & OPenBSD • Reported times are the minimum time of ten trials • Xok/ExOS vs OpenBSD/C-FFS, vs OpenBSD, FreeBSD * Performance Comparison
  • 23. Unmodified UNIX applications ● Applications perform comparably or significantly better at a speed of up to 4x on Xok/ExOS than BSD UNIXes. ● Performance of 8/11 applications are comparable to BSD Unixes. ● On 3 applications (pax, cp, diff) Xok/ExOS runs considerably faster. * Performance Evaluation
  • 24. Modified Andrew Benchmark • Difference in performance on MAB is less profound ● MAB stresses in fork(), expensive function in Xok ● Due to not sharing page tables ● Take 6 ms, freeBSD < 1 ms • Xok leads in I/O intensive benchmark * Invisible Optimisation Xok/ExO S OpenBSD/C- FFS OpenBSD FreeBSD TIme (s) 11.5 12.5 14.2 11.5
  • 25. Modified UNIX applications • Fast Simple Binary Emulation ● Emulator replaces system calls to procedure calls in to ExOS • XCP : A zero touch file copy system ● Eliminate data touching by CPU, 3X faster ● Improvements - Prefetching, SUny reads/Writes, disk restructuring • The Cheetah Http Server * Performance Evaluation 2
  • 26. Modified UNIX applications • HTTP server - Finds the appropriate document, sends it. • Developed upon extensible I/O library(XIO) for fast servers • Customized FS & TCP implementation for the properties of HTTP traffic. • I/O centric nature of servers, OS based optimizations profitable. * Cheetah HTTP Server
  • 27. • Performs 8X faster than the best UNIX HTTP server. • Exokernel is well suited to building fast servers * Cheetah HTTP Server
  • 28. • Merged File Cache and Retransmission Pool ● Avoid in memory data touching ● Data transmitted to client directly, from file cache. • Knowledge-based Packet Merging ● Use knowledge of per-request state transitions to reduce number of I/O actions. • HTML-based File Grouping Co-locates files included in HTML by allocating them in adjacent disk blocks, HTTP throughput improved by up to a factor of two Cheetah HTTP Server, How ... File Cache Client
  • 29. • Performance Comparison • Performance Evaluation • Invisible Optimisation • Cheetah HTTP Server • Global Performance • Exokernel : Advantages/ Drawbacks/ Lessons • Conclusion * Topics Ahead ...
  • 30. • Run multiple applications concurrently • Exokernel Architecture is potentially weak • Not extensively studied • FreeBSD performs better than openBSD, due to small non-unified buffer cache • Challenge in Xok, Not to enforce global policies, but to deriving information needed to decide enforcement. * Global Performance
  • 31. Exposing kernel data structures • Can be accessed without system call overhead • Flexibility • libOSes can be modified and debugged than kernels • Edit, compile, debug cycle is faster than “edit, compile, reboot, debug” cycle of kernel. • Performance * Exokernel : Advantages
  • 32. * Exokernel : Advantages The CPU Interface • Combination of time slots • Initiation/termination of upcalls • Direct Yields has proven the value • Global gang scheduling • Robust critical section Libraries are simple than kernels
  • 33. • Interface design is not simple, multiple designs over several years • Ease of creation/mixing libOSes lead to code messes, maintenance issues • Information loss, Implementing OS abstractions in application level • Self-paging is difficult, paging can be caused by external entities * Exokernel : Drawbacks
  • 34. • Fast apps not required good microbenchmark performance • Inexpensive critical section • User level page tables are complex • Downloaded interrupt handlers are questionable • Downloaded code is powerful * Exokernel : Lessons
  • 35. Exokernel Architecture • Goal: safe application control of all resources. • How: by separating resource management from protection. Results found promising • Unmodified applications run same or 4x better. • Customized applications can run up to 8x better. • Global performance is similarly good like UNIX. * Conclusion
  • 36. * Q & A ...