influential operating systems...
TRANSCRIPT
CARSTEN WEINHOLD
Faculty of Computer Science Institute of Systems Architecture, Operating Systems Group
INFLUENTIALOPERATING SYSTEMSRESEARCH
TU Dresden IOS: Introduction
RESEARCH
This Semester in One Slide
What is research?
What is systems research?
What are foundational works in systems research?
2
TU Dresden IOS: Introduction
LECTURE PLAN
3
17.4. Benchmarking & Statistics
24.4. Security
8.5. Software-Based Fault Isolation
15.5. Fault Tolerance
29.5. File Systems
5.6. MULTICS
12.6. Real-Time
19.6. Multiprocessors
26.6. Large-Scale Systems
3.7. Transactional Memory
10.7. Assignment
TU Dresden IOS: Introduction
ASSIGNMENTyou write a survey paper, about 6 pages
topic proposals with 2–3 research papers
may require additional reading
every topic has a mentor for questions
handout of topics: June 20th
assignments due: August 31st
you get feedback for your writing
4
TU Dresden IOS: Introduction
WHAT IS RESEARCH
5
research, noun, ˈriˌsərtʃ studious inquiry or examination; especially: investigation or experimentation aimed at the discovery and interpretation of facts, revision of accepted theories or laws in the light of new facts, or practical application of such new or revised theories or laws
— Merriam-Webster Online Dictionary
TU Dresden IOS: Introduction
WHAT IS RESEARCH
Investigation or experiments aimed at:
discovery and interpretation of facts
revision of accepted theories or lawsin the light of new facts
practical application of such new or revisedtheories or laws
6
TU Dresden IOS: Introduction
WHAT IS RESEARCH
Operating Systems Research
Not: Write a kernel for the sake of it.
OK: Rethink the interface between hardware and software.
7
TU Dresden IOS: Introduction
ALGORITHM
8
Research as an Algorithm do { find_interesting_problem(); learn_state_of_the_art(); perform_experiments(); report_results();
} while (!dead);
TU Dresden IOS: Introduction
FIND A PROBLEM
9
Approach Ⅰ: Lucky Coincidence
TU Dresden IOS: Introduction
FIND A PROBLEM
10
Approach Ⅱ: I have a hammer — give me a nail.
TU Dresden IOS: Introduction
FIND A PROBLEM
�11
Approach Ⅲ: Join the Mainstream
TU Dresden IOS: Introduction
FIND A PROBLEM
12
Approach Ⅳ: Pick Random Buzzwords
transparentredundant
multithreading
virtual
informed
prefetching
efficient
secure
energy-aware
scheduling
I/O
management
deterministic
timeclo
ud
storage
transactio
nal
transparentredundant
multithreading
virtual
informed
prefetching
efficient
secure
energy-aware
scheduling
I/O
management
deterministic
timeclo
ud
storage
transactio
nal
TU Dresden IOS: Introduction
FIND A PROBLEM
13
Approach Ⅴ: Reinvent the Wheel
TU Dresden IOS: Introduction
FIND A PROBLEM
14
Approach Ⅵ: Explore New Hardware Features
Approach Ⅶ: Funding-Driven Research
TU Dresden IOS: Introduction
READING PAPERS
Standing on the Shoulders of Giants
Other people already worked in the field: results available in conference, workshop, or journal papers.
15
TU Dresden IOS: Introduction
READING PAPERS
The long way:
1. Start with a paper. Read it.
2. For every unknown citation in this paper: goto 1.
16
TU Dresden IOS: Introduction
READING PAPERS
Shortcut (prone to information bias):
1. Look at larger set of papers.
2. Combine their citations.
3. Read those papers that are cited most.
17
TU Dresden IOS: Introduction
PAPER STRUCTURE1. Title
2. Abstract
3. Introduction
4. Related Work (may also come later)
5. Design / Implementation
6. Experiments and Results
7. Conclusion
18
TU Dresden IOS: Introduction
PAPER TITLES
Exciting Cosmic Rays Don’t Strike Twice: Understanding the Nature of DRAM Errors and the Implications for System Design
Generic DROPS — OS Support for Distributed Multimedia Applications
Provocative Are Microkernels Virtual Machine Monitors Done Right?
19
TU Dresden IOS: Introduction
ABSTRACT & INTRO
abstract and introduction are similar
motivation
approach in contrast to others
overview of results and contributions
abstract is for experienced readers
introduction is for people who need more details
20
TU Dresden IOS: Introduction
HOW TO READ
21
Phase Ⅰ5–10 min.
read abstract and headings,skim citations
understand the problem
Phase Ⅱ1–2 hours
read the whole paper understand the solution
Phase Ⅲdays – weeks
mental process: reimplement, weaknesses, connections
understand the bigger picture
TU Dresden IOS: Introduction
LET’S DO RESEARCHset up an experiment
show the problem
adjust experiment
one piece at a time
understand changes
get early feedback
coffee discussions
group meetings 22
experiment
understand
modify
TU Dresden IOS: Introduction
REPORT RESULTS
23
Workshops6–8 pages preliminary results and ideas
Conferences10–14 pages
complete implementation and evaluation of an idea
Journals≥ 20 pages
exhaustive discussion of larger research area
TU Dresden IOS: Introduction
VENUESTop-Tier Conferences
Symposium on Operating System Principles (SOSP)
Symposium on Operating System Design and Implementation (OSDI)
USENIX Annual Technical Conference (ATC)
Architectural Support for Programming Languages and Operating Systems (ASPLOS)
24
TU Dresden IOS: Introduction
VENUES
Second-Tier / Specialized Conferences
File Systems and Storage Technologies (FAST)
Dependable Systems and Networks (DSN)
European Systems Conference (EuroSys)
High-Performance and Embedded Architectures and Compilers (HiPEAC)
25
TU Dresden IOS: Introduction
VENUESHot* workshops: HotDep, HotPower, HotPar, HotOS
Journals: ACM Transactions on …
run-of-the-mill workshops
Things to Avoid
1st workshop on …
Exciting Location’s International Conference on Beach Surfing
26
TU Dresden IOS: Introduction
CONFERENCESorganizers set up a program committee
experts (profs, postdocs) from the field
… but their PhD students will do the work
people submit papers, PC reviews them
often in multiple rounds
open / single-blind / double-blind
sometimes with a rebuttal phase
PC selects best papers for presentation 27
TU Dresden IOS: Introduction
WHEN TO SUBMIT
28
You don’t decide when your research is done.
The reviewers do.
TU Dresden IOS: Introduction
YAY
29
“The PC is happy to inform you …”
TU Dresden IOS: Introduction
NAY“The PC is sorry to inform you …”
rejection is the norm, not the exception
at least you get helpful reviews
viable strategy: submit to get feedback
but: increased reviewer workload
common points of criticism
language, motivation, evaluation
fix and resubmit. 30
TU Dresden IOS: Introduction
COLLABORATION
31
TU Dresden IOS: Introduction
COLLABORATION
32
TU Dresden IOS: Introduction
COLLABORATION
33
TU Dresden IOS: Introduction
RANKINGSresearchers are constantly evaluated
to get funding
to get a job
to estimate credibility
ranking systems:
publication count
citation count
H-Index 34
TU Dresden IOS: Introduction
RANKINGS
The Dark Side of Research
optimize for ranking, not for scientific merit
citation cartels
publish or perish
open access vs. paid-subscription
35
TU Dresden IOS: Introduction
A POLEMIC
36
Systems Software Research is Irrelevant Rob Pike (then Bell Labs, today Google)
2000
TU Dresden IOS: Introduction
WORKSTATION
37
1990 200033 MHz MIPS R3000 32 MB of RAM10 Mbps Ethernet
600 MHz Alpha or Intel512 MB of RAM100 Mbps Ethernet
UnixX11TCP/IP
UnixX11TCP/IPNetscape
CC++
CC++Java
TU Dresden IOS: Introduction
IRRELEVANT
no new kernels anymore
Linux is just UNIX redone (and worse)
Microsoft is more innovative
“the web“ happened by surprise
standards dictate 90% of new systems
industry focus is on gadgets, not software
38
TU Dresden IOS: Introduction
18 YEARS LATER…
39
Systems Research is Still Here.