![Page 1: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/1.jpg)
Vorlesung 2
Rechnerarchitektur
Peter B. [email protected]
Wintersemester 2001/2002
Universität BielefeldTechnische Fakultät
![Page 2: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/2.jpg)
*
7. Februar 2003 2
Universität BielefeldTechnische Fakultät
Inhalt
Allgemeine von Neumann Architektur CPU Architektur Wie sie funktionieren Assembly Sprache Befehl Ausführung
![Page 3: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/3.jpg)
*
7. Februar 2003 3
Universität BielefeldTechnische Fakultät
Architektur nochmal
![Page 4: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/4.jpg)
*
7. Februar 2003 4
Universität BielefeldTechnische Fakultät
CPU
![Page 5: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/5.jpg)
*
7. Februar 2003 5
Universität BielefeldTechnische Fakultät
Assembly-Sprache
Arithmetische Operationen Add: ACC <- ACC + <Sp.Ad.-Inhalt> Subtract: ACC <- ACC - <Sp.Ad.-Inhalt> Shift (multiply by 2): ACC <- ACC * 2 == alle Bits in
ACC einmal nach links gestellt mit 0 in Low-Order Bit Multiply: ACC <- ACC * <Sp.Ad.-Inhalt> Divide: ACC <- ACC / <Sp.Ad.-Inhalt>
![Page 6: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/6.jpg)
*
7. Februar 2003 6
Universität BielefeldTechnische Fakultät
Assembly-Sprache
Logische Operationen "Jump <Befehl-Ad.>" : Inhalt der <Bef.-Ad.> wird in IR
geladen; PC wird <Bef.-Ad.> + 1 "Load <Sp.-Ad.>": Inhalt der <Sp.-Ad.> wird in ACC
geladen; PC wird PC + 1 "Store <Sp.-Ad.>": Inhalt des ACCs wird in <Sp.Ad.>
gespeichert; PC wird PC + 1 "If ACC then <Bef.-Ad.>": ACC > 0 then PC wird
<Bef.-Ad.>; ACC </= 0 then No-Op.
![Page 7: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/7.jpg)
*
7. Februar 2003 7
Universität BielefeldTechnische Fakultät
CPU des DEPs
![Page 8: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/8.jpg)
*
7. Februar 2003 8
Universität BielefeldTechnische Fakultät
Busarchitektur - das Ideal
![Page 9: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/9.jpg)
*
7. Februar 2003 9
Universität BielefeldTechnische Fakultät
Busarchitektur - Der Plan
![Page 10: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/10.jpg)
*
7. Februar 2003 10
Universität BielefeldTechnische Fakultät
Busarchitektur - Die Realität
![Page 11: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/11.jpg)
*
7. Februar 2003 11
Universität BielefeldTechnische Fakultät
VM-Beispiel
· JUMP <Sp-Adr>· Dekodiere JUMP / <Sp-Adr>· <Sp-Adr> -> MAR; PC <- <Sp-Adr> + 1· Datum -> MBR· MBR -> IR· IR -> DSW
![Page 12: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/12.jpg)
Speicherverwaltung
Technische Informatik IIWintersemester 2002/03
Heiko [email protected]
Sommersemester 2001
Universität BielefeldTechnische Fakultät
![Page 13: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/13.jpg)
*
7. Februar 2003 13
Universität BielefeldTechnische Fakultät Speicherhierarchie
Magnetband etc.
Magnetspeicher
Hauptspeicher
Cache
Register
CPU
Typische Zugriffszeit* Typische Kapazität*
1 ns
2 ns
10 ns
10 ms
100 s
< 1 KByte
1 MByte
64-512 MB
5-80 GB
20-100 GB
* Sehr grobe Schätzungen
![Page 14: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/14.jpg)
*
7. Februar 2003 14
Universität BielefeldTechnische Fakultät Virtueller Speicher: Paging
2
1
6
0
4
3
X
X
X
5
X
7
X
X
X
X
VirtuellerAdressraum
0K-4K
4K-8K
8k-12K
12K-16K
16K-20K
20K-24K
24K-28K
28K-32K
32K-36K
36K-40K
40K-44K
44K-48K
48K-52K
52K-56K
56K-60K
60K-64K
0K-4K
4K-8K
8k-12K
12K-16K
16K-20K
20K-24K
24K-28K
28K-32K
PhysischeSpeicheradresse
}
Seitenrahmen
} Virtuelle Seite
![Page 15: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/15.jpg)
*
7. Februar 2003 15
Universität BielefeldTechnische Fakultät
Das Vermeiden von Busy Waiting
· Die Schleife heisst jetzt i <- 10; while i > 0 do read (TEG-R); Store; i <- i - 1 weitermachen
· Die Schleife läuft nur 10 Mal durch
![Page 16: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/16.jpg)
*
7. Februar 2003 16
Universität BielefeldTechnische Fakultät
Vorfälle
Der Mars Pathfinder - Ein Scheduling Problem Ariane Flight 501 - Ein Requirements Problem Der USS Yorktown - Ein System Crash
Die Vorfälle zeigen, welche Probleme es in der Benutzung von Betriebssystemen in
Missionskritischen Systemen geben kann
![Page 17: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/17.jpg)
*
7. Februar 2003 17
Universität BielefeldTechnische Fakultät
Prozess Synchronizierung Puzzle I
· Process 1: (x: integer)begin x <- 0; x <- x+1; stop; end
· Process 2: (x: integer)begin read x; stop; end
· Was ist der gelesene Wert von x, wenn dieseProgramme concurrent laufen?
![Page 18: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/18.jpg)
*
7. Februar 2003 18
Universität BielefeldTechnische Fakultät
Prozess Synchnozierung Puzzle 2
· Prozess 1: (x: integer)begin x <- 0; x <- x+1; stop; end
· Prozess 2: (x,y: integer)begin y <- 0; y <- x+1; stop; end
· Voraussetzung: Memory Platz x ist dergleicheals Memory Platz y
· Werte von x, y an Ende?
![Page 19: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/19.jpg)
*
7. Februar 2003 19
Universität BielefeldTechnische Fakultät
Prozess Synchronizierung Puzzle 3
· Wert von der Variabel z ist 1, falls es existieren20 Blöcke freiverfügbarem Speicher;
· ...ist 2, falls es ...< 20 Blöcke....· Wert von z ist 1· Prozess 1 braucht 15 Blöcke, Prozess 2 auch· Beide lesen z gleichzeitig· Was passiert?
![Page 20: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/20.jpg)
*
7. Februar 2003 20
Universität BielefeldTechnische Fakultät
Prozess Synchronizierung Puzzle 4
· Programm 1 und Programm 2 lesen Variabel turn
· turn könnte von Programm 3 geschrieben werden
· turn hat 3 Bits· turn = 001 bedeutet, Prog 1 kann den Drucker
benutzen· Turn = 101 bedeutet, Prog 2 ............
![Page 21: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/21.jpg)
*
7. Februar 2003 21
Universität BielefeldTechnische Fakultät
![Page 22: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/22.jpg)
*
7. Februar 2003 22
Universität BielefeldTechnische Fakultät
Sequentielle Operationen in Logik
· Sei es, wir möchten eine Sequenz vonOperationen spezifizieren:-
· Also p == (a; b; )g· Logik hat keine Sequentializierungs-Operator· Wir definieren
A: Ù pc = `a' B: Ù pc = `b' G: Ù pc = `c' Ù a Ù b Ù g Ù pc¢ = `b' Ù pc¢ = `c' Ù pc¢ = `d'
und
P == ( A Ú B Ú G Ú NoOp)
![Page 23: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/23.jpg)
*
7. Februar 2003 23
Universität BielefeldTechnische Fakultät Client-Server Modell
![Page 24: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/24.jpg)
*
7. Februar 2003 24
Universität BielefeldTechnische Fakultät Netz-Typen
![Page 25: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/25.jpg)
*
7. Februar 2003 25
Universität BielefeldTechnische Fakultät LAN-Topologie
![Page 26: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/26.jpg)
*
7. Februar 2003 26
Universität BielefeldTechnische Fakultät LAN-Topologie
![Page 27: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/27.jpg)
*
7. Februar 2003 27
Universität BielefeldTechnische Fakultät LAN-Topologie
![Page 28: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/28.jpg)
*
7. Februar 2003 28
Universität BielefeldTechnische Fakultät
Protokolle- Das Schichtenmodell
![Page 29: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/29.jpg)
*
7. Februar 2003 29
Universität BielefeldTechnische Fakultät
Protokolle- Das Schichtenmodell
![Page 30: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/30.jpg)
*
7. Februar 2003 30
Universität BielefeldTechnische Fakultät Services- Nachrichtentypen
· Messages· Unbestimmte Länge
· Streams· Unendliche Länge (nicht in Wirklichkeit!)
· Datagrams/Pakete· Bestimmte Länge
![Page 31: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/31.jpg)
*
7. Februar 2003 31
Universität BielefeldTechnische Fakultät Services-Primitiven
![Page 32: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/32.jpg)
*
7. Februar 2003 32
Universität BielefeldTechnische Fakultät Das OSI Reference Model
![Page 33: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/33.jpg)
*
7. Februar 2003 33
Universität BielefeldTechnische Fakultät TCP/IP im Vergleich zu OSI
![Page 34: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/34.jpg)
*
7. Februar 2003 34
Universität BielefeldTechnische Fakultät
Access Control Modelle
![Page 35: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/35.jpg)
*
7. Februar 2003 35
Universität BielefeldTechnische Fakultät
Buffer Overflow Schwäche statisch gezeigt
![Page 36: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/36.jpg)
*
7. Februar 2003 36
Universität BielefeldTechnische Fakultät
Buffer Overflow Angriff
![Page 37: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/37.jpg)
*
7. Februar 2003 37
Universität BielefeldTechnische Fakultät
Covert Channel
![Page 38: Vorlesung 2 Rechnerarchitektur Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Wintersemester 2001/2002 Universität Bielefeld Technische Fakultät](https://reader036.vdocuments.net/reader036/viewer/2022070310/55204d6649795902118bc188/html5/thumbnails/38.jpg)
*
7. Februar 2003 38
Universität BielefeldTechnische Fakultät
Remote und Local Exploits