Informatik II

Lernkartei zur Vorlesung Informatik II an der Uni Göttingen

Lernkartei zur Vorlesung Informatik II an der Uni Göttingen

Damian Bast

Damian Bast

Kartei Details

Karten 80
Sprache Deutsch
Kategorie Informatik
Stufe Universität
Erstellt / Aktualisiert 20.04.2015 / 01.06.2015
Weblink
https://card2brain.ch/box/informatik_ii
Einbinden
<iframe src="https://card2brain.ch/box/informatik_ii/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Taktgeber symmetrisch

Low  und Hightzustand gleich lang

Asymmetrische Impulsfolge

Es gibt einen Takt und einen mit AND verschobenen Takt

Pegelsteuerung

- Der Zustandsspeicher ist wärend einer Takthälfte transparent und wärend der anderen hält er

- Nachteil: Eingangssignale müssen wärend der gesamten transparenten Taktperiode gültig bleiben

Pegelsteuerung: Transparenz und Halten

Transparent: Die Eingänge wirken sich nur bei einem Wert (z.B. 1) des Taktes auf den Zustand aus

Halten: Beim anderen Wert (z.B. 0) wird der Zustand gehalten

Flankensteuerung 

Die Eingänge wirken sich wärend dem Taktwechsel auf den Zustand aus

Vorteil: Die Eingänge müssen nur für sehr kurze Zeit gültig sein

Latches

SR-Latch

Getaktetes SR-Latch

Getaktetes D-Latch

Master Slave D-Latch

SR-Latch

2 Eingänge S (Setzen) und R (Reset)

zwei Ausgänge Q und !Q

S=R -> Q unverändert

S=1 -> Q = 1

R=1 -> Q = 0

Getaktetes SR-Latch

Gleicht einem SR-Latch mit vorgeschaltetem Takt

Getaktetes D-Latch

R bekommt negierten Eingang von S

Setzen -> T = 1, D = 1

Reset -> T = 1, D = 0

Halten -> T = 0, D = beliebig

Flip-Flops

- Flankengesteuert

- JK-Flip-Flop

- Umschalt Flip-Flop (T-Flip-Flop)

JK-Flip-Flop

Umschalt / T-Flip-Flop

Halten: J=0, K=0

Zurücksetzen: J=0, K=1

Setzen J=1, K=0

Invertieren J=1, K=1

T: Immer J=K -> Nur halten und invertieren

 

Bevorrechtigte Eingänge

Eingänge, die keinen Takt benötigen um ausgeführt zu werden (Setzen, Löschen)

Sehr gefährlich

8-Bit Speicher

Pin 1 löscht den Speicher

Pin 11 ist der Takt

4x3 Speicher

Jede der 4 Reihen speicher ein 3 Bit Wort

Lese / Schreiboperation betrifft ganzes Wort

2 Adresseingänge A

3 Dateneingänge I

3 Dateneingänge O

Lesen RD

Ausgeben OE

Chip Aktivieren CS

Gelesen wird bei RD=0

Schalter

Eingangssignal

Ausgangssignal

Steuersignal

Was ist ein Betriebssystem?

- Systemprogramme ermöglichen den Betrieb des Computers

- Anwendungsprogramme erfüllen die Anforderungen der Anwender

Hardwareschicht

Prozessor

- Ausführen von Maschinensprache

Hauptspeicher

- Kurzfristige Speicherung von Daten

Hintergrundspeicher

- Langfristige Speicherung großer Datenmengen

Eingabegeräte

Ausgabegeräte

Netzwerkkarte

- Verbindung an ein Kommunikationsnetz

Aufgaben des Betriebssystems (Übersicht)

Prozessverwaltung (Ein Prozess ist ein in Ausführung befindliches Programm)

Speicherverwaltung

Verwaltung des Dateisystems

Geräteverwaltung

Prozessverwaltung (Betriebssystem Aufgabe)

Erzeugen und löschen von Prozessen

Prozessorzuteilung

Prozesskommunikation

Synchronisation nebenläufiger Prozesse

Speicherverwaltung

Zuteilung des verfügbaren Speichers an Prozesse

Einbeziehen des Hintergrundspeichers

- Paging (Bereitstellen von virtuellem Speicher)

- Swapping (Ein / Auslagern von Prozessen)

Verwaltung des Dateisystems

Logische Sicht auf Speichereinheiten

Systemaufrufe für Dateioperationen

-Schreiben, löschen, kopieren

Strukturieren mittels Verzeichnissen

Schutz von Dateien und Verzeichnissen vor unberechtigtem Zugriff

Geräteverwaltung

Auswahl und Bereitstellung von I/O Geräten

Anpassung an physikalische Eigenschaften der Geräte

Überwachung der Datenübertragung

Wichtige Konzepte: Fehlertoleranz

Graceful Degradation: Beim Ausfall einzelner Komponenten läuft das System im vollem Umfang mit verinderter Leistung weiter

Wird durch Redundanz erkauft

Wichtige Konzepte: Realzeitbetrieb

Realzeitkritische Prozesse müssen Betriebsmittel so zugeteilt bekommen, dass die Zeitanforderungen eingehalten werden

Wichtige Konzepte: Benutzeroberfläche

Das Betriebssystem kann eine Benutzeroberfläche für die eigene Bedienung enthalten

Kann Funktionen bereit stellen um aus Anwenderprogrammen auf die Benutzerschnittstelle zuzugreifen

Betriebssystem: Betriebsarten

Einzelbenutzerbetrieb

Batchbetrieb

Mehrprogrammbetrieb

Einzelbenutzerbetrieb

Alle Aufträge kommen von einem Benutzer und werden streng sequentiell (hintereinander) abgearbeitet

Batchbetrieb

Mehrere Benutzer die Aufträge erteilen, die trotzdem sequentiell abgearbeitet werden

Mehrprogrammbetrieb

-Mehrere Aufträge werden nebenläufig (gleichzeitig) bearbeitet

-Prozessor schaltet im schnellen Wechsel zwischen den Prozessen

-Flexible Prozessorzuteilung (Prozessor kann auch während des Abarbeitens eines Prozesses zu einem anderen wechseln)

--Weil der gerade ausgeführte Auftrag wartet

--Weil ein dringenerer Auftrag bearbeitet werden soll

--Weil gleichberechtigte Aufträge gleichmäßig bearbeitet werden sollen

Ermöglicht Timesharing (mehrere Benutzer können gleichzeitig mit dem Rechensystem arbeiten)

Prozessverwaltung (Überblick)

Prozesse werden von Betriebssystem verwaltet

Ein Prozessor kann immer nur einen Prozess in einer Zeiteinheit abarbeiten

Prozess besteht aus Programmcode und Kontext

Prozesszustände

Prozesskontrollblöcke (PCB) 

Prozesswechsel (Dispatching)

Prozessverwaltung: Kontext

Registerinhalt des Prozesses

Dem Prozess zugeordnete Bereiche des direkt zugreifbaren Speichers

Durch den Prozess geöffnet Dateien

Dem Prozess zugeordnete Peripheriegeräte

Verwaltungsinformationen

Prozessverwaltung: Zustände

Rechnend (Prozess wird ausgeführt)

Bereit (wartet auf die Zuteilung des Prozessors)

Blockiert (kann momentan nicht ausgeführt werden, wartet auf das Eintreten eines Ereignisses)

Prozesskontrollblöcke (PCB) enthalten

Kontext des Prozesses

Für das Scheduling benötigte Informationen

Weitere Verwaltungsinformationen

Prozesswechsel (Dispatching)

Der aktuelle Kontext eines Prozesses P0 wird in einem PCB gesichert

Der Kontext eines anderen Prozesses P1 wird aus einem PCB geladen

Der Zustand beider PCB muss aktualisiert werden

Prozesswechsel=Kontextwechsel

Scheduling:Übersicht

Zuteilung von Prozessorzeit an die Prozesse

Prozesswechselkosten

-Prozesswechsel sind relativ teuer, weil der Kontext gesicher&geladen werden muss

Warteschlangenmodell

Scheduling-Verfahren

Batchsysteme

Warteschlangenmodell im Scheduling

Wartende Prozesse werden in Warteschlangen gehalten, die Auswahlstrategie der Warteschlange haben wesentlichen Einfluss auf das Systemverhalten

Gemeinsamkeiten der Scheduling-Verfahren

Fairness (jeder Prozess bekommt Rechenzeit)

Policy Enforcement (Durchsetzung der Verfahrensweise, keine Ausnahmen)

Balance (alle Teile des Systems sind gleichmäßig ausgelastet)

Data Protection (Keine Daten oder Prozesse gehen verloren)

Scalability (Mittlere Leistung wird bei wachsender Last beibehalten, es gibt keie Schwelle, ab der das Scheduling nur noch sehr langsam oder gar nicht mehr funktioniert)

Scheduling: Batchsysteme

Maximiere nach Prozessen pro Zeiteinheit

Minimiere die Zeit vom Start bis zur Beendigung eines Prozesses

Belege die CPU konstant mit Jobs

Scheduling in Batchsystemen : First come first served

Prozesse kommen den Prozessor entsprechend ihrer Ankuftsreihenfolge zugeteilt

Keine Abhängigkeiten zwischen den Prozessen

Laufende Prozesse werden nicht unterbrochen

Fair, jeder Prozess kommt dran

Einfache implementierung

Die mittlere Wartezeit kann sehr hoch werden

Scheduling in Batchsystemen: Shortest Job First (SJF)

Es wird jeweils der Prozess mit der kürzesten Rechenzeit als nächstes gerechnet 

keine Abhängigkeiten zwischen den Prozessen

Laufende Prozesse werden nicht unterbrochen

Nicht fair (kurze Prozesse können lange überholen)

Problem: Wie wird die Rechenzeit eines Prozesses ermittelt?