Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren...

36
Computersysteme in Überblick Kapitel 1

Transcript of Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren...

Page 1: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Computersysteme in Überblick

Kapitel 1

Page 2: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Betriebssysteme

• Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern Dienste bereitzustellen.

• Verwaltet darüber hinaus den Sekundärspeicher und die angeschlossen E/A Geräte

Page 3: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Basiselementen

• Prozessor• Hauptspeicher

– wird auch als Arbeits-, Real, oder Primärspeicher bezeichnet

– flüchtig• E/A-Module

– Sekundärspeicherlaufwerke– Kommunikationsanschaltungen– Terminals

• Systembus– Kommunikation zwischen den Prozessoren,

Hauptspeicher, und E/A-Module

Page 4: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Computerkomponenten- oberste Ebene

Page 5: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Prozessorregister

• Für den Benutzer sichtbare Register– Sie ermöglichen es dem Programmierer,

die Anzahl der Hauptspeicherzugriffe durch Registereinsatz zu vermindern

• Steuerregister und Statusregister– vom Prozessor für die Steuerung der

Operationen des Prozessors verwendet– vom Betriebssystemroutinen für die

Steuerung der Ausführung von Programme verwendet

Page 6: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Für den Benutzer sichtbare Register

• Kann in Maschinenbefehlen referenziert werden

• Steht im Allgemeinen allen Programmen, Anwendungsprogrammen und System-programmen, zur Verfügung.

• Registertypen:– Daten– Adresse

• Index• Segmentzeiger• Stapelzeiger

Page 7: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Für den Benutzer sichtbare Register

• Adressregister– Indexregister

• ein Index wird zu einem Basiswert addiert, um die effektive Adresse zu erhalten

– Segmentzeiger• bei der segmentierte Adressierung wird

Speicher in Segmenten aufgeteilt, ein Speicherverweis besteht aus einer Segmentadresse und einem Offset

– Stapelzeiger• zeigt auf das obere Ende des Stapels

Page 8: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Stapelzeiger

code

data

heap

stackstackpointer

Dynamic memory

- automic variables,- parameter- return value

Page 9: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Steuerregister und Statusregister

• Programmzähler (PC)– Enthält die Adresse des nächsten

abzurufenden Befehls

• Befehlsregister (IR)– Enthält den zuletzt abgerufenen Befehl

• Programmstatuswort (PSW)– Zustandscodes– Interrupt freigegeben/gesperrt– Supervisor/user modus

Page 10: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Steuerregister und Statusregister

• Zustandscodes auch Flags genannt– Bits, die jeweils nach der Durchführung einer

Operation durch die Prozessorhardware gesetzt werden

– kann mit privilegierten Maschinen-befehlen auf zugegriffen werden, aber können damit nicht geändert werden

– Beispielen• positives Ergebnis• negatives Ergebnis• Null• Überlauf

Page 11: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Befehlscyclus

Page 12: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Abruf und Ausführung von Befehlen

• Der Prozessor ruft einen Befehl aus dem Speicher auf

• Programmzähler (PC) enthält die Adresse des nächsten Befehles

• Der Wert des Programmzähler wird erhöht

Page 13: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Befehlsregister

• Der abgerufen Befehl wird in das Befehlsregister geladen.

• Befehlstypen– Prozessor-Speicher

• Daten übertragen vom Prozessor zum Speicher oder von Speicher zum Prozessor

– Prozessor-E/A• Daten übertragen vom und zum Peripheriegerät

– Datenverarbeitung• arithmetische oder logische Operationen mit Daten

– Steuerung• ändere der Ausführungsreihenfolge

Page 14: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Operationscode (opcode)

Instruction format

Integer

0 4 153

Opcode Address

sign

Number

0001 = Akkumulator aus dem Speicher laden0010 = Akkumulator im Speicher ablegen0101 = Aus dem Speicher dem Akkumulator hinzufügen

Page 15: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Beispiel einer Programmausführung

Page 16: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Direkter Speicherzugriff (DMA)

• E/A-Austausch direkt mit dem Speicher• Prozessor gibt einem E/A-Module den

Auftrag, Daten aus dem Speicher auszu-lesen oder Daten in den Speicher zu schreiben.

• Nimmt dem Prozessor die Verantwortung für den Datenaustausch

• Der Prozessor ist frei für andere Tätigkeiten

Page 17: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Interrupts

• Eine Unterbrechung der normalen Arbeit des Prozessors

• Verbessert die Prozessoreffizienz

• Erlaubt dem Prozessor andere Befehlen auszuführen während eine E/A-Operation ausgeführt wird

• Das Anhalten eines Prozesses der verursacht wird durch ein Ereignis, (Event) außerhalb dieses Prozesses und so ausgeführt das dieser Prozess später fortgesetzt werden kann.

Page 18: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Interrupt-Klassen

• Programm– arithmetischer Überlauf– Division durch null– Ausführung einen unzulässigen

Maschinenbefehl– ein Verweis auf eine Zelle außerhalb des für

den Benutzer zugänglichen Speicherbereichs

• Zeitgeber

• E/A

• Hardwareausfall

Page 19: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Interrupt-Handler

• Ein Programm das die Art des Interrupts ermittelt und dementsprechend die notwendigen Aktionen ausführt.

• Steuerung wird zu diesem Programm verzweigt

• Ist generell Teil des Betriebssystems

Page 20: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Befehlszyclus

Page 21: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Befehlszyklus

• Der Prozessor prüft ob ein Interrupt vorliegt.

• Wenn kein Interrupt vorliegt, wird der nächste Befehl geladen.

• Wenn ein Interrupt vorliegt, wird die Ausführung des aktuellen Programms unterbrochen, und der Interrupt-Handler wird ausgeführt.

Page 22: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.
Page 23: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Mehrprogrammbetrieb

• Der Prozessor hat mehr als ein Programm auszuführen.

• Die Reihenfolge, in der die Programme ausgeführt werden, hängt von Ihrer relativen Priorität und der Frage ab, ob sie auf eine E/A warten

• Nach Beendung der Interrupt-Handler-Routine wird die Steuerung möglicherweise nicht sofort wieder an das Benutzerprogramm übergeben, dass sich zu dieser Zeit in der Ausführung befand.

Page 24: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Speicherhierarchie

Page 25: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Hierarchie von oben nach unten betrachtet

• Sinkende Kosten pro Bit

• Steigende Kapazität

• Steigende Zugriffszeit

• Geringere Häufigkeit des Zugriffs auf den Speicher durch den Prozessor– Das Lokalitätsprinzip ist hier zutreffend.

Page 26: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Festplatten-Cache

• Ein Teil des Hauptspeicher wird verwendet als Puffer für das zeitweise Speichern von Daten, die auf die Festplatte ausgelesen werden sollen.

• Das Schreiben auf der Platte erfolgt gebündelt.

• Einige Daten die ausgelesen werden, können schnell aus dem Software-Cache gelesen werden und müssen nicht langsam von der Platte eingelesen werden.

Page 27: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Cache-Speicher

• Unsichtbar für das Betriebssystem• Erhöht die Geschwindigkeit des

Hauptspeicher.• Die Geschwindigkeit des Prozessors is

größer als die Geschwindigkeit des Hauptspeicher.

Page 28: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Cache-Speicher

Page 29: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Cache-Speicher

• Enthält die Kopie eines Teils des Hauptspeichers.

• Wenn der Prozessor versucht, ein Wort aus dem Speicher zu lesen, wird zunächst geprüft, ob sich das Wort im Cache befindet.

• Ist das nicht der Fall, wird ein Block des Hauptspeichers in den Cache eingelesen.

Page 30: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Cache/Main Memory System

Page 31: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Cache-Entwurf

• Größe des Cache– ein kleiner Cache kann eine signifikante

Wirkung auf die Leistung haben

• Blockgröße– der Dateneinheit, die zwischen dem Cache

und dem Hauptspeicher ausgetauscht wird. – Ein Treffer bedeutet, die Information wurde im

Cache gefunden.– Mit zunehmender Blockgröße wird die

Trefferquote steigen, bis die Wahrschein-lichkeit der Verwendung neu aufgerufener Daten geringer wird als die Wahrscheinlichkeit der erneuten Verwendung von Daten.????

Page 32: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Cache-Entwurf

• Zuordnungsfunktion– Legt den Speicherplatz im Cache für den

Block fest.

• Ersetzungsalgorithmus– Wählt den zu ersetzenden Block, er soll

denjenigen Block zur Ersetzung auswählen, bei dem die Wahrscheinlichkeit, dass er in nächster Zukunft erneut benötigt wird, am geringsten ist

– Least-Recently-Used (LRU) Algorithmus

Page 33: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Cache-Entwurf

• Schreibverfahren = Bestimmung des Zeitpunkts, an dem ein

Block im Cache zurück in den Hauptspeicher geschrieben werden soll.

– Jedes Mal wenn der Block aktualisiert wird.

– Nur wenn der Block ausgetauscht wird.• Weniger Schreiboperationen.• Hauptspeicher zeitweise in einem

veralteten Zustand.

Page 34: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Programmierte E/A

• Das E/A-Module führt die Tätigkeit aus, nicht der Prozessor

• Setzt die entsprechende Bits im E/A Statusregister

• Interrupts finden nicht statt.

• Der Prozessor prüft regelmäßig den Status des E/A-Moduls (E/A Statusregister), bis er feststellt, dass die Operation beendet ist.

Page 35: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Interrupt-gesteuerte E/A

• Der Prozessor wird unterbrochen (interrupted) wenn das E/A-Module fertig ist.

• Der Prozessor ist frei um andere Tätigkeiten auszuführen.

• Kein nutzloses Warten• Jeglicher Datentransfer läuft

über den Prozessor (Nachteil)

Page 36: Computersysteme in Überblick Kapitel 1. Betriebssysteme Verwendet einen oder mehrere Prozessoren und die übrigen Hardwareressourcen, um Computernutzern.

Direkter Speicherzugriff

• Das DMA-Modul überträgt den gesamten Datenblock, direkt in oder aus dem Speicher

• Nach Beendigung des Transfers sendet das DMA-Modul ein Interrupt-Signal an den Prozessor.

• Der Prozessor ist nur zu Beginn und am Ende der Übertragung beteiligt.