A short Computer History
Mar 28, 2015
A short Computer History
Computer System as Multilevel Machine
Digital logic level
Microarchitecture level
Instruction set architecture level
Operating system machine level
Assembly language level
Problem-oriented language level
Translation (compiler)
Translation (assembler)
Partial interpretation (operating system)
Interpretation (microprogram) or direct execution
Hardware
Tanenbaum: Computer Architecture
Level 0
Level 1
Level 2
Level 3
Level 4
Level 5
Evolution of Multilevel Machines
• Clear distinction between hardware and software• Hardware implements machine instructions• Software uses those machine instructions for programming
• The invention of microprogramming• 1951 by Maurice Wilkes, University of Cambridge• Simplified hardware reduced tube count and enhanced
reliability.• By 1970 using a microprogram was dominant
Evolution of Multilevel Machines
• In the early days, people:– reserved the computer for a block of time– brought in their FORTRAN program as a desk of punched cards– took the FORTRAN compiler out of a cabinet– inserted first the compiler and then the program– Inserted the program again for a second pass of the compiler– the compiler punched out the machine program.– put in the machine program– …
• This procedure was normal in many compute centers for years.
• In 1960 the operators job was automated
The Evolution of Multilevel Machines
• The invention of the operating system• Operating system was kept in memory• It read and executed jobs consisting of the Fortran code and
the data cards for execution.• Interspersed with OS commands like compile and execute
• One of the first widespread operating systems was FMS (FORTRAN Monitor System)
• Additions, e.g., IO, were called operating system macros or supervisor calls (today system calls)
• 1960 the timesharing system was developed at MIT• Multiple users could access the machine simultaneously from
remote terminals
Computer Generations
• Zeroth Generation -1945: Mechanical Computers• First Generation - 1955: Vacuum Tubes• Second Generation - 1965: Transistors• Third Generation – 1980: Integrated Circuits• Fourth Generation - …: Very Large Scale Integration• Fifth Generation: The invisible computer
The Zeroth Generation – Mechanical Computers (1642 – 1945)
• Blaise Pascal • built 1642 a computer to help his father in tax collection
• Gottfried Leibniz• built 1670 a mechanical machine that could also multiply and
divide.
The Zeroth Generation – Mechanical Computers (1642 – 1945)
• Built 1846 the analytical machine consisting of store (for variables), the mill (processing unit), input and output section. It could execute different programs on punched cards instead of only one (difference engine).
• The programs were developed by Ada Augusta Lovelace.
• Charles Babbage (1792-1871) • Built 1822 the difference engine to compute tables for navy
navigation. Result was engraved in a copper plate (write-once medium)
The Zeroth Generation
• Konrad Zuse (late 1930) • 1938: Z1 mechanical engine, binary system, floating point
arithmetic, programs on punched tape• 1941: Z3 machine based on
electromagnetic relays, binaryarithmetic
• Work lost in the war.
• Howard Aiken (1944)• Built a relay-based machine with 72 words of 23 decimal
digits, and an instruction time of 6 sec. • His work was based on Babbage's work he found in the
library.
The First Generation – Vacuum Tubes (1945–1955)
• British intelligence (1944)• Built COLOSSUS the world first electronic digital computer• Alan Turing helped in the design• Designed to decode German messages
• Jon Mauchley and Presper Eckert (1946)• Built ENIAC with 18.000 tubes, 1.500 relays. It weighed 30
tons and consumed 140 kilowatt.• Decimal arithmetic, each digit represented by 10 tubes• Grant by the army.
• Maurice Wilkes (1946)• EDSAC, binary arithmetic• First stored program computer• Developed in UK
The First Generation – Vacuum Tubes (1945–1955)
• John von Neumann• Designed the von Neumann Architecture in 1945 for EDVAC• Built 1952 the IAS machine where program and data were in
the same memory.• Parallel addition • It used binary arithmetic.
The Second Generation – Transistors (1955–1965)
• Transistor was invented at Bell Labs in 1948• Within 10 years vacuum tube computers were obsolete
• The first minicomputer PDP1 was built by DEC in 1961.
• It cost $120.000 compared to millions for the twice as fast transistorized computer of IBM, the IBM 7090.
• CDC introduced CDC 6600• It was 10 times faster than IBM 7090.• The CPU had multiple functional units that could run in
parallel.• It also had smaller computers inside to do IO etc.• The designer was Seymour Cray
The Third Generation – Integrated Circuits (1965–1980)
• Integrated circuits were co-invented by Jack Kilby and Robert Noyce in 1958
• Jack Kilby demonstrated it half a year before Noyce on September 12th
• @ Texas Instruments• Got Nobel Prize in physics in 2000• Germanium based• Demonstrated continuous sine wave
• Rober Noyce• @ Fairchild Seminconductors (Co-Founder)• Silicon based• 1968 he and Gordon Moore founded Intel
The Third Generation – Integrated Circuits (1965–1980)
• IBM build the System/360• It was the first machine with
multiprogramming for better CPU utilization.
• It could emulate other machines, e.g., the IBM 7094, via special microcode.
• It had a huge address space of 224 bytes (16 MB) which was sufficient until mid 1980s
• Key features of lasting impact: 8bit byte, byte addressable memory, 32 bit word, two’s complement, EBCDIC character set
• DEC developed the PDP-11
The Third Generation – Integrated Circuits (1965–1980)
• Xerox designed the Alto I• 1973• Palo Alto Research Center• First computer with a
graphical interface.• Birth of
– the mouse–WYSIWYG printing–cut-and-paste–Ethernet
The Fourth Generation – Very Large Scale Integration (1980-?)
• Personal computer started due to price drop• Apple, Commodore, Atari• IBM PC in 1981 based on Intel CPU
• In 1984 the Apple Macintosh was the first personal computer with a Graphical User Interface.
• Mid 1980s RISC was born
• 1992 DEC produced the first 64-bit RISC processor, the Alpha processor.
The Fifth Generation – Invisible Computers
• In 1993 the Apple Newton was the first PDA• Small embedded processors are changing the world• Going towards ubiquitous computing or pervasive
computing
Milestones in Computer Architecture
Jahr Bezeichnung Hersteller Anmerkungen
1834 Analytical Engine Babbage Erster Versuch, einen digitalen Computer zu bauen
1941 Z3 Zuse Erste funktionierende Relais-Rechenmaschine
1943 COLOSSUS Britische Regierung Erster elektronischer Computer
1944 Mark I Aiken Erster amerikanischer Universalcomputer
1946 ENIAC I Eckert/Mauchley Beginn der modernen Computergeschichte
1949 EDSAC Wilkes Erster speicherprogrammierter Computer
1951 Whirlwind I M.I.T. Erster Echtzeitcomputer
1952 IAS Von Neumann Die meisten heutigen Maschinen weisen dieses Design auf
1960 PDP-1 DEC Erster Minicomputer (50 Stück verkauft)
1961 1401 IBM Sehr beliebter Rechner bei kleinen Firmen
1962 7094 IBM Beherrschte Anfang der 60er Jahre die wissenschaftliche Rechenwelt
1963 B5000 Burroughs Erste für eine Hochsprache entwickelte Maschine
1964 360 IBM Erste als Familie ausgelegte Produktlinie
1964 6600 CDC Erster wissenschaftlicher Supercomputer
Milestones in Computer Architecture1965 PDP‑8 DEC Erster Minicomputer für den Massenmarkt (50.000
Stück verkauft)
1970 PDP‑11 DEC Vorherrschender Minicomputer der 70er Jahre
1974 8080 Intel Erster 8-Bit-Universalcomputer auf einem Chip
1974 CRAY-1 Cray Erster Vektor-Supercomputer
1978 VAX DEC Erster 32-Bit-Superminicomputer
1981 IBM PC IBM Beginn der modernen Personalcomputer-Ära
1981 Osborne-1 Osborne Erster portabler Computer
1983 Lisa Apple Erster Personalcomputer mit grafischer Benutzeroberfläche (GUI)
1985 386 Intel Erster 32-Bit-Vorgänger der Pentium-Linie
1985 MIPS MIPS Erster kommerzielle RISC-Rechner
1987 SPARC Sun Erste SPARC-basierte RISC-Workstation
1990 RS6000 IBM Erste superskalare Maschine
1992 Alpha DEC Erster 64-Bit-Personalcomputer
1993 Newton Apple Erster Palmtop-Computer
Von Neumann Architecture(1946)
1. Computer consists of 4 units• Memory (programs and data)• Control unit (interprets the program)• Arithmetic unit • I/O unit
2. The structure is indepent of the problem (programmable)
3. Program and data are in the same memory
4. The memory is structured into cells of a fixed length
5. The program consists of instructions that are executed sequentially.
6. There can be (conditional) jumps.
7. The machine is based on binary representation.
Predecessors
Mechanical Computer Program control
Without compute unit
With compute unit
Von-Neumann Computer
Predecessor of the von Neumann Architecture
1500v. Chr
0
1623 Schickard: Mechanical ADD/SUB Machine 1645 Pascal: “ “ “1674 Leibniz: Four operations machine
1805 Jaquard: Punched card loom
1823 Babbage: Analytical Enginge (punched card, programmable system) Decimal representation, never built
1100 -
Suan Pan (Ostasien) Soroban (Japan) Abakus
Punched Cards
Computer Exhibition at Deutsches Museum