SlideShare a Scribd company logo
1 of 34
Download to read offline
Operating Systems
Hot Topics
http://d3s.mff.cuni.cz

Martin Děcký
decky@d3s.mff.cuni.cz

CHARLES UNIVERSITY IN PRAGUE
faculty of mathematics and physics
faculty of mathematics and physics
Who Am I?
Passionate programmer and operating systems
enthusiast for many years
HelenOS developer since 2005
Computer science researcher
Distributed and component systems
Formal verification of operating system
correctness

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

2
Reliability
Robustness
Dependability

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

3
Reliability
Some monolithic operating systems from 1990s
infamous for their unreliability
Promise of microkernel multiserver systems to provide
fundamentally better reliability
Smart design, simple code
Not enough momentum for large “market share”

Time was good for the monolithic systems
Linus' Law (by Eric Raymond):
“Given enough eyeballs, all bugs are shallow.”
Jermář's Law:
“Given enough eyeball-years, all bugs are shallow.”

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

5
Robustness
Record uptimes are no longer considered cool
Kernel bugs happen and they need to be patched
New kernel features are sometimes needed
Promise of microkernel systems for a feature-complete kernel

Jon Corbet: “Linux has no longer any formal
regression tracking process.”
“How do we know the kernel is getting better over time?”
Promise of microkernel multiserver systems for run-time
component upgrade and replacement

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

7
Dependability
IEEE definition
“Dependability is a measurable and provable
degree of system's availability, reliability and its
maintenance support”

In other words
Formal verification of correctness and quality of
service with respect to predefined
specification/criteria

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

8
Dependability (2)
Practical ends
(Static) Driver Verifier
SLAM (Software, Language, Analysis and modeling)
model checker
WHQL

Verifying C Compiler (VCC)
Invariants, pre-, postconditions using theorem prover
Object ownership and concurrency properties in HyperV

Promise of microkernel multiserver systems for a
system-wide verification of correctness
Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

9
Dependability (3)

Semantic information
in source code

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

10
Dependability (3)

Architecture and
behavior specification
Semantic information
in source code

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

11
Dependability (3)

Architecture and
behavior specification
Semantic information
in source code
Architecture
models

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

12
Dependability (3)

Architecture and
behavior specification
Extra-functional
properties

Semantic information
in source code
Architecture
models

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

13
Dependability (3)
Compatibility checks
Compliance checks
Code generation

Compiler checks
Static analyzers
Abstract interpretation
Architecture and
behavior specification

Extra-functional
properties

Semantic information
in source code
Architecture
models

Performance modeling
Schedulability analysis

Model checking
Use case analysis

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

14
Component
Functional properties
implementation properties
Frama-C

Extra-functional properties
timing properties

Frama-C

pre/post-conditions checking
invariant checking

HelenOS sources

C99 with GNU extensions
stubs, skeletons,
connectors generation
run-type interface type checks

Architecture Description
ADL/CDL with extensions

interface properties checking
(correct sequencing,
live/deadlock freedom)

behavior compatibility
substituability

Behavior Description

{T|E|-}BP with preprocessing

compliance checking
extraction

extraction

Use cases

domain-limited English
Industry Driven Dependability
Secure computing
End-to-end digitally signed trusted code
From firmware (UEFI), over boot loaders, the kernel, kernel modules,
device drivers, to any user space privileged code

LLVM/clang as a new unifying compiler toolchain
FreeBSD, Mac OS X, HelenOS – on par with GCC
Linux, MINIX 3, others – solid support
Integration into IDEs, flexibility for verification tools
Detection of undefined behaviour (University of Illinois, UrbanaChampaign)
Arithmetic overflow checking (University of Utah)

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

16
Multicores
Manycores

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

17
[1]
Hardware Today
Moore's Law still applies
The number of transistors on integrated circuits
doubles every two years (or so)

The golden era is over
The raw single-core (sequential) performance does
not double every two years (or so)
Parallel algorithms and concurrency are more and
more important

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

19
Empowering Manycores
Single chip cloud computing
Individual microkernel running on each core
Multikernel distributed system
Core-to-core and node-to-node communication treated
as equal
Asynchronous messaging and state replication
Barrelfish (ETH Zürich, Microsoft Research Cambridge)

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

20
Barrelfish Architecture

[2]

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

21
[3]
Empowering Manycores (2)
Non-Symmetric Multiprocessing, Retargetable
CPUs/hardware
Utilizing a massive number of specialized coprocessors
GPUs, big.LITTLE
Transparency vs. utilization

Dynamically reprogramming CPU cores on FPGAs
ReconOS (University of Paderborn)

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

23
[4]
Empowering Manycores (3)
Hardware Transactional Memory
Intel Haswell microarchitecture
Extension to the instruction set

How does it relate to synchronization problems
Paul McKenney: Lock elision and HTM

How does it relate to synchronization methods
Paul McKenney: Read-Copy-Update using HTM

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

25
Big Data

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

26
[5]
Big Data File Systems
Integration of previously distinct components
Volume management + redundancy (RAID) + silent data
corruption detection + file API + transactions API
Copy-on-write design, log-structured
ZFS (Oracle)
btrfs (Oracle, Red Hat et al.)
Loris (VU Amsterdam)
HAMMER2 (Matthew Dillion)

Fault-tolerant, seamlessly replicated distributed
file systems
Ceph (University of California, Santa Cruz)
HekaFS (community driven, venture capital)

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

28
Bleeding Edge
Microkernel Ideas

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

29
HelenOS In-Progress Features
Split of mechanism and policy design principle
User space driven system-wide scheduler
User space driven SMP management

Rethinking the file system paradigms
Using capabilities for real-life user stories
If you cannot see it, you cannot access it

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

30
HelenOS Research Projects
New RCU algorithms
AP-RCU (highly portable, decently scalable PaR)
AH-RCU (highly scalable, microkernel-friendly)

Implicitly shared resources management
De-duplicated caching, future usage prediction
(read-ahead), resource pressure evaluation (outof-memory conditions)

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

31
Q&A

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

32
www.helenos.org

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

33
References
[1] Intel Press Kit
[2] http://www.infoq.com/resource/news/2011/07/Barrelfish/en/resources/barrelfish.png
[3] http://obrazki.elektroda.pl/9238922100_1347961664.jpg
[4] http://static.feber.se/article_images/22/66/91/226691_980.jpg
[5] http://www.asigra.com/sites/default/files/images/what-is-big-data-large.jpg

Martin Děcký, FOSDEM 2013, February 2nd 2013

Operating Systems Hot Topics

34

More Related Content

Similar to FOSDEM 2013: Operating Systems Hot Topics

20130524 hybrid worldsmultirobot_cignonifedi
20130524 hybrid worldsmultirobot_cignonifedi20130524 hybrid worldsmultirobot_cignonifedi
20130524 hybrid worldsmultirobot_cignonifedi
acignoni
 
1Lesson 5.3UML Deployment DiagramsLesson 5.2Distribu.docx
1Lesson 5.3UML Deployment DiagramsLesson 5.2Distribu.docx1Lesson 5.3UML Deployment DiagramsLesson 5.2Distribu.docx
1Lesson 5.3UML Deployment DiagramsLesson 5.2Distribu.docx
felicidaddinwoodie
 
onur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptx
onur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptxonur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptx
onur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptx
sivasubramanianManic2
 
Shared Editing on the Web: A Classification of Developer Support Frameworks
Shared Editing on the Web: A Classification of Developer Support FrameworksShared Editing on the Web: A Classification of Developer Support Frameworks
Shared Editing on the Web: A Classification of Developer Support Frameworks
IstvanKoren
 
An Overview Of The Singularity Project
An  Overview Of The  Singularity  ProjectAn  Overview Of The  Singularity  Project
An Overview Of The Singularity Project
alanocu
 

Similar to FOSDEM 2013: Operating Systems Hot Topics (20)

Secrets of Enterprise Data Mining 201310
Secrets of Enterprise Data Mining 201310Secrets of Enterprise Data Mining 201310
Secrets of Enterprise Data Mining 201310
 
Software Architecture: introduction to the abstraction
Software Architecture: introduction to the abstractionSoftware Architecture: introduction to the abstraction
Software Architecture: introduction to the abstraction
 
Software architecture introduction to the abstraction gssi_nov2013
Software architecture introduction to the abstraction gssi_nov2013Software architecture introduction to the abstraction gssi_nov2013
Software architecture introduction to the abstraction gssi_nov2013
 
Mining Gnome Data
Mining Gnome DataMining Gnome Data
Mining Gnome Data
 
SolidIT services (english)
SolidIT services (english)SolidIT services (english)
SolidIT services (english)
 
20100217 sopes overview for v3
20100217 sopes overview for v320100217 sopes overview for v3
20100217 sopes overview for v3
 
jan28EAI.ppt
jan28EAI.pptjan28EAI.ppt
jan28EAI.ppt
 
TUW- 184.742 Emerging Dynamic Distributed Systems and Challenges for Advanced...
TUW- 184.742 Emerging Dynamic Distributed Systems and Challenges for Advanced...TUW- 184.742 Emerging Dynamic Distributed Systems and Challenges for Advanced...
TUW- 184.742 Emerging Dynamic Distributed Systems and Challenges for Advanced...
 
20130524 hybrid worldsmultirobot_cignonifedi
20130524 hybrid worldsmultirobot_cignonifedi20130524 hybrid worldsmultirobot_cignonifedi
20130524 hybrid worldsmultirobot_cignonifedi
 
Software Architecture: Introduction to the abstraction (May 2014_Split)
Software Architecture: Introduction to the abstraction (May 2014_Split)Software Architecture: Introduction to the abstraction (May 2014_Split)
Software Architecture: Introduction to the abstraction (May 2014_Split)
 
1Lesson 5.3UML Deployment DiagramsLesson 5.2Distribu.docx
1Lesson 5.3UML Deployment DiagramsLesson 5.2Distribu.docx1Lesson 5.3UML Deployment DiagramsLesson 5.2Distribu.docx
1Lesson 5.3UML Deployment DiagramsLesson 5.2Distribu.docx
 
onur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptx
onur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptxonur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptx
onur-comparch-fall2018-lecture3a-whycomparch-afterlecture.pptx
 
What you need to know about an IT experience - 2012-11-29 - universite-lille
What you need to know about an IT experience - 2012-11-29  - universite-lilleWhat you need to know about an IT experience - 2012-11-29  - universite-lille
What you need to know about an IT experience - 2012-11-29 - universite-lille
 
Browser-Based Collaborative Modeling in Near Real-Time
Browser-Based Collaborative Modeling in Near Real-TimeBrowser-Based Collaborative Modeling in Near Real-Time
Browser-Based Collaborative Modeling in Near Real-Time
 
Shared Editing on the Web: A Classification of Developer Support Frameworks
Shared Editing on the Web: A Classification of Developer Support FrameworksShared Editing on the Web: A Classification of Developer Support Frameworks
Shared Editing on the Web: A Classification of Developer Support Frameworks
 
Emerging database technology multimedia database
Emerging database technology   multimedia databaseEmerging database technology   multimedia database
Emerging database technology multimedia database
 
01 - Introduction to Distributed Systems
01 - Introduction to Distributed Systems01 - Introduction to Distributed Systems
01 - Introduction to Distributed Systems
 
An Overview Of The Singularity Project
An  Overview Of The  Singularity  ProjectAn  Overview Of The  Singularity  Project
An Overview Of The Singularity Project
 
Cloud Operations and Analytics: Improving Distributed Systems Reliability usi...
Cloud Operations and Analytics: Improving Distributed Systems Reliability usi...Cloud Operations and Analytics: Improving Distributed Systems Reliability usi...
Cloud Operations and Analytics: Improving Distributed Systems Reliability usi...
 
Grid.pdf
Grid.pdfGrid.pdf
Grid.pdf
 

More from Martin Děcký

More from Martin Děcký (9)

Formal Verification of Functional Code
Formal Verification of Functional CodeFormal Verification of Functional Code
Formal Verification of Functional Code
 
IPC in Microkernel Systems, Capabilities
IPC in Microkernel Systems, CapabilitiesIPC in Microkernel Systems, Capabilities
IPC in Microkernel Systems, Capabilities
 
Unikernels, Multikernels, Virtual Machine-based Kernels
Unikernels, Multikernels, Virtual Machine-based KernelsUnikernels, Multikernels, Virtual Machine-based Kernels
Unikernels, Multikernels, Virtual Machine-based Kernels
 
Code Instrumentation, Dynamic Tracing
Code Instrumentation, Dynamic TracingCode Instrumentation, Dynamic Tracing
Code Instrumentation, Dynamic Tracing
 
Nízkoúrovňové programování
Nízkoúrovňové programováníNízkoúrovňové programování
Nízkoúrovňové programování
 
Porting HelenOS to RISC-V
Porting HelenOS to RISC-VPorting HelenOS to RISC-V
Porting HelenOS to RISC-V
 
What Could Microkernels Learn from Monolithic Kernels (and Vice Versa)
What Could Microkernels Learn from Monolithic Kernels (and Vice Versa)What Could Microkernels Learn from Monolithic Kernels (and Vice Versa)
What Could Microkernels Learn from Monolithic Kernels (and Vice Versa)
 
FOSDEM 2014: Read-Copy-Update for HelenOS
FOSDEM 2014: Read-Copy-Update for HelenOSFOSDEM 2014: Read-Copy-Update for HelenOS
FOSDEM 2014: Read-Copy-Update for HelenOS
 
HelenOS: State of the Union 2012
HelenOS: State of the Union 2012HelenOS: State of the Union 2012
HelenOS: State of the Union 2012
 

Recently uploaded

%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
masabamasaba
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 

Recently uploaded (20)

%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 

FOSDEM 2013: Operating Systems Hot Topics

  • 1. Operating Systems Hot Topics http://d3s.mff.cuni.cz Martin Děcký decky@d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics faculty of mathematics and physics
  • 2. Who Am I? Passionate programmer and operating systems enthusiast for many years HelenOS developer since 2005 Computer science researcher Distributed and component systems Formal verification of operating system correctness Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 2
  • 3. Reliability Robustness Dependability Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 3
  • 4.
  • 5. Reliability Some monolithic operating systems from 1990s infamous for their unreliability Promise of microkernel multiserver systems to provide fundamentally better reliability Smart design, simple code Not enough momentum for large “market share” Time was good for the monolithic systems Linus' Law (by Eric Raymond): “Given enough eyeballs, all bugs are shallow.” Jermář's Law: “Given enough eyeball-years, all bugs are shallow.” Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 5
  • 6.
  • 7. Robustness Record uptimes are no longer considered cool Kernel bugs happen and they need to be patched New kernel features are sometimes needed Promise of microkernel systems for a feature-complete kernel Jon Corbet: “Linux has no longer any formal regression tracking process.” “How do we know the kernel is getting better over time?” Promise of microkernel multiserver systems for run-time component upgrade and replacement Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 7
  • 8. Dependability IEEE definition “Dependability is a measurable and provable degree of system's availability, reliability and its maintenance support” In other words Formal verification of correctness and quality of service with respect to predefined specification/criteria Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 8
  • 9. Dependability (2) Practical ends (Static) Driver Verifier SLAM (Software, Language, Analysis and modeling) model checker WHQL Verifying C Compiler (VCC) Invariants, pre-, postconditions using theorem prover Object ownership and concurrency properties in HyperV Promise of microkernel multiserver systems for a system-wide verification of correctness Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 9
  • 10. Dependability (3) Semantic information in source code Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 10
  • 11. Dependability (3) Architecture and behavior specification Semantic information in source code Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 11
  • 12. Dependability (3) Architecture and behavior specification Semantic information in source code Architecture models Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 12
  • 13. Dependability (3) Architecture and behavior specification Extra-functional properties Semantic information in source code Architecture models Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 13
  • 14. Dependability (3) Compatibility checks Compliance checks Code generation Compiler checks Static analyzers Abstract interpretation Architecture and behavior specification Extra-functional properties Semantic information in source code Architecture models Performance modeling Schedulability analysis Model checking Use case analysis Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 14
  • 15. Component Functional properties implementation properties Frama-C Extra-functional properties timing properties Frama-C pre/post-conditions checking invariant checking HelenOS sources C99 with GNU extensions stubs, skeletons, connectors generation run-type interface type checks Architecture Description ADL/CDL with extensions interface properties checking (correct sequencing, live/deadlock freedom) behavior compatibility substituability Behavior Description {T|E|-}BP with preprocessing compliance checking extraction extraction Use cases domain-limited English
  • 16. Industry Driven Dependability Secure computing End-to-end digitally signed trusted code From firmware (UEFI), over boot loaders, the kernel, kernel modules, device drivers, to any user space privileged code LLVM/clang as a new unifying compiler toolchain FreeBSD, Mac OS X, HelenOS – on par with GCC Linux, MINIX 3, others – solid support Integration into IDEs, flexibility for verification tools Detection of undefined behaviour (University of Illinois, UrbanaChampaign) Arithmetic overflow checking (University of Utah) Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 16
  • 17. Multicores Manycores Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 17
  • 18. [1]
  • 19. Hardware Today Moore's Law still applies The number of transistors on integrated circuits doubles every two years (or so) The golden era is over The raw single-core (sequential) performance does not double every two years (or so) Parallel algorithms and concurrency are more and more important Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 19
  • 20. Empowering Manycores Single chip cloud computing Individual microkernel running on each core Multikernel distributed system Core-to-core and node-to-node communication treated as equal Asynchronous messaging and state replication Barrelfish (ETH Zürich, Microsoft Research Cambridge) Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 20
  • 21. Barrelfish Architecture [2] Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 21
  • 22. [3]
  • 23. Empowering Manycores (2) Non-Symmetric Multiprocessing, Retargetable CPUs/hardware Utilizing a massive number of specialized coprocessors GPUs, big.LITTLE Transparency vs. utilization Dynamically reprogramming CPU cores on FPGAs ReconOS (University of Paderborn) Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 23
  • 24. [4]
  • 25. Empowering Manycores (3) Hardware Transactional Memory Intel Haswell microarchitecture Extension to the instruction set How does it relate to synchronization problems Paul McKenney: Lock elision and HTM How does it relate to synchronization methods Paul McKenney: Read-Copy-Update using HTM Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 25
  • 26. Big Data Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 26
  • 27. [5]
  • 28. Big Data File Systems Integration of previously distinct components Volume management + redundancy (RAID) + silent data corruption detection + file API + transactions API Copy-on-write design, log-structured ZFS (Oracle) btrfs (Oracle, Red Hat et al.) Loris (VU Amsterdam) HAMMER2 (Matthew Dillion) Fault-tolerant, seamlessly replicated distributed file systems Ceph (University of California, Santa Cruz) HekaFS (community driven, venture capital) Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 28
  • 29. Bleeding Edge Microkernel Ideas Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 29
  • 30. HelenOS In-Progress Features Split of mechanism and policy design principle User space driven system-wide scheduler User space driven SMP management Rethinking the file system paradigms Using capabilities for real-life user stories If you cannot see it, you cannot access it Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 30
  • 31. HelenOS Research Projects New RCU algorithms AP-RCU (highly portable, decently scalable PaR) AH-RCU (highly scalable, microkernel-friendly) Implicitly shared resources management De-duplicated caching, future usage prediction (read-ahead), resource pressure evaluation (outof-memory conditions) Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 31
  • 32. Q&A Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 32
  • 33. www.helenos.org Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 33
  • 34. References [1] Intel Press Kit [2] http://www.infoq.com/resource/news/2011/07/Barrelfish/en/resources/barrelfish.png [3] http://obrazki.elektroda.pl/9238922100_1347961664.jpg [4] http://static.feber.se/article_images/22/66/91/226691_980.jpg [5] http://www.asigra.com/sites/default/files/images/what-is-big-data-large.jpg Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 34