CSC 2204F

Fall 2006

 

OPERATING SYSTEMS

 

Professor G. Scott Graham

Graduate Department of Computer Science

University of Toronto

 

IMPORTANT NOTES:

An overview of what you are responsible for on the quiz is at

http://www.cs.utoronto.ca/~gsg/2204/quiz/responsible4.pdf

 

 

 

EVENTS (in reverse order):

 

- past tests have been posted. The 2005 take home test is at

http://www.cs.utoronto.ca/~gsg/2204/previous/takehome.pdf

and the 2004 quiz is at

http://www.cs.utoronto.ca/~gsg/2204/previous/quiz.pdf

This year, you are doing a “quiz”. Please remember that the topics covered in the documents in the /previous directory are not necessarily those that were covered this year.

 

- a3 is now available at

http://www.cs.utoronto.ca/~gsg/2204/handouts/a3.pdf

 

- Lecture 10 (Nov. 16) had a discussion of the forensic CD, as well as linked and indexed file allocation.

 

- Lecture 9 (Nov. 9) dealt with disk characteristics (as a prelude to file systems) and introduced contiguous allocation. Also, the CD with the forensic data and program was handed out.

 

- a2 has been revised slightly; see the changed requirements for question 2 at the standard URL given below, where the change reads:

Describe the scheduling algorithm (possibly a “classical” one) that results from:
a)  0 < H ≤ R
b)  H ≤ R < 0
c)  0 ≤ R ≤ H

 

- Lecture 8 (Thursday November 2) is cancelled, due to sickness. The next lecture topic will be file systems.

 

- I hope to be on StG on Tuesday, November 7, to answer questions and to have the marked a1s with me, if you want to pick up yours then.

 

- Assignment 2 (a2) is now available at the standard URL

http://www.cs.utoronto.ca/~gsg/2204/handouts/a2.pdf

 

- I am marking a1, but I doubt that I will have it finished to my satisfaction by Thursday, October 26; it should be ready by the next week, so you will have a chance to see the marking before you submit a2

 

- Lecture 7 will continue with process scheduling and will attempt to discuss process scheduling (at least its O(1) nature) in Linux 2.6.

 

- Lecture 6 will begin with semaphores and memory barriers as part of Linux kernel synchronization, and proceed on at some point to process(or) scheduling, a fairly standard topic that you will find in the standard textbooks.

 

- Lecture 5 dealt with Linux kernel synchronization, concentrating on atomic operations and spinlocks.

 

- a couple of corrections arose concerning Assignment 1 (a1); one was valid and the other seemed to be related to the semantic flaw; the valid one was about the body of the if-statement in GSP(); the correct body has

V(mutex);

     P(delay);

so that P(delay) replaces the wrong V(delay); the other proposed change was a suggestion that the Boolean condition check in the if-statement in GSP() should be S<0, rather than the current S != 0 /* not equal */; that might be related to the semantic flaw, so it is not being accepted as a correction; the updated version of a1 is at

http://www.cs.utoronto.ca/~gsg/2204/handouts/new_a1.pdf

where the filename at the end is new_a1.pdf ; any change that you propose should be relatively minor; I am not looking for a complete overhaul or a completely different approach.

 

- the first assignment, a1, is now available at

http://www.cs.utoronto.ca/~gsg/2204/handouts/a1.pdf

Grab it and start working,

 

- Lecture 4 (after the fact): I carried on with synchronization and mutual exclusion. I probably spent more time on the semantics of signal-and-continue and signal-and-exit than I was planning on, mais c’est la vie. I did not get to synchronization within the Linux kernel, which will be the basis of Lecture 5.

 

- Lecture 3 (ahead of time, but just): Concurrency, Synchronization, Mutual Exclusion, and Deadlock issues in “cooperating sequential processes”, as Dijkstra would call them; for example, in the seventh edition of the Deitel text below, this would be Chapters 6 and 7 material.

 

- Lecture 2 (after the fact, but mentioned at the end of Lecture 1 and in individual e-mail): Processes and Threads.

 

- Lecture 1: the material about the dynamics of the page lists in Windows XP comes from Tanenbaum, pages 819 - 822 or from Deitel, page 1069 or from Russinovich, pages 472 - 479.

 

- the internals books

       Windows             Russinovich and Solomon       publisher

       Linux                   Bovet and Cesati                  publisher

       Linux                   Love                                    publisher

 

 

- the “standard”, “classical” OS textbooks, dealing with principles

       Deitel                 publisher               author

       Nutt                   publisher               author

       Silberschatz       publisher               author

       Stallings             publisher               author

       Tanenbaum          publisher               author

 

- the Course Information Sheet

 

- the text of the statement about 2204, read at the Systems session of Graduate Student Orientation 2006