Assignment 1
Hardware/Software Interface Mental Model

This assignment has two objectives:

  1. To ensure that you are prepared to work with your own copy of Linux.
  2. To help you tune your mental model of the hardware/software interface in a computer.

Assignment 1

Due Friday, September 19.

Following the lead of the first class lecture, you are to begin work on the "mental model" of hardware/software interaction in a computer.  You are to use a software package to diagram the various components we discuss.  These diagrams will change as we progress, so you are to use a software package to ensure that they are easy to modify.

  1. Diagram a high level view of the registers of a typical computer, with the registers named, and an accompanying text discussion of the purpose of each register (this text discussion does not need to appear directly in the diagram).
  2. Diagram the instruction fetch and execute (IFE) cycle of a computer in the presence of hardware interrupts. Be sure to discuss what the IFE circuit must minimally do when it detects a hardware interrupt.
  3. Discuss what happens (in general terms) with respect to the IFE cycle when a computer is first turned on and instructions begin executing up to the point that the OS is loaded and is running.

Remember that we are not talking about a specific computer, but rather a general abstract model that helps us understand the various hardware/software interconnection issues.