CSE243 Final exam review questions
Spring 2002
The questions on the final exam will resemble some or all of these. The
actual questions you see on the exam will be more specific (some of these are
incomplete, and unanswerable), but they may also be slightly different than
these. Don't be concerned with memorizing anything: I will give you all the
tables or diagrams you need to answer the questions, but you must be able to
understand the tables and diagrams and interpret them appropriately.
You will not be able to use any external resources during the exam, which
includes but is not limited to books, notes, PDAs, pagers, cell phones, scraps
of paper, calculators, roommates, and parents.
- (general) Given a block schematic diagram of a CPU, label the indicated
parts and briefly discuss the function of each.
- (general) Understand the philosophy behind the logical structure of a
CPU. E.g.: Why are there a certain number of registers? Why do they have a
certain number of bits? Why are there registers at all? What is the von
Neumann bottleneck?
- (4) Understand the difference between a synchronous bus and an
asynchronous bus.
- (4) Understand the difference between polling- and interrupt-driven I/O.
- (4) Know what a context switch is and what happens during one.
- (5) Understand the difference between ROM, PROM, EPROM, EEPROM, and RAM
(but you will not need to know the IGCMOSFET-EEPROM).
- (5) Understand how a memory address is split into fields which are used by
cache memories.
- (5) Understand what a replacement algorithm is used for, what the best one
is, and if it can actually be implemented.
- (5) Understand the benefits of virtual memory, but also know what
(qualitatively) the overheads are of using it.
- (8) Understand what the four primary instruction stages are as discussed
on page 456.
- (8) Understand the diagrams on page 457 (pipeline stages).
- (8) Understand the difference between executing one or more instructions
on a non-pipelined processor compared to executing those instructions on a
pipelined processor.
- (8) Be able to list and discuss the 3 different types of pipeline hazards
mentioned during lecture.
- (8) Understand how pipelining and branching affect each other.
- (8) Be able to describe what a superscalar processor is.
- (11) Understand how a stack processor differs from a conventional CPU.
- (VM) Describe a few reasons why a VM is useful.
- (VM) Why doesn't the JVM have registers?