263-3800-00 Advanced Operating Systems
Overview
This course is intended to give students a thorough understanding of design and implementation issues for modern operating systems. We will cover key design issues in implementing an operating system, such as memory management, scheduling, protection, inter-process communication, device drivers, and file systems. We will pay particular attention to system structures that differ from traditional monolithic arrangements of Unix/Linux and Windows. This course builds on the undergraduate operating systems course offered at ETH ( 252-0056-00), the contents of which will be assumed knowledge.
The course consists of lectures, project work, and an oral examination. Project work will be performed in small groups, where students will implement major components of a microkernel-based operating system. The examination will consist of a combination of short- and long-answer questions in English; all material covered in lectures and in the project is considered examinable. The final assessment will be a combination of project and examination grades with a weighting of 65% project to 35% examination.
Notices
(in reverse chronological order)
- The exam will be held on Monday June 8, for the schedule and
details see the slides from the
final lecture.
-andrewb, 26.05.2009 - There will be no lecture next week and no scheduled consultation
(19.05, 20.05). Consultations may be arranged by appointment with Simon
Peter. The lab marking will proceed as usual.
—andrewb, 12.05.2009 - There are some readings for next week's lecture, which will be on the motivation for and design of L4: —andrewb, 13.03.2009
- The assignment
submission page is now available.
—andrewb, 25.02.2009 - We have fixed various bitrot issues with the project sources and
tools, and revised the instructions for Milestone
0 appropriately. For those of you working on your own machine, the
main change is that you need a specific (old) version of SCons as documented here.
—andrewb, 20.02.2009 - These pages give preliminary information for AOS in Spring 2009.
There will be revisions made to the lecture material and project spec.
Stay tuned for more information.
—andrewb, 04.12.2008
Schedule
| Lecture: | Tuesday 10:00 – 12:00 in IFW A32.1 |
| Consultations (optional): | Wednesday 11:00 – 12:00 in IFW C31 |
| Project marking: | Friday 11:00 – 12:00 in IFW C31 |
| Examinations: | Monday June 8 |
Text and reference books
There is no textbook for this course, as no published book covers the material in sufficient depth. However, the following reference books may be of use:
- A. Tannenbaum, A. Woodhull: Operating Systems: Design and Implementation, 2nd ed. 1997, Prentice Hall.
- Curt Schimmel: UNIX Systems for Modern Architectures, 1994, Addison Wesley.
- M. Beck, H. Böhme, M. Dziadzka, U. Kunitz, R. Magnus, and D. Verworner: Linux Kernel Internals, 1997, Addison Wesley.
- Marshall K. McKusik, Keith Bostic, Michael J. Karels, John S. Quarterman: The Design and Implementation of the 4.4BSD Operating System, 1996, Addison Wesley.
- Helen Custer: Inside Windows NT, 1993, Microsoft Press.
2nd version authored by David A. Solomon, (1998), 3rd version authored by David A. Solomon and Mark Russinovich titled ``Inside Windows-2000'' (2000). - Helen Custer: Inside the Windows NT File System, 1994, Microsoft Press.
- Scott Maxwell: Linux Core Kernel Commentary, 1999, CoriolisOpen Press.
- John Lions: Commentary on UNIX 6th edition with source code, 1996, Peer-to-Peer Communications.
- Henry M. Levy: Capability-Based Computer Systems, 1984, Digital Press.
- Selected research papers as referred to in class.
Staff
- Timothy Roscoe (troscoe at inf) IFW B45.2
- Andrew Baumann (andrewb at inf) IFW B45.1
- Simon Peter (speter at inf) IFW B47.1



