Operating Systems 3
To introduce the students to the styles of coding required with an OS;
To give a thorough presentation of the contents of a traditional OS, including the key abstractions;
To show the range of algorithms and techniques available for specific OS problems, and the implications of selection specific algorithms for application behaviour;
To develop an integrated understanding of what the computer is doing, from a non-naive view of hardware to the behaviour of multi-threaded application processes; present the alternatives and clarify the trade-offs that drive OS and hardware design.