Non-preemptives Multitasking

Die nachfolgende kleine Demonstration zeigt Ihnen das Verhalten eines non-preemptiven Multitasking-Systems auf.

Ausgangsbasis sind zwei Task, die jeweils drei Aktion mit unterschiedlicher Dauer zu erledigen haben, hier dargestellt durch unterschiedlich lange Balken. Die einzelnen Blöcke innerhalb des Balkens geben die Dauer der Aktionen in Ticks an. So benötigt z.B. der Task 1 für die erste Aktion 3 Ticks und der Task 2 für seine erste Aktion 8 Ticks. Wie Sie bereits erfahren haben, behält beim non-preemptiven Multitasking nun eine Task solange die CPU, bis sie ihre aktuelle Aufgabe erledigt hat. Welche Task die CPU gerade belegt wird in der Demo durch ein Hand-Symbol in der Mitte markiert.

Unterhalb der Aktionen erfolgt während des Laufes der Demo noch die Ausgabe der aktuellen Zeit in Ticks.

Starten Sie jetzt einmal die Demo und beobachten Sie dabei, welche Task wie lange die CPU belegt.

 

Task 1

CPU

Task 2

 

Aktion 1

Aktion 1

Aktion 2

Der Task benutzt die CPU

Aktion 2

Aktion 3


Aktion 3

Aktuelle CPU-Zeit:

 

Wenn Sie genug gesehen haben, dann schließen Sie dieses Fensters und fahren im Kurs mit der Beschreibung des preemptiven Multitaskings fort.



Copyright © 2004

Senden Sie Emails mit Fragen oder Kommentaren zu dieser Website an: mailto:info@cpp-tutor.de
 Wolfgang Schröder, Lerchenweg 23, D-72805 Lichtenstein. Tel: +49 7129 6470