Betriebssysteme

WS 13/14 HTWG

WS 13/14 HTWG


Julie Tharlop
Diese Lernkarten behandeln grundlegende und fortgeschrittene Konzepte von Betriebssystemen auf Universitätsniveau. Sie decken Themen wie Prozesse, Threads, Kernel, E/A-Management, Synchronisation und Speicherverwaltung ab. Besonders relevant sind Mechanismen wie Semaphore, Monitore, Pufferarten und Adressierung. Studierende der Informatik profitieren davon, um ein tiefes Verständnis der Funktionsweise und Implementierung von Betriebssystemen zu erlangen.
Karten
135
Lernende
11
Sprache
Deutsch
Kategorie
Informatik
Stufe
Universität
Erstellt / Aktualisiert
28.01.2014 / 04.07.2022

Lernkarten

Kann das Client-Server Modell auch bei Personalcomputern Anwendung finden? (Statt nur bei verteilten Systemen)

Ja. Falls der Kern ein nachrichtenorientiertes System ist. (Message-Passing-System)

Warum sollte die ISR sehr kurz sein?

Da für die Dauer der ISR ALLES andere blockiert wird.

Was ist das COW-Bit und was macht es?

Bei dem Systemaufruf fork() wird für den Kindprozess keine neue Seite geladen sondern, bei beiden (Eltern&Kind) wird das Copy-on-write Bit gesetzt. 

  • Bei Lesezugriffen beider Prozesse geschieht nichts.
  • Bei einem Schreibzugriff löst das COW-Bit ein Page fault aus und jeder Prozess bekommt eine eigene Kopie der Seite

Was sind die 3 Stufen des Schedulings?

  • Langfristig: Kommt eine neue Task in das System oder nicht?
  • Mittelfristig: Swapping. Ein - oder Auslagern
  • Kurzfristig: Prozesszuteilung zur CPU

Was für Komponenten besitzt ein Programmkontext?

  • Registerwerte
  • Heap memory
  • Stack memory
  • Globale Variablen

Unter welchen Umständen braucht das System keine Prozesstabelle?

Falls in diesem System immer nur ein einziger Prozess läuft. Es ist also nicht nötig den Zustand des Prozesses zu speichern, da dieser niemals angehalten wird.

Wann ist es wichtig für den Programmier zu wissen ob eine Bibliotheksfunktion eine Systemfunktion aufruft und warum?

Im Prinzip ist es dem Programmierer egal.
Falls aber Wert auf Leistung und Geschwindigkeit gelegt wird sollte beachtet werden, dass jeder Systemaufruf einen Kontextwechsel veranlasst, der Zeit kostet. Es kann auch weiterhin ein wenig dauern, dass der Prozess nach dem Kontextwechsel wieder rechnen darf.

Katalog 4, Frage 11

TODO

Was ist der TRAP - Befehl?

Eine Trap Anweisung schaltet von User-mode in Kernel-mode. (Beispielsweise E/A). Ein Trap wird vom Anwendungsprogramm ausgelöst um eine gewisse Systemfunktion aufzurufen.

Welche Strategien zur Steuerung des Zugriffs auf Festplatten kannst du hier mal ganz schnell hinklatschen?

  • FIFO: is klar, ne?
  • SSTF: den Block der am wenigsten Kopf-Bewegung erfordert (beide Richtungen) (Shortest Seek Time First)
  • SCAN: Fahrstuhl-Prinzip, der immer nur in eine Richtung sich bewegt, bis er oben (unten) angekommen ist.
  • C - SCAN: Wie SCAN nur, dass wenn er an einem Ende angekommen ist wieder von vorne anfängt (Wie die Schaltplatte)

Was ist der wesentliche Unterschied zwischen einer Blockdatei und einer Zeichendatei?

Blockorientierte Gerätedateien bestehen aus nummerierten Blöcken, von denen jeder unabhängig von allen anderen gelesen oder geschrieben werden kann. Es ist möglich, einen beliebigen Block zu suchen und von dort zu lesen oder zu schreiben. Dies ist mit Zeichendateien nicht möglich

2 Beispiele wo bei Multithreaded keine Performance Vorteile bringt gegenüber Singlethreaded?

  1. Bei rein sequentiell arbeitenden Prozessen
  2. Kommandozeilen-Interpreter / Shell

Ziel von Handheld Geräten?

Ein sogenannter "Kleinst-Rechner" für einfache Anwendungen wie Termin-/Adressverwaltung, Internet, E-mail etc.

Alle Regeln für die Schedulings musst du drauf haben.

Am Besten du hast die Tabelle im Stallings drauf

Wie lange ist die durchschnittliche Zugriffszeit auf ein Wort?
Zugriffszeit auf Cache: 2 ns (Trefferate: 95 %)
Zugriifszeit auf RAM: 10ns (Trefferrate (nach Cache miss): 99%)
Zugriffszeit auf Platte: 10 ms

0,95 * 2ns = 1,9 ns (Cache - Wort)

0,05 * 0,99 * 10ns = 0,495 ns (RAM)

0,05 * 0,01 * 10.000.000ns = 5000 ns

Summe = 5002,395 ns = 5,002395 mycros

Lernen