Der Programmcode von David wird vom NOS wie ein elementarer Bestandteil der
NetWare behandelt und als zusätzlicher Task geführt. Das NOS gibt also die
Kontrolle an David, der anschließend die Kontrolle an den nächsten Prozess
weitergibt. Das NOS arbeitet mit einem sogenannten »non-preemptive multitasking«.
NetWare übernimmt nicht die Kontrolle über die einzelnen Prozesse, sondern
überlässt dem jeweiligen Thread die Verantwortung für die Auslastung. Während ein
Task die CPU blockiert, können keine anderen Aufgaben ausgeführt werden. Bei
»Microsoft Windows NT« und »IBM OS/2« wird dieses Taskverhalten beispielsweise
vom Betriebssystem übernommen (»Zeitscheiben-System« oder »preemptive
multitasking«).
Der entscheidende Vorteil bei einem non-preemptiven Betriebssystem ist generell
die bessere Performance-Aufteilung und insgesamt höhere Leistung. Jeder Prozess
entscheidet selbständig, wieviel CPU-Zeit tatsächlich benötigt wird. Aber
natürlich beinhaltet dieses Verfahren auch eine Gefahr. Ist ein NLM nicht sauber
entwickelt und nicht optimiert worden, wird der gesamte Server unnötig gebremst
oder eventuell komplett blockiert; es kann daher sehr schnell zu einem »Server-
Crash« kommen, da das Betriebssystem einen evtl. störenden oder blockierten Task
nicht einfach abbrechen kann.
|