BSY - Betriebssysteme

Betriebssysteme

Betriebssysteme


L. K.
Diese Lernkarten behandeln grundlegende Konzepte von Betriebssystemen auf Universitätsniveau, mit Fokus auf Prozesse, Threads, CPU, Speicher und I/O. Sie erklären die Unterschiede zwischen Kernel-Level und User-Level Threads, Race Conditions, Synchronisation und die Organisation von Prozessen. Ideal für Studierende der Informatik, die ein tiefes Verständnis der Funktionsweise von Betriebssystemen erlangen möchten.
Flashcards
162
Students
4
Language
German
Category
Computer Science
Level
University
Created / Updated
25.05.2019 / 03.06.2020

Flashcards

Was sind die Vor- und Nachteile des Schichtenmodells?

Vorteile:

  • übersichtliche Struktur
  • Durch Aufteilung in Teilsysteme einfacher zu handhaben

Nachteile

  • Leistungseinbusse

Beschreibe die Microkernel Architektur.

Bei der Microkernel Architektur sind nur die notwendigsten Funktionen im Kernel (je nach Implementation anders). Die restlichen Dienste werden ausgelagert. Typische ausgelagerte Funktionen sind Filesystem, Treiber, Virtual Memory Manager, etc.

Wie werden Virtual Machine Monitore (VMM) auch noch genannt?

Hypervisor

Erkläre den Type 1 Hypervisor.

Wird "bare metal" oder native gennant. Es gibt kein Host BS. Der Hypervisor beinhaltet Treiber für die Ansteuerung der Hardware.

Erkläre den Type 2 Hypervisor.

hosted. Der Hypervisor setzt auf "vollem" BS auf und nutzt das Filesystem und die Treiber des Hosts für Hardwarezugriffe. Benötigt meist Kernelmodul wegen privilegiertem Zugriff.

Was sind die Vor- und Nachteile von Hypervisor?

Vorteile:

  • Mehrere BS laufen gleichzeitig auf einem Rechner
  • Ein "Problem-BS" beeinflusst die Funktionalität nicht

Nachteile:

  • etwas langsamer

Welche Bedingungen müssen Real Time Systeme erfüllen?

  • Das Resultat muss logisch korrekt sein.
  • Das Resultat muss zur richtigen Zeit abgeliefert werden.

Was kannst du über die Funktionalität und die Funktionen von Real-Time BS sagen?

RT-BS haben i.A. eine sehr eingeschränkte Funktionalität. Sie haben meist kein Virtual Memory und Sekundärspeicher oder wenn doch, dann nur sehr beschränkt.

Weiter unterstützen sie nur die notwendigsten Funktionen und sind sehr Hardwarenahe implementiert.

Was ist symmetrisches Multiprocessing?

Bei einem symmetrischen Multiprozessor (z.B. Multicore) arbeiten alle CPUs selbstständig und haben die gleiche Funktionalität, sie können also alle Aufgaben berabeiten (symmetrisch). Sie nutzen alle gemeinsam den Hauptspeicher und die I/O Geräte, haben aber ein eigenes Cache-System. Wobei der Level 3 Cache i.d.R. geteilt wird.

Erkläre das Cache Coherence Problem?

Wenn sich der gleiche Block aus dem Speicher in mehreren Caches (von mehreren CPUs) befindet und eine CPU diesen ändert, was sehen dann die anderen CPUs?

 

Was versteht man unter "echter Parallelität"?

Das BS verteilt Prozesse und Threads auf alle Prozessoren.

Was sind die Vorteile von symmetrischem Multiprocessing?

  • höhere Leistungsfähigkeit durch zusätzliche CPUs
  • Verfügbarkeit: kein Stillstand bei Ausfall einer CPU, nur Leistungsreduktion

Was macht ein Betriebssystem?

Das BS verwaltet die HW-Ressourcen und stellt diese dem Anwender zur Verfügung (Rechenleistung, Speicher, I/O-Devices, etc.)

 

Beim Speicherzugriff unterscheiden wir 2 Typen. Sie heissen diese?

Uniform Memory Access (UMA) und Non-Uniform Memory Access (NUMA)

Erkläre UMA (Uniform Memory Access).

Alle Speicherzugriffe sind ca. gleich lang. Jede CPU ist am gleichen Memory angeschlossen.

Erkläre NUMA (Non-Uniform Memory Access).

Anstelle des gleichen Memorys für alle CPUs gibt es einen Adressraum. Speicherzugriffe auf "entfernten" Speicher sind dabei langsamer.

Welche Recheneinheiten befinden sich in der CPU?

ALU: Arithemtic and Logic Unit. Für Integer und Bitoperationen

FPU: Floating Point Unit

Die CPU beinhaltet Adress-, Daten-, und Statusregister. Von wem werden diese benutzt und was beinhalten sie?

Sie werden von System- und Anwenderprogrammen benutzt und beinhalten Condition Codes oder Flags.

Viele Kontroll- und Statusregister in der CPU sind "nicht sichtbar". Was heisst das für die Anwenderprogramme?

Das heisst, sie sind für Anwenderprogramme nicht zugänglich.

Von wem werden Kontroll- und Statusregister in der CPU verwendet?

z.T. von der CPU und z.T. vom Betriebssystem

Was ist die Instruction (Control) Unit? Wo

Die Steuereinheit. Zuständig für die Interpretation und Ausführung der Instruktionen.

Wofür ist die Bus Interface Unit in der CPU verantwortlich?

Für die Ansteuerung der externen Einheiten.

Worüber arbeitet die I/O Logik mit der CPU und was enthält sie?

Sie arbeitet mit der CPU über Steuerleitungen und enthält gerätespezifische Logik.

Was machen I/O Module?

Sie holen Daten vom System Bus und speichern sie vorübergehend in Registern.

Oder sie bringen Daten zum System Bus.

Was enthalten die Status- / Kontrollregister in I/O Modulen?

Zustands- und Steuerinformationen

Nenne die 3 Techniken für Kommunikation mit I/O Geräten (ohne Erklärung dazu).

  • Programmed I/O oder synchroner I/O
  • Interrupt Driven I/O oder async. I/O
  • Direct Memory Access

Programmed I/O oder synchroner I/O ist eine Technik für die Kommunikation mit I/O Geräten. Erkläre kurz, was du darüber weisst.

Benötigt keine Interrupts. Die CPU wartet auf die Beendigung jeder einzelnen I/O Operation => busy wait

Interrupt Driven I/O oder async. I/O ist eine Technik für die Kommunikation mit I/O Geräten. Erkläre kurz was du darüber weisst.

Die CPU führt wähend einer I/O Operation Code aus. Das wird unterbrochen, wenn die I/O Operation beendet wird.

=> Die CPU kann mehrere Arbeiten ausführen.

Direct Memory Access ist eine Technik für die Kommunikation mit I/O Geräten. Erkläre kurz, was du darüber weisst.

Ein Speicherblock mit Daten wird vom / zun Speicher übertragen ohne Rechenleistung der CPU zu beanspruchen.

Was macht ein Interrupt?

Er unterbricht die aktuelle Instruktionsausfürhung des Prozessors. Die Kontrolle geht an den entsprechenden Interrupt Handler (ISR). Ev. wird zu einem anderen Programm umgeschaltet.

Quellen für Interrupts können synchron oder asynchron sein. Nenne 3 asynchrone Interruptquellen.

  • Timer
  • I/O Devices
  • Hardwarefehler

Worüber werden die Interrupt Service Routines (ISR) angesprochen?

Über die Vektortabelle.

Wer kann die Vektortabelle setzen?

Nur das BS

Eine Alternative zu Interrupts wäre Polling. Was ist das Problem beim Polling?

Es geht zu viel Zeit mit Warten verloren.

Was sind DMA-Einheiten und wie funktionieren sie?

DMA (Direct Memory Access) Einheiten sind Teil des I/O Moduls. Die CPU richtet Anfragen an die DMA-Einheit. Diese transferiert den Datenblock direkt in / aus dem Speicher (async. zur CPU).

Wann wird eine CPU bei DMA (Direct Memory Access) benötigt?

Nur am Anfang und am Ende. Während des Transfers kann sie andere Arbeiten ausführen.

Nenne die beiden Arbeitsmodi eines Prozessors und beschreibe sie kurz.

  • Kernel Mode: Viele Kontrollregister, I/O Instruktionen, etc.
  • User Mode: wenig / keine Zugriffsmöglichkeit auf HW, Instruktionsmenge eingeschränkt.

Warum ist im User Mode die Instruktionsmenge eingeschränkt?

Um unbefugten / unbeabsichtigten Zugriff auf DAten und Ressourcen zu verhindern.

Wie erfolgt eine Umschaltung zwischen User bzw. Kernel Mode?

Durch einen Interrupt, Trap, System Call

Was sind System Calls?

Die Schnittstelle zwischen Anwender- und Systemsoftware. Sie rufen Systemfunktionen auf und schalten zwischen Kernel und User Mode um.

Study