Reading List for CS-838

This list is tentative until the papers are assigned in class.

Within each topic, different students will be assigned to lead the discussion for different papers.

If you know of other papers that are appropriate (e.g., other examples of where gray-box techniques were used or of fingerprinting software) please let me know as soon as possible.

General Background for System Design

1 - Hints for Computer System Design.
Butler Lampson
IEEE Software, 1(1):11--28, January 1984.

2 - End-to-end arguments in system design
J. H. Saltzer, D. P. Reed, and D. D. Clark
ACM Transactions on Computer Systems, pages 277-288, 1984.

Part 1: Adjusting to the System as is

Overview

3 - Information and control in gray-box systems.
Andrea C. Arpaci-Dusseau and Remzi H. Arpaci-Dusseau
In Proceedings of the 18th ACM Symposium on Operating Systems Principles, Banff, Canada, November 2001.

Examples

22- Congestion avoidance and control
V. Jacobson
In ACM SIGCOMM '88, 1988

23 - Random early detection gateways for congestion avoidance
S. Floyd and V. Jacobson
IEEE/ACM Transactions on Networking, 1(4):397--413, August 1993.

Useful Techniques

Microbenchmarking

Look at these issues for your presentation on a microbenchmark.

4 - Measuring Cache and TLB Performance and Their Effect on Benchmark Runtimes
R.H. Saavedra and A.J. Smith
IEEE Transactions on Computers, pages 1223--1235, October 1995.

5 - mhz: Anatomy of a micro-benchmark
Carl Staelin and Larry McVoy
In Proceedings of USENIX technical conference, June 1998.

6 - On-Line Extraction of SCSI Disk Drive Parameters
B.L. Worthington, G.R. Ganger, Y.N. Patt, J. Wilkes
SIGMETRICS 95, pp.146-156, 1995.

7 - Microbenchmark-based extraction of local and global disk characteristics
N. Talagala, R. Arpaci-Dusseau, and D. Patterson
University of California, Berkeley 1999 CSD-99-1063

8 - Automated disk drive characterization
J. Schindler and G. Ganger
Technical Report CMU-CS-99-176, Carnegie Mellon University, November 1999.

Fingerprinting

9 - Probing TCP Implementations
D. Comer and J. Lin
Proceedings of the 1994 Summer USENIX Conference, Boston, MA.

10 - Remote OS detection via TCP/IP Stack FingerPrinting
Fyodor
(www.insecure.org) Written: October 18, 1998; Last Modified: June 11, 2002

11 - Passive Fingerprinting: Identifying remote hosts, without them knowing
Honeynet Project
http://project.honeynet.org; Last Modified: 04 March, 2002

12 - On inferring TCP behavior
J. Padhye and S. Floyd
ACM SIGCOMM, 2001

13 - Exploiting Gray-Box Knowledge of Buffer-Cache Management
Nathan C. Burnett, John Bent, Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau
The 2002 USENIX Annual Technical Conference, Monterey, CA, USA, June 2002

14 - Inferring Scheduling Behavior with Hourglass
John Regehr
2002 Usenix Technical Conference FREENIX Track

Reverse Engineering

15 - The Programmer's Apprentice: a research overview
Rich, C.; Waters, R.C.n
Computer;Volume: 21 Issue: 11 , Nov. 1988; Page(s): 10 -25

16 - Design recovery for maintenance and reuse
Biggerstaff, T.J.
Computer, Volume: 22 Issue: 7 , July 1989Page(s): 36 -49

17 - Reverse engineering and design recovery: a taxonomy
Chikofsky, E.J.; Cross, J.H., II
IEEE Software, Volume: 7 Issue: 1 , Jan. 1990 Page(s): 13 -17

18 - Reverse-Engineering Instruction Encodings
Wilson C. Hsieh, Dawson R. Engler, and Godmar Back
2001 USENIX Annual Technical Conference

19 - Reverse interpretation +mutation analysis = automatic retargeting
Christian S. Collberg
In Programming Language Design and Implementation, 1997.

Introspection

20 - Self-monitoring and Self-adapting Operating Systems
Margo I. Seltzer and Christopher Small
In the Proceedings of the Sixth Workshop on Hot Topics in Operating Systems, Chatham, MA, May 1997

21 - ISTORE: Introspective Storage for Data-Intensive Network Services
Brown, A., D. Oppenheimer, K. Keeton, R. Thomas, J. Kubiatowicz, and D.A. Patterson
Proceedings of the 7th Workshop on Hot Topics in Operating Systems (HotOS-VII), Rio Rico, Arizona, March 1999

24 - Implicit Coscheduling: Coordinated Scheduling with Implicit Information in Distributed Systems
Andrea Carol Arpaci-Dusseau
ACM Transactions on Computer Systems (TOCS), Volume 19, No. 3 (August 2001)

25 - Progress-based Regulation of Lowimportance Processes
J. Douceur and W. Bolosky
In Proceedings of the Seventeenth ACM Symposium on Operating Systems Principles, pages 247--258, December 1999.

26 - Visual Proxy: Exploiting OS Customizations without Application Source Code
M. Satyanarayanan, J. Flinn, and K. R. Walker
ACM Operating Systems Review, 33(3):14--18, July 1999.

27a - Using Control Theory to Achieve Service Level Objectives in Performance Management
S Parekh, N Gandhi, JL Hellerstein, D Tilbury, TS Jayram, J Bigus
IFIP/IEEE International Symposium on Integrated Network Management, 2001

27b - Using MIMO Feedback Control to Enforce Policies for Interrelated Metrics With Application to the Apache Web Serve
Y Diao, N Gandhi, JL Hellerstein, S Parekh, and DM Tilbury
Network Operations and Management, 2002.

28 - Semantically Smart Disks
M. Sivathanu, V. Prabhakaran, F. Popvici, T. Denehey, A. Arpaci-Dusseau, R. Arpaci-Dusseau
Submitted for publication.

29 - Differential Power Analysis
Paul Kocher, Joshua Jaffe, and Benjamin Jun
CRYPTO'99

30 - Differential fault analysis of secret key cryptosystems
Biham, A. Shamir
CRYPTO'97

Part 2: Creating a new System

Extensible Systems

31 - Threads and input/output in the Synthesis kernel
Henry Massalin and Calton Pu
In Proceedings of the 12th ACM Symposium on Operating Systems Principles, pages 191--201, 1989.

32 - Extensibility, Safety, and Performance in the Spin Operating System
Brian N. Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gün Sirer, Marc Fiuczynski, David Becker, Susan Eggers, Craig Chambers
In Proceedings of the 15 th ACM SOSP, pp. 267--284, 1995.

33 - Exokernel: an operating system architecture for application-specif ic resource management.
D. R. Engler, M. F. Kaashoek, and J. O'Toole Jr.
In Proceedings of the Fifteenth ACM Symposium on Operating Systems Principles, December 1995.

34 - Application performance and flexibility on exokernel systems.
M. Frans Kaashoek, Dawson R. Engler, Gregory R. Ganger, H'ector M. Brice no, Russell Hunt, David Mazi`eres, Thomas Pinckney, Robert Grimm, John Jannotti, and Kenneth MacKenzie.
In Proceedings of the 16th Symposium on Operating Systems Principles, October 1997.

35 - Dealing With Disaster: Surviving Misbehaved Kernel Extensions.
M. I. Seltzer, Y. Endo, C. Small, and K. A. Smith
In 2nd Symposium on Operating Systems Design and Implementation, pages 213--227, 1996.

36 - Making Paths Explicit in the Scout Operating System.
D. Mosberger and L. L. Peterson.
Operating Systems Design and Implementation, 1996.

37 - On Micro-Kernel Construction
Jochen Liedtke
SOSP, 95.

Interfaces

38 - Open implementation design guidelines
Gregor Kiczales, John Lamping, Cristina Videira Lopes, Anurag Mendhekar, and Gail Murphy
In Proceedings of International Conference on Software Engineering, Boston Ma, May 1997

Final Case Study

39 - A Gray-Box Approach To Controlling Data Layout: Techniques and Implementation
James Nugent, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau
Technical Report Computer Sciences Technical Report 1456, University of Wisconsin, Madison, 2002.