Betriebssystem-Eigenschaften von RMOS3
8.4 Taskkommunikation, -koordination, -synchronisierung
8.4
Taskkommunikation, -koordination, -synchronisierung
Begriff
Mit Taskkommunikation werden alle Mechanismen bezeichnet, mit deren Hilfe sich Tasks
ein– oder mehrseitig explizit beeinflussen können. Die Taskkommunikation kann weiter
aufgeteilt werden in
● Mittel zur Kommunikation
● Mittel zur Synchronisierung und zur Koordination.
Mit Kommunikation wird dabei die Übergabe von Nachrichten an andere Tasks bezeichnet.
Als Mittel zur Synchronisierung und Koordination von Tasks werden meist Maßnahmen
bezeichnet, die den Zustand von Tasks beeinflussen.
Die Notwendigkeit und Art der Taskkommunikation ergibt sich aus der zu realisierenden
Applikation.
Eine intelligente Maschinensteuerung könnte zum Beispiel durch zwei Tasks realisiert
werden. Eine Task steuert das Terminal für den Bediener und bearbeitet die Eingaben von
diesem (Human Interface) und die zweite Task steuert die Maschine selbst.
Beide Tasks müssen sich gegenseitig Informationen übergeben. Die Steuerungstask braucht
Vorgaben für die Maschinensteuerung und die Human–Interface–Task benötigt den Zustand
der Maschine.
Eine Trennung in zwei Tasks macht aus zwei Gründen Sinn:
● Der Steuerungs– und Regelungsvorgang darf nicht durch Eingaben oder Verarbeitung
● Der zweite Grund liegt in der Wartbarkeit der Software: Die eine Task enthält nur die
Koordination und Synchronisation zwischen Tasks kann notwendig sein, wenn mehrere
Tasks direkt ohne Treiberunterstützung auf einen Hardware–Port, etwa eine V.24–
Schnittstelle, zugreifen. Um bei der Ausgabe einen Datensalat zu verhindern (theoretisch
könnte nach jeder Zeichenausgabe der Scheduler aktiv werden), ist eine Reservierung des
Hardware–Ports während der laufenden Ausgabe notwendig. Nach Abschluss der Ausgabe
wird die Reservierung wieder aufgehoben und der Port für andere Tasks freigegeben.
Die Dauer zwischen Reservierung und Freigabe des Hardware–Ports, in der eine Task der
ausschließliche Benutzer ist, wird als "kritischer Bereich" bezeichnet.
Mechanismen
RMOS3 stellt für die Taskkommunikation einen weiten Bereich von Mechanismen durch
SVCs bereit, die sich durch die Länge der Information, in der Geschwindigkeit, Komplexität
und Einsatzzweck unterscheiden, aber auch teilweise überschneiden.
106
der Human–Interface–Task beeinflusst werden, beide Tasks müssen ihre jeweiligen
Aufgaben asynchron abarbeiten können.
Programmierung der Maschinensteuerung, die andere nur die Bearbeitung des Human
Interfaces und beide kommunizieren über eine genau definierte Schnittstelle. Die Tasks
können dann auch von verschiedenen Programmierern erstellt werden.
RMOS3 V3.50 Benutzerhandbuch
Bedienhandbuch, 07/2012, A5E03692290-01