Übung 4 Flashcards

1
Q

Welche Aussagen zu kritischen Abschnitten sind wahr?

  • Um alle Konfliktstellen zu identifizieren und zu schützen betrachtet man den gesamten Kern als kritischen Abschnitt.
  • Kritische Abschnitte sind ohne aufkommende Verzahnungen ungefährlich.
  • Eine Unterbrechungssperre verhindert in jeden Fall die verzahnte Ausführung von Kernoperationen.
  • Ein kritischer Abschnitt bezeichnet den gegenseitigen Ausschluss (mutual exclusion) während einer Kernoperation.
A
  • Um alle Konfliktstellen zu identifizieren und zu schützen betrachtet man den gesamten Kern als kritischen Abschnitt.
  • Kritische Abschnitte sind ohne aufkommende Verzahlungen ungefährlich.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Welche Aussagen sind in Bezug auf Kernausschlüssen korrekt?

  • Die Realisierung eines Kernauschlusses ist von der Anzahl der Prozessoren und der Möglichkeit von Unterbrechungen abhängig.
  • Kernausschlüsse sind aufgrund ihrer Komplexität nur mit Hardware realisierbar.
  • In Mehrprozessorsystemen mit Unterbrechungen wären Kernausschlüsse durch eine unteilbare Operation, die sowohl die Kernsperre als auch die Unterbrechungssperre setzt, umsetzbar.
  • Bei einem Mehrprozessorsystem ohne Unterbrechungen reicht eine simple Interruptsperre, um den Kernausschluss zu realisieren.
A
  • Die Realisierung eines Kernausschlusses ist von der Anzahl der Prozessoren und der Möglichkeit von Unterbrechungen abhängig.
  • In Mehrprozessorsystemen mit Unterbrechungen wären Kernausschlüsse durch eine unteilbare Operation, die sowohl die Kernsperre als auch die Unterbrechungssperre setzt, umsetzbar.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Welche Aussage über Kernel-Level Threads sind korrekt?

  • Thread Operationen wie Threadererzeugung ist für Kernel-Level Threads i.d.R. teuer.
  • Für verschiedene Kernel-Level Threads kann ein anderer Thread-Scheduler eingesetzt werden.
  • Bei einem Seitenfehler wird der ganze Prozess suspendiert.
A

Thread Operationen wie Threaderzeugung ist für Kernel-Level Threads i.d.R. teuer.

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

Welche Aussagen über User-Level Threads sind richtig?

  • Jeder User-Level Thread benötigt einen Prozess.
  • Kooperatives-Multithreading ist mit User-Level Threads leicht umsetzbar.
  • Bei einem Seitenfehler wird der ganze Prozess suspendiert.
  • User-Level Threads können Betriebssystem-Ressourcen schonen.
A
  • Bei einem Seitenfehler wird der ganze Prozess suspendiert.
  • User-Level Threads können Betriebssystem-Ressourcen schonen.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Welche Aussagen über Thread-Pool sind wahr?

  • Threads im Thread-Pool können wiederverwendet werden.
  • Durch eine hohe Anzahl von blockierten Threads kann das Starten von Aufgaben verhindert werden.
  • Die Anzahl der Threads im Thread-Pool ist unbegrenzt.
  • Threads, die in einer Warteschlange auf den nächsten Auftrag warten, werden nicht blockiert.
A
  • Threads im Thread-Pool können wiederverwendet werden.
  • Durch eine hohe Anzahl von blockierten Threads kann das Starten von Aufgaben verhindert werden.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was passiert wenn ein Prozess den kritischen Abschnitt betritt?

A

Wenn ein Prozess einen kritischen Abschnitt betritt, darf kein weiterer Prozess einen dazu potentiellen Konflikt stehendem kritischen Abschnitt betreten

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

Gilt das eine Unterbrechungsperre in jedem Fall die verzahnte Ausführung von Kernoperationen verhindert?

A
  • Falsch, das gilt nur für Einprozessormaschinen
  • Bei Mehrprozessorsystemen kann es trotzdem zu einer verzahnten Ausführung von Kernoperationen kommen, wenn sie simultan auf zwei Prozessoren bearbeitet werden und Speicherzugriffe verzahnt ablaufen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Stimmt es, dass bei einem Mehrprozessorsystem ohne Unterbrechungen eine simple Interruptsperre reicht, um den Kernausschluss zu realisieren?

A
  • Das System hat keine Unterbrechungen, deswegen bringt eine Interruptsperre nichts
  • Wir müssen daher die verzahnte Ausführung kritischer Abschnitte vermeiden und brauchen eine Kernsperre
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Ist kooperatives-Multithreading mit User-Level Threads leicht umsetzbar?

A

Nein, da Threads auf User-Level für Kernel “unsichtbar” sind und die Threads die Kontrolle freiwillig abgeben müssen.

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

Kernel-Level Threads

Wird bei einem Seitenfehler der ganze Prozess suspendiert?

A

Nein, der Kernel erkennt die Quelle (Thread) des Seitenfehlers und suspendiert nur den entsprechenden Verursacher (Thread)

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

Kann man für verschiedene Kernel-Level Threads andere Thread-Scheduler einsetzen?

A

Nein, da Threads dem Kernel bekannt sind und es wird ein Thread-Scheduler für den gesamten Kernel benutzt

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