for class on Tuesday Oct. 15, 1996
Please read Sections 5.6 through 5.9 (including both sections 5.7) of the Patterson & Hennessy text. Figures 5.49 and 5.50 are updated in the errata handout. Be prepared to discuss the following issues:
1. The MIPS subset we've been studying in this chapter can cause only a couple of exceptions: integer overflow (good thing we're experts on this) and undefined instruction. In the full architecture--like any other--there are a lot more:
Exceptions can usefully be classified in a number of ways, which we will discuss. Here are some: Did the program cause the exception (and hence ``deserve'' the consequences), or did it happen for a reason outside the program? In the former case, can the exception-causing instruction be allowed to finish? Should the program or process be resumed or should it be terminated? And what, if anything, should be done about the exception, perhaps partly by the operating system? Please think about, and be prepared to discuss, how the exceptions from the above list (and any others you care to bring up) yield different answers to these classification questions.
2. Please also figure out how the exception hardware discussed in Section 5.6 works; we will discuss this hardware in the context of some of the issues raised above.