Operating System Concepts Flashcards

1
Q

Betriebssystem

A

Ein Betriebssystem ist die primäre Software, die die gesamte Hardware und andere Software auf einem Computer verwaltet. Das Betriebssystem, auch als „OS“ bekannt, ist mit der Hardware des Computers verbunden und stellt Dienste bereit, die von Anwendungen verwendet werden können.

  • Behandelt die Übertragung von Programmen in und aus dem Speicher
  • Organisiert die Speichernutzung zwischen Programmen
  • Anbieten abstrakter Schnittstellen für Applikationen (System Calls)
  • Virtuelle Geräte bereitstellen.
  • Verwaltet verschiedene Ressourcen und stellt sie für Anwendungen zur Verfügung:
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Ziele und Zuständigkeiten von Modernen Betriebssystemen

A
  • Prozessverwaltung
  • Speicherverwaltung
  • Synchronisation & Interprozess-Kommunikation (IPC)
  • Ein- und Ausgabe (E/A bzw. I/O): Geräteverwaltung, Dateisysteme
  • “Security” (Benutzerverwaltung, Schutzmaßnahmen)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Arten von Betriebssystemen

A
  • Monolithische Betriebssysteme
  • Schichtenmodelle
  • Microkernels
  • Virtuelle Maschinen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Unterschied zwischen Monolithische und Microkernel?

A

Beides sind Konzepte zur Realisierung eines Betriebssystems.

Monolithisches Betriebssystem: das gesamte Betriebssystem läuft im Kernel-Modus, Prozeduren können von anderen Prozeduren verwendet werden, dies teilt die Prozeduren in drei Schichten (Hauptprozedur, Service-Prozeduren, Utility-Prozeduren), effizient, aber schwierig zu warten.

Mikrokernel: Alle Teile laufen unabhängig voneinander, nur der Mikrokernel läuft im Kernelmodus, alle anderen Programme laufen im Benutzermodus, wenn ein
–> Programm abstürzt, bleibt der Rest intakt.

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

Microkernels

A

OS mit kleinem Kern und dem Großteil an Services mit beschränkten Rechten.

  • Im Kern: Prozessverwaltung, IPC und Interrupt-Verwaltung
  • Alle anderen Services in gewöhnlichen Prozessen, die mittels IPC kommunizieren.

+ Speicherschutz für OS-Services
+ Klare “interne” Schnittstellen
+ Potenziell stabiler durch Abschottung
− (Noch) zu langsam für die praktische Verwendung

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

Virtuelle Maschinen

A
  • Aufteilung von Multiprogramming und Erweiterter Maschine
  • Hypervisor stellt Kopien von simpler Hardware zur Verfügung
  • Auf diesen laufen dann unabhängige komplette Betriebssysteme

Virtuelle Maschinen (VMs) ermöglicht es, ein Betriebssystem auszuführen, das sich wie ein völlig separater Computer in einem App-Fenster auf einem Desktop verhält.

Gebrauch: Software auszuführen, die ein anderes Betriebssystem erfordert, oder um Anwendungen in einer sicheren (Sandbox-)Umgebung zu testen.

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

Prozesse

A

Definition:

  • (Ausgeführter) Programm-Code
  • Dazugehörige Daten (z.B. Variablen)

Instruction Trace:

  • Abfolge von Instruktionen eines Prozesses
  • Kombination der Traces aller Prozesse definiert das Systemverhalten
  • Genaue Abfolge hängt vom Scheduling des OS ab
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Prozessverwaltung

A
  • OS steuert Prozessausführung und verwaltet alle Ressourcen der Prozesse
  • OS speichert verschiedene Prozesseigenschaften im PCB (Process Control Block)
  • Außerdem muss das sogenannte Process-Image selbst gespeichert werden
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Pfade

A

Absolute Pfade:

  • Identifizieren Dateien und Verzeichnisse eindeutig
  • Beginnen mit /

Relative Pfade:

  • Relativ zu anderem Pfad meist current working directory (CWD).

Mounten/Virtuelles Dateisystem:

  • erlaubt einhängen weiterer Dateisysteme als Teilbaum
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Vorteile von virtuellen Maschinen

A

Virtuelle Maschinen sind einfach zu verwalten und zu warten und bieten mehrere Vorteile gegenüber physischen Maschinen:

  • können mehrere Betriebssystemumgebungen auf einem einzigen physischen Computer ausführen, was physischen Speicherplatz, Zeit und Verwaltungskosten spart.
  • unterstützen Legacy-Anwendungen und reduzieren die Kosten für die Migration auf ein neues Betriebssystem.
  • können auch integrierte Notfallwiederherstellungs- und
    Anwendungsbereitstellungsoptionen bereitstellen.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Erkläre die Client-Server-Architektur

A

Computermodell, bei dem der Server die meisten Ressourcen und Dienste hostet, bereitstellt und verwaltet, die vom Client genutzt werden sollen. Diese Art von Architektur hat einen oder mehrere Client-Computer, die über ein Netzwerk oder eine Internetverbindung mit einem zentralen Server verbunden sind.

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