CS6935: Computer Systems Seminar (Fall 2003) |
More than 99% of the processors sold this year will be used in embedded systems. Although embedded platforms are highly diverse, ranging from 4-bit microcontrollers with no RAM to 64-bit processors with gigabytes of storage, some common properties are that they:
In the embedded software portion of this seminar we will discuss new techniques for designing embedded software that meets these requirements. We will focus on abstractions and programming language features that can help programmers create better software, and on analyses that can eliminate errors, optimize software, and bound resource requirements. Towards the middle of the semester the focus will shift towards distributed embedded systems and the emerging area of sensor networks.
In the part on networked systems, we will review the current research on understanding, enhancing or even redesigning the wired/wireless Internet. More specifically, we will cover:
| Week | Date | Topic | Presenter | Paper(s) |
| 1 | 8/26 | Intro to Embedded Systems Research | Matt Probst | Better Abstractions: an Agenda for
Embedded Systems Research. Andrew Black. Panel presentation @
DARPA-NSF Workshop on Embedded and Hybrid Systems. What's Ahead for Embedded Software?. Edward Lee. IEEE Computer, September 2000. |
| 2 | 9/2 | Reliability and Failure | Sachin Goyal | Software Defects and Their
Impact on System Availability---A Study of Field Failures in Operating
Systems. M. Sullivan and R. Chillarege. 21st International
Symposium on Fault-Tolerant Computing, June 1991. Why Cryptosystems Fail. Ross J. Anderson. CACM 37(11), 1994. |
| 3 | 9/9 | Software Design and Abstractions | Swaminathan | The Chimera Methodology:
designing dynamically reconfigurable real-time software using
port-based objects. D.B. Stewart, P.K. Khosla. 1st Workshop on
Object-Oriented Real-Time Dependable Systems, 1994. Building Product Populations with Software Components. Rob van Ommering. ICSE 2002. |
| 4 | 9/16 | Real-Time Constraints | Juncheol Park | Scalable real-time system design
using preemption thresholds. Manas Saksena and Yun Wang. Real-Time
Systems Symposium, 2000. Restricted Tasking Models. Alan Burns and Andy Wellings. 8th International Real-Time Ada Workshop, Sept 1997. Optional background reading: Scheduling Algorithms for multiprogramming in a Hard-Real-Time Environment. C. L. Liu and James W. Layland. Journal of ACM, 20(1), 1973. |
| 5 | 9/23 | Programming Language Support | David Catmull | Memory Safety Without Runtime
Checks or Garbage Collection. D. Dhurjati, S. Kowshik, V. Adve and
C. Lattner. LCTES 2003. Cyclone: A Safe Dialect of C. T. Jim, G. Morrisett, D. Grossman, M. Hicks, J. Cheney, and Y. Wang. USENIX Annual Technical Conference, June 2002. |
| 6 | 9/30 | Post-Compiler Program Analysis | Scott Little | Eliminating
stack overflow by abstract interpretation. J. Regehr, A. Reid, and
K. Webb. EMSOFT 2003. Integrating Path and Timing Analysis using Instruction-Level Simulation Techniques. T. Lundqvist and P. Stenstrom. LCTES 1998. |
| 7 | 10/7 | Program Optimization | Jong-Chun Park | Is Code Optimization Research
Relevant? Bill Pugh. 2001. Data Size Optimizations for Java Programs. C. Scott Ananian and Martin Rinard. LCTES 2003. |
| 8 | 10/14 | New Architectures | Swaminathan |
A Knowledge Plane for the Internet Dave Clark et al. ACM Sigcomm Conference, August 2003. A Delay-Tolerant Network Architecture for Challenged Internets Kevin Fall. ACM Sigcomm Conference, August 2003. |
| 9 | 10/21 | Sensor Networks | Vaibhave Agarwal |
Sensor networks:
Evolution, opportunities, and challenges Chee-Yee Chong;
Kumar, S.P. Proc. IEEE, August 2003. Connecting the Physical World with Pervasive Networks Deborah Estrin, David Culler, and Kris Pister. IEEE Pervasive Computing, 1,1 (Jan.-March 2002). |
| 10 | 10/28 | Overlay Networks | Matt Probst |
Resilient Overlay Networks David Andersen et al. ACM SOSP, October 2001. A Routing Underlay for Overlay Networks Akihiro Nakao, Larry Peterson and Andy Bavier. ACM Sigcomm Conference, August 2003. |
| 11 | 11/4 | Energy | Vaibhave Agarwal |
Greening the Internet Maruti Gupta and Suresh Singh. ACM Sigcomm Conference, August 2003. Self-Tuning Wireless Network Power Management Manish Anand, Edmund B. Nightingale and Jason Flinn. ACM Mobicomm Conference, September 2003. |
| 12 | 11/11 | Measurement-based Modeling/Analysis | Scott Little |
A Measurement-Based Analysis of Multihoming Aditya Akella et al. ACM Sigcomm Conference, August 2003. Analysis of a Campus-Wide Wireless Network David Kotz and Kobby Essien. ACM Mobicom Conference 2002. |
| 13 | 11/18 | DoS | Juncheol Park |
Low-Rate TCP Denial of Service Attacks Aleksander Kuzmanovic and Ed Knightly. ACM Sigcomm Conference, August 2003. A Framework for Classifying DoS Attacks Alefiya Hussain, John Heidemann and Christos Papdopoulos. ACM Sigcomm Conference, August 2003. |
| 14 | 11/25 | Intrusions | David Catmull |
Detecting Stepping Stones Yin Zhang and Vern Paxson. Usenix Security Symposium, August 2000. Internet Intrusions: Global Characteristics and Prevalence Vinod Yegneswaran, Paul Barford and Johannes Ullrich. ACM Sigmetrics Conference, June 2003. |
| 15 | 12/02 | Wireless LAN Security |
Sachin Goyal |
802.11
Denial of Service Attacks: Real Vulnerabilities and Practical Solutions
John Bellardo and Stefan Savage. Usenix Security Symposium, August 2003. |
The following text applies to students who are enrolled for one credit hour. See below for information about the three credit-hour option.
This seminar will be structured as a reading and discussion group. This means that attendees are expected to have studied the paper selection(s) for the week in advance of the seminar meeting.
There will be a discussion leader for each meeting. The role of the discussion leader is two-fold. First, they are expected to prepare 10-15 minutes worth of slides that contain:
This should entail roughly 4-8 slides and is intended to give context to the subsequent discussion.
The second major role of the discussion leader is to lead the discussion. This involves preparing leading questions and discussion points and acting as master of ceremonies of a fairly informal discussion of the paper. The discussion leader should work to ensure that all attendees at the seminar get involved in the discussion (whether they want to be involved or not). Special emphasis should be given to discuss the positive aspects of the paper, since people have a natural tendency to concentrate on perceived failures.
All students registered for credit will serve as discussion leader for at least one paper. Other discussion leaders will be selected as needed from the regular attendees.
Students may also enroll in this seminar for three hours of credit. These students must fulfill all of the above requirements and will also be expected to do a project that has both an implementation component and a written report. Project topics are to be negotiated between a student and one or both instructors.