Überblick 1
Ausblick
Bisher wurden nur kombinatorische Schaltkreise
betrachtet; dabei war G azyklisch.
Schaltpläne, Schaltungen
Schaltungen dieser Art werden benötigt, um speichernde Elemente zu definieren!
Was geschieht, wenn G nicht azyklisch ist?
?x1
y1G1
mn YgGXSK,,,
kein stabiler Zustand!
Überblick 2
Spike-freies Umschalten
VIH
VIL
log. 1
log. 0
Umschalten von X1 = 1, X2 = 0, Y = 0 auf X1 = 0, X2 = 1, Y = 0,ohne dass zwischendurch Y auf 1 steigt.
x2
yx1
1
00
Überblick 3
Übergang im RS-Flip-Flop
(stabiler) Zustand Q = 0 ) (stabiler) Zustand Q = 1:
/S
/R
Q
/Q
1
1
1
01
0G1
G2
) 0) 1
) 1) 0
) 0
) 1
Senke /S zur Zeit t0 ab und hebe zu t0 + x wieder an (einen solchen Signalverlauf nennt man Puls )
Nach Zeit tP/SQ ist Q = 1.
Wähle x so, dass kein Spike entsteht!
Nach Zeit tP/S/Q ist /Q = 0.Schaltung mit zwei stabilen Zuständen, geeignet, um 1 Bit zu speichern.
Setzen desFlip-Flops
Überblick 4
D-Latch
/S
/R
Q
/Q
RS-FFW
D
Symbol: W
D
Q
/Q
erlaubt Speichern eines ankommenden Datensignals D durch einen Puls (Interval zwischen Senken und Heben) an W
Überblick 5
Symbol:
Taktflankengesteuertes D-Flipflop
CK
D Q
D-FF
Clockeingang
Steuerung durch eine Flanke eines Signals (Clock)
Überblick 6
Aufbau eines n-Bit-Zählers
X
CK
D Q
n-Reg
n
n
CK
n-INC
0 1
0 1n
n
n
/C
Cout
Cin
/L0
Y
/C clear, /L load, X Eingabe, Y Ausgabe
Schaltwerke
Überblick 8
Überblick
Im folgenden werden Schaltwerke behandelt. Sie enthalten Flip-Flops. Es gibt eine Trennung zwischen Schaltkreisen und
speichernden Elementen. Jeder Zyklus in Schaltwerk enthält Flip-Flop. Der Zustand eines Schaltwerkes ist gegeben
durch die in den Flip-Flops gespeicherten Werte Schaltwerke realisieren endliche Automaten. Sie werden benutzt z.B. als Kontrolllogik im
Steuerwerk für die Interpretation von Befehlen.
Überblick 9
Definition: Schaltwerke Aufteilung eines synchronen Schaltwerks in Schaltnetz
und speichernde Elemente:
yit = fi(x1
t, x2t, ..., xk
t, s1t, s2
t, ...spt)
sit+1 = gi(x1
t, x2t, ..., xk
t, s1t, s2
t, ...spt)
Schaltnetz
x1t
xkt
y1t
ymt
Clk Speicher
s1t s2
t spt
s1t+1 s2
t+1 spt+1
Überblick 10
Schaltbild eines SRAMs
DnA ON Dout
G0
Gi
GN-1
Qi
DinW
FN FN
Wi W
D QW‘
Y0
YN-1
Yi
D‘
n
N N
D-Latch
A Adresse, W write, Din Dateneingabe, Dout DatenausgabeDn Dekodierer, ON Oder
Überblick 12
Kodierung von Zeichen
Wie werden im Rechner Zeichen dargestellt ? Grundlegende Definitionen für Codes, ASCII-Codierung Häufigkeitsabhängige Codes: Morse, Huffman Fehlererkennung, Fehlerkorrektur
Hamming-Code Parity-Check CRC (Cyclic Redundancy Check):
Standard bei Übertragungen über das Netz
Datenkompression: Lempel-Ziv-WelchIn Texten gibt es viele Leerzeichen und mehrfach vorkommende Zeichenketten. Kodiere Folgen von Leerzeichen bzw. Zeichenketten durch kurze Codes, auch wenn man noch nicht weiß, welche Zeichenketten häufig vorkommen.
Überblick 13
Kodierung von Zahlen
Zahlen sind im Rechner als Bitketten fester Länge dargestellt.Das hat Konsequenzen: beschränkt in der Größe beschränkt in der Genauigkeit nicht abgeschlossen unter den arithm. Operationen Ungültigkeit des Assoziativitäts- und des
Distributivitätsgesetzes
Festkommadarstellungen Zahlendarstellung durch Betrag und Vorzeichen Einer-/Zweierkomplement-Darstellung
Gleitkommadarstellung IEEE-754 Format
Überblick 17
Prinzipieller Aufbau eines Rechners
Bestandteile: Prozessor (CPU) Hauptspeicher Externe Speicher Eingabegeräte
(Tastatur, Maus) Ausgabegeräte
(Bildschirm, Drucker, Plotter)
Busse
Prozessor(CPU)
System Bus
Haupt-speicher
I/OController
Disk Disk
I/OController
I/OController
Graphik Netzwerk
interrupts
Überblick 18
Ein-/Ausgabe
Verbindung zur Außenwelt !
Aufgaben sind z.B.: Laden von Programmen und Daten in Speicher Ausgabe von Resultaten auf Bildschirm, Drucker,
Festplatte, Diskette...
Überblick 19
Ansteuerung
Ansteuerung von Ein-/Ausgabeeinheiten (Peripheriegeräte)
z.B. durch: Viedeocontroller (Bildschirm) Plattencontroller (Festplatte) Tastatur-Prozessoren Netzwerkschnittstellen usw.
Überblick 20
Ansteuerung (graphisch)
Plattencontroller Videocontroller Tastaturproz.
Netzwerk-Interface
Netzwerk-Interface
Festplatte Bildschirm
Tastatur
Netzwerk
CPU‘
CPU
Überblick 21
Schnittstellen
Bausteine zum Ansteuern einer I/O-Einheit = Schnittstellen (Interfaces)
Überblick 22
Kontaktaufnahme zwischenCPU und Interfaces
Von der CPU aus gesehen wie Datenaustausch mit Speicher!
Der Datenaustausch mit verschiedenen Interfaces erfolgt nach verschiedenen festgelegten Schemata (= Protokollen).Dies wird durch Software zum Ansteuernder Interfaces geregelt (Treiber).
Überblick 23
Vorgehen
Interfaces, UART, EPROM, Memory Map
Busprotokolle, Zustandsdiagramme
Betriebssysteme
Überblick 25
Die Befehlssatzarchitektur als Schnittstelle
Befehlssatzarchitektur - Instruction Set Architecture (ISA)
Betriebssystem
Bibliotheksfunktionen, Dienstprogramme
Anwendungsprogramme
Anwender
Anwendungs-programmierer
Betriebssystem-programmierer
Überblick 26
Überblick Betriebssysteme
Aufgabe von Betriebssystemen, Probleme, Verfahren
Unterschiedliche Arten von Betriebssystemen Verschiedene Komponenten / Konzepte von
Betriebssystemen Dateisysteme Prozesse Nebenläufigkeit und wechselseitiger Ausschluss Deadlocks Scheduling Speicherverwaltung Ein- und Ausgabe
Überblick 27
Aufgabe von Betriebssystemen
Was ist ein Betriebssystem und wozu dient es?
Ein Betriebssystem ist ein Programm (Software) mit den grundsätzlichen Funktionen:1. Virtualisierung von Systemressourcen, dazu2. Verwaltung von Systemressourcen 3. Bereitstellen einer „erweiterten Maschine“ für den
Anwendungsprogrammierer
Überblick 28
1. Virtualisierung
Betriebssystem bietet dem Benutzer statt – einem realen Rechner mit
– einer festen Zahl von Prozessoren, – beschränktem Hauptspeicher, – beschränkter Zahl von Ein-/Ausgabe-Geräten
– viele virtuelle Rechner an– pro ausgeführter Anwendung einen,– mit (fast) unbegrenztem Speicher,– der notwendigen Zahl von Ein-/Ausgabe-Geräten
Überblick 29
2. Verwaltung von Systemressourcen
Verwaltung aller Komponenten eines komplexen Systems Komponenten sind z.B.
Prozessoren, Speicher, Uhren, Platten, Terminals, Ein-/Ausgabegeräte, Netzwerkschnittstellen etc.
Diese Bestandteile eines Rechnersystems bezeichnet man auch als Betriebsmittel.
Betriebssystemaufgabe: Geordnete und kontrollierte Zuteilung von Betriebsmitteln an konkurrierende Prozesse / Benutzer.Beispiele: Mehrere Programme rechnen scheinbar gleichzeitig auf einer CPU und im
gleichen Speicher, versuchen gleichzeitig Daten auf demselben Drucker
auszugeben.
Überblick 30
Betriebssystem als Ressourcenmanager
Aufgaben beim Verwalten von Systemressourcen: „Gerechte“ Zuteilung von gemeinsam genutzten
Betriebsmitteln Auflösung von Konflikten bei der Betriebsmittelanforderung Schutz verschiedener Benutzer gegeneinander
Z.B. Zugriffskontrolle bei Dateien Effiziente Verwaltung von Betriebsmitteln Protokollieren der Ressourcennutzung Abrechnung der Betriebsmittelnutzung Fehlererkennung, Fehlerbehandlung
Hardware: Gerätefehler Software: Programmfehler
Grundsätzliche Zugriffskontrolle zum System
Überblick 31
Ressourcenverwaltung in zwei Dimensionen:
Zeit: Verschiedene Benutzer erhalten Betriebsmittel nacheinander
Raum: Verschiedene Benutzer erhalten verschiedene Teile einer Ressource.Achtung: Manche Ressourcen sind unteilbar!
Überblick 32
Ressourcen-Zuteilung
Vergabestrategie zur Erreichung von Entwurfszielen, je nach Typ des Betriebssystems: Fairness Grad an Interaktivität Maximierung von Durchsatz Einhaltung von Fristen (Deadlines)
Überblick 33
3. Bereitstellen einer „erweiterten Maschine“ (ABI)
Abstraktion von Verhalten des zugrunde liegenden Rechners auf möglichst hohem Niveau Verstecken von Eigenschaften der realen Hardware
vor dem Programmierer Leichte Programmierbarkeit
Beispiel: Datenspeicherung auf der Festplatte Entlastung des Programmierers von Details wie Einschalten
des Motors, Bewegung des Plattenarms, Aufteilung des benötigten Platzes auf Sektoren der Platte etc.
Einfache Programmierschnittstelle: Schreiben in Datei
Das BS stellt dem Programmierer eine abstrakte Programmierschnittstelle (ABI) zur Verfügung.
Das BS bietet einen Satz von Kommandos (Systemaufrufe), über die z.B. auf Ein-/Ausgabegeräte zugegriffen werden kann.
Überblick 34
Betriebssystem, Dienstprogramme, Anwendungsprogramme
Schnittstelle zwischen Betriebssystem und System- bzw. Dienstprogrammen ist nicht immer klar definiert.
Hier: Dienstprogramme sind nicht Teil des Betriebssystems.
Typische (anwendungsunabhängige) Dienstprogramme sind: Übersetzer Editoren Kommandointerpreter (sog. Shell)
Anwendungsprogramme: Textverarbeitung Tabellenkalkulation Datenbankanwendungen …
Top Related