ASSIGNMENT: February 12 through February 19

For Lecture: Wednesday, February 12

Read Tanenbaum, Chapter 1. Re-read Ward and Halstead (6.004 book), Computation Structures, chapters 16 and 18. Our technical content will be launched from Ward and Halstead as a base, so make sure you understand it securely.

For Recitation: Thursday, February 13

If you have been paying attention, you know that reading reports are required on Tuesdays, not Thursdays. On Thursday, just come prepared to carry on the suggested discussion. Note that if you don't do the reading, your recitation instructor will notice that your participation isn't up to to that of everyone else. Your goal is to make a good impression; reading the paper is the first step in making that good impression.

In preparation of this section, read reading #9 which is on the X window system. The X window system was developed at MIT and is used all over the world (including at AThena). X is an excellent example of a well-designed system and demonstrates many of the topics we will discuss in 6.033 (including hierarchy, complexity, and system organization).

We will attempt to hand back your corrected reading reports in this section, so you can use your TA's feedback to improve your next writing assignment.

For Lab recitation, Friday, February 14 (6.033 Lab students only)

There will be an additional section for students enrolled in the lab during special lecture hours (2-3p) in Room 24-121. Costa Sapuntzakis will review the first project (a web server) and answer any questions you may have. If time permits, we will start discussion on the next project, a remote procedure call protocol.

For Lecture, Tuesday (virtual Monday), February 18

Tuesday is virtual Monday, so there will be a lecture instead of a section. Nevertheless, you are supposed to hand in your one-page reading report on Tuesday in lecture. The reading assigned is Tanenbaum Chapter 3. You can skip Section 3.3.3 (Examples of paging hardware) and Section 3.7.2 (Segmentation with paging: Multics). Your reading report should address the following question:

When programming on a system with virtual memory, the system handles all the virtual memory tasks (swapping, tracking which pages are in, which are swapped out, etc). Why might a system be designed so that the programmer has control of the virtual memory tasks? Why might she not want to have that control? Give two concrete examples to illustrate your points.

For Lecture, Wednesday, February 19

In preparation for lecture, read Tanenbaum Chapter 2. You can skip sections 2.2 (interprocess communication) and 2.3 (classical IP problems), if you like; they will be assigned for next week.

------------

System aphorism of the week
Everything should be made as simple as possible, but not simpler. (A. Einstein)

6.033 Handout 6, issued 2/11/97