Multitasking und Singletasking-Betriebssysteme

Betriebssysteme laufen singeltasked, multitasked oder echt parallel. Die technische Entwicklung hat in dem Bereich zwei Umbrüche erlebt.

Multitasking ist heute in aller Munde, dabei ist es noch gar nicht so lange her, dass Singletasking an der Tagesordnung war. So haben die Computer angefangen: Mit der Möglichkeit nur eine Aufgabe abzuarbeiten und wenn diese erledigt war, dann konnte die nächste Aufgabe in Auftrag gegeben werden. Mancher Leser wird sich sicher noch an diese Geräte aus eigener Erfahrung erinnern.

Heute ist es fast auf jedem Heimcomputer Standard, mehrere Kerne zu haben und dadurch zu echtem Multitasking befähigt zu werden. Zwischen diesen beiden Extremen existierte über lange Zeit das Multitasking, welches heute als Pseudomultitasking beschrieben wird.

Multitasking auf einem Kern

Um auf einem Singlecore-System Multitasking zu simulieren, werden die verschiedenen Prozesse in sehr kurzen Zeitabständen ausgewechselt. Die CPU, die zur Verfügung steht, wird mittels verschiedenster Techniken an die Prozesse verteilt. Eine beliebte Möglichkeit ist die Zeitscheibensteuerung. Dabei bekommt ein Prozess die CPU zur Abarbeitung seiner Aufgabe und nach Ablauf seiner Zeitscheibe wird sie ihm entzogen und er kehrt in den Status "bereit" zurück. Sobald er in der Reihe der wartenden Prozesse wieder vorne ist, kann er weiter arbeiten. Diesen Prozess durchläuft der Prozess, bis er fertig ist mit seiner Aufgabe. Diese Technik nennt sich Round Robin.

Diese Möglichkeiten der CPU-Verteilung werden bevorzugt vom Preemptive Multitasking gesteuert. Neben der Zeitscheibensteuerung stehen dem Preemptive Multitasking weiter Techniken zur Verfügung, zum Beispiel "Shortest Job First", "Highest Response Ratio Next" und unzählige weitere. Die Modelle der Techniken werden von den Betriebssystemprogrammierern auch nach Bedarf verfeinert oder kombiniert.

Kooperatives Multitasking versus Preemptive Multitasking

Die Alternative zum Preemptive Multitasking ist das kooperative Multitasking. Bei dieser Verwaltungsart geht man von einem kooperativen Verhalten der Prozesse aus, die die CPU freiwillig weitergeben, damit alle Prozesse sich möglichst schnell abarbeiten können und der Benutzer Ergebnisse am Bildschirm zu sehen bekommt. Das kooperative Multitasking fand in Windows bis Version 3.11 und in Mac OS bis Version 9 Verwendung.

Der Grund für die Überlegenheit des Preemptive Multitasking ist einfach. Wenn ein Programm sich unkooperativ verhält oder fehlerhaft ist, dann kann es beim kooperativen Multitasking den gesamten Computer blockieren und lahmlegen. Beim Preemptive Multitasking kann dieses Problem nicht entstehen. Zusätzlich kann mit letzterem auf Interrupts reagiert werden.

Warum braucht es Multitasking?

Die Reaktion auf Interrupts ist bei zeitkritischen Systemen wichtig. Ebenso ist zum Beispiel jeder Tastenanschlag und jede Mausbewegung des Computerbenutzers ein Interrupt. Wenn man jetzt vor dem Computer sitzt und erst einmal fünf Minuten warten muss, bis der getippte Buchstabe auf dem Bildschirm erscheint, dann ist man in der Regel genervt und frustriert. Darum ist Multitasking wichtig.

Das Kürzel Mac OS steht für Macintosh Operating System und sagt aus, dass Mac OS ein Betriebssystem ist. Ein anderes Betriebssystem, welches in seinem Namen bereits den Hinweis darauf trägt, eines zu sein ist OS/2 aus dem Hause IBM.

Barbara Fiedler - Guten Tag, ich bin Informatikerin. Zusätzlich habe ich bereits zu Schulzeiten journalistisches Schreiben bei der ...

rss
Hilfreich?