Title: ca1-1
1Les 1 Inleiding
Computer Science is a science of abstraction -creating the right model for a problem and devising the appropriate mechanizable techniques to solve it. - A. Aho and J. Ullman
2Overzicht
- Een beetje geschiedenis
- Het von Neumann model
- Logisch zicht
- Fysiek zicht
- Abstractieniveaus in computersystemen
- Architectuur vs. organisatie
- Hardwarecomponenten
3Een beetje geschiedenis
- Computer rekenaar
- Materiële ondersteuning van rekenen is zeer oud
- Essentieel bij deze ondersteuning algoritme
een recept om via een opeenvolging van kleine
transformaties een resultaat te berekenen
4Algoritme
controle
Toestand
5Uitvoering van een algoritme
controle
transformaties
1181 237
toestand
1
8
6Automatiseringsgeschiedenis
- Automatisering van de toestand extern
toestandsgeheugen - Vingers, keitjes, knoopjes
- Telraam (13e eeuw China)
- geschreven symbolen
Wolfsbeenderen 5000 v.C. Steentijdperk
7Automatiseringsgeschiedenis
- Automatisering van de transformaties
- Zeventiende eeuw
- Rekenlat (1622)
- Mechanische calculatoren
1673 producten Gotfried Leibniz
1642 sommen Blaise Pascal
1622 William Schickard
8Automatiseringsgeschiedenis
- Automatisering van de controle
- Jacquardweefgetouw met ponskaarten (begin 19e
eeuw) - Babbage eerste samenvoeging van toestand,
transformatie en controle in één model.
Speeltrommel beiaard 1659, Belfort Gent
9The difference engine
1822- 6 decimalen Eenvoudige wiskundige
bewerkingen
Charles Babbage (1791-1871)
http//www.youtube.com/watch?v0anIyVGeWOI
http//www.youtube.com/watch?vBlbQsKpq3Ak
10The analytical engine
Charles Babbage (1791-1871)
Ada Lovelace (1815-1852)
1837-
11Automatiseringsgeschiedenis
- Echte doorbraak in de automatisering van de
controle - Ontwikkelingen in de telefonie (begin 20e eeuw)
- Konrad Zuse eerste elektromechanisme computer
Z1 (1938-1943, 1989) - Mauchly Eckert eerste computer ENIAC
Electronic Numerical Integrator And Computer
(1946) - John von Neumann eerste stored program computer
EDVAC (1949)
12Z-1 (1938-1943,1989-) Mechanisch
Konrad Zuse (1910-1995)
1 vermenigvuldiging 5s
13Z-3 (1941) met relais
Eerste volwaardige elektromechanische computer
Plankalkül (1945)
Rekende binair
Vermenigvuldiging 3s
Deutsches Museum in München
14Harvard Mark I (1944) met relais
IBM automatic sequence controlledcalculator
(ASCC)
Howard Aiken (1900-1973)
Optelling 6s
15Eerste bug 9 september 1947 Mark II
16- I think there is a world market for maybe five
computers
1943
Thomas Watson (1874 - 1956) IBM Chairman
17ENIAC Electronic Numerical Integrator And
Computer (14 feb 1946)
Mauchly
Eckert
23 m2, 30 ton, 17468 buizen, 200 kW
14 vermenigvuldigingen per s
18- "Computers in the future may weigh no more than
1.5 tons. - Popular Mechanics, 1949
19Programmeren van de ENIAC
20Logisch zicht ENIAC
Transformaties
rekeneenheid
controle
Toestand
programma
gegevens
21Electronic Discrete Variable Automatic Computer
EDVAC
1949
John von Neumann (1903-1957)
300 vermenigvuldigingen per s
22Logisch zicht EDVAC
computer
Transformaties
rekeneenheid
controle
Toestand
programma
gegevens
geheugen
23Overzicht
- Een beetje geschiedenis
- Het von Neumann model
- Logisch zicht
- Fysiek zicht
- Abstractieniveaus in computersystemen
- Architectuur vs. Organisatie
- Hardwarecomponenten
24Von Neumann-machineLogisch zicht
Geheugen
data
instructies
25Von Neumann-machineFysiek zicht
Controle
cache
klok
registers
Invoer/Uitvoer
26Overzicht
- Een beetje geschiedenis
- Het von Neumann model
- Logisch zicht
- Fysiek zicht
- Abstractieniveaus in computersystemen
- Architectuur vs. organisatie
- Hardwarecomponenten
27Abstractieniveaus
- Een computersysteem bestaat uit een hiërarchie
van lagen - Elke laag heeft een goed gedefinieerde interface
naar de bovenliggende en onderliggende lagen - Essentieel bij de ondersteuning van opwaartste
compatibiliteit
28Lagen
Toepassingsprogrammas
Hoog-niveauprogrammeertalen
Machinetaal
Datapad Controlepad
RTL-niveau
Poortnetwerken
Transistors en verbindingen
29Lagen
Toepassingsprogrammas
Door de programmeur Door codegeneratoren
Hoog-niveauprogrammeertalen
Machinetaal
Datapad Controlepad
RTL-niveau
Poortnetwerken
Transistors en verbindingen
30Lagen
Toepassingsprogrammas
Hoog-niveauprogrammeertalen
Door de compiler ( vertaler)
Machinetaal
Datapad Controlepad
RTL-niveau
Poortnetwerken
Transistors en verbindingen
31Lagen
Machinetaal
Controle-eenheid
Datapad Controlepad
32Lagen
Datapad Controlepad
Micro-architectuur
RTL-niveau
33Lagen
Toepassingsprogrammas
Hoog-niveauprogrammeertalen
Machinetaal
Datapad Controlepad
RTL-niveau
VHDL-compiler
(vhsic hardware description language)
Poortnetwerken
Transistors en verbindingen
34Lagen
Toepassingsprogrammas
Hoog-niveauprogrammeertalen
Machinetaal
Datapad Controlepad
RTL-niveau
Poortnetwerken
Chip-ontwerper Routing-software
Transistors en verbindingen
35Overzicht
- Een beetje geschiedenis
- Het von Neumann model
- Logisch zicht
- Fysiek zicht
- Abstractieniveaus in computersystemen
- Architectuur vs. organisatie
- Hardwarecomponenten
36Lagen
Toepassingsprogrammas
Hoog-niveauprogrammeertalen
Machinetaal
Datapad Controlepad
RTL-niveau
Poortnetwerken
Transistors en verbindingen
37Architectuur vs. Organisatie
zichtbaar
Architectuur
Hardware/software interface
Organisatie
onzichtbaar
38Compatibiliteit
Toepassingsprogrammas
Hoog-niveauprogrammeertalen
Binaire compatibiliteit
Machinetaal
Hardware 1
Hardware 2
Hardware 3
39Compatibiliteit
Toepassingsprogrammas
Broncodecompatibiliteit
Hoog-niveauprogrammeertalen
Machinetaal1
Machinetaal2
Machinetaal3
Hardware 1
Hardware 2
Hardware 3
40Platform
Toepassingsprogrammas
Besturingssysteem
Machinetaal
Hardware
41Porteren
Toepassingsprogrammas
Hoog-niveauprogrammeertalen
porteren
OS 1
OS 2
Machinetaal 1
Machinetaal 2
Hardware 1
Hardware 2
Platform 1
Platform 2
42Emulatie
Toepassingsprogrammas
Hoog-niveauprogrammeertalen
Machinetaal 1
Emulatie
Machinetaal 2
Hardware
43Java Virtuele Machine
Toepassingsprogramma
Java (java-files)
Java bytecode (class-files)
Java virtuele machine (JVM) Interpreter
(vertolker)
Machinetaal
Hardware
44Java Virtuele Machine
Toepassingsprogramma
Java (java-files)
Bytecodecompatibel
Java bytecode (class-files)
JVM 1
JVM 2
JVM 3
Machinetaal1
Machinetaal2
Machinetaal3
Hardware 1
Hardware 2
Hardware 3
45Voorbeelden interpreters
- Java virtuele machine
- .NET
- Visual Basic interpreter
- Web-browser
- Postscript interpreter
- Pdf-interpreter
- Perl interpreter
- Lisp, Prolog
46Overzicht
- Een beetje geschiedenis
- Het von Neumann model
- Logisch zicht
- Fysiek zicht
- Abstractieniveaus in computersystemen
- Architectuur vs. organisatie
- Hardwarecomponenten
47Moederbord
48Processor
49Socket
50Koeler
51Warmtegeleiding
52Chipset
Integreert verschillende functies
klokgenerator, busregelaar, timer,
onderbrekingsregelaar, DMA-regelaar, klok,
toetsenbordregelaar
53Systeemarchitectuur
54Geheugenmodules
55Geheugemodules op het moederbord
56PCI-kaart (Peripheral Component Interconnect)
57PCI-slots
58PCI express
59PCI-Express slots
60Harde schijf
61EIDE (Enhanced Integrated Device Electronics)
62Harde schijf met EIDE connector
63Harde schijf met SATA connector
64Videokaart
NVIDIA GeForce 9800 GTX
65Moederbord
Processorslot
Chip-set
PCI-slots
Geheugenslots
IDE
SATA
66Pauze