Hamza Raya: Kooperatives / Präemptives Multitasking

Hallo

Was ist der Unterschied zwischen diesen beiden Methoden und wo liegen die Hauptvor- und Nachteile ?

Bin dankbar für jede Antwort.

Gruss
Hamza

  1. Hallo Hamza,

    Was ist der Unterschied zwischen diesen beiden Methoden und wo liegen
    die Hauptvor- und Nachteile ?

    Kooperatives Multitasking: Das Multitasking wird von den Programmen selber verwaltet. Die
    Programme bestimmen selber, wie lange der Prozessor von ihnen benutzt wird (kooperativ).
    Das OS ist darauf angewiesen, dass die Prozesse sich kooperativ verhalten. Stürzt ein
    Prozess ab, ist der Prozessor belegt und das OS hat kaum Möglichkeiten, den Konflikt zu
    lösen. Normal muss das OS dann neu gestartet werden. Wurde übrigens bis WfW von Win
    verwandt.

    Preemptives Multitasking: Das Multitasking wird vom OS verwaltet. Ein Scheduler bestimmt,
    wie lange ein Programm laufen darf. Ist die Zeit abgelaufen, wird ein Kontextwechsel
    durchgeführt, also ein anderer Prozess ausgewählt. Die Scheduler können beliebig komplex
    sein, der Kontext-Wechsel kann nach Kriterien wie Priorität, Rechenzeit, etc vollzogen
    werden. Es ist fast unmöglich, dass ein Prozess den Prozessor komplett für sich allein
    beansprucht. Stürzt ein Prozess ab, können die Ressourcen hinterher trotzdem noch
    weiterverwandt werden. Allerdings ergibt sich durch die höhere Komplexität mehr Last
    und dadurch eine größere Latenzzeit.

    Grüße,
     CK

    --
    Die Wirklichkeit hat weder ein Inneres, noch ein Äußeres, noch ein Zentrum.