Assignment 4, due Feb. 10
Part of
the homework for 22C:112, Spring 2012
|
On every assignment, write your name legibly as it appears on your University ID and on the class list! Assignments are due at the start of class on the day indicated (usually Friday). Exceptions will be by advance arrangement unless there is what insurance companies call "an act of God" (something outside your control). Homework must be turned in on paper, either in class or in the instructor's mailbox. Never push late work under someone's door!
a) How does OS6 differ in its use of the concept of virtual machine from the Lampson and Lichtenberger's 1966 work you read for Homework 2? (0.6 points)
b) What makes the OS6 loader noticably more complex than the loaders we discussed in class? (0.6 points)
Some of the ideas for stream I/O in OS6 look very similar to ideas in Unix or the C standard I/O library. For example, the OS6 calls x:=Next[s] and Out[s,x] look very similar to the C calls x=getc(s) and putc(x,s), if one ignores syntactic details.
a) Identify a feature of OS6 streams that is distinctly different from anything in Unix. (0.6 points)
b) The OS6 paper does not use the terminology of object-oriented programming, as that terminology was being invented while this paper was being written. In one or two sentences, is OS6 I/O object-oriented? (0.6 points)
A Problem: Why is the select-case construct a bad approach? What does it make difficult. (0.6 points)