Preliminary Course Outline

Revision 2     5 September 2000

The course outline below is VERY PRELIMINARY. The only thing that is absolutely definite are the exam and project dates - so that you can plan ahead. Project 1 will be an annotation of L4/MIPS source code not already annotated by Professor Heiser or your instructor. The rules for code selection and annotation will be provided. The Final Exam will be replaced by a programming project if we have a working simulator and development environment in time to do this.

 

WK DATES TOPICS Reading* and Exams
1 Aug 22/24 Introduction to course. Introduction to L4/MIPS.
Introduction to MIPS R4x00 assembler and architecture.
I1 1-2.2.2; P12  Sections1-3; P23;
U4 Ch. 1, and Introduction slides
2 Aug 29/31 MIPS R4x00 assembler and architecture continued.
Introduction to L4 continued.
 R5 Ch. 1-1.1.5,
3 Sept 5/7 MIPS R4x00 assembler and architecture continued.
L4/MIPS organization and data structures - introduction
TLB Miss Handling - first part.
I 2.2.3-2.2.5;
I 3.1-3.2.2 
I 4.1;
M6 Ch. 1, Ch. 4 pp. 61-65, 95-97 and App. A;
C7 kernel.h, types.h, types2.h
4 Sept 12/14 General Exception Handling - first part.
Introduction to short IPC.
I 4.2-4.2.5, 5.2-5.2.3;
API slides 1-24;
M Ch4 (relevant parts), Ch 5 (status register);
U Ch. 2-2.2.3 (except long IPC)
5 Sept 19/21 Short IPC continued.
Clans and Chiefs.
I 5.3, 5.4; 
R 1.3 and 2.4 pp. 27-37;
Assorted slides 13-21; U 2.3
6 Sept 26/28 Assorted topics that pull L4/MIPS  together. 
Review for Midterm 1. Midterm 1.
Midterm 1
Thursday September 28 2000
7 Oct 3/5 Other system calls.
L4 overview continued
TBD
P1 Sections 4-7
8 Oct 10/12 User level system call stubs and the C library interface. TBD
9 Oct 17/19 Long IPC and TLB misses during long IPC. TBD
10 Oct 24/26 TLB misses during long IPC continued.
Managing a huge address space and guarded page tables.
TBD

 

11 Oct 31/Nov 2 Assorted topics that pull L4/MIPS  together.
Review for Midterm 2. Midterm 2.
Midterm 2
Thursday November 2 2000
12 Nov 7/9 Device drivers.
L4 Scheduling.
TBD
13 Nov 14/16 L4 Scheduling continued.
Programs and OS servers that run on top of L4.
TBD
14 Nov 21 Programs and OS servers that run on top of L4 continued.
Initializing and booting L4.
TBD
15 Nov 28/30 Other parts of L4/MIPS. Project 1
Tuesday November 28 2000
16 Dec 5 Other L4 implementations. TBD
17 Dec 12 Final Exam - Comprehensive. Final Exam or Project 2
Tuesday December 12 2000 6:40pm

 

* Notes:

1.    I      Inside L4/MIPS Anatomy of a High-Performance Microkernel, Version 2.14, Gernot Heiser, July 12, 2000, (Class Notes I).
2.    P1   "On µ-Kernel Construction", Jochen Liedtke, Proceedings of 15th ACM Symposium on Operating System Principles (SOSP), December 1995.
3.    P2   "Towards Real µ-Kernels",  Jochen Liedtke, Communications of the ACM, 39(9), September 1996.
4.    U     L4 User Manual, Version 1.14, Alan Au and Gernot Heiser, School of Computer Science and Engineering, University of New South Wales, Sydney, Australia, (Class Notes II).
5.    R     L4 Reference Manual MIPS R4x00 Version 1.11 Kernel Version 79, K. Elphinstone, G. Heiser and J. Liedtke, School of Computer Science and Engineering, University of New South Wales, Sydney, Australia, (Class Notes III).
6.    M    MIPS Microprocessor R4000 User's Manual, Joe Heinrich, Prentice Hall, 1993.
7.    C    L4/MIPS Source Code, Kernel Version 79.