24
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

6. Rechnerarchitektur - informatik.uni-leipzig.deder/Vorlesungen/DIV/rechner.pdf · Zentraleinheit = CPU (Central Processing Unit) Steuerwerk (Leitwerk): Laden, Dekodierung und Interpretation

  • Upload
    vannhi

  • View
    232

  • Download
    0

Embed Size (px)

Citation preview

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