Lecture Notes for Operating Systems

12 September 2001 - System Architecture


  1. the von neumann architecture - the cockroach of computer architectures

    1. stored-program computer

    2. a computer is a giant state machine

    3. instructions and data are the same

  2. the pieces

    1. the cpu - the brain in powerful electronic brain

      1. the registers - state

        1. data registers

        2. control and status registers

      2. the cache - more state; also off-chip cache

      3. the alu

      4. the control unit

    2. physical memory

      1. a big array of units - bytes, words, whatever

      2. memory is actually another device

      3. volatile vs. non-volatile - ram vs. rom

      4. memory structure is actually complicated - squeezing out maximum performance is tricky

      5. power-managed memory

    3. devices

      1. general device characteristics

        1. like special purpose computers - limited instruction set

        2. many classifications - character or block, synchronous or asynchronous, serial or parallel, storage or communication

      2. device controllers - the interface to the device

        1. generally a bunch of registers - some read, some write, some read-write

        2. device registers may be require special cpu instructions or look like memory

        3. other forms of cpu-device communication for large amounts of data - buffers

      3. device drivers - what the operating system provides

    4. other pieces

      1. memory management unit - mmu

        1. on (fast and small) or off (large and slow) the cpu chip

      2. clocks and timers - countdown and running

  3. interconnections

    1. busses - ties the components together

      1. address, data, io bus

      2. bus width and speed - less wide busses are slower

      3. bus arbitration

      4. many busses, dual-ported memory

    2. interrupts - how devices get the cpu's attention

      1. an interrupt is an electric signal sent along a wire

      2. interrupts stop the current instruction sequence and start another one - what's the state just after the interrupt

      3. other information may be included - device id, interrupt id (called the interrupt level)

      4. the choice of alternative instruction stream may vary - interrupt vector

      5. interrupts can be disabled - dangerous

    3. caches - fast, small memory

      1. on-chip or off-chip caches (cpu)

      2. caching is a useful technique for speed-up

      3. a cache represents a lot of state

      4. buffers are caches made out of regular memory

  4. operation

    1. boot up - what happens when the power goes on

      1. read in a boot program from somewhere (rom, the boot sector on disk), then execute it

    2. basic operation - fetch, execute, store

    3. operation modes or spaces

      1. a process turning off interrupts owns the cpu - not nice

      2. protection and efficient management require access restrictions

      3. cpu operating modes - some modes can't execute some instructions

      4. user or kernel modes - kernel mode can do anything; user mode can't

      5. traps - user level instructions that switch to kernel mode; an interrupt


This page last modified on 12 September 2001.