Introduction

Tom Kelliher, CS 240

Jan. 20, 1999

Announcements

Outline

  1. Introduction.

  2. Historical trends.

  3. Under the covers.

  4. The five parts of a computer.

Assignment

Read Chapter 1 and Sections 3.1--3.4.

Introduction

  1. Syllabus.

  2. How to do well:
    1. Stay ahead of the work.

    2. Read assigned sections before coming to class.

    3. Use the online material.

  3. Tentative initial schedule sequence:
    1. Instruction sets and MIPS assembly.

    2. Arithmetic.

    3. Logic design.

    4. Datapath and control.

  4. Unix & Spim.

  5. Logic design.

Historical Trends

Today vs. 30 years ago:

  1. Size. Computers in your car?

  2. Power consumption and cooling.

  3. Cost: CPU, memory, storage.

  4. Computing power: ``safe'' passwords of a bygone era.

  5. Networking.

Under the Covers

Consider a program:

  1. What do we see?

  2. What does the computer see?

  3. Where does the translation take place?

Layers of a system:

  1. Application software: word processing, etc.

  2. System software: operating system (VM, virtual machines, filesystem, logical devices), compilers, assemblers, libraries, APIs, etc.

  3. Hardware: instructions, registers, memory, physical devices.

  4. The notion of abstraction.

The Five Parts of a Computer

  1. Input.

  2. Output.

  3. Memory.

  4. Control.

  5. Datapath.

Some specific components:

  1. CRT.

  2. Mouse.

  3. CPU: bus, L1 cache, control and branch, integer datapath (ALU and registers), floating point datapath.

  4. DRAM. Volatile.

  5. Disk. Non-volatile.

  6. Ethernet, LANs, WANs.



Thomas P. Kelliher
Tue Jan 19 14:35:34 EST 1999
Tom Kelliher