Betriebssysteme

Vor- und Nachteile der Implementierungsmöglichkeiten von Threads?

Benutzerebene:
  • hohe Effizienz, kein Umschalten in den Kernelmodus notwenig, bei Thread-Kontextwechsel
  • Nachteil: alle Threads eines Prozesses blockieren, wenn eine Systemaufruf innerhalb eines einzelnen Threads blockiert
Kernelebene:
  • Vorteil: OS kann Zuteilung der Rechenzeit über die Threads zu gestalten und so einen Prozess nicht unnötig zu blockieren
  • Weiterer Vorteil: Wenn Thread blockiert, blockiert nicht der ganze Prozess
  • Nachteil: nicht so effizient, da bei Thread-Kontextwechsel in den Kernel gewechselt werden muss (Software-Interrupt)

Diskussion