Digitale Informationsverarbeitung Institut für Informatik
6. Rechnerarchitektur
❑ Aufbau von Digitalrechnern
❑ Von-Neumann-Rechnerarchitektur
- Komponenten- Prinzipien
❑ Speicher
- Begriffe- Speicherhierarchie- Entwicklungstrends
❑ Betriebssystem
- Betriebssystem und Prozesse- Unix (Dateisystem, Shell-Benutzung)
❑ Alternative Rechnerarchitekturen
Digitale Informationsverarbeitung Institut für Informatik
Aufbau eines Digitalrechners
❑ Digitalrechner (Computer)
universelles informationsverarbeitendes System, welchesFolgen von Operationen (arithmetische, logische, u. a.)durch vorzugebende Programme gesteuert, selbsttätig(automatisch) ausführen kann.Die Universalität besteht darin, daß im Rahmen der vomRechner ausführbaren Operationen beliebige Algorithmen(Verfahren) in entsprechende Programme transformiert(übersetzt) werden können.Es werden ausschließlich digitale Daten - inDualdarstellung - verarbeitet.
❑ Ablaufumgebung
Ein- undA usgabe-
geräte
Rechner
Hardware
A nw endungs-programme
System-programme
Software
SW/H W-Schnit tstell en
HW-Schni ttstellen
Digitale Informationsverarbeitung Institut für Informatik
Von-Neumann-Pr inzipien
1. Der Rechner besteht aus fünf Funktionseinheiten(Steuerwerk, Rechenwerk, Speicher, Eingabewerk,Ausgabewerk).
2. Die Struktur des Von-Neumann-Rechners ist unabhängigvon den zu bearbeitenden Problemen.
3. Programme, Daten, Zwischen- und Endergebnisse werdenin demselben Speicher abgelegt.
4. Der Speicher ist in gleichgroße Zellen unterteilt, diefortlaufend durchnummeriert sind (Adressen).
5. Aufeinanderfolgende Befehle eines Programms werden inaufeinanderfolgenden Speicherzellen abgelegt.
6. Durch Sprungbefehle kann von der Bearbeitung der Befehlein der gespeicherten Reihenfolge abgewichen werden.
7. Es gibt zumindest- arithmetische Befehle- logische Befehle- Transportbefehle- sonstige Befehle wie Schieben, Unterbrechen, Warten
usw.
8. Alle Daten (Befehle, Adressen usw) werden binär codiert.
Digitale Informationsverarbeitung Institut für Informatik
Von-Neumann-Rechner
❑ Zentraleinheit = CPU (Central Processing Unit)
❑ Steuerwerk (Leitwerk): Laden, Dekodierung und Interpretation vonBefehlen sowie Steuerung der an der Ausführung beteiligtenKomponenten
❑ Rechenwerk (ALU, Arithmetic Logical Unit): Ausführung vonarithmetischen und logischen Operationen (Verknüpfung vonOperanden)
Steuerwerk
Zentraleinhei t (Prozessor)Speicher
Rechenwerk
Input/Output
Eingabe-geräte
Di alog- A usgabe- Proz. Spei chergerätegeräteexterner
Peripherie
Rechner
Daten
Programm
Digitale Informationsverarbeitung Institut für Informatik
Datenbus
Adreßbus
KontrollbusRechen-
werk
Steuer-
einheit
Speicher E/A-
Einheit
CPUArbeits-
speicher
Adressen
Daten
Operationsbefehle
❑ Ein potentioneller Engpaß - Kommunikation zwischenCPU und Arbeitsspeicher:
Busstruktur
Digitale Informationsverarbeitung Institut für Informatik
Rechenwerk
.
.
.
Register
Register
Kontroll- und
Steuerschaltungen
AkkumulatorAddierwerk und Komple-mentierer
ALU
Aufbau des Rechenwerks
Digitale Informationsverarbeitung Institut für Informatik
Ar ithmetisch-Logische Einheit
ALU
X-Register Y-Register
Z-Register Flag-Register
Mode
Function-select
M
S1
S0C1
Z1 Z0Z2Z3
C2C3C4
Y2 Y1 Y0Y3 X2 X1 X0X3C0
1-Bit ALU
1-Bit ALU
1-Bit ALU
1-Bit ALU
Over flow
4-Bit-ALU
Digitale Informationsverarbeitung Institut für Informatik
P1: Phase 1
P2: Phase 2
P3: Phase 3
Taktgeber
. . .
R0
R1
R7
3
3
3
1
1
1
1
1
1
Z-Bus Mehrzweck-register
X-Bus Y-Bus
ALU
X-Register Y-Register
Z-Register
Rechnerkern: ALU + Register + Busse
Digitale Informationsverarbeitung Institut für Informatik
Vom Mikroprogramm zum Assemblercode
• Der Mikrocode: Beschreibt Ablauf der Operationen im Rechnerkern (Stellung der Schalter, Steuerleitungen). Dieser wird von der Mikroprogrammeinheit des Steuerwerkes generiert.
• Das Mikroprogramm zur Ausführung der Befehle im ROM des Steuerwerkes gespeichert.
• Maschinencode: Nächsthöhere Ebene der Programmierung. Befehle und Adressen können direkt angesprochen werden. Jeder Befehl durch eine Zahl, seinen OpCode, repräsentiert.
• Assemblercode: Besser lesbare Form der Maschinensprache. Befehle durch Worte benannt.
• Befehle des Assemblercodes in aufeinanderfolgenden Zellen des RAM gespeichert. Änderung in der Reihenfolge der Abarbeitung durch Sprungbefehle.
• Einige Register der CPU erfüllen spezielle Funktionen (Akkumulator, Befehlszähler) und sind direkt ansprechbar.
• Demonstration am „Ein-Adreß-Rechner“ .
Digitale Informationsverarbeitung Institut für Informatik
Speicher I
• Daten und Programme im Speicher des Computers bereitgehalten.
• Programmbefehle im Hauptspeicher in aufeinanderfolgenden Speicherzellen abgelegt.
• Jedes Datum ist ein Speicherwort der Länge n Bits.
• Jedes Wort belegt eine durch eine Adresse ansprechbare Speicherstelle im Speicher.
• Aufbau eines Speicherwortes für einen Befehl:
Operationsteil Adreßteil
Digitale Informationsverarbeitung Institut für Informatik
Speicher I I
❑ ausschließlich als Binärspeicher realisiert
- kleinste Speichereinheit: 1 Bit
- 1 Byte (B) = 8 Bit (erlaubt i.a. Speicherung von 1 Zeichen)
- 1 Kilo-Byte (KB) = 210 B = 1024 B, 1 Mega-Byte (MB) = 220 B
- 1 Giga-Byte (GB) = 230 B; 1 Tera-Byte (TB) = 240 B
❑ Speicherzelle (Adressierungseinheit) meist 1 B;mehrere Zellen können zu einem Speicherwort (Zugriffsein-heit) zusammengefaßt werden
❑ Unterschiedliche Speichertypen
- Hauptspeicher (Arbeits- bzw. Primärspeicher) vs.
Hintergrundspeicher (Extern-bzw. Sekundärspeicher)
- Halbleiter-, Magnet-, optische Speicher
- flüchtige vs. nicht-flüchtige Speicher
- direkte (wahlfreier) vs. sequentielle, lesende vs. schreibende Zugriffsmöglichkeit
RAM = Random Access Memory
ROM = Read Only Memory
❑ Gegensätzliche Eigenschaften hinichtlich Zugriffszeit,Kapazität und Kosten=> Nutzung von Speicherhierarchien
Digitale Informationsverarbeitung Institut für Informatik
Der Zugang zum Hauptspeicher
MODE
Adreß-register
Datenregister
Speicher
Blockschaltbild für den Speicher
Digitale Informationsverarbeitung Institut für Informatik
DECODER
01
S
W
S
W
S
W
S
W
WRead
Write
Mode
MAR
Speicher
MDR
Digitale Informationsverarbeitung Institut für Informatik
Speicherhierarchie
� Rekursives Pr inzipKleinere, schnellere und teurere Cache-Speicher werden benutzt,um Daten zwischenzuspeichern, die sich in größeren, langsamerenund billigeren Speichern befinden
� Preis-Leistungs-Tradeoff (Stand 1992)Schneller Speicher ist teuer und deshalb klein;Speicher hoher Kapazität ist typischerweise langsamer
CacheCache
M ain M emory
Onl ine External Storage
Near-l i ne (Archive) Storage
Of fli ne
M emory Capacity
Registers
Electronic Storage
Block A ddressedN onvolatile Electronic orM agnetic
T ape or D iskRobots
Processor
Current Data
Register
Cache
Hauptspeicher
Magnetplatte
K apazi tät Zugri f fszei t
< 1 KB
< 1 MB
< 1 GB
> 1 GB
5 ns
20 ns
100 ns
15.000.000 ns
Z ugri ff s-
4 B
16 B
32 B
4096 B
Instruk tions-adressierbarkei t
ja
ja
ja
nein
ja
ja
ja
nein
kei tFlüchtig-
einhei t
Digitale Informationsverarbeitung Institut für Informatik
Entwicklungstrends: Elektronische Speicher
Die Speicherkapazität pro Chip erhöhte sich um den Faktor 4 alle 3 Jahre.Moore’s Law:
MemoryChipCapacity (year) = Kb/chip for year in [1970 ...2000]4
y ear 1970–( )
3----------------------------------
Ch ip-K apazi tät
1 Kbit
1970 1980
■ ▲
▲
◆
■
◆
■
◆
1975 19901985
16 Mbit
4 Mbi t
1 Mbi t
256 K Bit
64 K bit
16 K bi t
4 Kbit ■
■
■
■
■D RAM
M OS SRAM
Bipolar -SR AM
$ / M egabyte
1970 19801975 19901985
1,000,000
M ainf rame-H auptspeicher
100,000
10,000
1,000
100
10
1
(-25 % jäh r l ich )
Min i rechner (- 28 % )
PCs (-29 % )
D RA M-Ch ips (- 30 % )
M agnetplatten / 14 Zoll( - 21 %)
dyn. Spei cher Mi kr opr ozessor en
Jahr Gr öße Mr d. Bi t s Gr öße Mi o. Tr . Takt f r . Ver dr . eb. I / O[ mm2] per Chi p [ mm2] per cm2 [ MHz] p. Chi p
1995 190 0. 064 250 4 300 4- 5 900
1998 280 0. 256 300 7 450 5 1350
2001 420 1 360 13 600 5- 6 2000
2004 640 4 430 25 800 6 2600
2007 960 16 520 50 1000 6- 7 3600
2010 1400 64 620 90 1100 7- 8 4800
Entwicklung für Speicher und Prozessoren
Digitale Informationsverarbeitung Institut für Informatik
Entwicklungstrends: Prozessoren
Die Mips-Raten von Prozessoren stiegen zwischen 1965 und 1990 von etwa 0.6Mips auf 40 Mips (Skalarleistung), was einem Faktor von 70 entspricht. DieLeistungsfähigkeit von Mikroprozessoren (Ein-Chip-Prozessoren) erhöhte sich seit1980 wesentlich stärker; sie verdoppelte sich ungefähr alle 18 Monate.
Relative Leis tungsfähigkeit
1000
100
10
1965 1970 1975 1980 1985 1990
■
▲◆
●
■
▲◆
●
■
▲
◆
●
■
▲
◆
●
■▲
◆
MikroprozessorenMinirechner
Mainframes
Supercomputer
$ / MIPS1,000,000
100
1981 1985 1989 1993
■
▲
◆
▲
◆
■
◆
■▲
◆
Mikroprozessoren
Minirechner
Mainframes
100,000
10,000
1,000
$419,000
$168,000
$15,000
$140
$6,000
$54,000
1983 19911987
Digitale Informationsverarbeitung Institut für Informatik
Preisver fall durch Technologieentwicklung
Kosten reduzieren sich im Mittel um 43% pro Jahr
$
0,1
1
10
100
1000
10000
1000001 MB Hauptsp.1 MB Festpl.1 MIPS (Chip)
72 74 78 82 86 90 94 98
Digitale Informationsverarbeitung Institut für Informatik
Aufgaben eines Betr iebssystems
❑ Das Betriebssystem eines Rechners ist die zusammenfassendeBezeichnung für alle Programme, die
- die Ausführung der Benutzerprogramme und
- die Verteilung der Betr iebsmittel auf die einzelnen Benutzer-programme
steuern und überwachen.
❑ Das Betriebssystem erlaubt dem Anwendungsprogrammierer,von der Rechner-Hardware zu abstrahieren (z.B. bei derSpeicherabbildung oder beim Externspeicherzugriff).Es stellt jedem Benutzer eine vir tuelle Maschine (Prozeß) fürdie Ausführung seines Programms zur Verfügung
❑ Wichtige Funktionen des Betriebssystems
- Ein-/Ausgabe
- Daten- und Programmverwaltung
- Programmausführung
- Bereitstellung von Dienstleistungsprogrammen wieÜbersetzer, Texteditoren usw.
- Koordination der zeitlich verzahnten (überlappten)Ausführung der Programme verschiedener Benutzer
- Durchführung und Überwachung von Schutzmaßnahmen
Digitale Informationsverarbeitung Institut für Informatik
Bekannte Betr iebssysteme
Betriebssystem Computer
MS-DOS PC
MS-DOS mit MS Windows 3.x
PC
OS/2 PC
Windows 95, 98, 2000 und XP
PC
Windows NT PC und Workstation
MVS,VM/SP Mainframes
UNIX Workstations
LINUX PC
Digitale Informationsverarbeitung Institut für Informatik
Betriebsmittel (engl. ressources) sind alle Hard- und Softwarekomponenten, die zur Ausführung eines Programmes gebraucht werden. Dazu zählen also
•Hardwarekomponenten wie Prozessor, Speicher und E/A Geräte.
•Softwareobjekte wie Programmvariable, Befehle, Daten und Dateien.
Betriebsmittel unterteilt in •Reale BM: Die wirklich vorhandenen Hard- und Softwareobjekte.
•Virtuelle BM: Vom Betriebssystem simulierte BM mit scheinbar den gleichen Eigenschaften wie die realen BM. Anzahl unbegrenzt. Beispiel virtueller Bildschirm.
•Logische BM: Abstraktion von den technischen oder physikalischen Eigenschaften der realen BM. Beispiel Datei, von der nur der logische Aufbau wie Zugriffsart, Satzformat und Blockgröße interessiert, nicht aber ihre physikalische Speicherung z.B. auf der Festplatte.
Betriebsmittel
Digitale Informationsverarbeitung Institut für Informatik
UNIX-Dateisystem (1)
❑ Haupteigenschaften
➨ Hierarchische Struktur des Dateisystems: Kataloge und Dateien
➨ Gleichförmige Behandlung aller Daten in verschiedenen Dateien
➨ Dynamische Erzeugung und Löschung von Dateien
➨ Schrittweises Wachstum von Dateien (nach Bedarf)
➨ Dateibezogener Schutz der Daten
➨ Behandlung von Peripheriegeräten (wie Terminals oderBandgeräte) als Dateien
❑ Aufbau
➨ Baumartige Struktur mit einem Wurzelknoten ( / ) (root)
➨ Jeder Nicht-Blattknoten (non-leaf) ist ein Katalog von Dateien (directory)
➨ Blattknoten sind entweder Kataloge, normale Dateien oder
spezielle Gerätedateien
➨ Der eindeutige Pfad innerhalb des Dateibaumes zu einer
bestimmten Datei bildet ihren eindeutigen Namen (Pfadnamen).
Digitale Informationsverarbeitung Institut für Informatik
UNIX-Dateisystem (2)
❑ Beispiel eines hierarchisch strukturierten Katalogs(Dateibaum)
❑ Auswahl/Adressierung durch Pfadnamen
- absolute Adressierung/etc/passwd/usr/rahm/programme/modula/prog2
- relative Adressierung beginnt beim aktuellen Katalog (Working Directory /usr/rahm)
programme/modula/prog2emailprogramme/prog1
bin etc de vu sr
/
p asswd abe l rahm
e ma il p rog ram me skript
modu la p rog1
prog 1 pro g2
. . . . . .
. . .
Digitale Informationsverarbeitung Institut für Informatik
UNIX-Dateisystem (3)
❑ Umgang mit Katalogen
mkdir directory1 Erzeugen des angegebenen Katalogs directory1
cd [directory1] Ändern des aktuellen Katalogs; directory1 wird derneueaktuelle Katalog. Das Kommando cd (ohneNamensangabe) stellt den Katalog ein, der beiBeginn der Sitzung aktuell war (Home Directory)
pwd Ausgabe des Namens des aktuellen Katalogs(Working Directory)
rmdir directory1 Löschen von Katalog directory1, wenn er keineDateien mehr enthält.
Option: -r
(Rekursiv-Modus) löscht zuerst alle Dateien/Kataloge des Katalogsund dann den Katalog selbst
Digitale Informationsverarbeitung Institut für Informatik
❏ Umgang mit Dateien
ls dateinamen Auflisten der angegebenen Dateinamen
Optionen: -t, -l, -u, ... nach Uhrzeit, langes Format, nach letztemZugriff, ...
cp datei1 datei2 Kopieren der datei1 nach datei2; falls vorhanden,wird datei2 überschrieben
mv datei1 datei2 Verlagern (Umbenennen) von datei1 nach datei2;falls vorhanden, wird datei2 ersetzt
rm dateinamen Löschen der angegebenen dateinamen
cat dateinamen Ausgeben der angegebenen dateinamen
vi datei1 Editieren der Datei datei1
sor t datei1 Datei1 zeilenweise alphabetisch sortieren
diff datei1 datei2 Ausgabe aller Unterschiede
wc datei1 Zählen der Zeilen, Worte und Zeichen von datei1
man kommandoname Ausgabe einer Beschreibung dieses Kommandos
Bemerkung:
dateinamen Name einer Datei oder eine Liste vonDateinamen; "* " dient als "Wild Card"
more dateinamen Vergleiche cat, mit Funktionen zum Blättern
pr dateinamen Formatierte Ausgabe der angegebenenDateinamen