WO1995023470A1 - Verfahren zum synchronisierten betrieb eines aus mehreren rechnern bestehenden verteilten datenverarbeitungssystems und einrichtung zur anwendung des verfahrens - Google Patents

Verfahren zum synchronisierten betrieb eines aus mehreren rechnern bestehenden verteilten datenverarbeitungssystems und einrichtung zur anwendung des verfahrens Download PDF

Info

Publication number
WO1995023470A1
WO1995023470A1 PCT/DE1995/000174 DE9500174W WO9523470A1 WO 1995023470 A1 WO1995023470 A1 WO 1995023470A1 DE 9500174 W DE9500174 W DE 9500174W WO 9523470 A1 WO9523470 A1 WO 9523470A1
Authority
WO
WIPO (PCT)
Prior art keywords
computer
token
transactions
computer system
computers
Prior art date
Application number
PCT/DE1995/000174
Other languages
English (en)
French (fr)
Inventor
Hans Heller
Wolfgang Bachmann
Original Assignee
Siemens Aktiengesellschaft
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens Aktiengesellschaft filed Critical Siemens Aktiengesellschaft
Publication of WO1995023470A1 publication Critical patent/WO1995023470A1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying

Definitions

  • the invention relates to a method according to the preamble of claim 1 and to a device for applying the method.
  • Each area control computer consists of a double computer system to detect a possible malfunction of one of its individual computers by constantly comparing the data involved in data processing and by checking the data stored in its memory within predetermined maximum time periods as part of test routines. If necessary, reserve area control computers are also provided, which can perform the function of a failed area control computer in the event of a fault.
  • Software is used to control and monitor the operations, which is partly user-independent and enables the computers to work as a signal box and partly is specific to the railway administration and includes the logical signal box conditions of the respective railway administration hold.
  • the area control computers are informed in an upgrade phase before the start of operation about the system elements to be controlled by them and their arrangement on the track.
  • the area control computers call programs stored in their memories, e.g. B. for setting the course or the flank protection search and link them with the relevant plant-specific data, z. B. with the data of a certain switch or the data of the concrete route elements to be included in the flank protection search.
  • finite automaton Realize interlocking with finite automatons and thus achieve a clearer representation.
  • the description of a finite automaton includes its possible (finally many) internal states, the transition and the output function (Lexikon der Informatik und technik, Oldenbourg Verlag, 1991, 3rd edition, pages 66 and 67). With the help of the transition function, the states and the inputs (operator inputs or messages from the external system) become new states and the output function outputs outputs to the operator and to the process calculated.
  • a concrete representation of a finite automaton is called an automat board.
  • the non-prepublished European patent application 92250346 specifies a method by means of which it is possible to generate a machine board for a complete description of the state transition and result behavior of a complex control system in a clear and understandable manner.
  • This control system can e.g. B. the range control computer introduced at the beginning.
  • Each of the area control computers mainly carries out certain transactions independently of the other area control computers.
  • a transaction is understood to be the processing of an operator's input or an input from the process.
  • a new state and possibly expenses are calculated based on the existing state of the machine and the input.
  • each area control computer is responsible for the control and monitoring of a very specific plant area and is therefore independent of the process processing of the other area control computers, it is nevertheless necessary for the area control computers to exchange information with one another for processing certain tasks. This is e.g. This is necessary, for example, if a train is to switch from one area to the other or if edge protection requirements have to be made from one area to another.
  • the object of the invention is to provide a method according to the preamble of claim 1 and a device for applying this method, which ensures that no computer allows the results of a transaction carried out by him, possibly due to an out-of-date state value, for execution if one of the other computers already have the more current one
  • elements are to be understood as representational elements such as switches and signals as well as functional elements such as route search and approval test.
  • the invention solves this problem by applying the characterizing features of claim 1; a device for applying this method is referred to in claim 7.
  • Computer systems of the data processing system expenditure manage the process and allow new inner states.
  • this computer / computer system checks before the approval of the transactions it calculates whether the status values it includes in the transactions are different from the corresponding status values of the previously authorized computers and that transactions which are no longer current are not permitted to be carried out Having included parts of the system state in the transactions, it is achieved that in all computers / computer systems, despite temporarily unequal knowledge of the state values of the system, only transactions with current state components can have an impact on the process and the other computers.
  • the circulating token is used on the one hand to update the local state copies of the computers and on the other hand to carry out the conflict check.
  • change reports should not only be checked against the status values of the successfully completed transactions, but also against the status values of the transactions which have not yet been completed; This has the advantage that processing can be terminated prematurely, especially for long transactions, if it is certain that the transaction no longer includes current status values.
  • Treatment of such long transactions provides that canceled transactions are assigned values which are upgraded each time a new token is received, and that if a predetermined value of this value is exceeded, the execution of these transactions is forced by temporarily holding the token. This ensures that even long-term transactions can be completed in a manageable amount of time.
  • Another possibility of executing long transactions, according to the teaching of claim 6, is to carry out the transactions interruptibly and to check the interrupted transactions against the current version of the system status transmitted with the token.
  • the device for applying the method specified in claim 7 describes the structure of the data processing system with a point-to-point connection of the computers / computer systems via which they are informed via broadcast at least of the token receipt and serially of the change messages which contain the token. This arrangement makes it possible to detect any conflicts between the state values taken into account in transactions and the state values of the system that have meanwhile changed, and to report their effects ineffective.
  • Claim 8 provides that a computer system which does not acknowledge the changes transmitted by it in a forward direction of the token within a predetermined time is excluded from bus use by the subsequent computer / computer system in the forwarding direction of the token, with restarting according to claim 9 of the failed computer / computer system or for the integration of a replacement computer which has to report to its successor in the bus system and is to be upgraded by it with the current status values.
  • it is determined when carrying out transactions according to claim 10 which parts of the state are included in the calculation
  • each computer For the processing of the individual transactions, each computer maintains a list in accordance with claim 12, in which the transactions that have not been finally ended are listed and in which it enters new transactions for execution. This list makes it easier for him to process the individual pending orders on time.
  • the list is updated after each token receipt, in that the transactions then executed are deleted as soon as the respective successor computer in the bus system has acknowledged receipt of the change messages.
  • FIG. 1 shows a data processing system consisting of three computers / computer systems with a circulating token
  • FIG. 2 illustrates the sequence of the method when a token is received and sent.
  • FIG. 1 shows a data processing system consisting of three computers / computer systems RS1 to RS3 for controlling and monitoring any process event per se, for example for controlling the railway operation by means of an electronic signal box with several area control computers.
  • the computers / computer systems RS1 to RS3 form z.
  • the control in the computers is implemented as a finite state machine, which forms new internal states and outputs from internal states and inputs.
  • the inputs are, for example, the inputs of a person authorized to operate or the inputs of an automatic system which carries out or incites certain operating actions.
  • the expenses are expenses for the process elements of the external system and orders for other computer systems. Every computer system has
  • the computer systems inform themselves about their internal states by means of a data connection system DVS, through which they can communicate with each other.
  • a token circulating in series via this data connection system allows the individual computer systems, inter alia, to allow transactions which have already been processed to be carried out.
  • Each computer system informs at least its neighboring computer system following in the forwarding direction of the token of the results of the transactions which it has meanwhile carried out in the form of change reports for certain status values. Only after a receipt for the receipt of this data and the token has been transmitted does the computer system allow the transactions which it has meanwhile processed to be carried out.
  • the data include not only the new state parts formed by the computer system itself but also the other computer systems in the token ring.
  • a computer system determines after token receipt that the status values it has included in its completed but not yet approved transactions differ from the current status values transmitted to it by its predecessor, it recognizes from this that the transaction results it has determined are outdated, no longer current State values were based and these transaction results are discarded or these transactions are aborted and the transaction is started again based on the current state values of the other computer systems which have now been communicated to it.
  • the token remains with each of the computer systems only for a certain defined time and is then switched to the next computer system. Does this happen from any one
  • this is at least recognized by the computer system following in the direction of advancement of the token, and this computer system can take certain previously defined measures, e.g. B. may consist of the
  • each computer communicates with one another via broadcast about the token reception, so that each computer can monitor itself whether it has received the token from its predecessor in the ring in good time. If the computer system has closed its predecessor from further communication, it requests the up-to-date intact computer system from the current change messages of the status values; it also acknowledges the change notifications and the receipt of the token so that the transaction results can be approved for execution by the receipt recipient.
  • Each computer system contains a list in which the transactions it has processed but not yet approved for output are listed and in which new transactions are included as a result of new entries. The completed transactions are deleted from this list as soon as the computer system receives the token in the following circulation and has approved the transactions for output.
  • each computer system has an input memory for buffering the inputs supplied to it. The lists and memories are used to process the individual orders and transactions in the order in which they are received.
  • Time-consuming transactions that do not lead to a result during a single token circulation can either be interruptible and then lead to a result in several successive token cycles, or they can be canceled and processed again. Since a new termination is then to be expected, these terminated transactions are assigned values which are assigned to each termination, i. H. each token circulation, to be enforced in order to force the transaction to be issued in full when a predefinable threshold value, which can be different for the individual transactions, is reached. This is achieved by holding the token in excess of the time otherwise required for the execution of the transaction results and the token advancement. This process must at least be communicated to the computer system following in the direction of advancement of the token, so that this does not result from the failure of the token to a fault in the past
  • FIG. 2 shows schematically the processes within a token
  • Computer / computer system RSn after receipt of Tokon. At this time or shortly before, the computer system, RSn, received the current change messages from its predecessor in the token ring, which contain the current status values of this and the computer systems previously addressed via the token. The computer system RSu initially stores these current status values in one. Input memory ESp and acknowledges the computer system that was in the token's progress by receiving the change messages via a corresponding acknowledgment message Qn-1.
  • This acknowledgment message can contain the change messages or a check word formed from the change messages, which enables the predecessor in the token ring to determine whether the current change messages have arrived correctly at the computer system under consideration.
  • the transaction results that are already pending in the previous computer system are issued.
  • the computer system RSn compares the transmitted change reports to whether there is any data below that which it has used for the transactions completed (but not yet allowed to be executed) or undertaken since the previous token assignment (conflict). For this comparison, the computer system asks for corresponding data in its memories Sp.
  • the memory Sp contains, for each transaction T1 to T3, unchangeable data (readset RS1 to RS3), which are drawn to during the processing of the transaction in question has been accessed and viable data (changeset CS1 to CS3) that are changed by the action and present new changed status indicators; each of the processed transactions Tl to rfurde initiated by an associated input il to i3. determine whether to him by the in F ⁇ rtschaltrichtun ⁇ of '- collide submitted>ken's recent computer system change messages with the state values of the treated him since the last token assignment transactions Tl to T3, checks the
  • Token circulation has been altered by any of the foregoing computing systems. This means that the transaction in question must not be permitted to be executed; rather, it must be recalculated, taking into account the current version of the state values. Transaction T2 is such a rejected transaction.
  • the computer system To compare the change reports with the status values used for the individual transactions, the computer system temporarily saved the transactions completed since the last token receipt and read and change set; this definition differs from transaction to transaction. Each transaction is based on the status image defined by the previous transaction, so that a current status image of the computer system is always assumed within the computer system even with every second, third, etc. transaction. If, as in transaction T2, the computer system recognizes deviations in content between the change notifications communicated to it and the data used in its completed or still in process transactions, it does not allow the temporarily saved transaction results or intermediate results to be executed and deletes them.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Hardware Redundancy (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Jeder Rechner (RS1 bis RS3) realisiert eine Steuerung, der das Konzept des endlichen Automaten zugrunde liegt. Für die Übermittlung von Nachrichten ist jeder Rechner (RS1) mit jedem anderen Rechner (RS2, RS3) verbunden. Die Rechner können zum Prozeß hin nur wirksam werden beim Erhalt eines umlaufenden Tokens (Token). Der Empfang von Eingaben veranlaßt das Bearbeiten von Transaktionen, bei denen aus vorhandenen inneren Zuständen und den Eingabesymbolen neue innere Zustände und Ausgabesymbole gebildet werden. Die beim folgenden Tokenempfang abgeschlossenen oder unterbrochenen Transaktionen werden daraufhin geprüft, ob die dabei verwendeten Zustandswerte kollidieren mit Änderungsmeldungen, die sich auf den Zustand des Systems beziehen und die dem betrachteten Rechner mit dem Token übermittelt werden. Abhängig vom Prüfergebnis werden die abgeschlossenen Transaktionen zur Ausführung zugelassen oder verworfen. Für die Behandlung extrem zeitaufwendiger Transaktionen gibt es besondere Lösungsansätze. Das erfindungsgemäße Verfahren ist besonders geeignet für solche Datenverarbeitungssysteme, bei denen die einzelnen Rechner weitgehend unabhängig voneinander arbeiten und nur gelegentlich auf Daten anderer Rechner zugreifen müssen; die Anwendung in der Eisenbahnsignaltechnik ist vorgesehen.

Description

Beschreibung
Verfahren zum synchronisierten Betrieb eines aus mehreren Rechnern bestehenden verteilten Datenverarbeitungssystems und Einrichtung zur Anwendung des Verfahrens
Die Erfindung bezieht sich auf ein Verfahren nach dem Oberbegriff des Patentanspruches 1 sowie auf eine Einrichtung zur Anwendung des Verfahrens.
Unter anderem aus der Firmendruckschrift der Siemens AG, Bestellnummer A19100-V100-B412-V1 aus dem Jahre 1992 ist es bekannt, für die Steuerung von Bahnanlagen durch elektronische Stellwerke eine Mehrzahl sog. Bereichsstellrechner vorzusehen, die dazu eingerichtet sind, ihnen fest zugeordnete Elemente der Bahnaußenanlage zu steuern und zu überwachen. Neben diesen Bereichsstellrechnern gibt es noch einige zentrale Rechner zur Abarbeitung zentraler Aufgaben. Jeder Bereichsstellrechner besteht aus einem Doppelrechnersystem zur Aufdeckung eines möglichen Fehlverhaltens einer seiner Einzelrechner durch ständigen gegenseitigen Vergleich der in die Datenverarbeitung einbezogenen Daten und durch Kontrolle der in seinen Speichern abgelegten Daten innerhalb vorgegebener maximaler Zeitspannen im Rahmen von Prüfroutinen. Gegebenenfalls sind auch noch Reserve-Bereichsstellrechner vorgesehen, die im Störungsfall die Funktion eines ausgefallenen Bereichsstellrechners wahrnehmen können. Zur Steuerung und Überwachung des Betriebsgeschehens dient eine Software, die zum Teil anwenderunabhängig ist und die Rechner in die Lage versetzt, als Stellwerk zu arbeiten und zum Teil bahnverwaltungsspezifisch ist und die logischen Stellwerksbedingungen der jeweiligen Bahnverwaltung bein haltet. Außerdem werden die Bereichsstellrechner in einer Aufrüstphase vor Betriebsbeginn über die von ihnen zu steuernde Anlagenelemente und ihre Anordnung im Gleis unterrichtet. Zum Abarbeiten von Stellwerksfunktionen rufen die Bereichsstellrechner in ihren Speichern hinterlegte Programme z. B. für die Weichenstellung oder die Flankenschutzsuche ab und verknüpfen sie mit den jeweils in Frage kommenden anlagenspezifischen Daten, z. B. mit den Daten einer bestimmten Weiche oder den Daten der in die Flankenschutzsuche einzubeziehenden konkreten Fahrwegelemente.
Die Erstellung und die Prüfung dieser Software ist außerordentlich zeit- und kostenaufwendig, weil sie regelmäßig in einer an die Betriebsweise von Rechnern angepaßten Programmiersprache und nicht in einer problemorientierten
Sprache erfolgt, welche das eigentliche Stellwerksgeschehen in einer für den Entwickler verständlichen Form beschreibt. Durch die Notwendigkeit, für diese Software einen Sicherheitsnachweis zu führen, vergrößern sich die Kosten und der Zeitaufwand für die Erstellung derartiger elektronischer Stellwerke erheblich.
Es ist deshalb bereits auch vorgeschlagen worden, die Steuerung eines komplexen Przeßgeschehens wie z. B. eines
Stellwerks durch endliche Automaten zu realisieren und damit eine übersichtlichere Darstellung zu erzielen. Die Beschreibung eines endlichen Automaten umfaßt seine möglichen (endlich vielen) inneren Zustände, die Übergangs- und die Ausgabefunktion (Lexikon der Informatik und Datenverarbeitung, Oldenbourg Verlag, 1991, 3. Auflage, Seiten 66 und 67). Aus den Zuständen und den Eingaben (Eingaben des Bedieners oder Meldungen von der Außenanlage) werden mit Hilfe der Übergangsfunktion neue Zustände und mittels der Ausgabefunktion Ausgaben an den Bediener und an den Prozeß berechnet. Eine konkrete Darstellung eines endlichen Automaten wird als Automatentafel bezeichnet. In der nicht vorveröffentlichen europäischen Patentanmeldung 92250346 ist ein Verfahren angegeben, mit dessen Hilfe es möglich ist, auf übersichtliche und verständliche Weise eine Automatentafel zur vollständigen Beschreibung des Zustandsübergangs- und Ergebnisverhaltens eines komplexen Steuerungssystems zu generieren. Dieses Steuerungssystem kann z. B. der eingangs eingeführte Bereichsstellrechner sein.
Jeder der Bereichsstellrechner führt überwiegend unabhängig von den anderen Bereichsstellrechnern bestimmte Transaktionen aus. Unter einer Transaktion ist die Bearbeitung der Eingabe eines Bedieners oder einer Eingabe vom Prozeß her zu verstehen. Bei einer Transaktion werden aufgrund des bestehenden Zustandes des Automaten und der Eingabe ein neuer Zustand und gegebenenfalls Ausgaben berechnet.
Obgleich jeder Bereichsstellrechner für die Steuerung und Überwachung eines ganz bestimmten Anlagenbereiches zuständig und damit unabhängig von der Prozeßbearbeitung der anderen Bereichsstellrechner ist, ist es doch erforderlich, daß die Bereichsstellrechner untereinander zur Abarbeitung bestimmter Aufgaben Informationen austauschen. Dies ist z. B. erforderlich, wenn ein Zug aus dem einen in den anderen Anlagenbereich überwechseln soll oder wenn Flankenschutzanforderungen aus einem Bereich an einen anderen gestellt werden müssen. Hierbei gibt es ein Problem: Selbst wenn sich die zugehörigen Rechner gegenseitig über ihre inneren Zustände unterrichten, werden sie zu jedem Zeitpunkt einen unterschiedlichen Kenntnisstand aufweisen, weil einer der Rechner vor den anderen Rechnern über einen aktuelleren, von ihm erarbeiteten Zustand Bescheid weiß und erst danach an die Unterrichtung seiner Partner gehen kann. Da auf den verschiedenen Rechnern gleichzeitig Transaktionen durchgeführt werden, muß dafür gesorgt werden, daß bei allen Rechnern nur solche Transaktionen zu neuen Zuständen beitragen und Ausgaben erzeugen, die nicht im
Konflikt mit vorher von einem anderen Rechner zugelassenen Transaktionen stehen. Es darf also nicht vorkommen, daß eine Transaktion einen Zustand als Berechnungsgrundlage nimmt, der inzwischen wegen einer Änderung durch eine andere Transaktion nicht mehr aktuell ist. Jeder Bereichsstellrechner hat eine Kopie des gesamten Systemzustands zur Verfügung. Aufgrund der unterschiedlichen Bearbeitungsstände können die Kopien jedoch voneinander abweichen.
Aufgabe der Erfindung ist es, ein Verfahren nach dem Oberbegriff des Patentanspruches 1 sowie eine Einrichtung zur Anwendung dieses Verfahrens anzugeben, das gewährleistet, daß kein Rechner die Ergebnisse einer von ihm gegebenenfalls aufgrund eines nicht mehr aktuellen Zustandswertes durchgeführten Transaktion zur Ausführung zuläßt, wenn einer der übrigen Rechner zuvor bereits den aktuelleren
Zustandswert in eine Transaktion einbezogen hatte und diese Transaktion von diesem Rechner zugelassen wurde. Unter Elementen sind hier sowohl gegenständliche Elemente wie Weichen und Signale zu verstehen als auch funktioneile Elemente wie Fahrwegsuche und Zulassungsprüfung.
Die Erfindung löst diese Aufgabe durch die Anwendung der kennzeichnenden Merkmale des Patentanspruches 1; eine Einrichtung zur Anwendung dieses Verfahrens ist im Anspruch 7 bezeichnet.
Nach der Lehre der vorliegenden Erfindung kann zu einem bestimmten Zeitpunkt immer nur einer der Rechner bzw.
Rechnersysteme des Datenverarbeitungssystems Ausgaben an den Prozeß bewerkstelligen und neue innere Zustände zulassen. Dadurch, daß dieser Rechner/Rechnersystem vor der Zulassung der von ihm berechneten Transaktionen prüft, ob die von ihm in die Transaktionen einbezogenen Zustandswerte verschieden sind von den entsprechenden Zustandswerten der zuvor zulassungsberechtigten Rechner und daß solche Transaktionen nicht zur Ausführung zugelassen werden, die nicht mehr aktuelle Teile des Systemzustands in die Transaktionen einbezogen haben, wird erreicht, daß bei allen Rechnern/Rechnersystemen trotz vorübergehend ungleichen Kenntnisstandes über die Zustandswerte des Systems nur Transaktionen mit aktuellen Zustandskomponenten zu Auswirkungen auf den Prozeß und die übrigen Rechner führen können. Das umlaufende Token dient zum einen dazu, die lokalen ZuStandskopien der Rechner jeweils auf den neuesten Stand zu bringen und zum anderen dazu, die Konfliktprüfung durchführen zu können.
Vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen angegeben.
So sollen nach der Lehre des Anspruches 2 Änderungsmeldungen nicht nur gegen die Zustandswerte der erfolgreich abgeschlossenen Transaktionen, sondern auch gegen die Zustandewerte der noch nicht beendeten Transaktionen geprüft werden; dies hat den Vorzug, daß gerade bei langen Transaktionen die Bearbeitung vorzeitig abgebrochen werden kann, wenn feststeht, daß in die Transaktionen nicht mehr aktuelle Zustandswerte einbezogen sind.
Konflikte, die die Zulassung bereits abgeschlossener Transaktionen verhindern und zum Abbrechen nicht abgeschlossener Transaktionen führen sollen, sollen nach der Lehre des Anspruches 3 dadurch erkannt werden, daß geprüft wird, ob die von den jeweils anderen Rechnern kommenden Änderungsmeldungen die gleichen Daten betreffen, auf die das jeweils betrachtete Rechnersystem zuvor bei der Abarbeitung der Transaktionen zugegriffen hat. Ist dies der Fall, so hat das Rechnersystem bei der Bearbeitung dieser Transaktionen nicht mehr aktuelle Zustandswerte berücksichtigt, so daß die Ergebnisse der Transaktionen für die Prozeßsteuerung nicht herangezogen werden dürfen. Um sicherzustellen, daß Änderungsmeldungen auf dem Weg zwischen den einzelnen Rechnersystemen nicht unerkannt verloren gehen können, sieht Anspruch 4 vor, daß die
Verarbeitungsergebnisse erst nach Quittierung der Änderungsmeldungen durch ein in Fortschaltrichtung des Tokens folgendes Rechnersystem zur Ausführung zugelassen werden; beim Ausbleiben solcher Quittungsmeldungen können die
Änderungsmeldungen erneut ausgegeben werden und/oder das Token wird an ein anderes Rechnersystem fortgeschaltet. In aller Regel werden die Transaktionen so kurzzeitig sein, daß sie abgeschlossen sind bevor das Token einmal die
Rechnersysteme des Datenverarbeitungssystems durchlaufen hat. Zeitlich lange Transaktionen werden bei erneuter
Tokenzuweisung abgebrochen oder unterbrochen. Für die
Behandlung solcher langen Transaktionen sieht Anspruch 5 vor, daß abgebrochenen Transaktionen Wertigkeiten zugeordnet werden, die bei jedem neuen Tokenempfang aufgewertet werden und daß beim Überschreiten eines vorgegebenen Wertes dieser Wertigkeit die Ausführung dieser Transaktionen erzwungen wird, indem das Token vorübergehend festgehalten wird. Hierdurch wird sichergestellt, daß auch längerfristige Transaktionen in überschaubarer Zeit abgeschlossen werden können. Eine andere Möglichkeit, lange Transaktionen auszuführen, besteht nach der Lehre des Anspruches 6 darin, die Transaktionen unterbrechbar auszuführen und die unterbrochenen Transaktionen jeweils gegen die aktuelle Version des mit dem Token übermittelten Systemzustands zu prüfen.
Die in Anspruch 7 angegebene Einrichtung zur Anwendung des Verfahrens beschreibt den Aufbau des Datenverarbeitungs-systems mit einer Punkt zu Punkt Verbindung der Rechner/Rechnersysteme, über die diese sich per broadcast mindestens vom Tokenempfang und seriell über die Änderungsmeldungen, die das Token beinhalten, unterrichtet. Diese Anordnung schafft die Möglichkeit, etwaige Konflikte zwischen den in Transaktionen berücksichtigten Zustandswerten und inzwischen geänderten Zustandswerten des Systems zu erkennen und in ihrer Auswirkung unwirksam zu melden.
Anspruch 8 sieht vor, daß ein Rechnersystem, das einem in Fortschaltrichtung des Tokens zurückliegenden Rechnersystem die von diesem übermittelten Änderungen nicht innerhalb einer vorgegebenen Zeit quittiert, vom in Fortschaltrichtung des Tokens nachfolgenden Rechner/Rechnersystem von der Busbenutzung ausgeschlossen wird, wobei gemäß Anspruch 9 zum Wiederanlaufen des ausgefallenen Rechners/RechnerSystems oder zur Eingliederung eines Ersatzrechners dieser sich bei seinem Nachfolger im Bussystem zu melden hat und von diesem mit den aktuellen Zustandswerten aufzurüsten ist. Um Konflikte erkennen zu können, wird bei der Durchführung von Transaktionen gemäß Anspruch 10 jeweils ermittelt, welche Teile des Zustands in die Berechnung eingehen
(Readset) und welche Teile verändert werden (Changeset). Bei jedem Tokenempfang prüft der Rechner, ob die ihm übermittelten Änderungen sich mit einem der Readsets überschneiden. Ist dies der Fall, dann hat er in seine Transaktionen Versionen von Zustandswerten einbezogen, die inzwischen nicht mehr aktuell sind und er hat die Freigabe dieser Transaktionen zu unterbinden bzw. bei noch nicht abgeschlossenen Transaktionen die davon betroffenen Transaktionen abzubrechen.
Die Unterteilung in gelesenen (Readset) und veränderten (Changeset) Teil des Zustandsraumes jedes Rechners/Rechnersystems soll gemäß Anspruch 11 für jede Transaktion gesondert festgelegt sein.
Für die Abarbeitung der einzelnen Transaktionen führt jeder Rechner gemäß Anspruch 12 eine Liste, in der die nicht endgültig beendeten Transaktionen aufgeführt sind und in die er neue Transaktionen zur Ausführung einträgt. Diese Liste erleichtert ihm die zeitgerechte Abarbeitung der einzelnen anliegenden Aufträge.
Die Liste wird gemäß Anspruch 13 nach jedem Tokenempfang aktualisiert, indem die dann ausgeführten Transaktionen gelöscht werden sobald der jeweilige Nachfolgerechner im Bussystem den Erhalt der Änderungsmeldungen quittiert hat.
Die Erfindung ist nachstehen anhand eines in der Zeichnung dargestellten Ausführungsbeispieles näher erläutert.
Figur 1 zeigt ein aus drei Rechnern/Rechnersystemen bestehendes Datenverarbeitungssystem mit umlaufendem Token,
Figur 2 illustriert den Ablauf des Verfahrens beim Empfang und Abschicken eines Tokens. Figur 1 zeigt ein aus drei Rechnern/Rechnersystemen RS1 bis RS3 bestehendes Datenverarbeitungssystem zur Steuerung und Überwachung eines an sich beliebigen Prozeßgeschehens, beispielsweise zur Steuerung des Eisenbahnbetriebs durch ein elektronisches Stellwerk mit mehreren Bereichsstellrechnern. Die Rechner/Rechnersysteme RS1 bis RS3 bilden dabei z. B. die Bereichsstellrechner, die auf bestimmte zugeordnete Elemente der Außenanlage einwirken. Die Steuerung in den Rechnern ist jeweils als endlicher Automat realisiert, der aus inneren Zuständen und Eingaben neue innere Zustände und Ausgaben bildet. Die Eingaben sind beispielsweise die Eingaben eines Bedienungsberechtigten oder die Eingaben einer Automatik, die bestimmte Bedienungshandlungen vornimmt oder anreizt. Die Ausgaben sind Ausgaben an die Prozeßelemente der Außenanlage und Aufträge an andere Rechnersysteme. Jedes Rechnersystem besitzt
Kenntnis über den Gesamtzustand, der allerdings nicht immer der aktuelle sein muß. Die Rechnersysteme unterrichten sich über ihre inneren Zustände mittels eines Datenverbindungs-systems DVS, über das sie untereinander kommunizieren können. Ein über dieses Datenverbindungssystem seriell umlaufendes Token gestattet den einzelnen Rechnersystemen u. a., bereits abgearbeitete Transaktionen zur Ausführung zuzulassen. Jedes Rechnersystem informiert dabei mindestens seinen in Fortschaltrichtung des Tokens folgendes Nachbarrechnersystem von den Ergebnissen der von ihm zwischenzeitlich durchgeführten Transaktionen in Form von Änderungsmeldungen für bestimmte Zustandswerte. Erst nach der Übermittelung einer Quittung für den Empfang dieser Daten und des Tokens läßt das Rechnersystem die Ausführung der von ihm zwischenzeitlich erarbeiteten Transaktionen zu. Die Daten umfassen dabei nicht nur die vom Rechnersystem selbst gebildeten neuen Zustandsteile sondern auch die ihm von den im Tokenring zurückliegenden übrigen Rechnersystemen über- mittelten, in den einzelnen Rechnersystemen gegebenenfalls jeweils aktualisierten Zustandsteile. Stellt ein Rechnersystem nach Tokenempfang fest, daß die von ihm in seine zwar abgeschlossenen aber noch nicht zugelassenen Transaktionen einbezogenen Zustandswerte abweichen von den ihm von seinem Vorgänger übermittelten aktuellen Zustandswerte, so erkennt es hieraus, daß die von ihm ermittelten Transaktionsergebnisse auf veralteten, nicht mehr aktuellen Zustandswerten beruhten und es verwirft diese Transaktionsergebnisse bzw. es bricht diese Transaktionen ab und beginnt mit der erneuten Ausführung der Transaktionen unter Zugrundelegung der ihm nun mitgeteilten aktuellen Zustandswerte der anderen Rechnersysteme. Das Token verbleibt jeweils nur für eine bestimmte festgelegte Zeit bei jedem der Rechnersysteme und wird dann zum folgenden Rechnersystem fortgeschaltet. Geschieht dies aus irgendeinem
Grunde nicht, so wird dies mindestens von dem in Fortschaltrichtung des Tokens folgenden Rechnersystem erkannt und dieses Rechnersystem kann bestimmte zuvor festgelegte Maßnahmen ergreifen, die z. B. darin bestehen können, den
Vorgänger von der weiteren Datenverarbeitung auszuschließen und/oder durch ein Reservesystem zu ersetzen. Hierzu unterrichten sich die einzelnen Rechner untereinander per broadcast über den Tokenempfang, so daß jeder Rechner selbst überwachen kann, ob er von seinem Vorgänger im Ring rechtzeitig das Token erhalten hat. Hat das Rechnersystem seinen Vorgänger von der weiteren Kommunikation aus geschlossen, so fordert es von dem davorliegenden intakten Rechnersystem die aktuellen Änderungsmeldungen der Zustandswerte an; es quittiert diesem auch die Änderungsmeldungen und den Erhalt des Tokens, damit die Transaktionsergebnisse beim Quittungsempfänger zur Ausführung zugelassen werden können. Jedes Rechnersystem beinhaltet eine Liste, in der die von ihm bearbeiteten, aber noch nicht zur Ausgabe zugelassen Transaktionen aufgeführt sind und in die neue Transaktionen als Folge neuer Eingaben aufgenommen werden. Die abgeschlossenen Transaktionen wer sn aus dieser Liste jeweils gelöscht, sobald das Rechnersystem im folgenden Umlauf das Token erhält und die Transaktionen zur Ausgabe zugelassen hat. Ferner weist jedes Rechnersystem einen Eingabespeicher zum Puffern der ihm zugeführten Eingaben auf. Die Listen und Speicher dienen dazu, die einzelnen Aufträge und Transaktionen in der Reihenfolge ihres Eingangs zu bearbeiten.
Zeitaufwendige Transaktionen, die nicht während eines einzigen Tokenumlaufs zum Ergebnis führen, können entweder unterbrechbar ausgeführt sein und führen dann in mehreren aufeinanderfolgenden Tokenzyklen zu einem Ergebnis oder aber sie werden abgebrochen und erneut in Bearbeitung genommen. Da dann mit erneutem Abbruch zu rechnen ist, werden diese abgebrochenen Transaktionen mit Wertigkeiten versehen, die bei jedem Abbruch, d. h. jedem Tokenumlauf, aufgewertet werden, um beim Erreichen eines vorgebbaren Schwellwertes, der für die einzelnen Transaktionen unterschiedlich sein kann, die vollständige Ausgabe der Transaktion zu erzwingen. Dies wird erreicht durch Festhalten des Tokens über die ansonsten für die Ausführung der Transaktionsergebnisse und die Fortschaltung des Tokens erforderliche Zeitspanne hinaus. Dieser Vorgang muß mindestens dem in Fortschaltrichtung des Tokens folgenden Rechnersystem mitgeteilt werden, damit dieses nicht aus dem Ausbleiben des Tokens auf eine Störung im zurückliegenden
Rechnersystem schließt. Nähere Einzelheiten über den Ablauf der Datenverarbeitung in einem Rechnersystem während einer Tokenzuweisung sind aus Figur 2 erkennbar. Figur 2 zeigt schematisch die Abläufe innerhalb eines
Rechners/Rechnersystems RSn nach Tokonempfang. Zu diesem Zeitpunkt oder kurz davor hat das Rechnersysstem, RSn von seinem Vorgänger im Tokenring die aktuellen Änderungsmeldungen empfangen, welche die aktuellen Zustandswerte dieses und der zuvor über das Token angesprochenen Rechnersysteme beinhalten. Diese aktuellen Zustandswerte hinterlegt das Rechnersystem RSu zunächst in einem. EingangsSpeicher ESp und quittiert dem in Fortschaltung des Tokens zurückliegenden Rechnersystem den Empfang der Änderungsmeldungen über eine entsprechende Quittungsmeldung Qn-1.
Diese Quittungsmeldung kann die Änderungsmeldungen oder ein aus den Änderungsmeldungen gebildetes Prüfwort enthalten, die es dem Vorgänger im Tokenring ermöglicht, festzustellen, ob die aktuellen Änderungsmeldungen bei dem betrachteten Rechnersystem richtig angekommen sind. Nach Empfang der Quittungsmeldung Qu-1 werden die im zurückliegenden Rechnersystem zur Ausgabe anstehenden, bereits zugelassenen Transaktionsergebnisse ausgegeben. Das Rechnersystem RSn vergleicht die übermittelten Änderungsmeldungen daraufhin, ob sich darunter Daten befinden, die es für die seit der vorangegangenen Tokenzuweisung abgeschlossenen (aber noch nicht zur Ausführung zugelassenen) oder in Angriff genommenen Transaktionen verwendet hat (Konfliktfall). Zu diesem Vergleich fragt das Rechnersystem in seinen Speichern Sp nach entsprechenden Daten nach. Der Speicher Sp beinhaltet für jede Transaktion T1 bis T3 unveränderbare Daten (Readset RS1 bis RS3), auf die während des Abarbeitens der betreffenden Transaktion zuge griffen wurde und vei erbare Daten (Changeset CS1 bis CS3), die durch die 1 saktion verändert werden und neue geänderte Zustandswe: .arstellen; jede der bearbeiteten Transaktionen Tl bis rfurde durch eine zugehörige Eingabe il bis i3 initiiert. festzustellen, ob die ihm von dem in Fυrtschaltrichtun^ des ' ->kens zurückliegenden Rechnersystem übermittelten Änderungsmeldungen mit den Zustandswerten der von ihm seit der letzten Tokenzuweisung behandelten Transaktionen Tl bis T3 kollidieren, prüft das
Rechnersystem, ob die Änderungsmeldungen Daten beinhalten, die Daten in einem Readset einer der abgeschlossenen oder unterbrochenen Transaktionen betreffen. Ist dies der Fall, dann hat das Rechnersystem bei der Ausführung der betreffenden Transaktion Zustandswerte berücksichtigt, die nicht mehr aktuell sind, sondern während des vorangegangenen
Tokenumlaufs durch irgendeines der vorangehenden Rechnersysteme verändert worden sind. Damit darf die betreffende Transaktion nicht zur Ausführung zugelassen werden; sie ist vielmehr erneut zu berechnen und zwar unter Berücksichtigung der aktuellen Version der Zustandswerte. Eine solche abgewiesene Transaktion ist die Transaktion T2.
Für den Vergleich der Änderungsmeldungen mit den für die einzelnen Transaktionen verwendeten Zustandswerten hat das Rechnersystem die seit dem letzten Tokenempfang abgeschlossenen Transaktionen vom Ergebnis her zwischengespeichert und Read- und Changeset; diese Festlegung ist von Transaktion zu Transaktion verschieden. Jede Transaktion baut auf dem durch die vorangegangene Transaktion festgelegten Zustandsbild auf, so daß innerhalb des Rechnersystems auch bei jeder zweiten, dritten usw. Transaktion stets von einem aktuellen Zustandsbild des Rechnersystems ausgegangen wird. Erkennt das Rechnersystem wie bei der Transaktion T2 inhaltliche Abweichungen zwischen den ihm mitgeteilten Änderungsmeldungen und den bei seinen abgeschlossenen oder noch in Bearbeitung begriffenen Transaktionen verwendeten Daten, so läßt es die zwischengespeicberten Transaktions-ergebnisse bzw. Zwischenergebnisse nicht zur Ausführung zu und löscht sie. Andernfalls bereitet es die Ausgabe an den Prozeß bzw. die Weiterbearbeitung im Rechnersystem vor und sorgt dafür, daß die bislang im Eingabespeicher ESp anstehenden Änderungsmeldungen, des im Tokenring zurückliegenden Rechnersystems vom eigenen Rechnersystem übernommen und nach Abgleich mit seinen eigenen Änderungsmeldungen an das in Fortschaltrichtung des Tokens folgende Rechnersystem weitergegeben werden. Der Abgrleich der empfangenen mit den eigenen Änderungsmeldungen ist erforderlich, um festzustellen, ob einzelne der übermittelten Zustandswerte nicht vielleicht in der Zwischenzeit auch durch die vom Rechnersystem selbst ausgeführten Transaktionen geändert worden sind. Ist dies der Fall, so werden die entsprechenden vom zurückliegenden Rechnersystem stammenden Zustandswerte invertiert, weil sie nicht mehr aktuell sind. Die aktuelle Version der Änderungsmeldungen wird dann an das folgende Rechnersystem ausgegeben, das bei ordnungsgerechtem Empfang eine entsprechende Quittungsmeldung Qn+1 an das betrachtete Rechnersystem RSn zurückgibt. Nach einer Überprüfung der Quittungsmeldung mit den ausgesandten Änderungsmeldungen veranlaßt das Rechnersystem RSn die Ausgabe der Ergebnisse von zugelassenen Transaktionen an den Prozeß und an den Bediener.
Das Wirksamwerden der abgeschlossenen Transaktionen ist also davon abhängig, daß das Token und mit ihm die aktuellen Änderungsmeldungen an das folgende Rechnersystem fortgeschaltet und dort ordnungsgerecht empfangen wurden. Unterbleibt die Quittung der übermittelten Änderungsmeldungen, so werden Routinen durchgeführt, die diesen
Fehlerfall behandeln. l<äs Ausbleiben einer Quittungsmeldung kann zum erneuten Aussenden von Änderungsmeldungen führen, die verhindern sollen, daß RechnerSysteme nur wegen sporadisch auftretender Übertragungsfehler aus dem Verarbeitungεsystem ausgegliedert werden. Gegebenenfalls sind entsprechende Meldun- gen für das erneute Ausgeben von Änderungsmeldungen an die übrigen Rechnersysteme auszugeben, um diese davon zu unterrichten, daß sich die Weitergabe des Tokens verzögert.
Die Er≤ düng zeigt, wie in einem größeren Rechnerver- bundsystem, dessen Rechner oder Rechnersysteme weitgehend unabhängige Prozesse steuern und überwachen, aber gelegentlich auch Daten untereinander auszutauschen haben, eine Prozeßsteuerung auf dem jeweils aktuellen Datenstand möglich ist. Sie geht dabei von der optimistischen Annahme aus, daß alle eingeleiteten Transaktionen auch ausführbar sind und verhindert die Zulassung der abgeschlossenen
Transaktionen dann, wenn sich zeigt, daß die in die Ergebnisse einbezogenen Zustandswerte tatsächlich nicht den aktuellen Systemzustand darstellen. Da jedes Rechnersystem auf dem aktuellen Zustandsbild der vorangehenden Rechner aufbaut, ist die Ausgabe der Transaktionsergebnisse durch die einzelnen Rechner davon abhängig gemacht, daß die aktuellen Daten aller dieser Rechner, soweit sie benötigt werden, in die Ergebnisbildung eingeflossen sind. Durch die serielle Arbeitsweise der Rechnersysteme mit der laufenden Aktualisierung der Zustandswerte wird erreicht, daß keine der zuvor in einem Rechnersystem ermittelten Transitions- ergebnisse zur Ausführung gelangt, wenn es auf tatsächlich nicht mehr aktuellen Zustandswerten beruht .

Claims

Patentansprüche
1. Verfahren zum synchronisierten Betrieb eines aus mehreren Rechnern oder Rechnersystemen bestehenden verteilten Datenverarbeitungssystems, dessen Rechner/Rechnersysteme eine ihnen zugeordnete Steuerung nach dem Konzept des endlichen Automaten realisieren und bei dem die einzelnen Rechner/Rechnersysteme weitgehend unabhängig voneinander ihnen zugewiesene Aufgaben in gegebenenfalls mehreren Transaktionen bearbeiten und untereinander über mindestens ein Bussystem mit seriell umlaufendem Token kommunizieren, das das geordnete Zusammenwirken der Rechner steuert,
d a d u r c h g e k e n n z e i c h n e t ,
- daß von den Rechnern/Rechersystemen alle sich bei einer Aufgabenbearbeitung ändernden Zustandswerte der
Rechner/Rechnersysteme auf das Bussystem geschaltet und alle jeweils von den übrigen Rechnern/Rechnersystemen aufgeschalteten, sich seit dem vorangegangenen Tokenumlauf geänderten Zustandswerte dieser Rechner/Rechnersysteme vom Bus abgegriffen und gespeichert werden, sobald das umlaufende Token bei dem betreffenden Rechner/Rechnersystem empfangen wird,
- daß in den Rechnern/Rechnersystemen jeweils unter Beachtung ihres Kenntnisstandes über den Systemzustand die ihnen jeweils zugewiesenen Aufgaben bearbeitet und die jeweiligen Verarbeitungsergebnisse zwischengespeichert werden,
- daß in den Rechnern/Rechnersystemen bei Empfang des Tokens die ihnen jeweils übermittelten Änderungsmeldungen der anderen Rechner/Rechnersysteme auf etwaige Konflikte mit den von ihnen bei der vorangegangenen Aufgabenbearbeitung berücksichtigten Zustandswerten geprüft und im Konfliktfall die Ausgabe der zwischengespeicherten Verarbeitungsergebnisse gesperrt bzw. bei nicht vorhandenen Konflikten die Verarbeitungsergebnisse mindestens mittelbar zur Ausführung zugelassen werden.
2. Verfahren nach Anspruch 1,
d a d u r c h g e k e n n z e i c h n e t ,
daß die Änderungsmeldungen in den Rechnern/Rechnersystemen sowohl gegen die Zustandswerte der während des letzten
Tokenumlaufs erfolgreich abgeschlossenen Transaktionen als auch gegen die noch nicht abgeschlossenen Transaktionen geprüft werden, wobei beim Feststellen eines Konfliktf .illes die davon betroffenen Transaktionen verworfen werden und daß anschließend eine erneute Bearbeitung- dieser Transaktionen unter Verwendung der aktuellen Version der inneren Zustände der Rechner/Rechnersysteme sowie• der Meldungen und Aufträge erfolgt .
3. Verfahren nach Anspruch 1 oder 2 ,
d a d u r c h g e k e n n z e i c h n e t ,
daß ein Konfliktfall dadurch definiert ist, daß ein
Rechner/Rechnersystem bei einer Transaktion auf solche
Speicher für Zustandswerte zugegriffen hat, für die mit dem Token Änderungen gemeldet werden.
4. Verfahren nach Anspruch 1,
d a d u r c h g e k e n n z e i c h n e t ,
daß die Verarbeitungsergebnisse zwischengespeichert werden und daß die zwischengespeicherten Verarbeitungsergebnisse erst nach Quittierung der Änderungsmeldungen durch einen in
Fortschaltrichtung des Tokens folgenden Rechner/Rechnersystem zur Ausführung ausgegeben werden.
5. Verfahren nach Anspruch 1,
d a d u r c h g e k e n n z e i c h n e t ,
daß den einzelnen Transaktionen bestimmte Wertigkeiten zugeordnet werden, die bei jedem Abbruch einer Transaktion infolge Tokenempfangs um einen vorgebbaren Betrag oder Anteil erhöht werden und daß beim Überschreiten eines vorgegebenen Wertes dieser Wertigkeit die Ausführung der Transaktion bis zu ihrem Ende durch vorübergehendes Festhalten des Tokens erzwungen wird.
6. Verfahren nach Anspruch 1,
d a d u r c h g e k e n n z e i c h n e t ,
daß die Transaktionen unterbrechbar ausgeführt und bei
Tokenempfang vor ihrem Abschluß unterbrochen werden, und daß die unterbrochenen Transaktionen bei jedem Tokenempfang auf etwaige Konflikte zu den inzwischen eingegangenen
Änderungsmeldungen überprüft werden.
7. Einrichtung zur Anwendung des Verfahrens nach Anspruch 1, d a d u r c h g e k e n n z e i c h n e t ,
daß Verbindungen (DVS) zwischen jedem Rechner/Rechnersystem (RS1) zu jedem anderen Rechner/Rechnersystem ((RS2/RS3) bestehen, über die die Rechner/Rechnersysteme das Token zusammen mit den aktualisierten Änderungsmeldungen umlaufend von Rechner/Rechnersystem zu Rechner/Rechnersystem fortschalten und über die sie sich gegenseitig per broadcast mindestens von der Weitergabe des Tokens unterrichten und den Erhalt des Tokens quittieren.
8. Einrichtung nach Anspruch 7,
d a d u r c h g e k e n n z e i c h n e t ,
daß die maximale Verweildauer des Tokens bei einem
Rechner/Rechnersystem begrenzt ist und daß ein Rechner/Rechnersystem (RS1) dann, wenn er/es feststellt, daß entweder sein Vorgänger (RS3) in Fortschaltrichtung des Tokens das Token nicht rechtzeitig weitergegeben hat, das Token von dessem Vorgänger (RS2) anfordert oder aber wenn die Quittung für den Empfang der Änderungsmeldungen ausbleibt, er dem auf den ausgefallenen Rechner/Rechnersystem (RS3) in Fortschaltung folgenden Rechner/Rechnersystem (RS2) das Token zuweist und daß der Rechner/das Rechnersystem (RS1) und/oder der vor dem ausgefallenen Rechner/Rechnersystem (RS3) gelegene
Rechner/Rechnersystem (RS2) den ausgefallenen Rechner/Rechnersystem fortan von der Busbenutzung ausschließt.
9. Einrichtung nach Anspruch 8,
d a d UT c h g e k e n n z e i c h n e t ,
daß zum Wiederanlaufen eines ausgefallenen Rechners/Rechnersystems (RS3) oder zum Anlaufen eines Ersatzrech- ners/Ersatzrechnersystems dieser sich bei dem in Fortschaltrichtung des Tokens folgenden Rechner/Rechnersyctem (RSx) meldet und daß dieser (RSl) dem ausgefallenen Rechner/Rechnersystem die aktuelle Version des Systemzustands übermittelt und ihn ggf . in Abstimmung mit dem vor dem ausgefallenen Rechner/Rechnersystem gelegenen Rechner/Rechnersystem (RS2) wieder als seinen Vorgänger im Bussystem akzeptiert.
10. Einrichtung nach Anspruch 7,
d a d u r c h g e k e n n z e i c h n e t ,
daß die Datenbereiche, auf die ein Rechner/Rechnersystem (RSn) bei einer bestimmten Transaktion Zugriff hat, nach Abschluß der jeweiligen Transaktion aufgeteilt werden in einen Readset (RS) , auf den der Rechner/Rechnersystem lesend zugegriffen hatte und in einen Changeset (CS) , den der Rech- ner/Rechnersystem verändern hat und daß zum Feststellen von Konflikten jeder Rechner/Rechnersystem jeden Readset jeder seit der letzten Prüfung abgeschlossenen oder unterbrochenen Transaktion mit den ihm über die Änderungsmeldungen (An) aktualisierten Changesets der anderen Rechner/Rechnersysteme auf unterschiedliche Dateninhalte überprüft.
11. Einrichtung nach Anspruch 10,
d a d u r c h g e k e n n z e i c h n e t ,
daß die Rechner/Rechnersysteme nach jeder Transaktion den individuellen Readset (RSl bis RS3) und den Changeset (CSl bis CS3) der Transaktion (Tl bis T3 ) bestimme!., die
betreffenden Daten selektieren und bis zur Zulassung des jeweiligen Verarbeitungsergebnisses abspeichern.
12. Einrichtung nach Anspruch 7,
d a d u r c h g e k e n n z e i c h n e t ,
daß jeder Rechner/Rechnersystem eine Liste aufweist, in der die von ihm bearbeiteten, aber noch nicht endgültig beendeten Transaktionen aufgeführt sind und daß er neue Transaktionen an des Ende der Liste setzt.
13. Einrichtung nach Anspruch 12,
d a d u r c h g e k e n n z e i c h n e t ,
daß jeder Rechner/Rechnersystem auf den Erhalt einer Quittung von einem Nachbarrechner für den Empfang des Tokens die
Eintragung der Transaktionen in seiner Liste löscht, sobald die betreffenden Transaktionen zugelassen oder abgewiesen sind und die Liste bereithält zur Aufnahme neuer durch
Eingaben initiierter Transaktionen in der Reihenfolge ihres Eintreffens.
PCT/DE1995/000174 1994-02-28 1995-02-03 Verfahren zum synchronisierten betrieb eines aus mehreren rechnern bestehenden verteilten datenverarbeitungssystems und einrichtung zur anwendung des verfahrens WO1995023470A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DEP4406924.3 1994-02-28
DE4406924A DE4406924A1 (de) 1994-02-28 1994-02-28 Verfahren zum synchronisierten Betrieb eines aus mehreren Rechnern bestehenden verteilten Datenverarbeitungssystems und Einrichtung zur Anwendung des Verfahrens

Publications (1)

Publication Number Publication Date
WO1995023470A1 true WO1995023470A1 (de) 1995-08-31

Family

ID=6511680

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE1995/000174 WO1995023470A1 (de) 1994-02-28 1995-02-03 Verfahren zum synchronisierten betrieb eines aus mehreren rechnern bestehenden verteilten datenverarbeitungssystems und einrichtung zur anwendung des verfahrens

Country Status (3)

Country Link
DE (1) DE4406924A1 (de)
TW (1) TW402701B (de)
WO (1) WO1995023470A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2739824B1 (fr) * 1995-10-13 1997-11-14 Gec Alsthom Transport Sa Systeme d'enclenchement ferroviaire a architecture logicielle et son procede d'implementation
DE102010026758A1 (de) 2010-07-09 2012-01-12 Getit Online Internet Service Agentur ( Isa ) Gmbh Content-Management-System
DE102015201059A1 (de) * 2015-01-22 2016-07-28 Siemens Aktiengesellschaft Verfahren und Anordnung zum Durchführen eines Zugverkehrs

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DD259605A1 (de) * 1987-04-09 1988-08-31 Zentr Fi D Verkehrsw Inst F Ei Ueberwachungseinrichtung fuer den triebfahrzeug-einsatz im eisenbahnbetrieb
EP0357992A2 (de) * 1988-08-10 1990-03-14 Omron Corporation Busartiges lokales Netz mit Tokenübergabeverfahren
WO1993013484A1 (en) * 1991-12-23 1993-07-08 Square D Company A synchronous serial communication network for controlling single point i/o devices
EP0632618A1 (de) * 1993-06-30 1995-01-04 Harris Corporation Multi-Master Überwachungssystem

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DD259605A1 (de) * 1987-04-09 1988-08-31 Zentr Fi D Verkehrsw Inst F Ei Ueberwachungseinrichtung fuer den triebfahrzeug-einsatz im eisenbahnbetrieb
EP0357992A2 (de) * 1988-08-10 1990-03-14 Omron Corporation Busartiges lokales Netz mit Tokenübergabeverfahren
WO1993013484A1 (en) * 1991-12-23 1993-07-08 Square D Company A synchronous serial communication network for controlling single point i/o devices
EP0632618A1 (de) * 1993-06-30 1995-01-04 Harris Corporation Multi-Master Überwachungssystem

Also Published As

Publication number Publication date
DE4406924A1 (de) 1995-08-31
TW402701B (en) 2000-08-21

Similar Documents

Publication Publication Date Title
EP0346801B1 (de) Verfahren und Anordnung zur Ausführung eines Programms in einem heterogenen Mehrrechnersystem
DE4235193C2 (de) Netzwerksystem und zugehöriges Softwareverwaltungsverfahren
DE69530734T2 (de) System und Verfahren zur Workflow-Verwaltung
DE69233147T2 (de) Verteiltes Netzwerküberwachungssystem zur Zustandsüberwachung von Knoten und Verbindungen
DE4420451C2 (de) Sperrmechanismus für ein CHECK-IN/CHECK-OUT-Modell
DE2659662C3 (de) Prioritätsstufengesteuerte Unterbrechungseinrichtung
DE2839726A1 (de) Datenverarbeitungsanlage mit verteilter steuerarchitektur in einem multiprozessor-system
DE2045052A1 (de) System zum Identifizieren von Mehraufgabensituationen und zum Steuern der Durchführung dieser Aufgaben
DE3508291A1 (de) Realzeit-datenverarbeitungssystem
DE19617976A1 (de) Kommunikationssystem mit Mitteln zum Austausch von Softwareprozessen
DE3631621C2 (de)
DE3123382A1 (de) &#34;verfahren und einrichtung zum uebertragen von daten zwischen zentraleinheiten oder prozessoren von mehrprozessorsystemen&#34;
DE19780639C2 (de) Arbeitsübernahmesystem
EP2090948B1 (de) Verfahren zum Betrieb eines Automatisierungssystems
WO1995023470A1 (de) Verfahren zum synchronisierten betrieb eines aus mehreren rechnern bestehenden verteilten datenverarbeitungssystems und einrichtung zur anwendung des verfahrens
DE3112693A1 (de) Modular aufgebautes dezentrales datenverarbeitungssystem
EP0265636A1 (de) Multiprozessor mit mehreren mit Cache-Speichern ausgerüsteten Prozessoren und einem gemeinsamen Speicher
DE102004002020A1 (de) Steuerungssoftwarearchitektur zur Realisierung einer dezentralisierten kooperativen Steuerung mehrerer elektronischer Steuerungsvorrichtungen, die über ein Netzwerk verbunden sind
DE3009121C2 (de) Mikroprogramm-Steuereinrichtung
DE1808678B2 (de) Verfahren und schaltungsanordnung fuer elektronische daten waehlvermittlungsanlagen mit einem zentralen speicher
EP0239827A2 (de) Verfahren zum Ansteuern eines gemeinsamen Speichers eines aus einzelnen Mikroprozessorsystemen bestehenden Mehrprozessorsystems
EP0645034A1 (de) Rechnersystem.
DE2507405A1 (de) Verfahren und anordnung zum synchronisieren der tasks in peripheriegeraeten in einer datenverarbeitungsanlage
DE2632561B2 (de) Steuereinrichtung fuer eine echtzeitsteuerung, insbesondere fuer fernsprechvermittlungsanlagen
EP0970426B1 (de) Abhängigkeitssteuerung für überlappende speicherzugriffe

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CN FI KR US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
122 Ep: pct application non-entry in european phase