
CSE 451, Introduction to Operating Systems, Autumn 2013
Projects
Projects should be discussed on the appropriate thread of the class discussion board.
Grades for projects and exams will be posted in a Catalyst GradeBook here.
- Project 0: C programming warm-up
- Assigned: Wednesday September 25
- Due: Friday October 4 at 11:59 p.m. (electronic submission)
- Teams for future projects
- Project 1: System calls and shells
- Assigned: Friday October 4
- Due: Friday October 18 at 11:59 p.m. (electronic submission)
- Project 2: User-level threads
- Assigned: Friday October 18
- Due: Parts 1, 2, and 3: Sunday November 3 at 11:59 p.m. (electronic submission)
- Due: Parts 4, 5, and 6: Sunday November 17 at 11:59 p.m. (electronic submission, including report)
- Project 3: Undelete
- Assigned: Sunday November 17
- Due: Wednesday December 4 at 11:59 p.m. (electronic submission)
- Confidential Peer Assessment
- In order to receive credit for Project 3, you must send a Confidential Peer Assessment to Ed
- Due: Monday December 9 at 11:59 p.m.
A note on the Linux projects: There will inevitably be some ambiguities or errors in the project descriptions. We apologize for these. We try hard to eliminate them before distributing the projects. However the Linux kernel changes somewhat rapidly, and there are bound to be some cases where we fail to update the project descriptions to exactly match the code. (Believe us - the projects are in much better shape than the last time we ran this course!) We don't want anybody to waste time dealing with these problems, so two reminders: First, if you encounter something that's confusing or possibly erroneous, please don't suffer in silence, but post to the discussion board and/or send us e-mail so that we can clarify things. Second, please check the discussion board regularly, so that you can learn about these problems when other students encounter them and avoid puzzling over them on your own.
Project Resources
- CSE 451-oriented git tutorial
- Ctags tutorial
- Cscope tutorial
- Some Linux resources
- UW ACM tutorials for UNIX, C, Emacs, etc.
- A very basic tutorial on gcc and gdb (ppt, pdf)
- C tutorial plus some advanced C features (ppt, pdf)
- A bigger GDB tutorial
- How to debug kernel code (from Linux Device Drivers book)
- Emacs reference
- Refreshing your C skills:
- Course Home
- Administrivia
- Materials
- Assignments
- Information
Computer Science & Engineering University of Washington Box 352350 Seattle, WA 98195-2350 (206) 543-1695 voice, (206) 543-2969 FAX