for class on Tuesday Oct. 17, 2000
Please read Sections 5.6 through 5.10 and Section A.7 of the Patterson & Hennessy text, and 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 might work; we will discuss this hardware in the context of some of the issues raised above.