Mosharaf Chowdhury EECS 582 W16 1 Stats on the 18 Reviewers EECS 582 W16 2 Stats on the 21 Papers Weve Reviewed EECS 582 W16 3 Stats on the 21 Papers Weve Reviewed EECS 582 W16 ID: 551109
Download Presentation The PPT/PDF document "EECS 582 Midterm Review" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
EECS 582 Midterm Review
Mosharaf Chowdhury
EECS 582 – W16
1Slide2
Stats on the 18 Reviewers
EECS 582 – W16
2Slide3
Stats on the 21 Papers
We’ve Reviewed
EECS 582 – W16
3Slide4
Stats on the 21 Papers We’ve Reviewed
EECS 582 – W16
4Slide5
Classics
EECS 582 – W16
5Slide6
Classics
UNIX(Arguably) the first commodity OS
Simplicity is king when you must support diverse applicationsEverything is a file!
System R
The first relational database implementation
Design iteratively and be ready to throw away
Find the
“right” metric and do everything when you must deliver performance (i.e., specialization instead of generalization)
EECS 582 – W16
6Slide7
Storage and File Systems
EECS 582 – W16
7Slide8
Storage and File Systems
RAIDIndustry standard for durable, high-performance storage
Parallelize for performance and fault-toleranceFFSImproved UNIX’s default file systems
Be aware of and exploit hardware characteristics
JFS
Provides crash recovery to file systems
Log what you’ll do before you do it!
EECS 582 – W16
8Slide9
Kernels
EECS 582 – W16
9Slide10
Kernels
ExokernelMinimal kernel instead of a full-fledged one
End-to-end argument: only provide services that everyone needs to balance between specialization (performance) and generalization (applicability)Multikernel
Make communication explicit when you must communicate
Shared-nothing design
EECS 582 – W16
10Slide11
Kernels
IXSeparate control and data planes to provide I/O performance
Kernels aren’t inherently slow; it’s about how we do thingsCommuter
Interfaces dictate scalable design
EECS 582 – W16
11Slide12
Virtual Memory and RPC
EECS 582 – W16
12Slide13
Virtual Memory and RPC
Memory CoherenceShared-everything design requires frequent updates
Keeping things coherent is expensive but provides simple programming modelsRPCMakes distributed nature more explicit while keeping the same programming model as a non-distributed system
No shared memory
EECS 582 – W16
13Slide14
Concurrency and Scheduling
EECS 582 – W16
14Slide15
Concurrency and Scheduling
SEDA and FibersThread- and event-based programming models both have their advantages and drawbacks (ease of programming vs. scalability and performance)
It is possible to find a balance between the twoLottery and Stride Scheduling
Randomized and deterministic proportional scheduling
The key challenge is in determining the proportions (weights)
EECS 582 – W16
15Slide16
Reliability and Fault Tolerance
EECS 582 – W16
16Slide17
Reliability and Fault Tolerance
Eraser
Detecting bugs, specially the non-deterministic ones, is hardProvide a “tight” coverage to allow manual inspection
Nooks
Failure is inevitable
Isolate it and start again
EECS 582 – W16
17Slide18
Virtual Machines
EECS 582 – W16
18Slide19
Virtual Machines
Xen and ESX
Virtualization comes in many shapes and forms (e.g., full virtualization vs paravirtualization)Choose the one that fits your requirements (e.g., performance, consolidation, deployability)
Fit for your workload
Live Migration
Keep things running until you must stop
ReVirt
Quis custodiet ipsos
custodes
? (Roman poet Juvenal
in
Satires
)
It’s turtles all the
way down!
EECS 582 – W16
19