« »

Grundbegriffe

In der Vorlesung wurden Grundbegriffe wie Threads und Parallelität behandelt. Die folgenden Fragen beschäftigen sich mit diesen Konzepten und sollen die wesentliche Unterschiede festigen.

a)

Level 1: Wissen

Wie unterscheidet sich ein federgewichtigter Prozess (Fiber) von einem leichtgewichtigen Prozess (Thread)?

Lösung

Fiber:

  • Benutzer-Level-Thread → nicht sichtbar für das Betriebssystem
  • Anwendung muss Scheduling übernehmen
  • Fiber nutzt Ressourcen, die der Prozess zur Verfügung stellt
  • Vorteil: Kontextumschaltung ohne Wechsel in den Kernel Mode

Thread:

  • Betriebssystem-Level-Thread → sichtbar für das Betriebssystem
  • Scheduling wird vom Betriebssystem übernommen
  • kooperierende Threads teilen sich einen Adressraum (code + data + bss + Heap, Stack ausgenommen wegen des eigenen Kontrollflusses jedes Threads)
  • Vorteil: komplexe und synchrone Aufgaben können ausgelagert und wiederverwendet werden
  • Nachteil: Wechsel zwischen Threads erfordert Kontextwechsel

b)

Level 2: Verstehen

Was ist der Unterschied zwischen Threads (wie Sie in der Vorlesung vorgestellt wurden) und Simultaneous Multithreading (bei Intel auch bekannt als Hyper-Threading)? Identifizieren Sie für Ihre Antwort zuerst die wesentlichen Punkte von Simultaneous Multithreading aus dem folgenden Text1.

1

Übersetzt von https://www.intel.com/content/www/us/en/gaming/resources/hyper-threading.html (zuletzt aufgerufen: 10. Juni 2026).

„Die Intel® Hyper-Threading-Technologie ist eine Hardware-Innovation, die es ermöglicht, mehr als einen Thread auf jedem Kern laufen zu lassen. Mehr Threads bedeuten, dass mehr Arbeit parallel erledigt werden kann.

Wie funktioniert Hyper-Threading?
Wenn die Intel® Hyper-Threading-Technik aktiv ist, stellt die CPU zwei Ausführungskontexte pro physischem Kern zur Verfügung. Das bedeutet, dass ein physischer Kern jetzt wie zwei “logische Kerne” arbeitet, die verschiedene Software-Threads verarbeiten können. Zwei logische Kerne können Aufgaben effizienter abarbeiten als ein herkömmlicher Single-Threading-Kern. Die Intel® Hyper-Threading-Technik verbessert den CPU-Durchsatz, indem sie die Leerlaufzeit nutzt, in der der Kern auf die Fertigstellung anderer Aufgaben wartet.“

Lösung
  • Simultaneous Multithreading:
    • Optimierung, die es ermöglicht, dass dieselbe funktionale Einheiten eines Prozessor durch zwei Ausführungen (z. B. Prozesse) gleichzeitig genutzt werden kann
    • Ziel: Leerlaufzeit eines Kerns reduzieren, indem eine zweite Ausführung die unterschiedlichen Stufen der Pipeline bei einem Leerlauf nutzt
  • Unterschiede zum Software-Thread:
    • Optimierung durch Hardware-Design statt durch Software-Kapselung
    • nebenläufige Ausführung aus Performanzgründen, nicht aus funktionalen Gründen

c)

Level 1: Wissen

Grenzen Sie die Begriffe Nebenläufigkeit und Parallelität im Kontext von Prozessen voneinander ab.

Lösung

Parallelität:

  • zwei Prozesse werden zur selben Zeit ausgeführt
  • Beispiel: Prozessor besitzt mindestens zwei Kerne und führt auf beiden zur selben Zeit den jeweils anderen Prozess aus

Nebenläufigkeit:

  • mindestens zwei Prozesse können im Betriebssystem ausgeführt werden
  • jedoch nicht zwangsweise parallel
  • Beispiel: zwei Prozesse auf demselben Kern, Prozess A wird durch Interrupt unterbrochen, Prozess B wird ausgeführt → Prozesse laufen nebeneinander, aber nicht parallel

d)

Level 1: Wissen

Was ist der Unterschied zwischen einem Deadlock und einem Livelock?

Lösung

Deadlock:

  • zwei oder mehr Prozesse und Ressourcen
  • jeder Prozess hält mindestens eine und wartet auf mindestens eine weitere Ressource (Zustand Blocked)
  • zirkuläre Wartebeziehung
  • exklusiv genutzte Ressourcen
  • keine Möglichkeit zur Unterbrechung

Livelock:

  • zwei oder mehr Prozesse und Ressourcen
  • ein oder mehrere Prozesse können ausgeführt werden (Zustand READY)
  • aber: kein Prozess kann im logischen Programmverlauf fortschreiten

Lernziele

In dieser Aufgabe …

  • festigen die Studierenden wichtige Grundbegriffe.
  • grenzen die Studierenden verwandte Konzepte voneinander ab.
  • erschließen sich die Studierenden den technischen Hintergrund von Herstellerangaben.