Studium, Ausbildung und Beruf

web uni-protokolle.de
 powered by
NachrichtenLexikonProtokolleBücherForenDienstag, 22. Oktober 2019 

Präemptives Multitasking


Dieser Artikel von Wikipedia ist u.U. veraltet. Die neue Version gibt es hier.
Präemptiv wird in der Regel im Zusammenhang so genannten Multitasking -Verfahren verwendet. Es geht darum auf welche und Weise das Betriebssystem eines Computers das Problem löst dass mehrere Prozesse gleichzeitig ausgeführt werden. Sofern der Computer nur über eine CPU verfügt kann zu einem bestimmten Zeitpunkt ein Prozess diese benutzen.

Beim präemptiven Multitasking wird der Zeitraum in Scheiben definierter Länge unterteilt. Den Prozessen werden durch den Scheduler Zeitscheiben zugewiesen. Läuft ihre Zeitscheibe ab werden sie unterbrochen und ein anderer Prozess erhält eine Zeitscheibe.

Das kooperative ( nicht-präemptive ) Multitasking arbeitet ohne Zeitscheiben. Hier blockiert Prozess die CPU solange bis er sie freiwillig abgibt.

Ältere Ansätze von Multitasking basierten u.a. der Nutzung des Timer-Interrupt-Systems. Dabei wurde beim der entsprechende Prozesskontext gewechselt und eine neue zugeteilt. Der gravierende Nachteil bestand in der Berechtigungs-Differenzierung von Nutzer- und Scheduler-Prozess: Der Nutzerprozess jederzeit dem Scheduler verbieten die Applikation zu

Daher ist eine wesentliche Voraussetzung für echtes präemptives Multitasking eine CPU verschiedene Berechtigungs-Modi beherrscht und ein Betriebssystemkern der der Lage ist die verschiedenen Modi dahingehend nutzen Anwendungs-Software mit unterschiedlichen Berechtigungen auszuführen. Ein Beispiel:

  • Anwendungssoftware ist „unterprivilegiert“ im Sinne von darf nicht alles“. Sie muss nämlich von Prozess mit höher Berechtigungsstufe unterbrechbar sein. Das die Grundvoraussetzung dafür dass der Kernel – oben beschrieben – ihr
    1. eine Zeitscheibe zuteilen und den Prozess kann
    2. bei Ablauf der Zeitscheibe den Prozess und „schlafen“ legen kann und
    3. bei Zuteilung einer neuen Zeitscheibe den wieder so aufwecken kann dass der Prozess merkt dass er unterbrochen wurde
  • Der Systemkern selbst läuft in einem mit maximaler Berechtigungsstufe.
    1. Bei Linux unterscheidet man hier zwischen Kernel-Mode und
    2. bei Windows NT und Nachfolgern spricht von „Ring 0“ als Kernel-Modus und Ringen Nummerierung für „unterprivilegierte“ Prozesse.

Nicht in der Lage diese Bedingungen erfüllen waren unter anderem Windows 3.0 Mac OS Classic und manche DOS -Betriebssysteme wie MS-DOS DR-DOS vor Novell-DOS und FreeDOS .

Prozessoren die die o.g. Anforderungen erstmalig erfüllten waren u.a. der 80386 -Prozessor von Intel samt seiner kompatiblen Nachbauten und die von Motorola aus der Reihe der 68k CPUs.



Bücher zum Thema Präemptives Multitasking

Dieser Artikel von Wikipedia unterliegt der GNU FDL.

ImpressumLesezeichen setzenSeite versendenSeite drucken

HTML-Code zum Verweis auf diese Seite:
<a href="http://www.uni-protokolle.de/Lexikon/Pr%E4emptives_Multitasking.html">Präemptives Multitasking </a>