Einleitung und Grundlagen Flashcards

(38 cards)

1
Q

Definiere “Betriebssystem”

A

eine Sammlung von Hardwaremechanismen und Softwareroutinen, die in ihrer Gesamtheit die korrekte Funktionsweise des gesamten Rechners ermöglichen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Wie wird ein Betriebssystem realisiert?

A

NICHT als ein monolithischer Block sondern als Menge unabh. funktionaler Blöcke für bestimmte Aufgaben.
Jedes Gerät kann sein eigenen Treiber mit sich bringen.
Das BS sorgt für eine abstrahierte, homogene Sichtweise auf die Hardware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Definiere ‘System und Anwendungsprograme’

A

Sie stellen die Schnittstelle zum Benutzer dar.

Die Benutzerprogramme müssen nicht wissen welche Hardware konkret im Rechner installiert sind.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

In welchen Bereichen wird der Computer eingeteilt?

A

1) Computer Hardware
2) Betriebssystem
3) System- und Anwendungsprogramme
4) Benutzer

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Wie ist ein CPU aufgebaut?

A

Ein CPU verfügt über Register zur Ausführung von Operationen:

  • Datenregister
  • Adressregister
  • Spezialregister

Zusätzlich: Caches als schneller pufferspeicher

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was ist der Vorteil von Caches?

A

Schnellerer Zugriff als auf den Hauptspeicher

Je kleiner desto geringere zugriffszeiten

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Welche Aufgabe hat das Datenregister der CPU?

A

Datenregister sind da um Operanden von Berechnungen(ALU) sowie deren Resultate aufzunehmen.
Die Grösse klassifiziert oft ob ein 32Bit oder 64Bit Prozessor verwendet wird.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Welche Aufgabe hat das Adressregister der CPU?

A

wird verwendet um Speicheradressen eines Operanden oder eines Befehls zu berechnen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Wozu benötigt die CPU die Spezialregister?

A

z.B. als Programmzähler (die Speicheradresse des nächsten zu auszuführenden Befehls)
Befehlsregister (auszuführende Operation)
Status (bestimmte Zustände nach Ausführung eines Befehls)
Interrupt-Steuerregister (auf welche Interrupts soll mit welcher Priorität reagiert werden)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Wie sehen die Speicherstrukturen inkl. Zugriffszeiten aus?

A

1) Register {8-64Bit} 1GiB} ca. 60ns
6) Festplatte {>100GiB} ca. 5.000.000 ns
wobei SSD nur 250.000ns

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Wieso ist es oft sinnvoller in mehr Hauptspeicher statt einer schnelleren CPU zu investieren?

A

müssten alle Anweisungen einzeln von der Festplatte geholt werden, wären unsere Computer um einige Grössenordnungen langsamer.
Vergleich: Zugriff auf Festplatte 5Mio ns und auf Hauptspeicher 60ns

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Definiere “Caching”

A

temporäre Verschiebung von Daten in einen schneller zugreiffbaren Speicher

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Wie sieht die grobe Architektur bei Verwendung mehrere Prozessorkerne aus?

A

Der kleinste Cache (L1) ist direkt mit dem Prozessor verbunden, der L2-Cache ist noch mit auf dem Chip enthalten. Der L3-Cache ist separiert, da man heutzutage oft mehrere Prozessorkerne parallel laufen hat, der L3-Cache dient also für schnelleres verschieben von Daten zwischen Kernen (Konsistenzsicherung der Daten in den integrierten Caches der Kerne) §Skizze 1.1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Wozu wird der CPU benötigt?

A

zur Ausführung aller Operationen auf einem Rechner. Will ein Benutzer/Benutzerprogramme auf ein Gerät zugreifen, wird eine Operation auf diesem Gerät ausgeführt. Die CPU verschiebt die Daten, die dazu benötigt werden, in lokale Caches der Geräte-Controller. Die Caches haben kürzere Zugriffszeiten als der Hauptspeicher und beschleunigen somit die Ausführung einer Operation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Was versteht man unter DMA?

A

Direct Memory Access, lässt Geräte ohne ‘Umweg’ über die CPU direkt auf den Hauptspeicher zugreifen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Was ist der Vorteil von DMA?

A

Ohne DMA müsste die CPU erst alle Informationen eines Geräts in ihren eigenen Buffer schreiben, diese dann in den Hauptspeicher, die nächsten Daten vom Gerät in ihren Buffer holen, sie in den Hauptspeicher schreiben usw.
DMA entlastet also die CPU und sorgt insgesamt zu einer Beschleunigung aller Abläufe.

17
Q

Was sind die wesentlichen Komponenten des Rechnersystems?

A

Die Prozessorkerne verfügen über:

  • Register
  • (*Leit-)/Steuerwerk (CONTROL UNIT: steuert den Ablauf der Befehlsverarbeitung und lädt somit Befehle)
  • L1/L2 Caches
  • Memory Management Unit (MMU) (Verwaltet Zugriff auf den Hauptspeicher)
18
Q

Was sind Betriebsmittel?

A

BM könnnen sowohl Hardware- als auch Softwareressourcen sein:
zB.
- Prozessoren, Prozesse, Threads
- Speicher (Hauptspeicher, Caches)
- Dateisystem (Verzeichnisse, Dateien)
- I/O-Gerät (Grafikkarte, Netzwerkkarte, Festplatte, Tastatur, Maus)
- Klassifikation (exklusive oder geteilte Nutzung)

19
Q

Was sind die wichtigen Aufgaben eines Betriebssystem?

A

Verwaltung aktiver Programme (Prozesse)
Laden der Prozesse in den Hauptspeicher
Steuerung der Abarbeitungsreihenfolge der Prozesse auf der CPU
Interrupt-Bearbeitung: Verdrängen von Prozessen von der CPU
Kommunikation zwischen Prozessen
Zuteilung von Betriebsmitteln (z.B. I/O Geräte) zu Prozessen
Auflösung von Konflikten bei Betriebsmittelanfragen
Verwaltung des Hauptspeichers
Dateiverwaltung

20
Q

Was ist ein Prozess?

A

Ein in Ausführung befindliches Programm.

21
Q

Warum muss ein Prozess in den Hauptspeicher geladen werden?

A

Damit die Anweisungen des Programms durch die CPU abgearbeitet werden können.

22
Q

Was ist ein PCB und Wie ist ein PCB augebaut?

A

Prozesskontrollblöcke beschreiben die Repräsentation eines Prozesses im Speicher.

1) Prozesszustand
2) Prozessnummer
3) Programmzähler
4) Registerwerte
5) Speicherbereiche
6) Liste offener Dateien

23
Q

Was versteht man unter dem “Kernel”

A

Der Kernel ist Teil des Betriebssystems, der die Organisation der Hardware regelt. Zugriff auf den Kernel zur Ausführung von Systemfunktionen ist über definierte Schnittstellen möglich.
Der Kernel umfasst wesentliche Dienste des Betriebssystems.
Er sollte möglichst immer im Hauptspeicher sein, da ständiger Zugriff nötig ist.

24
Q

Welche Kernel implementierungen gibt es?

A

Monolithtisch
Mikrokernel
Hybridkernel

Man unterscheidet generell zwischen Kernel-Mod und User-Mode

25
Worin unterscheidet sich der Kernel-Mode vom User-Mode?
Kernel-Mode: - > Privilegierter Modus - > Ausführung der Module des Kernels - > Schutz von Datenstrukturen des Kernels (exkl. Zugriff auf bestimmte Speicherbereiche, Kernel-Space) User-Mode: - > Ausführung von Anwendungsprogrammen - > Kein Zugriff auf Kernel-Space
26
Was ist der Nachteil von der Unterscheidung in Kernel und User-Mode?
Das Umschalten zwischen Kernel-und User-Mode wird über spezielle Befehle realisiert und kostet zeit.
27
Beschreibe den Monolithischen Kernel
Implementierung einzelner Funktionalitäten als Module: - > Alle Module laufen im Kernel-Mode - > Nachteil: relativ fehleranfällig, da alle BSkomponenten im privilegierten Modus laufen.
28
Was ist ein gängiges Implementierungskonzept des Monolithischen Kernels?
Gängiges Implementierungskonzept: >Schichten Modularität durch Strukturierung der gesamten Funktionalitäten in unabhängige Bereiche -> Eine Schicht kann nur auf die tiefer liegenden Schichten zugreifen und stellt den höheren Schichten selbst Dienste zur Nutzung bereit. (Aber! alle Schichten im privilegierten Modus) -> Komplexität des Gesamtsystems wird reduziert
29
Was ist der Nachteil des monolithischen Kernels?
Er läuft im privilegierten Modus, d.h. Treiber haben umfassende Rechte, und ein Absturz eines Treibers kann das gesamte System zum Absturz bringen. Allerdings ist eine monolithische Implementierung sehr effizient.
30
Wie sah die erste Umsetzung des Schichtenkonzepts (THE) aus?
Schicht n:Funktionalität 5: Benutzerprogramme 4: I/O-Verwaltung 3: Administratorkonsole 2: Speicherverwaltung 1: Prozessverwaltung,CPU-Scheduling 0: Hardware
31
Worin unterscheidet sich der Mikrokernel vom Hybridkernel?
Mirkokernel: - > Verfügt nur grundlegende Funktionalitäten - > Weiter Funktionalitäten werden als eigene Prozesse oder Programmbibliotheken in den User-Mode ausgelagert. - > Weniger fehleranfällig, aber langsamer Hybridkernel: - > Mischung aus monolithischem und Mikrokernel - > "Weniger" Funktionalitäten in User-Mode ausgelagert - > Vereint Vorteile beider Welten
32
Woher weiss die CPU, zu welchem Zeitpunkt ein Prozess suspendiert und ein neuer geladen werden soll? (Bsp. Tastatureingabe mit hoher Priorität)
Es gibt 2 Möglichkeiten: (1) Polling (2) Interrupts
33
Worin unterscheidet sich Polling von Interrupts?
Polling: Die CPU liest regelmässig die Status-Register aller Betriebsmittel, um festzustellen, welche Geräte bedient werden müssen, und zusätzlich das Status-Register eines Zeitgebers, um zu schauen , wie viel Zeit dem aktuellen Prozess noch bleibt. Dies ist nicht effizient da diese Leseoperationen Zeit kosten und überflüssig sind, wenn keine Daten vorliegen. Interrupts: (1) CPU stoppt die aktuelle Operation, speichert ihren Zustand. (2) CPU startet die neue Routine (ISR) (3) CPU setzt unterbrochene Operation an gleicher Stelle fort Das Speichern und Laden von Zuständen kostet Zeit,.!
34
Wie signalisiert der Interrupt-Controller den nächsten Aufruf an die CPU?
Indem er ein bestimmtes CPU-Register setzt. Dieses Register prüft die CPU am Ende jedes Maschinenbefehls, so dass eine quasi sofortige Reaktion auf einen Interrupt möglich ist.
35
Was versteht man unter Interrupt Request Lines (IRQs)?
Ein Interrupt Controller verfügt über Interrupt Request Lines, über welche Geräte Interrupts signalisieren können. Signalisierung von Interrupt-Controller an CPU über Interrupt Control Line mittels Index (Interrupt Vector) zu einer Tabelle von Adressen die auf Interrupt Handler zeigen. DER GRUNDGEDANKE IST: dass jedes Gerät eine eigene Verbindung zum Interrupt-Controller hat, so dass klar ist, welches, Gerät bedient werden muss. Zudem hat man den Vorteil das bei gleichzetigem Eintreffen zweier Interrupts man eindeutig entscheiden kann welcher Interrupt zuerst bedient wird.
36
Was sind Maskable (Maskierbare) Interrupts?
bestimmte Interrupts die abgeschaltet werden können, so dass sie einen laufenden Prozess nicht unterbrechen.
37
Was ist ein TRAP?
Ein Software-Interrupt
38
Nenne Beispiele für Systemaufrufe:
Prozesskontrolle (Create/Terminate Process, Wait/Signal event, Allocate/free memory) Dateisystem (Create/delete File, open/close File, Read/Write File) etc.