-
Die vorliegende Erfindung bezieht sich auf ein
schnelles Semaphor-Register mit gesichertem Betrieb und ohne
spezifisches Busprotokoll.
-
In Multiprozessorsystemen kommt es oft vor, daß
mehrere Prozessoren gleichzeitig zu einer gemeinsamen
Ressource (Bildschirm, Drucker etc.) Zugang fordern. In manchen
Fällen kann zu den Ressourcen von mehreren Prozessoren
gleichzeitig zugegriffen werden, beispielsweise zu
bestimmten Speichern. In anderen Fällen können die Ressourcen
jeweils nur von einem Prozessor angesprochen werden. Man
nennt sie dann nicht gleichzeitig von mehreren Organen
ansprechbar. Man kann auf einen Semaphorregister
zurückgreifen, bei dem es sich um eine Speicherzelle handelt, die
von einer Software benutzt werden kann, um einer auf einem
oder mehreren Prozessoren durchgeführten Aufgabe während
einer bestimmten Zeit ausschließlichen Zugang zu einer nicht
gleichzeitig von mehreren Organen ansprechbaren Ressource
des Systems zu verschaffen. Diese Semaphorfunktion erfordert
üblicherweise besondere Maßnahmen, nämlich innerhalb der
Prozessoren die Definition und Verwendung von besonderen
unteilbaren Lese- und Schreibbefehlen (beispielsweise "test
and set", "compare and swap", "load and reserve"). Auf den
Busleitungen der Prozessoren und den zugeordneten Unter-
Busleitungen (in den Speichern, den
Eingangs-/Ausgangsschaltungen, den Verbindungsbusleitungen) braucht man besondere
Signale, beispielsweise "Lock" oder "RMW" (d. h. "read,
modify, write") oder besondere Busprotokolle, die den
unteilbaren Charakter der Zyklen außerhalb der Prozessoren
verlängern sollen. Diese spezifischen Busprotokolle und
Signalisationen haben oft den Nachteil einer größeren
Komplexität und von Zeitverlusten in den
Busverwaltungssystemen, beispielsweise der Buszuweisung.
-
Aus dem Patent US 5 276 886 ist beispielsweise eine
Semaphor-Vorrichtung für Multiprozessorsysteme bekannt, bei
der das Lesen ohne besonderes Busprotokoll oder einen
spezifischen Prozessorbefehl erfolgt, die aber keine Nummer der
Aufgabe liefern kann, welche den Prozessor in den besetzten
Zustand schalten konnte, und zwar aufgrund einer internen
Schaltsteuerung des Semaphor-Zustands und der Unmöglichkeit,
eine mit dem Lesen des Semaphoreregisters in Verbindung
stehende Aktion zu berücksichtigen.
-
Aus dem US-Patent 5 317 749 ist ein Verfahren zur
Zugangskontrolle zu einer von mehreren Aufgaben gleichzeitig
ansprechbaren Ressource bekannt. Dieses Verfahren liegt ganz
im Softwarebereich und erfordert ein spezifisches
Busprotokoll.
-
Ziel der vorliegenden Erfindung ist eine
Semaphorvorrichtung für ein Multiprozessorsystem, das mindestens auf
eine nicht gleichzeitig von mehreren Organen ansprechbare
Ressource zugreifen soll, wobei die Vorrichtung kein
besonderes Hardware-Protokoll für die
Informationsaustauschvorgänge mit der Busleitung erfordert, mit der sie verbunden
ist. Außerdem kann die Vorrichtung ohne jede Mehrdeutigkeit
eine Verbindung zwischen der Umschaltung eines
Semaphorregisters in den Besetztzustand und der diese Umschaltung
hervorrufenden Aufgabe herstellen, und zwar möglichst schnell.
-
Die erfindungsgemäße Vorrichtung enthält ein Register
mit mindestens einem Kontrollfeld und einem Datenfeld sowie
Mittel zur Kontrolle des Beschreibens dieses Registers mit
Daten, die auf einer ersten Busleitung geliefert werden, an
die die verschiedenen Prozessoren des Systems angeschlossen
sind, wobei diese Mittel an mindestens einen Draht für das
Kontrollbit dieser Busleitung und an den Ausgang des
Kontrollfelds des Registers angeschlossen sind, während im
übrigen der Datenausgang des Registers an mindestens eine
Register-Lesebusleitung über den Prozessor oder die
Prozessoren angeschlossen ist und gegebenenfalls an eine Hardware-
Ressource, die nicht gleichzeitig von mehreren Organen
ansprechbar ist.
-
Die vorliegende Erfindung wird nun anhand von zwei
nicht beschränkend zu verstehenden Ausführungsbeispielen und
den beiliegenden Zeichnungen näher erläutert.
-
Fig. 1 zeigt ein Blockdiagramm einer bevorzugten
Ausführungsform der erfindungsgemäßen Vorrichtung.
-
Fig. 2 zeigt ein Blockdiagramm einer Variante der
Vorrichtung aus Fig. 1.
-
Die Erfindung wird nachstehend unter Bezugnahme auf
ein Multiprozessorsystem beschrieben, das an eine nicht
gleichzeitig von mehreren Organen ansprechbare Ressource
(Drucker, Bildschirm, Software-Ressource etc.) angeschlossen
ist, aber natürlich ist die Erfindung nicht auf eine solche
Anwendung beschränkt und kann auch in anderen Systemen
eingesetzt werden, in denen die Verarbeitung in jedem
gegebenen Zeitpunkt ausschließlich zwischen den verschiedenen
diese Verarbeitung anfordernden Organen durchgeführt werden
müssen.
-
Die Semaphor-Vorrichtung 1 in Fig. 1 ist
eingangsseitig an eine Busleitung 2 und ausgangsseitig mindestens an
eine oder mehrere Lesebusleitungen 3 für das Register durch
die Prozessoren sowie gegebenenfalls an eine nicht
gleichzeitig von mehreren Organen ansprechbare Hardware-Ressource
9 angeschlossen. Die verschiedenen nicht dargestellten
Prozessoren des Systems, in dem die Vorrichtung 1 enthalten
ist, sind an die Busleitungen 2 und 3 angeschlossen (bei
denen es sich um eine einzige Busleitung handeln kann, wenn
diese in beiden Richtungen wirksam ist). Die Busleitungen 2
und 3 sind beispielsweise Schienen mit acht Drähten, was die
Erfindung jedoch nicht einschränkt.
-
Einer dieser Drähte, beispielsweise der Draht für das
Bit mit der höchsten Gewichtung (MSB) ist derjenige, auf dem
das unten beschriebene Kontrollsignal verläuft, während die
sieben anderen Drähte dieser Busleitungen das gegebene
Datenfeld übertragen.
-
Die Busleitung 2 ist an einen ersten Eingang E1 eines
Multiplexers 4 angeschlossen, der zwei Eingängen besitzt.
Der Ausgang des Multiplexers 4 (der für das obige Beispiel
auch acht Bits umfaßt) ist an den Eingang eines Registers 5
(im Englischen "latch" genannt) angeschlossen. In der
Ruhestellung, oder wenn die Ressource 9 frei ist, verbindet der
Multiplexer 4 seinen Eingang E1 mit seinem Ausgang. Der
Ausgang des Registers 5 (für das obige Beispiel ebenfalls
mit acht Bits) ist an den zweiten Eingang E2 des
Multiplexers 4 angeschlossen. Die acht Datenausgangsdrähte des
Registers 5 sind mit der Busleitung 3 zum erneuten Lesen des
Registers durch die Prozessoren und gegebenenfalls mit einer
nicht gleichzeitig von mehreren Organen ansprechbaren
Ressource 9 verbunden. Der Draht MSB des Kontrollsignals am
Ausgang des Registers 5 ist mit einem ersten Eingang eines
Und-Tors 6 verbunden, dessen zweiter Eingang mit dem
Kontrollsignal-Draht der Busleitung 2 verbunden ist. Der
Ausgang des Tors 6 ist mit dem Steuereingang (SELCT) des
Multiplexers 4 verbunden. Der Nullsetzungseingang (RST) des
Registers 5 ist mit einer Klemme 7 verbunden, die ein
Nullsetzungssignal für das Register empfängt, beispielsweise
beim Start des Systems. Der Taktsignaleingang (CLK) des
Registers 5 ist mit einer Klemme 8 verbunden, die von der
Busleitung 2 die Schreibtaktsignale des Registers empfängt.
-
Die oben beschriebene Vorrichtung 1 arbeitet
folgendermaßen: Beim Einschalten gelangt ein Nullsetzungssignal an
die Klemme 7, sodaß alle Bits des Registers 5 auf Null
gesetzt werden, insbesondere das Bit MSB, das das
Kontrollbit des Semaphorregisters ist und dessen Nachricht bedeutet:
Die zugeordnete Ressource 9, die dem Semaphorregister hardware-
oder softwaremäßig zugeordnet ist, ist frei, wenn dieses
Bit den Wert Null hat.
-
In einem Zeitpunkt t möchte eine beliebige Aufgabe
T1, die von mindestens einem der Prozessoren des Systems
durchgeführt wird, Zugang zur Ressource 9 bekommen, um dort
Bearbeitungen durchzuführen oder durchführen zu lassen.
-
Diese Aufgabe T1 liefert auf dem Draht MSB der Busleitung 2
einen Pegel Eins, der "bedingtes Schreiben" bedeutet, und
sendet zugleich ihre Daten auf die sieben übrigen Drähte der
Busleitung 2. Da der Eingang E1 auf den Ausgang des
Multiplexers 4 durchgeschaltet ist, kommen die Informationen
(Daten und Kontrollbit mit dem Wert Eins) von T1 am Register
5 an. Mit dem ersten an der Klemme 8 ankommenden Taktimpuls
überträgt das Register 5 seine Informationen an seinen
Ausgang und damit auch an den Eingang E2 des Multiplexers 4.
Die Daten sind sofort auf der Busleitung 3 verfügbar und
gegebenenfalls auf der nicht gleichzeitig von mehreren
Organen ansprechbaren materiellen Ressource 9, während das
Kontrollbit MSB (auf dem Pegel Eins) am entsprechenden
Eingang des Tors 6 anliegt. Wenn also ein bedingter
Schreibwunsch von der Busleitung 2 (das MSB der Busleitung 2 hat
den Wert Eins) vorliegt, erscheint am Ausgang des Tors 6
eine Eins und schaltet den Multiplexer 4 auf seinen Eingang
E2 um, wodurch dieser Schreibvorgang in das Register 5
untersagt wird, solange das Kontrollbit auf der Busleitung 2
den Wert Eins hat.
-
Die Aufgabe T1 liest sofort oder später den Inhalt
des Semaphorregisters 5 (indem das Register 5 über die
Busleitung 3 gelesen wird), vergleicht den so gelesenen Wert
mit dem geschriebenen Wert (wie er auch über die Busleitung
2 übertragen wurde, stellt fest, daß sie identisch sind und
schließt daraus, daß die nicht gleichzeitig von mehreren
Organen ansprechbare Ressource 9, die hardware- oder
softwaremäßig dem Semaphorregister zugeordnet ist, tatsächlich ihr
zugewiesen wurde.
-
Wenn eine Aufgabe T2, die sich von der Aufgabe T1
unterscheidet, den Versuch unternommen hätte, ihre
Informationen in das Register 5 unmittelbar nach T1 einzuschreiben
(oder so lange T1 die Ressource 9 noch nicht freigegeben
hat), genauso wie T1, dann wäre ihr das nicht geglückt, da
der Vergleich zwischen ihren eigenen Informationen, die sie
an die Busleitung 2 geliefert hat, und dem Inhalt des
Registers 5, der über die Busleitung 3 gelesen wird, sofort
einen Unterschied ergeben hätte, da der Inhalt des Registers
5 derjenige ist, der vorher von T1 geliefert worden war (der
aktive Eingang des Multiplexers 4 ist E2). Daher muß T2
warten, bis T1 ein Kontrollbit des Werts Null auf die
Busleitung 2 liefert, um den Multiplexer 4 auf E1 umzuschalten
und so T2 zu ermöglichen, seinen Inhalt in das Register 5
einzuschreiben. Der Übergang des Kontrollbits von T1 auf
Null bedeutet "unbedingtes Schreiben" und das
Semaphorregister meldet "die Ressource ist frei".
-
Die von den Aufgaben auf die Busleitung 2 gegebenen
Daten können, abgesehen vom Kontrollbit, beliebiger Art
sein. Sie können beispielsweise zur Kodierung der Nummer der
Aufgabe oder des Prozessors verwendet werden und so den
anderen Aufgaben mitteilen, wer als letzter die Ressource 9
benutzt hat.
-
Es ist wichtig, zu bemerken, daß das Eintragen der
Informationen (Daten und Kontrollbit) in das Register 5 mit
einem einzigen Taktimpuls erfolgt, sodaß sofort die
Information "Ressource besetzt" der Identität der Aufgabe und/oder
des Prozessors zugeordnet werden kann, die oder der die
Ressource belegt, sowie den gegebenenfalls von dieser
Aufgabe übermittelten Informationen.
-
Die Vorrichtung 10 in Fig. 2 enthält das gleiche
Register 5 wie die Vorrichtung in Fig. 1, nicht aber den
Multiplexer 4. In dieser Vorrichtung 10 sind der Draht MSB
der Busleitung 2 und der Ausgang MSB des Registers 5 auch an
die Eingänge einer Torschaltung 6' angeschlossen, die die
Durchschaltungsbedingung für den positiven Taktimpuls 8 beim
Versuch des Eintrags in das Register 5 definiert.
-
Der Betrieb der Vorrichtung 10 ähnelt dem der
Vorrichtung 1, da das Register 5 seinen Inhalt an den Ausgang
und damit an die Ressource 9 nur überträgt, wenn die
Ressource 9 frei ist (das MSB des Registers 5 hat den Wert
Null) oder wenn das Eintragen unbedingt erfolgt (MSB der
Busleitung 2 hat den Wert Null).
-
Man kann sich leicht vorstellen, daß die in den
Fig. 1 und 2 beschriebenen Ausführungsformen
folgendermaßen verallgemeinert werden können. Die Schreibbedingung des
Semaphorregisters, die aus dem Tor 6 kommt, kann eine
Boole'sche Verknüpfung zwischen allen Bits oder einigen Bits
auf der Busleitung 2 und allen Bits oder einem Teil der
Ausgangsbits des Registers 5 sein. So kann beispielsweise
der freie Zustand des Semaphorregisters vereinbarungsgemäß
mit dem Zustand Null aller Ausgangsbits des Registers 5
kodiert sein. Ein Schreibwunsch, der von der Busleitung 2
kommt, wird als unbedingt betrachtet, wenn alle Bits auf der
Busleitung 2 den Wert Null haben (Freigabe der Ressource).
Ein Schreibwunsch von der Busleitung 2 wird als bedingt
betrachtet, wenn mindestens eines der von der Busleitung 2
kommenden Bits den Wert Eins hat, wobei dann diese Angabe
mindestens zum Teil eine eindeutige Identifizierung ungleich
Null der Aufgabe ist, die sich des Semaphorregisters
bemächtigen will.
-
Im allgemeinsten Fall kann das System, in dem die
erfindungsgemäße Vorrichtung enthalten ist, aus
Untersystemen, beispielsweise CPU-Karten, zusammengesetzt sein, die
gebündelt sind, wobei jedes Untersystem oder jede Karte
einen oder mehrere Prozessoren enthalten kann.
-
Im Fall eines Hardware-Systems in Verbindung mit
einem "operating system" (O. S.) vom Typ symmetrischer
Multiprozessoren (mehrere einem gemeinsamen Speicher zugeordnete
Prozessoren, die im Rahmen eines gemeinsamen O. S. arbeiten)
kann bekanntlich eine Aufgabe beliebig auf mehreren
Prozessoren durchgeführt werden. Die Prozessornummer wird dann
nicht verwendet, da die gleiche Aufgabe an einem Prozessor
beginnen und an einem anderen Prozessor enden kann.
-
In einem System mit parallelen Prozessoren im Bündel,
in dem jedes O. S. dupliziert ist, wird die Prozessornummer
verwendet, um das Problem von eventuell zwei
unterschiedlichen Aufgaben zugewiesenen Nummern zu berücksichtigen.
-
In der erfindungsgemäßen Vorrichtung muß das
Datenfeld ein eindeutiges Symbol der Aufgabe oder des
Prozessorses innerhalb des Systems enthalten. Dieses Symbol muß
zumindest in einer Gruppe von Aufgaben und Prozessoren
eindeutig sein, die auf die auf die gleiche nicht
gleichzeitig von mehreren Organen ansprechbare Ressource Zugang
suchen.
-
Die erfindungsgemäße Vorrichtung besitzt eine hohe
Betriebssicherheit. Wenn nämlich ein Hardware- oder
Softwarefehler auf einem der Prozessoren oder Aufgaben (mit einem
eindeutigen Symbol) auftritt, der oder die eine nicht
gleichzeitig von mehreren Organen ansprechbare Ressource
belegen kann, und ehe sie Zeit hatte, die Ressource
freizugeben, kann das die erfindungsgemäße Vorrichtung nicht
enthaltende System paralysiert bleiben, da keine andere
Aufgabe die Ressource belegen kann. Das Semaphorregister
gemäß der Erfindung ermöglicht es dagegen, in jedem
Augenblick den Belegungszustand der Ressource, die Aufgabe und
den Prozessor zu kennen, der diese Ressource belegt. Wenn
beispielsweise die Aufgabe durch das O. S. "getötet" wird,
kann letztere leicht das entsprechende Semaphorregister oder
die entsprechenden Semaphorregister freigeben. Auch wenn
einer der Prozessoren oder eine der Karten des Systems
erneut initialisiert werden muß, kann man leicht überprüfen,
ob eine durch das Semaphorregister gemäß der Erfindung
geschützte Ressource blockiert bleibt, und sie dann
freigeben.
-
Wenn, wie dies vom Stand der Technik vorgeschlagen
wird, ein Speicherfach zur Speicherung der Nummer der
Aufgabe und/oder des Prozessors kurz nach der Belegung des
Semaphorregisters verwendet würde, dann könnte man unmöglich
die Aufgabe und den Prozessor kennen, die oder der die
Ressource blockiert, wenn die Betriebsstörung zwischen der
Belegung des Semaphorregisters und der Speicherung der
Nummer der Aufgabe und/oder des Prozessors auftritt. Man
sieht, daß eine sogar ziemlich lange Zeit zwischen der
Belegung des Semaphorregisters und dem Einschreiben der
Nummer der Aufgabe und/oder des Prozessors verstreichen
könnte, wenn eine Störung zwischen diesen beiden Ereignissen
auftritt (Unterbrechung, Buszuweisung, Paginieren des O. S.
etc.).
-
Das Datenfeld des Semaphorregisters kann außer den
Daten betreffend die Nummer der Aufgabe oder des Prozessors
ein Feld von Informationen oder Steuerungen enthalten, die
mit der Verwendung der Ressource verknüpft sind. Im
häufigsten Fall, in dem die Ressource frei ist; d. h. sofort nach
dem ersten Schreibzugang, ist dieses Feld mit Informationen
und/oder Steuerungen, beispielsweise der Steuerung des
Eingangs-/Ausgangsstarts, für die Auswertung durch das
System und/oder seine Software verfügbar.
-
Dies bringt einen Gewinn hinsichtlich der Dauer der
Ausführung der Anfrage und hinsichtlich der Zeit, während
der die Ressource für die anderen Aufgaben nicht verfügbar
ist, im Vergleich zu einer klassischen Lese-,
Modifizierungs-, Schreibmethode, z. B. "test and set". Diese Zeit
könnte gegebenenfalls lang sein, wenn ein störendes Ereignis
(Unterbrechung, Buszuweisung, Paginierung des O. S., u. s. w..)
in der Aufgabe aufträte, die Zugang zur Ressource zwischen
der klassischen Belegung des Semaphorregisters und der
Lieferung einer Steuerung oder Information auftritt.
-
Im Fall der Ausführung im "user mode" kann eine
Aufgabe auf der Benutzerebene leicht das erfindungsgemäße
Semaphorregister aus folgenden Gründen benutzen:
-
- Es ist kein privilegierter Befehl erforderlich.
-
- Eine Ausnahme (Unterbrechung, Paginieren des O. S. etc.)
kann zu beliebigen Zeitpunkten auftreten, ohne daß die
Integrität des Schutzes des Zugangs zu der Ressource in
Frage steht.
-
Die erfindungsgemäße Vorrichtung läßt sich leicht in
Hardware realisieren und kann auf der Busleitung ohne
besonderes Protokoll eingesetzt werden. Ein einziges logisches
Tor zur Umsetzung der Schreibbedingung sowie eine
Vorrichtung (beispielsweise ein Multiplexer) reichen nämlich aus,
um dieses Schreiben bedingt durchzuführen. Diese Vorrichtung
ist auf beliebigen Busleitungen in heterogenen Umfeldern
einsetzbar, wobei die Busleitung(-en) nur Datenbits sowie
die Möglichkeit besitzen muß (müssen), Standardzyklen zum
Lesen/Schreiben durchzuführen sowie gleichzeitig für den
Zugang zum Semaphorregister auch über ein Informatiknetz
verwendet werden zu können.
-
Das sich üblicherweise stellende Problem mit den
Semaphorregistern ist die Zugangspriorität zur nicht
gleichzeitig von mehreren Organen ansprechbaren Ressource, wenn
mehrere Aufgaben knapp hintereinander Zugang suchen.
-
(a) Einerseits ist es oft wünschenswert, zu
gewährleisten, daß alle Aufgaben gleichberechtigt (mittels
rotierender Priorität) oder auch gemäß fester Priorität bei der
Belegung der Ressource zum Zug kommen.
-
(b) Andrerseits sollen die Aufgaben, die auf die Freigabe
einer Ressource warten, keinen allzu großen unnötigen
Verkehr auf der Busleitung erzeugen, indem sie sehr häufig
prüfen, ob die Ressource nicht frei ist.
-
Um dieses Ergebnis zu erzielen, kann man innerhalb
des Datenfelds des Semaphorregisters ein Feld definieren,
das die voraussichtliche verbleibende Zeit quantifiziert,
während der die Ressource noch besetzt bleibt. Mit dem
Ablauf dieser Zeit kann dieses Feld (beispielsweise durch
Abzählen) durch eine zusätzliche Form des unbedingten
Schreibens in das Register aktualisiert werden (durch die
Aufgabe, die die Ressource freigeben soll, nicht unbedingt
diejenige, die sie belegt hatte), wobei der Zustand des
Semaphorregisters "besetzt" bleibt(implementiert durch ein
zusätzliches Bit des Steuer- oder Zugangsfelds des gleichen
Registers an einer anderen Adresse). Die Aktualisierung
dieses Felds obliegt der Aufgabe, das Semaphorregister
freizugeben, also, je nachdem, die Aufgabe, die das
Semaphorregister belegt hat, oder eine produzierende Aufgabe).
-
Jede Aufgabe, die das Semaphorregister durch erneutes
Lesen und Vergleich der Nummer der Aufgabe oder des
Prozessors als belegt erkennt, weiß also bereits zu Beginn der
Belegung des Semaphorregisters und ohne Gefahr eines
Fehlers, nach welcher Zeitdauer sie etwa wieder versuchen
solle, das Semaphorregister wieder zu belegen, sodaß
unnötige Versuche, die Busleitung zu belegen, vermieden werden.
Damit ist das Kriterium (b) erfüllt. Zur Erfüllung des
Kriteriums (a) reicht es für die Aufgabe aus, eine abhängig
von ihrer Priorität bestimmte weitere Zeitdauer zu warten.
Je niedriger die Priorität ist, umso größer wird diese
zusätzliche Zeitdauer sein. Wenn der Zugang zur Ressource
für einander ähnliche Prioritäten gewünscht ist, dann ist es
günstig, wenn die Aufgabe, die die Ressource belegt sieht,
eine kurze. Zeitdauer zufälliger Länge zusätzlich zur
voraussichlichen Zeitdauer und der durch die Priorität bestimmten
Zeitdauer einzuplanen.
-
Die Verfügbarkeit der voraussichtlichen Zeitdauer für
den Zugang zur Ressource ist wirksam, sobald das
Semaphorregister übernommen wurde, und gleichzeitig mit dieser
Übernahme.
-
Eine besondere Ausführungsform des oben beschriebenen
Semaphorregisters erlaubt es, die Phase der Übernahme des
Semaphorregisters auf einen einzigen Lesezyklus der
Busleitung zu beschränken, und nicht auf zwei Zyklen zum Schreiben
und Prüfen. Die Bits niedriger Gewichtung der Adresse des
Lesezyklus können verwendet werden, um den in das
Semaphorregister einzutragenden Wert zu übertragen (bedingtes oder
unbedingtes Schreiben). Das Register wird unabhängig vom
Wert der Adressenbits geringer Gewichtung ausgewählt. So
kann man in einem einzigen Lesezyklus auf der Busleitung die
Kontrolle des Semaphorregisters übernehmen, mit allen
Vorteilen hinsichtlich Sicherheit, Geschwindigkeit und
Einfachheit der Durchführung, wie oben beschrieben.