HardwareP1 - School of Engineering

Download Report

Transcript HardwareP1 - School of Engineering

History of Hardware – 1940-1990
CSE
3002
Prof. Steven A. Demurjian
Computer Science & Engineering Department
The University of Connecticut
371 Fairfield Way, Box U-255
Storrs, CT 06269-3255
[email protected]
http://www.engr.uconn.edu/~steve
(860) 486–4818 (Office)
(860) 486-3719 (CSE Office)
HoCHardware-1.1
Overview

Review the History of Hardware

CSE
3002


1940-1970 Early Computers
 Steve Maurer, UC Berkeley Goldman School of Public Policy





https://en.wikipedia.org/wiki/History_of_computing_hardware
http://ftp.arl.mil/mike/comphist/ http://oldcomputers.net/
http://courses.cs.washington.edu/courses/csep590/06au/lectures/slides/Maurer
_Oct_4.pptUConn Mainframe Story
1970-1990 – Mini-computers – Digital Equipment Corp
 Gordon Bell, Microsoft Research, Silicon Valley
 http://courses.cs.washington.edu/courses/csep590/06au/lectures/slides/
GBell_Oct_11.ppt
1970-1980 – Xerox Park-APRANet
 Butler Lampson, Distinguished Engineer at Microsoft Corporation,
http://courses.cs.washington.edu/courses/csep590/06au/lectures/slides/
Lampson_Oct_18.ppt
Origins of Software Related to Hardware Advances (throughout talk)
 2006 by Armando Fox, UC Berkeley RAD Lab
 http://courses.cs.washington.edu/courses/csep590/06au/lectures/slides/
Fox_Oct_25.ppt
Hardware Steve’s Used
HoCHardware-1.2
History of Computing
CSE P590A (UW)
PP190/290-3 (UCB)
CSE 290 291 (D00)
Lecture 2: Electronic Computing
1940 - 1970
Stephen M. Maurer
Goldman School of Public Policy
[email protected]
Early Days
Going Electronic
Vannevar Bush and OSRD
World War I Experience
Organizing Work the Big Science Way
Ultra, Bletchley Park & All That
Colossus (1500 vacuum tubes)
Stibbitz and ENIAC
Electronics
“Vacuum Tubes,”
aka “Valves”
S
A
B
Electronic Logic
Flip-Flop
A B C S
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 0
Half-Adder
Binary Arithmetic
S = AxorB
C = AandB
Vacuum Tube
(Or Relays or
Transistors)
George R. Stibitz
Bell Labs (1937)
Telephone Relays
Binary Arithmetic
K-Model (1938)
Model 1 (1939) - $20,000
Models 2-5 (1940 - 45)
Paper tape, error checking,
multiplication tables, &
storage registers.
NACA and Aberdeen
Atanasoff-Berry
“ABC Computer”
Iowa State (1937 – 39)
Arithmetic – Base 2 Logic
Memory – Drum, Condensers
+ “Jogging”
Output – Cards
No “if” statement.
Proposed 300 vacuum tube
machine was never completed.
John Vincent
Atanassof
Clifford
Berry
Konrad Zuse
Z1 Binary Addition (1936).
Mechanical, punched tape.
Z2 Relays (1940).
Z3 Programmable (1941).
2600 relays.
Z4 Refined Z3 (1945)
2000 vacuum tubes.
1939: Fuses instead of vacuum
tubes.
1941: An electronic Differential
Analyzer
- $486,804.22
- 200,000 man hours
ENIAC
John Mauchly
174kw, 17468 vacuum tubes,
500,000 soldered joints, 70,000
resistors, 10,000 capacitors.
Completed in the Fall of 1945, used
on “The Super.”
Presper Eckert
ENIAC
Math Units
20 accumulators
Flip flop “wheels” + Tables
Memory
Program
Plug board,
cables,
switches.
ENIAC
The Origins of Software
©2006 by Armando Fox, UC Berkeley RAD Lab
Permission granted to reproduce for academic & personal use if this attribution is preserved.
What is software?
• Software is information
• Software is a machine
• symbolic representation of some task to be
performed by a physical device
• ...implies a vocabulary—but what are the
elements of the vocabulary?
Jacquard loom (1804)
• Different threads attached to
different spools
• Hooks drop down, “catch” and
pull thread thru hole in card
• No hole in card => hook is
blocked and no weave occurs
Edge-on schematic view of card:
3 aspects of software
• Logical structure: the pattern of holes in the card
“describe” what the finished textile looks like
• Representation: if we knew the card size, could
encode a weave as a binary string
– Here is 010110
– Why would we need to know
card dimensions?
• Relationship to structure of physical device
– Positioning of holes == positioning of weaving hooks
– Speed of feeding cards == speed of moving shuttle
– Card is useless without knowing machine geometry, how
different thread spools are ordered, etc.
– Analogy: records/record players, CD’s/cd players...
Evolution of software loosened these associations.
Software is how you tell the
device what to do
• A self-contained representation of
“instructions” for a machine designed to
follow them
• pre-ENIAC: special purpose devices,
“software” mirrors physical organization
– Jacquard loom, 1850 Hollerith Census
machine, mechanical calculators
• c. ENIAC: concept of logical organization
of device begins to predominate
•
post-ENIAC: assembly language
– physical configurationinvisible to programmer
– but assembly language constructs still mirror hardware organization
•
Fully modern software: largely independent of hardware
– Quasi-human-readable representation
– Rely on compilers and interpreters to bridge gap to assembly language
ENIAC (1945)
• Electronical Numerical Integrator And Calculator
built for US military at Moore School of
Engineering, UPenn
• Electronic vacuum-tube reimplementation of
sequenceable calculator
– Functional units: multiplier, divider, square root
– 20 Accumulators, each can hold 10-digit 10’scomplement number (about 4.3 bytes, so <100 bytes
total)
– Constant transmitter (from dials or punch cards)
– Cycling unit (clock)
• in terms of programmability, arguably less
flexible than the Analytical Engine!
ENIAC: built 1937-1945,
decommissioned 1955
•
•
•
•
•
•
42 panels, each 9’x2’x1’, ~200 tons
Housed in rare forced-air-cooled building
19,000+ vacuum tubes, 1500 relays
3,000 input switches
Manual cabling - setup could take days
Addition cycle 0.2ms (5 KHz), 1000x
faster than Differential Analyzer
What would ENIAC
“software” be like?
• Consider 3 trained monkeys with calculators
– 2 can only add/subtract; 3rd can also multiply,÷, √
• Each monkey looks at a colored lamp to tell him
what to do:
– Show his calculator screen to another specific monkey
– Add number shown to him to number on his screen
– Replace his number with number written on blackboard
• Goal: compute x  (b  b  4ac ) 2a
• Deliverable: step-by-step list of lamp-lightings
and what goes on blackboard at each step
2

“Programming” ENIAC
• Data bus is not really a bus—just a cable tray
• True parallelism: VLIW From Hell
“Programming” ENIAC, #2
• Ex: compute (a–b), (b+359), (c+2b+359)
1. A4add 10’s comp. of A5 (A4=a-b)
A6A5 on  (A6=c+b)
2. A6A5 on , since A5 RepCount=2 (A6+=b)
3. A5359 on  connector (A5+=359)
A6359 on  connector (A6+=359)
4. End state: A4=a-b, A5=b+359, A6=c+2b+359
ENIAC’s contributions &
significance
• Noteworthy...
– True parallel addition (think: the VLIW From Hell)
– Historical origin of “accumulator”—reflects calculator
legacy
• Easy to see leap to data-bus-based architecture
with true microcode
– ENIAC: connect specific inputs to outputs with hardwired
cables; different for each problem to be solved
– true data bus: output from any unit available to all;
operation being performed selects which one reads
• MIT Whirlwind computer and Mark I calculator
– punch cards would be used to do this selection: holes in
cards route outputs to inputs and select operations
– hole patterns on card can be interpreted as data
Ramifications of machine
language concept
Deep insight: Programs Are Data
• Sequences of 1’s and 0’s to activate machine
elements <=> binary representations of numbers
• Practical implication: program to be executed
can be stored in the same medium as the data on
which it operates (“stored-program computer”)
– John Von Neumann unfairly credited with idea
• Non-obvious but deep implication: program
itself can be operated on like data
The First Computer Companies
The Software Concept
The magnetic drum/disk idea (1944)
John von Neumann (1903 – 1957)
First Draft of a Report on the EDVAC (1945)
New Government Needs
Weapons Physics & “The Super”
Cryptography & Intelligence
Air Defense
Business Machines?
Punch cards dominant until 1962.
Commercializing Computers
Fragile, Expensive, Unreliable
Technology Trajectory
Internal Memory
1945: Delay lines, Cathode
ray tube, drum memory.
1949: Magnetic core.
External Memory
1945: Paper tape, cards, drum.
1950s: Plastic tape, disks.
CPU
Vacuum tubes, transistors (1947),
integrated circuits (1959).
University & Government
Machines
Moore School Summer School & von Neumann
“First Draft.”
ENIAC, EDVAC, EDSAC (Cambridge 1949), ILLIAC
(Champagne-Urbana 1951), JOHNNIAC (Rand
1953), MADM (Manchester 1953), SWAC (Bureau
of Standards 1950), MANIAC (Los Alamos 1952),
IAS Machine (Institute for Advanced Study 1951),
Ordvac (University of Illinois for Aberdeen 1951),
ACE (Turing-built 1946), etc., etc.
University & Government
Machines
Harvard Mark IV
An Wang (1920 – 1990)
Core memory (1949)
Developed by Whirlwind
Patented 1955, later licensed
to IBM
Grace Murray Hopper, the Mark I
“compiler”, and subroutines (1944)
• Navy officer (eventually rear adm.) & math
professor, visiting Prof. Howard Aiken’s Harvard
Computation Lab
– Mark I & III computers developed for US Military
– “Programming” == punch a row of 24 holes in
paper tape to represent one machine instruction
– First automatic computer, but not stored-program
• Hopper’s insight: keep library of tapes of
commonly-used “subtasks” (eg square root)
– But each time used, have to change argument
values, what to do with the result, etc.
– Idea: a program to automatically compile paper
tape of complete procedure, “splicing in” subtasks
as needed
– Modern (re)birth of the subroutine concept; would
be absent from original FORTRAN!
• Eventually became A-0 “compiler” for Univac 1
(1952; photo c.1962)
Laning & Zierler: MIT Whirlwind
“Interpretive Program” (1954)
• Input: algebraic expressions punched onto cards
• Output: machine-language program to do the computation
– Where to put intermediate results
– How to “schedule” computation of intermediate results
– This would’ve been ENIAC’s assembler, if it had one!
• Probably the first assembler
– Origin: “assembling” a deck of cards from subroutines,
constants, etc.
– Vocabulary of what to do is still tied to machine hardware
– But “housekeeping” tasks managed automatically
– Likely forerunner of modern compilers
• “source” and “object” code not stored in same memory—
”programming” still seen as separate from “computing”
• First complaints by “real programmers” that compilergenerated code is much worse than hand-tuned assembly
Grace Murray Hopper, the Mark I “compiler”,
and subroutines (1944)
• Navy officer (eventually rear adm.) & math professor,
visiting Prof. Howard Aiken’s Harvard Computation Lab
– Mark I & III computers developed for US Military
– “Programming” == punch a row of 24 holes in paper tape
to represent one machine instruction
– First automatic computer, but not stored-program
• Hopper’s insight: keep library of tapes of commonlyused “subtasks” (eg square root)
– But each time used, have to change argument values,
what to do with the result, etc.
– Idea: a program to automatically compile paper tape of
complete procedure, “splicing in” subtasks as needed
– Modern (re)birth of the subroutine concept; would be
absent from original FORTRAN!
• Eventually became A-0 “compiler” for Univac 1 (1952;
photo c.1962)
Laning & Zierler: MIT Whirlwind
“Interpretive Program” (1954)
• Input: algebraic expressions punched onto cards
• Output: machine-language program to do the computation
– Where to put intermediate results
– How to “schedule” computation of intermediate results
– This would’ve been ENIAC’s assembler, if it had one!
• Probably the first assembler
–
–
–
–
Origin: “assembling” a deck of cards from subroutines, constants, etc.
Vocabulary of what to do is still tied to machine hardware
But “housekeeping” tasks managed automatically
Likely forerunner of modern compilers
• “source” and “object” code not stored in same memory—
”programming” still seen as separate from “computing”
• First complaints by “real programmers” that compiler-generated
code is much worse than hand-tuned assembly
Eckert & Mauchly
Electronic Control Company (1946)
Target customers:
Pari-mutuel companies, aircraft
companies, insurance, atomic
energy, mapping, academia, aircraft.
Convincing customers:
NAS and Bureau of Standards reports.
Census Bureau Contract (1948)
Capital, Engineering & Marketing problems
Remington Rand (1950)
Engineering Research Associates
Navy and NSA Machines
Technology
Drum Memory Computers
ERA 1101 (1951) (ex-Navy)
ERA 1103 (1952) (ex-NSA).
Commercial Weakness
Manuals, marketing, input-output equipment.
Remington-Rand (1952)
Going Electronic
Thomas J. Watson Sr. (1943)
Thomas J. Watson Jr. (1949)
“These development contracts are of such a nature
that they will be very attractive to anyone without
previous private experience or patents in the
computing field; but the patent provisions make it
doubtful if IBM, which has the lead in the field, can
afford to participate in the program…Whereas before
the war IBM was the only organization able and willing
to carry on large scale development of calculators,
such development is now taking place on a large
scale.” (1946)
R&D Initiatives
Selective Sequence Electronic Calculator (1948)
Last electromechanical computer
First stored program computer
12,500 vacuum tubes
Used for optics, quantum physics, orbits,
and hydrodynamics.
Tape Memory (1948 - 53)
Mylar-based tape.
Magnetic drum storage (1948 – 1954)
Harvard Seminar.
Products
IBM 603/604 (1946)
All-Electronic Calculator
300/1400 tubes.
Binary logic
20-60 step internal memory
5600 machines.
1.5 million vacuum tubes/year.
Card-Programmed Electronic Calculator
Northrup & “User Innovation”
700 built.
Early Computers
Univac
UNIVersal Automatic Computer
Paper tape + Delay line memory.
$1m each.
Typewriter output,high speed printer (1954)
1951: First sale to Census.
1952: Eisenhower Election.
Univac
Univac
Univac
1954:
General Electric, DuPont, US Steel, USAF…
$1m each – Production problems.
20 sold by 1954.
vs. 19 IBM 701s
100s of IBM
Card-Programmed Calculators.
1000s of IBM punch card machines.
Univac
“[P]erhaps the most radical idea which business is
being asked to accept is the idea that a reel of tape
can safely be used to carry information now being
entrusted to visual card files.”
Chief Actuary,
Metropolitan Life Insurance Company (1953)
Univac
Betting on Technology/Price
Small Sales Force
Customers could not see value.
Small Field Engineering Staff
Reliability issues.
Perpetually changing design.
Missed deadlines, confused tech support.
IBM 701 (1952)
“Defense Calculator”
Magnetic drum + Mylar tape + Punch
Cards
19 produced for aircraft companies,
government labs & universities.
IBM 701
Improved Versions: IBM 704 (1954),
709 and all-transistor 7090.
Compatible software
7090 is all-transistor, originally built for
USAF.
IBM 702 (1953)/IBM 705 (1954)
Delayed 1948 “Tape Processing
Machine”
Cathode ray memory makes 702
competitive with Univac
705 has Magnetic Core
Memory.
John Backus, FORTRAN, and
the IBM 704 (1957)
• Resembles algebra, hides
physical implementation
– Immediate hit
– Industry realization: users
want to do work, not futz
with artifacts
– Not clear if this has sunk in
PROGRAM HYPOTENUSE
REAL X,Y,Z, T1
PRINT *,"ENTER X and Y VALUES:"
READ *, X,Y
IF (X.EQ.0 .OR. Y.EQ.0) THEN
PRINT *, "X,Y MUST BE NON-ZERO"
ELSE
T1 = X**2 + Y**2
Z = T1**0.5
PRINT *, "HYPOTENUSE IS:", Z
END IF
END
• Developed by IBM for use on its pioneering
704 computer
– Among first to have floating point hardware
– Computer, language & compiler co-designed
by John Backus to exploit this => fast
• Compiler is itself a machine code program
on cards!
Terminology:
Low Level, High Level
• By 1957, modern languages
had begun to evolve
– 1937: ENIAC programming is
physical reconfiguration
– 1950: Whirlwind programming
converts algebra equations to
machine instructions
– 1957: FORTRAN expresses task to
be done with no reference to
physical machine
• Next big revolutions:
– technology: integrated circuits
– research & business models
resulting from “unbundling” of
software
Connecting cables
Machine code on punch
cards
Assembly language
Early high-level languages
(FORTRAN, C)
Structured programming
languages (Pascal)
Domain-specific languages
(MATLAB, OpenGL)
Scripting and “glue”
languages (Perl, Ruby)
R&D
Transistors (1951 - 59)
Disk storage (1952 – 56)
Software
Software ~ Rental costs.
Customer Lock-In
User Innovation
SHARE and GUIDE (1955)
UNIVAC, Burroughs, Bendix.
Fortran (1957)
Policy
Academic Research
Asserting patent rights against IBM?
Customer Innovation
Monopolists and complements
What’s new about GPL?
Tapping information about user needs.
Reliability and service.
Whirlwind & SAGE
Whirlwind
Whirlwind II/SAGE
A $500m subcontract
AN/FSQ-7
275 tons/919 miles of cable/50,000 vacuum
tubes/consumed 3MW of power
800 programmers -- 20% of the world’s supply
500,000 lines of code.
Magnetic core memory, large real time OS,
overlapping of computation and IO functions,
use of phone lines, cathode ray tube displays
with light pens, high reliability.
Whirlwind II
IBM gets the Bid
“Kingpin”
“[T]he trouble with IBM would be its traditional
secretiveness.”
Jay Forester: In the IBM organization we
observed a much higher degree of purposefulness,
integration, and esprit de corps than we found in
the Remington Rand organization. Also, of
considerable interest to us, was the evidence of
much closer ties between research, factory, and
field maintenance in IBM.
IBM Gets the Bid
Benefits to IBM
Mass production of ferrite core memory
7000 employees manufacturing, installing,
servicing, and improving system
SABRE ($300m) and ATC spinoffs.
Other Benefits
Lincoln Lab, DEC, Mitre Corporation, and
Route 128.
Antitrust (1952 - 1956)
Grounds:
Predatory Pricing, Incompatible
Cards, Buying Up Patents, Using
Leases to Block innovation, Binding
Inventors to Exclusive Contracts.
Relief:
Mandatory cross-licensing of
patents.
Opening the card market.
Foster competition in repair,
secondhand sales, and service
bureaus.
The Industry Takes Off:
1954 - 1960
The Crisis Year - 1954
IBM 650 Magnetic Drum Calculator (1954)
Delayed 1949 project.
A scientific computer.
But: John Hancock gets first one.
1800 built. Most popular computer of 1950s.
IBM 650
IBM Type 608 (1954)
All-Transistor/magnetic memory version
of Type 604.
Improved Defense Calculator (IBM 704)
IBM 305 RAMAC (1956)
Random Access Memory Accounting
Machine
Attachment for IBM 650 Drum Calculator
50 disks, 5 million characters
Potentially Interactive - “Ask Prof. RAMAC”
IBM Goes All-Solid State (1957)
IBM 1401/1410
Announced 1959
10,000 copies
Ferrite core memories, magnetic disk,
high speed chain printer.
Seven Dwarfs
NCR:
Honeywell:
Buys Northrup spinoff CRC
(1954). Niche sales in
banking and retail.
Buys computer company
(1954) and markets large
vacuum tube machine
(1957).
Burroughs (1956): Purchases JPL alumni
computer company, builds
specialty computers for
military.
Control Data (1957)
Sperry-Univac spinoff.
Seven Dwarfs
Sperry:
Merges with Remington-Rand (1955)
Univac II (1958) Partial transistor,
magnetic memory,film-based tape.
RCA Introduces new computer in 1955
Ferrite core but also vacuum tubes,
tape drive. Transistorized computers
follow.
GE:
Sold vacuum tubes to IBM
Builds computers for NCR
Failure to commercialize 1953 computer
for USAF.
AT&T:
1953 Consent Decree
Stays out of computers after 1952.
Royalty-free license on transistor
Integrated Circuits
Jack Kilby & Robert Noyce
(1959).
Army Micromodule Program
“[I]f the invention hadn’t arisen at Fairchild
it would have arisen elsewhere in the very
near future. It was an idea whose time
had come.”
Jack Kilby
(1923- 2005)
- Robert Noyce
Repealing Grosch’s Law
Cost s = W1/2
Power
Robert Noyce
(1928 – 1990)
Integrated Circuits
The 1960s: “IBM’s 5 Billion Gamble”
and the System/360
System/360
1960 Decision - Announced 1964 - Delivered 1966
Seven Different IBM Machines.
Lost economies of scale in production, marketing,
and service.
Software costs.
Competitive Pressure
GE, RCA, and
Honeywell.
System/360
Catching the Wave: Installed base vs. New
Users
1960: 6000 US computers
1973: 100,000 computers
worldwide.
IBM sales go from $1.8bn
(1960) To $7.2 bn (1970).
System/360
Manufacturing Crisis.
Software Crisis.
1m lines of code + Time sharing.
$125m budget.
$500m actual cost.
5,000 staff-years.
1 year late, buggy.
Fred Brooks, IBM System/360,
and compatibility
• “Architecture”: IBM’s new term for 360 approach
– Assembly language used by programmers reflected only
logical machine organization
– Microcode (different for each model) implemented
assembly instruction in terms of physical circuits
– Input & output circuitry standardized “channel” circuitry
– Result: Buy any 360 model, upgrade later, your
programs and I/O peripherals will still work!
• First step in the total decoupling of HW & SW
– Intel/Microsoft strategy ~30 years later
• Fred Brooks (principal architect of OS/360): first
“hard lessons” from a gargantuan software
project, The Mythical Man-Month
R&D Priorities
Time sharing.
Integrated circuits
IBM S/370
Improved 360 family
with ICs.
New DoJ Suit
(1969)
S/360 and the 7 Dwarfs
Clones
Honeywell and IBM 1401.
RCA makes compatible mainframe
Soviets too.
Niche Markets
DEC minicomputers.
CDC (Seymour Cray).
Plug Compatible Components
Memorex, Telex, Ampex, Storage
Technology, CalComp, Amdahl.
A Golden Age?
ARPA
Money: $10 million 1962)/$15 million (1963).
Interactive computing.
ARPAnet: Carrot and Stick.
Institutions: OSRD, again?
Portfolio Management: J.C. Licklider.
John C. Licklider
(1915 – 1990)
A Golden Age?
ARPA
Military, Academics as Lead Users
MIT Project MAC (1964)
Promised on-line catalogs, ordering and
billing,electronic cash, medical-information
systems for hospitals, centralized traffic control
for cities,automatic libraries, design consoles for
engineers, management consoles for
companies and factories, teaching consoles for
education, editing consoles for publishing,
research consoles for laboratories, and
computerized communities.
The World at 1970
Commerce displacing military.
IBM dominant, but vigorous R&D.
Fading information asymmetry?
Big Machines, but ICs on the horizon.
Open standards, lead users,
and roots of open source.
The Birth and Passing of Minicomputers:
From A Digital Equipment Corp. (DEC) Perspective
1957-1998. 41 yrs., 4 generations:
transistor, IC, VLSI, clusters - winner take all
How computer classes form…and die.
Not dealing with technology =change = disruption
Gordon Bell
11 October 2006
Digital’s Trials by Technology…
With time, “high” tech becomes a commodity.
“DEC found guilty of violating Moore’s Law …” –gbell
1. Designing and building first transistor circuits.1957-1965
2. Transition to integrated circuits & modulo 8 bits 1965-1975
3. Design with VLSI; manufacturing VLSI 1975-2002
4. Design of “clusters” as the ultimate computer 1983- ????
5. Quadruple whammy c1983 – “killer” micros, UNIX:
PC, Workstations, CMOS AND UNIX , as “standards”
Anyone can manufacturer computers in their dorm!
“You mean to say, our new ECL mainframe is not
equal to our latest CMOS chip?” –Ken Olsen c1990
6. Fail to exploit: networks, WWW, printers, clusters…
Ken Thompson, Dennis Ritchie,
Brian Kernighan: Unix & C (1971)
• Unix: a “simple” operating system originally developed for
PDP-7 (the Ford Escort of minicomputers)
– name alludes to MIT MULTICS, pioneering “timeshare” system
– 1st ed. 1971; for text processing of patent documents with
roff
• C: a compact and modest programming language
– Provides high-level language constructs (looping, subroutines,
simple data structures, etc.)
– but doesn’t hide machine-level structures
• Most of Unix rewritten in C ~1973: first source portable OS
– Berkeley Software Distribution (BSD) ~1975: AT&T-contested
parts rewritten from scratch, ported to VAX, available free
– Unix+C+VAX (PDP-8 successor) swept research community
– 1982: Sun decides to base workstation business on Unix
• source portability and C compiler now taken for granted
(gcc)
– Linux: widest open-source manifestation of this trajectory
The 41 year life and trials of
Digital Equipment Corp. aka DEC
• 1960: Birth of DEC from MIT Lincoln Lab… its evolution
• 1965-1984+?: Birth and death of the minicomputer industry
built with LSI to be replaced by multiple, microprocessors
• Theory: Bell’s Law (of Computer Classes)
• 1978: VAX and the VAX Strategy to become number 2
• 1985-: PCs, workstations, “killer micros” and standards take
on all comers
• The DEC Organization and Culture... What happened?
• Summary…
•
Stories
–
–
–
–
–
–
PDP-1; ITT Store & Forward Switch… UART
PDP-6 from PDP-3. Compiler
PDP-5 how it was created & PDP-8
PDP-11 at CMU
VAX and VAX Strategy… address bit problem
Ethernet DIX, Liddle,
Digital’s aka DEC’s Origin and Plan …
1957: Ken Olsen, Harlan Anderson, Stan Olsen -leave MIT’s Lincoln Laboratory as transistor
circuit and computer designers; collect $70K
from American Research and Development –VC
Business plan: design, manufacture, sell logic
modules… and eventually use the earnings and
modules for building computers
See also www.computerhistory.org
http://research.microsoft.com/users/gbell/Digital/DECMuseum.htm
Movie celebrating the PDP-1 Birth, Spacewar, etc.
http://www.computerhistory.org/events/index.php?id=1142978073
Some Financial & Size, Dates, Factoids
1957: Founded @ $70K. 5 Mhz logic modules. Profitable 1st yr
@$94K. 60p. Ken Olsen, CEO & Ben Gurley, PDP-1 @$14K
1959: Memory test equipment using system modules;
1960: 1st. PDP-1 delivery to BBN;
1964: $1.8M R&D, 1/6 of revenue
1965: $15M. PDP-5 (the Mini), PDP-6 (Timesharing); 1966: $23M;
1971: $147M. PDP-11; 1972: 7.8Kp, $200M; 1977: $1B 38Kp;
1978: VAX & VAX Strategy; 1979: $1.8b; 1980: 200KC, $2B;
1982: VAX Clusters.$4B, 369KC, 67Kp, Fortune 137th; 1984: $5B,
1988 120Kp largest in MA&NH; 62 countries, 475 sales offices
$11.4B revenue, $1.3 billion in net profits, market cap $23.9
billion (10th in US), Fortune 38. NUMBER 2!
1992: Alpha, Bob Palmer, former VP DEC Semis, appointed CEO
1998: Compaq Acquires DEC @ age 41. All except Palmer lose!
2002: HP acquires Compaq.
First DEC Building
Blocks and Logic
Modules
PDP-1 prototype with
separate console. 18 bit
word… patterned after
Lincoln Lab TX-0
40 were sold
ITT: message switching
PDP-5
Initial design was for
data collection for an
experimental reactor
in Canada… A/D, I/O
bus, 12-bit word
Business Week Business Week,
March 1964
(recall 4/7/1964)
80
x
VAX
32 bits
DEC Family Tree 1957-1980
PDP-11…
16 bits
70
VLSI
x
60
The 41 year life and trials of
Digital Equipment Corp. aka DEC
• 1960: Birth of DEC from MIT Lincoln Lab… its evolution
• 1965-1984+?: Birth and death of the minicomputer industry
Shift to 8 bit word with introduction of the IBM System 360.
•
•
•
•
•
Theory: Bell’s Law (of Computer Classes)
1978: VAX and the VAX Strategy to become number 2
1985-: PCs, workstations, “killer micros” and standards take on all comers
The DEC Organization and Culture... What happened?
Summary…
•
Stories
–
–
–
–
–
–
PDP-1; ITT Store & Forward Switch… UART
PDP-6 from PDP-3. Compiler
PDP-5 how it was created & PDP-8
PDP-11 at CMU
VAX and VAX Strategy… address bit problem
Ethernet DIX, Liddle,
Ken Olsen, Digital Equipment
Corp., and the PDP-8 (1965)
• DEC:First startup to recruit new college grads (MIT)
• Many important firsts of PDP series (esp. PDP-8):
– First minicomputer: size, packaging, cost (~$120K), and use
model—users, not operators
– [Geek] First commercial DMA: fast I/O at fraction of IBM price
– [Geek] First use of indirect addressing & paging to extend
address space while keeping native instruction size small
• First open API’s
– to compete with IBM, DEC encouraged its customers and
prospects to learn about, modify, and play with their system
– Simple architecture—could be quickly understood by an
assembly-language programmer
– Trivia: used for first computer-controlled lighting (A Chorus
Line, 1975) and BART info displays (1972)
• No real engineering breakthrough, but a massive cultural
shift...”a hacker-friendly computer”
Tech/Computer Generations
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
1947 Transistor
1958 IC
1971 4004 Microprocessor
1960 1st Trans. Comp.; 64’ 8bits
1979-83 Ethernet/LANs (DIX)
1966 1st IC Computers
1965-85+ Mini era (100 companies)
1975 1st Micro- computers
1981,4 IBM PC, MAC; u’s & UNIX
1988 – clusters = the computer
1992 – WWW; 1000s of micros
1960 DEC PDP-1
1965 DEC PDP-5 (mini archetype);
DEC PDP-6 (timesharing)
1970, 75 DEC PDP-11, LSI-11
1978; 84; 92 DEC VAX; uVAX, Alpha
1982 DEC PCs
1983 DEC VAX Clusters..VAX stratgy
1992 DEC Altavista
Minicomputer definitions c1970, 71
with introduction of PDP-11
Minicomputers (for minimal computers) are a state of mind; the current
logic technology, …, are combined into a package which has the smallest
cost. Almost the sole design goal is to make the cost low; …. Alternatively
stated: the hardware-software tradeoffs for minicomputer design have, in
the past, favored software.
HARDWARE CHARACTERISTICS
Minicomputer may be classified at least two ways:
I. It is the minimum computer (or very near it) that can be built with the
state of the art technology.
2. It is that computer that can be purchased for a given, relatively minimal,
fixed cost (e.g., $10K in 1970).
X
X
X
X
91 Minicomputer
companies 1984
DG, DEC, HP,
IBM…
survived by 1990
The Virtuous Economic Cycle
that drives the PC industry
Standards
Moore’s First Law

Transistor density doubles
every 18 months
60% increase per year
–
–

Exponential growth:
–
–

Chip density transistors/die
Micro processor speeds
1GB
128MB
1 chip memory size
( 2 MB to 32 MB)
8MB
1MB
128KB
8KB
1970
bits: 1K
1980
–
2000
4K 16K 64K 256K 1M 4M 16M 64M 256M
The past does not matter
10x here, 10x there … means REAL change
PC costs decline faster than any other
platform
–
1990
Volume and learning curves
PCs are the building bricks of all future systems
Computer components must
all evolve at the same rate
•Amdahl’s law: one instruction per second
requires one byte of memory and
one bit per second of I/O
•Storage evolved at 60%; after 1995: 100
•Processor performance evolved at 60%.
•Clock Performance flat >1995 until multicores
•Multi processors.
•Graphics Processing Unit to exploit
parallelism
•Wide Area Network speed evolved at >60%
•Local Area Network speed evolved 26-60%
log (people per computer)
The classes, sans phones, 2006
Mainframe
Minicomputer
Workstation
PC
Laptop
PDA
???
year
David Culler UC/Berkeley
Bell’s Law of
Computer Classes
Log price
Technology enables two evolutionary paths:
1. constant performance, decreasing cost
2. constant price, increasing performance
Mainframes (central)
Mini
WSs
PCs (personals)
Time
1.26 = 2x/3 yrs -- 10x/decade; 1/1.26 = .8
1.6 = 4x/3 yrs --100x/decade; 1/1.6 = .62
??
Bell’s Law of Computer Classes…
Every Decade a new class emerges
•Every decade a new, lower (1/10) cost class of computers
emerge to cover cyberspace with a
New computing platform
New Interface to humans or a part of physical world
New networking and/or interconnect structure
New classes --> new apps --> new industries
•The classes… a decade in price every decade
60s $millions
mainframes
80s $10K
workstations & PCs; MICROs
70s $10K-100K minis
90s $1K
PCs
00s $100s
PDAs & cellphones
10s $10
SFF& CPSDs, sensors, motes
Bell’s Nine Computer Price Tiers
1$:
10$:
100$:
1,000$:
10,000$:
100,000$:
1,000,000$:
10,000,000$:
100,000,000$:
embeddables e.g. greeting card
wrist watch & wallet computers
pocket/ palm computers
portable computers
•
personal
computers (desktop)
departmental computers (closet)
site computers (glass house)
regional computers (glass castle)
national centers
Super server: costs more than $100,000
“Mainframe”: costs more than $1 million
an array of processors, disks, tapes, comm ports
The Vertical Dis-integration of the IT Industry: The Rise of Category Killers
Hierarchy
of Value:
Emergence of Dominant Design: 1981
AOL Time Warner
1985
IV.
Application/
Content
SAP
1972
Cisco
1984
1981
Sun
1982
IBM
DEC
1966
HP computers
Nokia cell phones
Compaq (to HP 2002)
1982
1957
Apple
1977
Dell
1984
Intel
1968
I.
Storage/
Physical
HP printers
1984
EMC
1979
1945
Transistor
(1947)
1950
Magnetic
Storage
(~1955)
Integrated
Circuit
(1958)
1955
1960
MiniComputer
(1965)
1965
TCP/IP
Internet
(1969)
1970
Google
Microsoft
III.
Infrastructure
1952
1998
Oracle
1975
V.Neumann
Arch’
(1945)
Apple
iTunes
2003
1977
II.
Processing
Yahoo
1994
Unix
O/S
(1970)
16-bit 32-bit
Microprocessor
(1978) (1979)
1975
Provided Courtesy of Paul Kampas
1980
Optical
GUI
Storage
(1981)
(1982)
1985
© All Rights Reserved
RISC
Arch’
(1986)
Linux
O/S
(1991)
1990
HTML/
WWW
(1993)
1995
Technological
Innovations
2000
2005
Pyramid of networked - computing,
communicating, and storage devices
Large service clusters e.g. Amazon,
Google, MSN… Corporate services
Top 500 technical computers …
Corporate
environments
Family PC, Home &
entertainment nets
Small Form Factor incl. CPSDs
One computer
Hundreds
10 Thousands
100s of Milllions
A few Billions
UbiquityLand: (fixed) machines, rooms,
highways, environmental places, etc. Trillions
Mobile: identity-location-state tags
animals, cars, equipment, … you name it
The 41 year life and trials of
Digital Equipment Corp. aka DEC
•
•
•
•
•
1960: Birth of DEC from MIT Lincoln Lab… its evolution
1965-1984+?: Birth and death of the minicomputer industry
Theory: Bell’s Law (of Computer Classes)
1978: VAX and the VAX Strategy to become number 2
1985-: PCs, workstations, “killer micros” and standards take
on all comers
• The DEC Organization and Culture... What happened?
• Summary…
•
Stories
–
–
–
–
–
–
PDP-1; ITT Store & Forward Switch… UART
PDP-6 from PDP-3. Compiler
PDP-5 how it was created & PDP-8
PDP-11 at CMU
VAX and VAX Strategy… address bit problem
Ethernet DIX, Liddle,
VAX/VMS Strategy (c1978)
…a homogeneous, distributed-computing system, where
users interface, store information, & compute without
reprogramming or extra work:
• via a cluster of large computers using CI,
• at local minis, workstations, & PC clusters,
• with interfaces to industry standard systems,
• interconnected via LANs (Ethernet agreement was
essential), Campus Area, & WANs
Motorola 68K, UNIX License, PC Standard:
Anyone can manufacture computers
get (UNIX License, developers)
Multis: Multiple, shared memory
Microprocessors (Bell, Science 4/25/1985)
Linux
Palm Pilot
NT
Alpha
Open Software Foundation
MIPS Wkstn
VAX 9000
Sun & HP RISC
VAX 8600
MicroVAX
Precursor
Precursor
Apple Mac
IBM PC/MS-DOS
Sun
Compaq
VAX 780
VAX 750
Apple II
Unix
IBM S/370
PDP-11
PDP-10
IBM S/360
PDP-8
IBM 1401
IBM 7090
FORTRAN
PDP-1
Rainbow/Pro
Precursor
Jay Forrester/
Ken Olsen
MIT Whirlwind
ENIAC
Univac I
IBM 701
The Rise and Fall of DEC: Annotated Timeline
DEC
Products
Paradigm 1: 1951 - 1965
Paradigm 2: 1965 - 1981
Paradigm 3: 1981+
- Mainframes Computers
- Batch Computing
- Vertical Product Integration (IBM,
‘Bunch’)
- Minicomputers
- Timeshared Computing
- Vertical Product Integration (IBM,
DEC, HP)
- PCs + Workstations + Servers + Handhelds
- Client-Server Computing + Browsers/WWW
- Horizontal Product Integration (Intel + Microsoft + Cisco +
Oracle + Seagate + HP Printers…)
Cross-vendor Dominant Design
DEC Proprietary Design
Dominant
Design
Emerges
VAX + VMS + Rdb + DECnet +
All-in-1 + WPS + VTx00
DEC Organization:
Functional
DEC Situation:
Hardware
Product Lines
Product
Lines
Abolished
Market/Channel
Product Lines
- Leading 12, 16, 32-bit minis & OS’s
- Leading video terminals (VT-xx…)
- Leading printing terminals (LA-xx)
- Leading OEM business
- Leading office software
- Effective divisional structure
Other
Products
RISC + Unix or NT or Linux + Oracle + TCP/IP +
Wintel PC + MS-Windows + MS-Office + Browser
Functional
Varied
- Late to MicroVAX II (8 years after M68000)
- Late to VAX 8600 (8 years after 780)
- VAX 9000 was unsuccessful $1B investment (1990)
- Late to RISC/Alpha (via MIPs; 6 years after Sun/HP)
Gordon
Bell Resigns - Never fully endorsed Unix (‘snake oil’)
1983
- Late in moving from OSI to TCP/IP standard
- Late to IBM-compatible PC (via Rainbow, Pro, DECmate)
- Never successfully re-divisionalized
- Never achieved low cost capability
Time
1945
1950
1955
1960
1965
1970
1975
1980
1985
1990
1995
2000
DEC
Founded
DEC Enters
Fortune 500
DEC’s
Best Year
Ken Olsen
Resigns
DEC
Acquired
(1957)
(1974)
(1987)
(1992)
(1998)
The Four Ages of DEC:
1st – Creation
2nd – Rise
Provided Courtesy of Paul Kampas
3rd – Plateau
© All Rights Reserved
4th – Decline
Why did Digital fail (GB)
• The top 3-5 execs didn’t understand computing
– Moore’s Law, Standards and their effect
– Platforms and their support
– Levels of integration, make-buy, and ISVs
– Competitor metrics: it simply got “out of control”
• Destroyed its marketing organization, requiring a
complex matrixed organization, but lacking ISVs
• Didn’t exploit: printing (e.g. HP), networking (e.g.
Cisco), the Web, and UNIX
• Did: ECL mainframe, non-compatible PC, too many
platforms, semi-fabs without partnerships
http://research.microsoft.com/users/gbell/Digital/DECMuseum.htm
1. Bell’s Law that opens the page and is on my page and Wikipedia. I will open with a bit about laws.
2. Computer, October 1984 that gives the coming and going of the 100 mini companies. 1984 was the time of
transition to micros. Startups used UNIX and micros that had performance competitive with minis.
Also note my article in Science on “Multis” is important because it became the standard g0t computers.
3. Listing of Minicomputer companies 1960-1984 and super-minicomputer and mini-supercomputer companies
1984-1995.
4. Digital 41 Year History CD published 30 April, 1998 with key events and timeline... with photos and facts about
machines (alpha to PDP-1), module, the mill, and people! A nice reference with time, bullets, and photos.
5. COMPUTER ENGINEERING Bell, C. G., C. Mudge, J. McNamara,, Digital Press 1978 has the origin of DEC
from the circuits that came from MIT Lincoln Laboratory. It has the story of how the PDP-5 was created as a
component. PDP-5 begot the PDP-8 that was the “classic” or archetypical mini. The same story can be told
about micros as components.
6. The Bell Appendix for Edgar H. Schein's book “DEC is Dead, Long Live DEC” Berett-Koehler Publishers, San
Francisco, 2003. The appendix describes Bell's view of What Happened such that Digital was first sold to
Compaq in 1998 and then to HP in 2002. Digital aka DEC was only 41 years old. It has some technology, but it
is management too. I am not a fan of Christian’s use of DEC as the poster child to illustrate Innovator’s
Dilemma or disruptive technology…
7. Note the VAX Strategy, similar to the IBM 360 plan, and then Sun’s “All the wood behind one arrow”.
8. Note the transition to distributed computing and the Ethernet presentation. The complete Ethernet
Announcement by Bell (Digital), Noyce (Intel), and Liddle (Xerox) slides and script (PDF 7MB) was made in
New York City on February 10, 1982 by the DIX group, followed by announcements in Amsterdam, and London.
Note my presentation included: "the network becomes the system"... Can you recall a similar mantra that SUN
Microsystems later appropriated?
9. See the three articles on the PDP-11 on “the address space problem”:
a. Bell, C. G… and W. Wulf, "A New Architecture for Mini-Computers -- The DEC PDP-11, SJCC, pp. 657-675
(1970).
b. What we learned from the PDP-11, published by myself and Bill Strecker in 1975.
c. Retrospective on the PDP-11 Bill Strecker with a retrospective about VAX and Alpha, 1995.
10. Family Tree of Digital's Computers Poster created in 1980, shows the evolution of all of all computer models
and times they were introduced since 1960… my favorite way to represent history
Bob Supnik has simulators for the DEC machines Papers on Simulation and Historic Systems.
Searching for specific machines and people usually get a lot more than you want or need. E.g.
http://www.pdp8.org/, www.pdp11.org www.pdp10.org, www.vax.org are sites about specific minis including
simulators.http://en.wikipedia.org/wiki/Digital_Equipment_Corporation lists all the machine families.
The Alto and Ethernet System
Xerox PARC in the 1970’s
Butler Lampson
Microsoft Research
October 17, 2006
10/17/06
Alto Personal Distributed Computing
108
Influences—“On the shoulders of giants”
 ARPA community (Adv. Research Projs Agency)






Man-computer symbiosis—Licklider
Time-sharing: CTSS, SDS 940, Tenex
Engelbart’s On-Line System
Flex machine—Kay
Arpanet
Aloha packet radio network
 Xerox Alto —“Office of the future”


The electronic office
First Compute with OS Based on GUI in 1973
10/17/06
Alto Personal Distributed Computing
109
Alto in Context
10/17/06
Alto Personal Distributed Computing
110
Organization
 CSL-Computer Science Laboratory







Hardware: Alto, Ethernet
OS, Languages (BCPL, Mesa, Lisp)
Printing, file servers
Networking
Bravo (→Word), Draw (→Illustrator), fonts
Grapevine (email transport, server)
Laurel (email client)
 SSL-Space Systems/Loral




Printing, file servers
Smalltalk
Gypsy (→Word)
Markup (→Paint)
10/17/06
Alto Personal Distributed Computing
111
Timeline
 1960s Time-sharing, Sketchpad, NLS
 1970s Xerox PARC
Alto, Ethernet, laser printers
Bravo, Draw, Pup, Smalltalk
Altair, Apple II
Internet
 1980s
81
84
Xerox Star, IBM PC
Macintosh, Laserwriter, MS Word/Excel
 1990s Windows, Web
10/17/06
Alto Personal Distributed Computing
112
Gates, Allen, Roberts, the MITS
Altair, and Micro-Soft [sic] BASIC
• MITS Altair - first “hobbyist” computer kit, offered in
Popular Electronics for $395, sold like crazy
– But you couldn’t do anything with it: no I/O devices,
programming was all in binary (Intel 8080)
• Gates & Allen saw an opportunity: BASIC language
– created in 1964 at Dartmouth for teaching programming
– Gates & Allen founded “Micro-Soft” and created a version of
BASIC for the Altair
– Later licensed BASIC for TRS-80, Apple II, and many others
• Big loser: Gary Kildall, inventor of CP/M
– Turned down IBM; Microsoft got contract, bought QDOS for
$175K, repackaged as MS-DOS
– Kildall thought people would pay more for a better product
– Windows (direct descendant of QDOS) now runs 90+% PC’s
• Would be repeated with Apple’s Macintosh & John Scully
Themes
But a man’s reach should exceed his grasp, or
what’s a heaven for? —Browning
 Computers can be used as tools to help people
think and communicate




Licklider
ARPA time-sharing and networking
Engelbart and NLS
Alan Kay and Flex
 Xerox: Office of the Future

How do we grow after copiers?
10/17/06
Alto Personal Distributed Computing
114
Personal Distributed Computing
 Personal




Under the control of a person and serves his needs.
Performance is predictable, and fast enough
Reliable and available.
Not too hard to use
 Distributed




Everything in the real world is distributed
The computer is a communication device
Personal + communication = distributed
Need to share expensive devices too, esp. printers
 Computing

We programmed, but users didn’t
10/17/06
Alto Personal Distributed Computing
115
Information Convenient For A Person
 Universal

Any (black-and-white) image, data, any software
▬

Words, pictures, music, ...
Specialize with software
 Ink on paper


Present images
Point at places in the image
 The Alto can do this quite well




For a single 8.5" x 11" sheet of paper
With black ink
No restrictions on the form of the images
Cannot read images
 Voice and other sounds.

Later, less important
10/17/06
Alto Personal Distributed Computing
116
Principles
 “Time machine”—simulate the future
 Use what you build


Good for text, pictures, printing, sound, email
Bad for spreadsheets, databases
 Personal machine


“People are fast, machines are slow”
Performance is predictable
 No grand plan for the system: integration



Not enough experience, cycles or memory
Open OS, world-swap
Exception: Smalltalk
10/17/06
Alto Personal Distributed Computing
117
Alto Hardware




0.3 MIPS
128 KB RAM
2.5 MB disk
3 Mbit Ethernet

for 50 Altos
 600x800 x l display
 $12,000 to make
10/17/06
Alto Personal Distributed Computing
118
Alto Block Diagram
uCode
Registers
I/O
RAM
Compute
10/17/06
Alto Personal Distributed Computing
119
Hardware
 Moore’s law: live in the future if you can

Price X CPU RAM Disk Net
Alto MIPS
 1974: Alto $40k
1
 1984: Mac $3k
1
 1995: PC $3k 100
 2006: PC $1k 10000
10/17/06
MB
MB MB/s
0.3
0.1
2.5
.05
1
0.5
1.5
.03
50
16
2000 1000
Alto Personal Distributed Computing
300
.1
300G 100
120
Hardware Comparison
Item
Alto,
1973
Desktop PC
2006
Factor
CPU clock
6 MHz
3 GHz
500
RAM size
128 KB
1 GB
8000
RAM access
850 ns
100 ns
8.5
Display pixels 606 x 808 x 1
1600 x 1200 x 32
Network
3 Mb Ethernet
1 Gb Ethernet
4 (pixels)
128 (bits)
300
Disk capacity
Cost
2.5/5 MB
250 GB
$12,000 to make $1,000 to buy
10/17/06
Alto Personal Distributed Computing
100K
12
121
Key Ideas For Hardware
 KISS

Had to be cheap enough to build lots of them
 Bitmap display

Display anything – like paper
 Programmable at all levels

Could change the instruction set and add new
operations easily
 Flexible and powerful input-output

Ethernet and Laser Printer controllers were add-ins
 Distributed system

Connect many systems together with Ethernet
10/17/06
Alto Personal Distributed Computing
122
Alto In Use
10/17/06
Alto Personal Distributed Computing
123
Alto Awaiting Restoration
10/17/06
Alto Personal Distributed Computing
124
Ethernet
 CSMA/CD







Based on Aloha
Collision detect
Exp. Backoff
3 Mbits/sec
Shared by 50 Altos
Repeaters
Much later,
switches
10/17/06
Alto Personal Distributed Computing
125
Laser Printers
 Marriage of Xerography and Computing
 EARS was the first (1974) print server




Ethernet
Alto
Research Character Generator
Scanning Laser Output Terminal
 1 copy/second, 500 dots/inch
 Lower-cost and color versions developed later

Dover: 300 dpi, small Alto interface. 100 copies
 Xerox understood it, built a successful business
10/17/06
Alto Personal Distributed Computing
126
SLOT Printer, 1972
10/17/06
Alto Personal Distributed Computing
127
The software




Programming
Servers
User interface
Applications
 Software is “thought-stuff”
10/17/06
Alto Personal Distributed Computing
128
Programming: OS, languages
 Main problem: live with

.1 MIPS, 128 KB RAM, 5 MB disk
 OS: files, programs, network, command line


Open: get rid of any parts you don’t need
World-swap to change environments
 Languages



BCPL: father of C
Mesa
Smalltalk
10/17/06
Alto Personal Distributed Computing
129
Servers
 Network: Ethernet and Pup

First internet: Ethernet, Arpanet, phone lines, ...
 Printing


3 generations of laser printer hardware
3 generations of imagers: Ears, Press, Interpress
 Files


“Interim” file system
Research file systems
 Email


Tenex Arpanet email
Grapevine distributed naming and email
10/17/06
Alto Personal Distributed Computing
130
User interfaces
 Windows


Smalltalk pioneered overlapping windows
Other software used tiled windows
10/17/06
Alto Personal Distributed Computing
131
Smalltalk
 Complete system




OO language
Integrated edit/debug
Windows
BitBlt
10/17/06
Alto Personal Distributed Computing
132
Bravo
 First WYSIWYG editor
 Prototype for MS Word
 Initial ideas


Piece table for document
Cache line bit maps
 Later



READY: Select operand or type command
Last command was LOOK
{Asubsta...!way} {Computer... XEROX}$
Personal Distributed Computing
The Alto and Ethernet Software
Butler W. Lampson
Digital Equipment Corp. Systems Research Center
Abstract
The personal distributed computing system based on the Alto and
the Ethernet was a major effort to make computers help people to
think and communicate. A complex and diverse collection of
software was built to pursue this goal, ranging from operating
systems, programming environments, and communications
software to printing and file servers, user interfaces, and
applications such as editors, illustrators, and mail systems.
1. Introduction
Fonts and layout
High-quality printing
Styles
 Modeless UI from Gypsy
A substantial computing system based on the Alto [Thacker et al.
Computer Science Laboratory
Xerox Palo Alto Research Center
3333 Coyote Hill Road
Palo Alto, California 94304
XEROX
Glen J. Culler
608 Litchfield Lane
Santa Barbara, CA 93109
Dear Glen:
10/17/06
This is a follow-up to earlier correspondence you received from Alan
Perlis regarding the ACM Conference on the History of Personal
Workstations. As you know, the conference is scheduled for January
Alto Personal Distributed Computing
133
User interfaces
 Windows


Smalltalk pioneered overlapping windows
Other software used tiled windows
 Views—compute what you see



Smalltalk browser
Bravo multiple document views
Laurel email folders
10/17/06
Alto Personal Distributed Computing
134
10/17/06
Alto Personal Distributed Computing
135
Laurel Email Header Pane
Laurel 6
Friday May 1, 1981 11:07 am PDT
Login please.
891 free disk pages
User {LaurelSupport.PA} New Mail Mail File {Tutorial}
Quit
?
1 Apr. 27 LaurelSupport
?
?
?
?
?
?
?
?
?
2
3
4
5
6
7
8
9
10
Apr. 27
Apr. 27
Apr. 27
Apr. 27
Apr. 27
Apr. 27
Apr. 27
Apr. 27
Apr. 27
LaurelSupport
LaurelSupport
LaurelSupport
LaurelSupport
LaurelSupport
LaurelSupport
LaurelSupport
LaurelSupport
LaurelSupport
TO START YOUR TUTORIAL SESSION:
Point cursor at “Display” and click the left
mouse button
Displaying a selected message
Message number 3 in Tutorial.mail
"Delete" and "Undelete"
Movable boundaries
Thumbing
"New mail"
"Hardcopy"
Composing messages
Recipient names
Display Delete Undelete Move to { }
Date: 27 April 1981 10:36 am PDT (Monday)
From: LaurelSupport.PA
10/17/06
Alto Personal Distributed Computing
Hardcopy
136
Laurel/Grapevine
 Distributed email system



Multiple servers
Names, mailboxes
Eventual consistency
Laurel 6
Friday May 1, 1981 11:07 am PDT
Login please.
891 free disk pages
User {LaurelSupport.PA} New Mail Mail File {Tutorial}
Quit
?
1 Apr. 27 LaurelSupport
? 2
? 3
? 4
? 5
? 6
? 7
? 8
? 9
? 10
Apr. 27
Apr. 27
Apr. 27
Apr. 27
Apr. 27
Apr. 27
Apr. 27
Apr. 27
Apr. 27
LaurelSupport
LaurelSupport
LaurelSupport
LaurelSupport
LaurelSupport
LaurelSupport
LaurelSupport
LaurelSupport
LaurelSupport
TO START YOUR TUTORIAL SESSION:
Point cursor at “Display” and click the left
mouse button
Displaying a selected message
Message number 3 in Tutorial.mail
"Delete" and "Undelete"
Movable boundaries
Thumbing
"New mail"
"Hardcopy"
Composing messages
Recipient names
Display Delete Undelete Move to { }
 3-pane window



Headers
Message in
Message out
Hardcopy
Date: 27 April 1981 10:36 am PDT (Monday)
From: LaurelSupport.PA
Subject: TO START YOUR TUTORIAL SESSION: Point cursor at “Display” and
click the left mouse button
To: @NewUsers
Welcome to the community of Laurel Users. Laurel is the Alto program that
serves as your mail reading, composition and filing interface to the Distributed
Message System. Since you are reading this message, you have already learned to
use the "Display" command.
While reading a message in this middle region you have the ability to scroll up and
down as in Bravo, using the double-headed arrow cursor in the left margin. You
may also notice that it you hold down the left or right mouse button in the scroll
area, then continuous scrolling is performed. If the words End of Message in
italics are not visible, then there is more message to be seen, and you should scroll
up to see more.
When Laurel started up, it read in this mail file named Tutorial.mail. An index
New form Answer Forward Get Put Copy Run
Subject: ? Topic?
To: ? Recipients?
cc: ? CopiedTo? , LaurelSupport
? Message?
10/17/06
End of Message
Alto Personal Distributed Computing
137
User interfaces
 Windows


Smalltalk pioneered overlapping windows
Other software used tiled windows
 Views—compute what you see



Smalltalk browser
Bravo multiple document views
Laurel email folders
 Menus


Markup had pop-up menus
Smalltalk had the first icons
10/17/06
Alto Personal Distributed Computing
138
Markup’s Popup Menu
10/17/06
Alto Personal Distributed Computing
139
User interfaces: Displaying things
 Images


Bit-maps (as in Paint and Photoshop)
Object graphics (as in MacDraw and Illustrator)
 Fonts


Spline outlines for scalable fonts
Screen versions hand-drawn—hinting much later
 BitBlt

Computing with rectangular bitmaps
10/17/06
Alto Personal Distributed Computing
140
Markup
 Pure bit-map editing


Arbitrary images
Low resolution
 Popup menu
10/17/06
Alto Personal Distributed Computing
141
Draw
segment A
segment X
segment Y
P1
P2
The transformation is specified by six points (say, in the order of input: P1, P2,, P3, Q1, Q2,
and Q3). It is defined by the mapping of the source triangle P 1P2P3 into the target triangle
Q1Q2Q3 as illustrated here:
Q2
P2
WESTERN EDITION
triangle
triangle
cents/bit
circle
0.7
0.6
circle
Bipolar RAMs
0.5
P1
Dynamic
NMOS RAMs
0.4
Q1
P3
Q3
CMOS RAMs
RED
Core
0.3
YELLOW
0.2
CCDs
BLUE
0.1
Bubbles
1972
10/17/06
73
74
75
76
77
78
79 1980
Alto Personal Distributed Computing
142
SIL for Logic Drawings
10/17/06
Alto Personal Distributed Computing
143
Applications
 Writing: Bravo  Microsoft Word
 Drawing



Markup  Paint programs
Draw  MacDraw, Illustrator, Powerpoint, etc.
Sil  CAD programs
 Email: Laurel mh, Eudora, Outlook, etc.
10/17/06
Alto Personal Distributed Computing
144
What the Alto system was like
 Just like today’s personal computing world

Writing, drawing, music, networks, printing, email
 Except




The Web, search engines
Spreadsheets
Integration
Speed
10/17/06
Alto Personal Distributed Computing
145
What Xerox did with the Alto
 Electronic printing—many billions of dollars
 Xerox Star—Office system
 Fumbled the future?

Yes, but the real story is more interesting
 “It’s easier to get a venture capitalist to give you
money than to persuade the management of a large,
successful company to try something new.”
—Gordon Moore
10/17/06
Alto Personal Distributed Computing
146
Xerox Products: Printing
 9700—2 pages/sec computer
printer

Based on Xerox 9200 copier
▬
▬


Hence sheet fed, good paper handling
Hence blue laser
“Character generator” based on
PARC RCG
Competition: IBM laser printer
▬
Fan-fold paper
 Low end printers


First for Star—8000 print server
Later OEMed, but too expensive
 Interpress—ancestor of Postscript
10/17/06
Alto Personal Distributed Computing
147
Xerox Products: Star Office System
 Star, shipped 1981 (same as IBM PC)

Ran on Dandelion processor
 Built on Mesa and Pilot

Reliable, somewhat slow
 Highly integrated

Editing, spreadsheet, filing, printing
 Best office system for at least 10 years


Roughly = 1995 MS Windows /Office
Didn’t sell—too expensive, closed
▬
▬
$20-25k/workstation in total; 25,000 sold
Apple Lisa in 1982 failed for the same reasons
 Irony: researchers wanted a much
simpler product
10/17/06
Alto Personal Distributed Computing
148
What Went Wrong?
 Printing

Xerox focus on high end copiers and printers
▬

“No money in low end”
Target existing markets: computer printing
▬
Office printing ignored. Apple, HP won this in 1985
 Star Office System

Engineers had a vision, and achieved it
▬
▬


A wonderful system: 10 years ahead of its time
Too expensive, inflexible
Overwhelmed by IBM PC wave
Researchers pushed for something more like Alto
10/17/06
Alto Personal Distributed Computing
149
What Others Did with the Alto
Ethernet
Xerox-DEC-Intel
Laser printing, Postscript
Adobe, Canon, HP
Lisa, Macintosh
Apple
Windows, Word
Microsoft
Workstations
Apollo, Sun, Lisp machines
Networking
Internet, Novell
File and print servers
Novell
10/17/06
Alto Personal Distributed Computing
150
Today
 Today’s PC is about 10,000 X an Alto
 Where did all the resources go?






Visual fidelity and elegance
Integration
Backward compatibility
Scale—books, not just memos
Time to market
Response time
 Did we foresee it?

Of course: Moore’s law.
10/17/06
Alto Personal Distributed Computing
152
Tomorrow
 “The best way to predict the future is to invent it.”
 Are computers boring now? Hardly!
 Computers are good for three things:



1955: Simulation
1980: Communication
2005: Embodiment—interact with the physical world
 The best is yet to come—see research.microsoft.com/gray



Robots
Computers that see, hear, talk, understand
Information at your fingertips
10/17/06
Alto Personal Distributed Computing
153
Impact: software as
information vs. as machine
• Unbundling of software and backward compatibility
– Unheard-of before IBM S/360; impractical before PDP-8
– Result: customer investment is mostly software: licensing,
training, support organization, etc.
– The entire business model of Intel/Microsoft
• Breaking away from the “priesthood” model: BSD+VAX
– Before DEC & BSD, IBM owned the software/computer industry
– today, >2/3 of Web servers rely on Open Source software,
the spiritual descendant of PDP-8/BSD Unix
• Moore’s Law (computer speeds double every 18 months)
makes very-high-level languages affordable
– Compilers no longer slow
– Interpreters no longer slow
– Languages can focus on being easier to learn: each language
element does a lot more computing work
– Everyday examples: Excel macros, MATLAB, Visual Basic
Hardware Steve’s Used

CSE
3002



High school 1976
 PDP 11 installed by Digital Equipment Corp VP
 Basic programming and paper tape
Boston College 1976-1980
 IBM mainframe on punch cards (deck in h2o)
Michigan State 1980-1982
 Atari 800 computer with TV, 1200 baud modem cassette
tape player for programs basic
 Remote access to MSU mini computer via dialup and
vt100 screen (24 lines x 72 characters)
 Remote access to UM computer for project
Ohio State 1982-1987 (1 year in Columbus)
 Research project Algorithmic spec and programming in C
on PDP11/44
 PCL Network (Parallel Communication Link)
 DEC shipped a paper tape machine to install software
HoCov-1.155
Hardware Steve’s Used

CSE
3002

Naval Postgraduate School 1983-1987
 Two multi-computer architectures
 PDP11/44, VAX, point to point network (PCL),
64k virtual memory,128 k physical overlays
 1st generation Unix Workstations
 $250K for 8 workstations
 1st use of Ethernet but no broadcast capability
 Note: Computer for Remote Access had 0/1
Switches for Rebooting when Problems!
UConn 1987-present
 DEC rainbow PC
 Sun Microsystems workstation, $20,000
 Black and white,)15in screen, no memory
 Connected to server, UNIX, email, troff, etc.
HoCov-1.156