EECS 582

advertisement
http://web.eecs.umich.edu/~prabal/teaching/eecs582/
EECS 582: Advanced Operating Systems (Winter
2015)
[Administrivia] [Description] [Syllabus] [Prerequisites] [Policies] [Grading] [Resources]
Announcements

04/13/2015: Project Papers due on HotCRP by 1:30pm on 4/24/15.
→ Make sure your paper follows the scientific method (read: 1, 2, 3), i.e. that it:
o clearly states its hypothesis,
o presents compelling data with great captions,
o employs statistical rigor in its data analysis,
o and is generally readable.
→ Demonstrating mastery of the scientific method is critical for successfully completing this class.
→ How will your paper be graded? Here's what I'm looking for in a 582-level project paper.







03/19/2015: Project Proposals due on HotCRP by 1:30pm.
03/09/2015: Project proposals due.
03/08/2015: Paper readings updated for through Apr 10.
02/02/2015: Paper readings updated for through Feb 27.
02/02/2015: No Class due to UM weather emergency cancellation.
01/13/2015: Additional (short) reading for 1/14 added.
01/07/2015: Welcome to EECS 582!
Course Administrivia
Course:
EECS 582, Winter 2015, 4 Units, CN: 30340
Instructor:
Prabal Dutta
Homepage:
http://web.eecs.umich.edu/~prabal/teaching/eecs582
Paper Summaries:
TBD
Meetings:
2166 DOW, M/W: 1:30 PM - 3:00 PM (Lecture/Discussion)
2166 DOW, Fri: 1:30 PM - 2:30 PM (Tutorials/Projects/Makeup)
Office Hours:
Dutta: 4773 BBB, TBD
Course Description
This course will discuss advanced topics and research issues in computer and operating systems. Topics
will be drawn from a variety of operating systems-related areas such as distributed systems and languages,
networking, security, and protection, real-time and embedded systems, modeling and analysis, etc.
We will take a broad view of systems research and consider common issues that emerge across operating
systems, database systems, networked systems, distributed systems, mobile systems, and embedded
systems.
The design of computer systems -- whether building-size or hand-held, file system or database -- faces
many common challenges and pitfalls. Fortunately, many of the principles and practices are common as
well. This class will focus on identifying and understanding the enduring principles and practices in
computer systems design and implementation, and will prepare students to carry our substantial
independent systems research projects.
New this term: To ground the enduring principles of computer systems design into contemporary
problems of the day, we will focus, as a class, on the emerging Internet of Things (IoT) and study the
systems issues at play. Unlike typical offerings of the course, the goal of the group research projects this
term will be to explore a set of interlocking problems across the mobile-embedded-cloud computing
landscape. Contemporary IoT devices--like Fitbit and Pebble--are supported by a large corpus of systems
software running on embedded computers, on smartphones, and in datacenters. We will study how these
systems work, their current drawbacks, opportunities to improve them, and new directions to move.
Syllabus (Tentative)
Week Date
Readings / Discussion Topics / Tutorials
Lead
Classic Systems, Timeless Principles, and Contemporary Problems
1
1. Introduction to EECS 582
Jan 7 2. Swarm at the edge of the Cloud (slides)
3. Research and Writing (slides)
prabal
The UNIX Time-Sharing System,
Dennis M. Ritchie and Ken Thompson,
Jan 9
Communications of the ACM, Vol. 17, No. 7, Jul 1974, pp. 365-375. (no
review)
prabal
A Protocol for Packet Network Intercommunication,
Vinton G. Cerf and Robert E. Kahn,
Jan 12
IEEE Trans on Comm. Vol. 22, No. 5, May 1974, pp. 637-648. (no
review)
prabal
Enabling the Internet of Things,
Roy Want, Bill N. Schilit, and Scott Jenson
IEEE Computer, Jan 2015. (no review)
2
Jan 14
prabal
Research Directions for the Internet of Things,
John A. Stankovic,
IEEE Internet of Things Journal, Vol. 1, No. 1, Feb 2014, pp. 3-9. (no
review)
Request for Proposal: Open Web of Things,
Vint Cerf, et al.,
Published online. (no review)
Bluetooth LE Finds Its Niche,
Roy Want, Bill Schilit, and Dominik Laskowski
IEEE Pervasive Computing, Oct-Dec 2013. (no review)
Jan 16
nklugman
Bluetooth LE 4.0 and 4.1 (BLE),
Noah Klugman and Josh Adkins,
Lab 11 Lunch Presentation, Apr. 23, 2014. (no review)
Jan 19 No Class -- MLK Day
IP is Dead, Long Live IP for Wireless Sensor Networks,
Jonathan Hui and David Culler,
Sensys'08, 2008. (review due 1/20 @ 1:30pm → 1/27)
3
Jan 21
The Internet of Things has a Gateway Problem,
T. Zachariah, N. Klugman, B. Campbell, J. Adkins, N. Jackson, and P.
Dutta,
HotMobile'15, 2015. (review due 1/20 @ 1:30pm → 1/27)
bradjc
tzachari
Jan 23 No Class
A History and Evolution of System R,
Donald D. Chamberlin, et al.,
Jan 26
prabal
Communications of the ACM, Vol. 24, No. 10, Oct 1981, pp. 632-646. (no
review)
Architecture of a Database System,
J.M. Hellerstein, M. Stonebraker, J. Hamilton,
Foundations and Trends in Databases, Vol. 1, No. 2., 2007. (no review)
Jan 28
prabal
The Design of an Acquisitional Query Processor for Sensor Networks,
S. Madden, M. Franklin, J. Hellerstein, and W. Hong,
SIGMOD, 2003. (no review)
4
BLE Security Overview [ pptx | pdf | 6up ]
Bluetooth: With Low Energy Comes Low Security,
Mike Ryan,
Jan 30 USENIX WOOT, 2013. (background reading; no review)
Bypassing Passkey Authentication in Bluetooth Low Energy,
Tomas Rosa,
Working Paper. (background reading; no review)
5
Feb 2
jvdw
mjsschul
mttschlt
sairohit
Some Hints for Computer System Design,
Butler W. Lampson,
ACM SOSP, Oct. 1983. (review due 2/1 @ 1:30pm)
Feb 4
prabal
End-to-End Arguments in System Design,
J.H. Saltzer, D.P. Reed, and D.D. Clark,
ACM ToCS., Vol. 2, No. 4, Nov 1984, pp. 277-288. (skim for key idea)
Experiences from a Decade of TinyOS Development,
Feb 6 Philip Levis,
OSDI'12, 2012. (review due 2/3 @ 1:30pm)
brghena
Persistent Storage, Logging, and Recovery
An Introduction to Disk Drive Modeling,
Chris Ruemmler and John Wilkes,
IEEE Computer, Vol. 27, No. 3, Mar. 1994, pp. 17-29. (optional)
Feb 9
prabal
A Fast File System for UNIX,
M.K. McKusick, W.N. Joy, S.J. Leffler, and R.S. Fabry,
ACM Trans. on Computer Systems, Vol. 2, No. 3, Aug 1984. (no review)
The Design and Implementation of a Log-Structured File System,
Mendel Rosenblum and John K. Ousterhout,
ACM TOCS, Vol. 10, No. 1, Feb 1992. (review due 2/10 @ 1:30pm)
6
Feb
11
7
Analysis and Evolution of Journaling File Systems,
V. Prabhakaran, A. Arpaci-Dusseau, R. Arpaci-Dusseau,
USENIX Annual Technical Conference, 2005. (review due 2/10 @
1:30pm)
shravyak
bungep
Feb
13
No Class Meeting, but read the following websites:
1. Physical-Web (https://google.github.io/physical-web/)
2. UriBeacon (https://github.com/google/uribeacon)
3. Blesh (https://www.blesh.com/physical-web/)
n/a
Feb
16
ARIES: A Transaction Recovery Method Supporting Fine-Granularity
Locking and Partial Rollbacks Using Write-Ahead Logging,
C. Mohan, D. Haderle, B. Lindsay, H. Pirahesh, P. Schwarz,
ACM TODS, 17(1):94-162. 1992. (review due 2/15 @ 1:30pm)
prabal
Feb
18
Feb
20
Lightweight Recoverable Virtual Memory,
M. Satyanarayanan, H.H. Mashburn, P. Kumar, D.C. Steere, J.J. Kistler,
SIGOPS'92. (review due 2/17 @ 1:30pm)
A Case for Redundant Arrays of Inexpensive Disks (RAID),
David A. Patterson, Garth Gibson, and Randy H. Katz,
SIGMOD, 1988. (no review)
Project Overviews
Hardware Platforms
Hack-a-Thon Preparation
knekritz
prabal
prabal
bradjc
Embedded Operating Systems
Contiki - A Lightweight and Flexible Operating System...,
Adam Dunkels, Bjorn Gronvall, Thiemo Voigt,
29th Annual IEEE Intl. Conf. on Local Computer Networks, 2004
Feb
23
Microcontrollers Deserve Protection Too,
M.P. Andersen, et al.
Technical Report. Will be available in HotCRP.
prabal
QuarkOS: Pushing the Limits of Micro-Powered Sensors,
Pengyu Zhang, Deepak Ganesan, and Boyan Lu,
HotOS XIV, Santa Ana Pueblo, NM, 2013.
8
Feb
25
Feb
27
A Dynamic Operating System for Sensor Nodes,
C. Han, R. Kumar, R. Shea, E. Kohler, M. Srivastava,
MobiSys'05, pp. 163-176, 2005. (review due 2/24 @ 1:30pm)
Hardware Hack-a-Thon (Machine Setup)
6:00-9:00pm in 4901 BBB
Platforms: ATUM (CC2538) and Squall (nRF51822)
mikechri
bradjc
No Class
* * * WINTER BREAK - NO CLASS - WEEK OF MARCH 2-6, 2015 * * *
Concurrency and Scheduling
Lottery Scheduling: Flexible Proportional-Share Resource Management,
Carl A. Waldspurger and William E. Weihl,
Proc. First Symposium on Operating Systems Design and Impl., 1994.
Mar 9
prabal
Stride Scheduling,
Carl A. Waldspurger and William E. Wiehl,
Tech. Memo. MIT/LCS/TM-528, MIT LCS, Jun. 1995. (Optional)
9
Mar
11
10
The Click Modular Router,
Robert Morris, Eddie Kohler, John Jannoti, M. Frans Kaashoek,
SOSP'99, Dec 1999. (review due 3/10 @ 1:30pm)
TOSThreads: Thread-safe and Non-invasive Preemption in TinyOS,
Kevin Klues et al.
ACM SenSys'09, Nov. 2009. (review due 3/10 @ 1:30pm)
essam
jvande
Mar
13
Nano-RK: an Energy-aware Resource-centric RTOS for Sensor Networks,
A. Eswaran, A. Rowe, and R. Rajkumar,
IEEE RTSS'05, 2005. (review due 3/12 @ 1:30pm)
avadrevu
Mar
16
Scheduler Activations,
T. E. Anderson, B. N. Bershad, E.D. Lazowska, H.M. Levy,
ACM TOCS, Vol. 10, No. 1, Feb. 1992, Pgs 53-79.
prabal
Mar
SEDA: An Architecture for Well-Conditioned, Scalable Internet Services,
mttschlt
18
Matt Welsh, David Culler, and Eric Brewer,
Proc. 18th SOSP, Oct. 2001. (review due 3/17 @ 1:30pm)
rohitram
Capriccio: Scalable Threads for Internet Services,
Rob von Behren, Jeremy Condit, Feng Zhou, George C. Necula, and Eric
Brewer
Proc. 19th ACM SOSP, Oct 2003. (review due 3/17 @ 1:30pm)
Mar
20
No Class: Work on projects/proposal reviews
Internet-Scale Systems
Mar
23
11
Mar
25
Mock Review Panel for Paper Proposals
Proposal Submission: Thu, 3/19, 1:30pm
Proposal Reviews Due: Sun, 3/22, 1:30pm
The Google File System,
Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung,
ACM SOSP'03, 2003 (review due 3/24 @ 1:30pm)
MapReduce: Simplified Data Processing on Large Clusters,
Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung,
ACM SOSP'03, 2003 (review due 3/24 @ 1:30pm)
All
aaspring
davadria
Mar
27
Lessons from Giant-Scale Services,
Eric A. Brewer,
IEEE Internet Computing, Jul.-Aug., 2001.
prabal
Mar
30
A Comparison of Approaches to Large-Scale Data Analysis,
Andrew Pavlo, et al.,
ACM SIGMOD'09, Jun, 2009.
prabal
Spanner: Google's Globally-Distributed Database,
James C. Corbett, et al.,
USENIX OSDI'12, 2012. (review due 3/31 @ 1:30pm)
12
mjschul
Apr 1
F1: A Distributed SQL Database That Scales,
Jeff Shute, et al.,
Proc. VLDB, Aug. 2013. (review due 3/31 @ 1:30pm)
sdebruin
Apr 3 No Class: Work on projects/proposal reviews
Storm @ Twitter,
Apr 6 Ankit Toshniwal, et al.
ACM SIGMOD'14, Jun. 2014.
RDDs: A Fault-Tolerant Abstraction for In-Memory Cluster Computing,
Matei Zaharia, et al.,
USENIX NSDI'12, 2012 (review due 4/7 @ 1:30pm)
13
prabal
nklugman
Apr 8
Shark: SQL and Rich Analytics at Scale,
Reynold S. Xin, et al.,
ACM SIGMOD'13, Jun. 2013, (review due 4/7 @ 1:30pm)
sairohit
14
15
16
Apr
10
No Class: Work on projects/proposal reviews
Apr
13
No Class: Work on projects/proposal reviews
Apr
15
No Class: Work on projects/proposal reviews
Apr
17
I Don't Want to be the Mitt Romney of Databases,
Talk by Andy Pavlo,
10:00am - 11:00am in 3725 BBB
Pavlo
Apr
20
Spark SQL: Relational Data Processing in Spark,
M. Armbrust, R. Xin, C. Liang, et al.
ACM SIGMOD'15, May-Jun. 2015. (review due 4/19 @ 1:30pm)
prabal
Apr
24
Papers due in HotCRP at 1:30pm
Students
Apr
30
Mock Program Committee Meeting: 1:30-3:30pm in 2166 DOW
Papers Due: Thu, 4/24, 1:30pm
Reviews Due: Wed, 4/29, 1:30pm
Mock TPC Mtg: Thu, 4/30, 1:30pm
All
Prerequisites
The formal prequisite for this course is EECS 482 (Introduction to Operating Systems, or an equivalent
class from another university). Courses in database systems, networking, and distributed systems are also
helpful. The informal prerequisite for this course is a strong interest in graduate systems research. You
need (or need to acquire) the skill to read deeply, analyze critically, and synthesize effectively. Although
there is not much in the way of homeworks and labs, success in systems research often requires a
substantial design and implementation effort, so you should have strong technical skills.
Policies
Honor Code. The Engineering Honor Code applies to paper summaries and exams.
Paper Reviews. Read the papers carefully and write your own paper summary/review. Your
understanding and learning is greatly aided by the critical evaluation of others' work. For each paper, read
and discuss it with peers. For papers that require summaries, you must address a number of questions
including:





What problem does the paper solve and why is it important?
What is the hypothesis of the work?
What solution does the paper propose and what is the key insight?
Does the idea work, and if so, how well?
What is a drawback or limitation of the system and how you might improve it?
The paper reviews are to be submitted electronically at least 24 hours prior to the class during
which we will discuss the paper. Late reviews will not be counted. You can miss up to three paper
reviews during the term without penalty. Failing to turn in six or more reviews on time will result in a zero
for all paper reviews. Allocate enough time for your reading and plan your reviews carefully.
Grading
Item
Research Paper
Weight
Description
50% Substantial individual/group research project and paper.
Paper Summaries
25% Written summaries/reviews of 2-3 papers per week.
Participation
15% Preparation and participation in classroom discussions.
Homeworks
10% Individual homeworks and self-study assignments.
Resources
1.
2.
3.
4.
5.
How to Read a Paper by S. Keshav.
How to Read a Research Paper by Michael Mitzenmacher.
Writing Reviews for Systems Conferences by Timothy Roscoe.
How to Read an Engineering Research Paper by William Griswold.
How to Read a Research Paper by Spencer Rugaber.
Download