next up previous contents index
Weiter: 9.9 Rendezvous und Hinauf: 9 Tasks Zurück: 9.7 Diskriminierte Tasks

9.8 Scheduling von Tasks

   

Programme, die aus mehreren Prozessen bestehen, erfordern, daß man sich Gedanken darüber macht, wann welcher Prozeß nun tatsächlich auf dem Prozessor abläuft. Die Zuordnungsstrategie, die das festlegt, nennt man Scheduling-Strategie.    Da Ada mit dem vordefinierten Typ task Prozesse aus der Verantwortlichkeit des Betriebssystems herausgenommen und dem Laufzeitsystem zugeordnet hat, bestimmt daher dieses das Schedulinggif.

Das Ada Reference Manual legt fest, daß das Scheduling von Tasks indeterministisch ist und stellt dem einzelnen Compiler frei, wie es zu realisieren ist. Das Scheduling von Ada-Tasks ist daher compiler- und maschinenabhängig. Der Programmierer kann und darf sich daher nicht darauf verlassen, in welcher Reihenfolge Tasks dem Prozessor zugeteilt werden. Das einzige reguläre Mittel zur Prozeßsynchronisation und -kommunikation ist und bleibt das Rendezvous.

Die einzige Aufweichung dieses Prinzips ist, daß Ada gestattet, Prioritäten für Tasks zu vergeben. Dieses Mittel sollte jedoch wieder nicht zur Prozeßsynchronisation oder Prozeßkommunikation verwendet werden. Man kann es z.B. benutzen, um sicherzustellen, daß eine Interrupt-Service-Routine  vorrangig behandelt wird (siehe auch die Kapiteln D und 19.5).



Johann Blieberger
Wed Feb 11 09:58:52 MET 1998