Upload
martin-decky
View
322
Download
1
Tags:
Embed Size (px)
DESCRIPTION
Overview of selected hot topics in the operating systems domain, as presented at FOSDEM 2013.
Citation preview
Martin Děcký
http://d3s.mff.cuni.cz
CHARLES UNIVERSITY IN PRAGUE
faculty of mathematics and physicsfaculty of mathematics and physics
Operating SystemsHot Topics
Operating SystemsHot Topics
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 2
Who Am I?Who Am I?
Passionate programmer and operating systems enthusiast for many yearsHelenOS developer since 2005Computer science researcher
Distributed and component systemsFormal verification of operating system correctness
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 3
ReliabilityRobustness
Dependability
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 5
ReliabilityReliability
Some monolithic operating systems from 1990s infamous for their unreliability
Promise of microkernel multiserver systems to provide fundamentally better reliability
Smart design, simple codeNot enough momentum for large “market share”
Time was good for the monolithic systemsLinus' 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 7
RobustnessRobustness
Record uptimes are no longer considered coolKernel bugs happen and they need to be patchedNew 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 8
DependabilityDependability
IEEE definition“Dependability is a measurable and provable degree of system's availability, reliability and its maintenance support”
In other wordsFormal 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 9
Dependability (2)Dependability (2)
Practical ends(Static) Driver Verifier
SLAM (Software, Language, Analysis and modeling) model checkerWHQL
Verifying C Compiler (VCC)Invariants, pre-, postconditions using theorem proverObject ownership and concurrency properties in Hyper-V
Promise of microkernel multiserver systems for a system-wide verification of correctness
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 10
Dependability (3)Dependability (3)
Semantic informationin source code
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 11
Dependability (3)Dependability (3)
Semantic informationin source code
Architecture andbehavior specification
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 12
Dependability (3)Dependability (3)
Semantic informationin source code
Architecture andbehavior specification
Architecturemodels
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 13
Dependability (3)Dependability (3)
Semantic informationin source code
Architecture andbehavior specification
Architecturemodels
Extra-functionalproperties
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 14
Dependability (3)Dependability (3)
Semantic informationin source code
Architecture andbehavior specification
Architecturemodels
Extra-functionalproperties
Compiler checksStatic analyzers
Abstract interpretation
Compatibility checksCompliance checks
Code generation
Model checkingUse case analysis
Performance modelingSchedulability analysis
HelenOS sourcesC99 with GNU extensions
Architecture DescriptionADL/CDL with extensions
stubs, skeletons,connectors generation
run-type interface type checks
Behavior Description{T|E|-}BP with preprocessing
behavior compatibilitysubstituability
interface properties checking(correct sequencing,
live/deadlock freedom)
Use casesdomain-limited English
compliance checkingextractionextraction
Componentimplementation properties
Frama-C
pre/post-conditions checkinginvariant checking
Functional propertiesFrama-C
Extra-functional propertiestiming properties
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 16
Industry Driven DependabilityIndustry Driven Dependability
Secure computingEnd-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 toolchainFreeBSD, Mac OS X, HelenOS – on par with GCCLinux, MINIX 3, others – solid supportIntegration into IDEs, flexibility for verification tools
Detection of undefined behaviour (University of Illinois, Urbana-Champaign)Arithmetic overflow checking (University of Utah)
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 17
MulticoresManycores
[1]
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 19
Hardware TodayHardware Today
Moore's Law still appliesThe number of transistors on integrated circuits doubles every two years (or so)
The golden era is overThe 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 20
Empowering ManycoresEmpowering Manycores
Single chip cloud computingIndividual microkernel running on each core
Multikernel distributed systemCore-to-core and node-to-node communication treated as equalAsynchronous messaging and state replicationBarrelfish (ETH Zürich, Microsoft Research Cambridge)
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 21
Barrelfish ArchitectureBarrelfish Architecture
[2]
[3]
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 23
Empowering Manycores (2)Empowering Manycores (2)
Non-Symmetric Multiprocessing, Retargetable CPUs/hardware
Utilizing a massive number of specialized co-processors
GPUs, big.LITTLETransparency vs. utilization
Dynamically reprogramming CPU cores on FPGAsReconOS (University of Paderborn)
[4]
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 25
Empowering Manycores (3)Empowering Manycores (3)
Hardware Transactional MemoryIntel Haswell microarchitecture
Extension to the instruction setHow does it relate to synchronization problems
Paul McKenney: Lock elision and HTMHow 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 26
Big Data
[5]
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 28
Big Data File SystemsBig Data File Systems
Integration of previously distinct componentsVolume management + redundancy (RAID) + silent data corruption detection + file API + transactions API
Copy-on-write design, log-structuredZFS (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 29
Bleeding Edge Microkernel Ideas
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 30
HelenOS In-Progress FeaturesHelenOS In-Progress Features
Split of mechanism and policy design principleUser space driven system-wide schedulerUser space driven SMP management
Rethinking the file system paradigmsUsing 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 31
HelenOS Research ProjectsHelenOS Research Projects
New RCU algorithmsAP-RCU (highly portable, decently scalable PaR)AH-RCU (highly scalable, microkernel-friendly)
Implicitly shared resources managementDe-duplicated caching, future usage prediction (read-ahead), resource pressure evaluation (out-of-memory conditions)
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 32
Q&A
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 33
www.helenos.org
Martin Děcký, FOSDEM 2013, February 2nd 2013 Operating Systems Hot Topics 34
ReferencesReferences
[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