DE3842286A1 - Verfahren zur verarbeitung von daten in einem verteilten verarbeitungssystem - Google Patents

Verfahren zur verarbeitung von daten in einem verteilten verarbeitungssystem

Info

Publication number
DE3842286A1
DE3842286A1 DE3842286A DE3842286A DE3842286A1 DE 3842286 A1 DE3842286 A1 DE 3842286A1 DE 3842286 A DE3842286 A DE 3842286A DE 3842286 A DE3842286 A DE 3842286A DE 3842286 A1 DE3842286 A1 DE 3842286A1
Authority
DE
Germany
Prior art keywords
data
processor
input
program
identifier
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
DE3842286A
Other languages
English (en)
Other versions
DE3842286C2 (de
Inventor
Toshihiko Sekizawa
Kinji Mori
Masayuki Orimo
Yasuo Suzuki
Katsumi Kawano
Minoru Koizumi
Kozo Nakai
Hirokazu Kasashima
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of DE3842286A1 publication Critical patent/DE3842286A1/de
Application granted granted Critical
Publication of DE3842286C2 publication Critical patent/DE3842286C2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/006Identification
    • 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/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

Die Erfindung bezieht sich auf ein Verfahren zur Verarbei­ tung von Daten in einem verteilten Verarbeitungssystem ge­ mäß dem Oberbegriff des Patentanspruchs 1 und insbesondere auf ein Verfahren zur Verarbeitung von Daten, bei dem eine Korrelation von Eingangsdaten eines Mehrdaten-Eingangspro­ gramms erfolgt, um eine verbesserte Betriebssicherheit in dem verteilten Verarbeitungssystem zu erzielen, das eine Mehrzahl von Prozessoren aufweist.
Das verteilte Verarbeitungssystem ist im einzelnen in der USP 46 27 055 beschrieben.
Beim Stand der Technik gemäß der JP-A-57-1 46 361 wird das Mehrdaten-Eingangsprogramm (multi-data input program) ge­ startet, wenn alle zum Start des Programms erforderlichen Daten vorbereitet worden sind, jedoch erfolgt keine Über­ prüfung darauf hin, ob eine Kombination der Daten gültig bzw. zulässig ist oder nicht. Demzufolge können Sicher­ heitsprobleme bei der Ausführung des Verfahrens auftreten.
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren zur Verarbeitung von Daten zu schaffen, mit dem eine er­ höhte Sicherheit bei der Ausführung eines Mehrdaten-Ein­ gangsprogramms in einem verteilten Verarbeitungssystem er­ reicht wird.
Ziel der Erfindung ist es weiterhin, ein distribuiertes Verarbeitungsverfahren anzugeben, bei dem jeder der mit einem Netzwerk verbundenen Prozessoren eine Mehrzahl von Daten miteinander korreliert, die für ein einzelnes Pro­ gramm verwendet werden.
Die Lösung der gestellten Aufgaben ist im kennzeichnenden Teil des Patentanspruchs 1 angegeben. Vorteilhafte Ausge­ staltungen der Erfindung sind in den Unteransprüchen ge­ kennzeichnet.
Ein Verfahren zur Verarbeitung einer Mehrzahl von Daten in einem verteilten Verarbeitungssystem mit einer Mehrzahl von Prozessoren, die über ein gemeinsames Netzwerk mitein­ ander verbunden sind, zeichnet sich durch folgende Schrit­ te aus:
  • (a) Einstellen eines Bereichs bzw. einer Kennung einer Mehrzahl von Datensätzen, die durch ein Verarbeitungs­ programm in einem der Prozessoren verarbeitet werden sollen,
  • (b) Hinzufügen einer Kennung zu denjenigen Daten, die von irgendeinem der Prozessoren zum gemeinsamen Netzwerk geliefert werden, und
  • (c) Vergleich der Kennung des an diesen einen Prozessor gelieferten Datensatzes mit den zu den durch das eine Programm zu verarbeitenden Datensätzen hinzugefügten Kennungen zwecks Korrelation der Daten.
Nach der Erfindung korreliert jeder Prozessor eine Mehr­ zahl von Daten, die für ein Programm vorgesehen sind, das durch den Prozessor ausgeführt wird, wobei
  • - externe Daten mit einer Kennung (Label) versehen und dem Netzwerk zugeführt werden,
  • - den aufgrund der Durchführung des Programms erhaltenen Ausgangsdaten eine Kennung mit einem Inhalt zugefügt wird, der durch den Inhalt der Kennung der Eingangsdaten bestimmt ist, und
  • - die Kennungen einer Mehrzahl von Eingangsdaten miteinan­ der verglichen werden, wenn ein Multidaten- bzw. Mehrda­ ten-Eingangsprogramm gespeichert werden soll.
Da die erhaltenen Daten für das Mehrdaten-Eingangsprogramm in jedem Prozessor miteinander korreliert sind, wird eine größere Sicherheit bei der Ausführung des Datenverarbei­ tungsverfahrens erhalten.
Die Erfindung wird nachfolgend unter Bezugnahme auf die Zeichnung näher beschrieben. Es zeigen:
Fig. 1a und 1b graphische Darstellungen zur Erläuterung des Betriebs des Datenverarbeitungsverfahrens nach der Erfindung in einem verteilten Verarbeitungssystem,
Fig. 2 den Aufbau eines Systems, bei dem die Erfindung zum Einsatz kommt,
Fig. 3 ein Format einer zu übertragenden Nachricht,
Fig. 4 den Aufbau eines Prozessors,
Fig. 5 eine Eingabe/Ausgabebeziehung zwischen einer exter­ nen Ausstattung und einem Anwendungsprogramm,
Fig. 6 eine zur Datenverarbeitung des Mehrdaten-Eingangs­ programms erforderliche Tabelle,
Fig. 7 ein Format eines Eingabe/Ausgabe-Datenspeicherbe­ reichs, und
Fig. 8a bis 8d sowie Fig. 9 einen in jedem Prozessor ablau­ fenden Verarbeitungsvorgang.
Die Fig. 2 zeigt den Gesamtaufbau eines Systems, bei dem die Erfindung zum Einsatz kommt. Bei diesem Ausführungsbei­ spiel sind die Prozessoren über ein Einschleifen-Übertra­ gungssystem miteinander verbunden, worauf die Erfindung al­ lerdings nicht beschränkt ist. Sie läßt sich auch bei einem Doppelschleifen-Übertragungssystem oder bei einem konven­ tionellen Netzwerk einsetzen, bei dem eine Mehrzahl von un­ tereinander verbundenen Schleifen vorhanden ist.
In der Fig. 2 bezeichnen die Ziffern 101 bis 108 Prozesso­ ren, die Anwendungsprogramme ausführen, welche in ihren in­ ternen Speichern gespeichert sind, die Ziffer 151 eine Mo­ nolateralschleifen-Übertragungsleitung (mono-lateral loop transmission line) und die Ziffern 121 bis 128 Netzwerk­ steuerprozessoren (NCPs), die die Übertragung von Daten auf der Übertragungsleitung steuern. Die NCPs 121 bis 128 und die Prozessoren 101 bis 108 sind jeweils paarweise mitein­ ander verbunden. Beispielsweise ist der Prozessor 101 mit dem NCP 121 verbunden, usw. Prozeßergebnisse der Prozesso­ ren 101 bis 108 werden durch die NCPs 121 bis 128 zur Über­ tragungsleitung 151 und über diese gesendet. Jeder der NCPs 121 bis 128 bestimmt selbst, ob die Daten, die über die Übertragungsleitung 151 gesendet bzw. übertragen worden sind, benötigt werden bzw. erforderlich sind, und sendet die benötigten Daten auch selbst zu dem entsprechenden ei­ nen der Prozessoren 101 bis 108. Jeder der Prozessoren 101 bis 108 startet ein Programm, wenn alle Nachrichten verfüg­ bar sind, die zur Ausführung des Anwendungsprogramms erfor­ derlich sind, welches im Prozessor gespeichert ist. Nach dem Start führt das Programm den Prozeß auf der Grundlage des Inhalts der oben beschriebenen Nachricht aus und lie­ fert entsprechende Ergebnisdaten. Beim vorliegenden Ausfüh­ rungsbeispiel ist eine externe Ausstattung 161 zur Eingabe und Ausgabe von Daten mit dem Prozessor 101 verbunden.
Die Fig. 3 zeigt ein Format einer Nachricht, die über die Übertragungsleitung gesendet worden ist. F 201 und F 208 sind Steuerkennzeichen, die den Beginn und das Ende der Nachricht angeben. CC 202 bezeichnet einen Inhaltscode (content code), der den Inhalt und die Funktion von Daten repräsentiert. Auf der Grundlage des Inhaltscodes (CC) 202 bestimmt jeder NCP, ob die empfangene Nachricht für den mit ihm verbundenen Prozessor erforderlich ist oder nicht. Der Inhaltscode repräsentiert die Bedeutung der Daten in der Nachricht. Der Code wird vorzugsweise dann geändert, wenn die Nachricht zu einem Prozessor über die Übertragungslei­ tung übertragen worden ist und die Daten auf diese Weise modifiziert oder verarbeitet worden sind. SA 203 bezeichnet eine Adresse des NCP, der die Nachricht gesendet hat (Quel­ lenadresse). C 204 bezeichnet eine fortlaufende Nummer, die bei der Übertragung erforderlich ist. Ferner bezeichnet E 205 eine Kennung (Label bzw. Ereigniszahl), die durch den Prozessor denjenigen Daten hinzuaddiert wird, die von der Eingangsausstattung erhalten worden sind. Die Kennung re­ präsentiert die Erzeugung eines Blocks von Daten. Die Ken­ nung bzw. Ereigniszahl bleibt unverändert, auch wenn sich der Inhaltscode durch die modifizierende Verarbeitung von Daten mittels des Prozessors ändert. DATA 206 gibt den In­ halt des Ergebnisses an. FCS 207 bezeichnet eine Rahmen­ prüfsequenz (frame check sequence) zur Fehlerdetektion in der Nachricht. Sie kann vom CRC-System sein.
Die Fig. 4 zeigt den Aufbau des in Fig. 2 dargestellten Prozessors 101. Die Prozessoren 102 bis 108 weisen densel­ ben Aufbau auf. Eine Übertragungssteuereinheit 301 steuert die Datenübertragung zwischen dem Prozessor 101 und dem NCP 121 und speichert die vom NCP 121 empfangenen Daten in ei­ nen Empfangspuffer 302 (Pufferspeicher). Die Übertragungs­ steuereinheit 301 sendet ferner die in einem Übertragungs­ puffer 303 (Sendepufferspeicher) gespeicherte Nachricht zum NCP 121 und speichert diese in den Empfangspuffer 302 ein, wenn die Daten für das Anwendungsprogramm des eigenen Pro­ zessors erforderlich sind. Eine Prozessoreinheit 304 steuert die Ausführung von Anwendungsprogrammen 321 bis 323. Ein Eigenprozessornummer-Speicherbereich 306 speichert eine Nummer, die jeweils einem Prozessor zugeordnet ist. Ein Bereich 307 für eine fortlaufende Nummer wird als Zäh­ ler für die Zahl von Datenerzeugungen benutzt. Eine externe Eingangssteuereinheit 308 empfängt Eingangsdaten von der externen Ausstattung 161. Empfängt die externe Eingangs­ steuereinheit 308 Daten von der externen Ausstattung 161, so fügt bzw. addiert sie zu den Daten eine n-Bit Ereignis­ zahl hinzu, die aus der Prozessornummer und der fortlaufen­ den Nummer besteht, die im Bereich 307 für die fortlaufende Nummer gespeichert ist. Eine externe Eingabe-CC-Tabelle 309 speichert einen Inhaltscode der externen Eingangsdaten. Ein Eingabe/Ausgabe-Datenspeicherbereich 305 speichert eingege­ bene/ausgegebene Nachrichten für jedes Anwendungsprogramm.
Im folgenden wird unter Bezugnahme auf die Fig. 5 und die folgenden Figuren ein Verfahren zur Verarbeitung von Daten eines Mehrdaten-Eingangsprogramms im einzelnen beschrieben.
Das Anwendungsprogramm kann gestartet werden, wenn alle Da­ ten einer Mehrzahl von Inhaltscodes verfügbar sind (UND- Start) oder wenn irgendwelche der Daten verfügbar sind (ODER-Start). In den Programmen vom UND-Start-Typ können die Quellen von Daten der Mehrzahl von Inhaltscodes durch dieselbe externe Ausstattung 401 gebildet sein, wie im Fall für das Programm 403 in Fig. 5. In einem solchen Fall ist es erforderlich, die Eingangsdaten zu korrelieren. (Der Start des Programms in einem solchen Fall wird als Start mit denselben Ereigniszahldaten angesehen, wobei die Korre­ lation zwischen Daten dazu dient, die Daten auf ihre Kon­ sistenz hin zu überprüfen (Verträglichkeit miteinander bzw. Grad der Übereinstimmung untereinander). Die Fig. 6 zeigt den Aufbau eines Puffers (Pufferspeicher), in welchem Daten gespeichert sind, die zur Verarbeitung von Daten für ein Programm erforderlich sind, welches mit Daten gestartet wird, die dieselbe Ereigniszahl aufweisen. Die Ziffer 500 bezeichnet eine Programsteuertabelle, in der Programme zum Start beim selben Ereigniszahl-Datentyp und die Inhaltscodes von Daten, die korreliert werden sollen, gespeichert sind. PN 511 bezeichnet einen Programmnamen für den Start beim selben Ereigniszahl-Datentyp, während CC 521-523 Inhaltscodes von Daten angeben, die miteinander korreliert werden sollen. Eine Datensteuertabelle trägt das Bezugszeichen 550. PN 561 gibt einen Programmnamen des Starts beim selben Ereigniszahl-Datentyp an. Eine beliebige Anzahl derartiger Tabellen kann für jedes Programm verwen­ det werden. E 562 ist eine Ereigniszahl. D 571-572 sind Datenfelder, die den Inhaltscode (CC) 581 und einen Daten­ inhalt (DATA) 582 enthalten, wie am unteren Ende von Fig. 6 angedeutet ist. F 563 bezeichnet ein Steuerkennzeichen (flag), welches dann gesetzt wird, wenn Daten im Datenfeld gespeichert sind. Für das Programm vom ODER-Start-Typ und das Programm vom UND-Start-Typ, bei dem kein Start beim selben Ereigniszahl-Datentyp erfolgt, sind weder eine Pro­ grammsteuertabelle 500 noch eine Datensteuertabelle 550 vorhanden. Werden Daten zum Start eines solchen Programms vom Empfangspuffer 302 zur Prozessoreinheit 304 gesendet, so gelangen sie auf direktem Wege in den Eingabe/Ausgabe- Datenspeicherbereich 305.
Das Übertragen bzw. Vermitteln der Ereigniszahl wird nach­ folgend unter Bezugnahme auf die Fig. 7 erläutert, die ein Format des Eingabe/Ausgabe-Datenspeicherbereichs 305 zeigt. Die Zeilen 601 bis 603 der Datentabelle entsprechen jeweils den Anwendungsprogrammen 321 bis 323 in Fig. 4. PN 651 be­ zeichnet einen Programmnamen. ID 661-662 geben Eingangs­ daten zum Starten der Programme an. Diese Eingangsdaten enthalten jeweils einen Inhaltscode (CC) 621 und einen Da­ teninhalt (DATA) 622. Die Anzahl der IDs 661-662 ent­ spricht der Anzahl der Eingangsdaten, die zum Start des entsprechenden Anwendungsprogramms erforderlich sind. Wur­ den Daten in allen IDs 661-662 in einer Zeile der Tabelle gespeichert, so wird ein Laufsteuerkennzeichen (RF) 652 ge­ setzt, was zum Start des Programms führt. Das Prozeß- bzw. Verarbeitungsergebnis wird im Bereich OD 671 gespeichert (dieser Bereich hat dasselbe Format wie der Bereich ID). Die Felder E 681-682 bezeichnen n-Bit Ereigniszahlen der Eingangsdaten. Alle Ereigniszahlen für verschiedene Ein­ gangsdaten sind in diesen Feldern gespeichert. Sind Daten im Feld OD 671 gespeichert, so werden die Daten für das Da­ tenfeld 206 in Fig. 3 verwendet, und alle Ereigniszahlen, die in den Feldern E 681-682 gespeichert sind, werden zum Ereigniszahlfeld 205 hinzugefügt bzw. hinzuaddiert, wobei sie vom Eingabe/Ausgabe-Datensteuerbereich 305 über die Prozessoreinheit 304 und den Übertragungspuffer 303 zur Übertragungsleitung gesendet werden. Dementsprechend weist der Ereigniszahlsatz E 205 in Fig. 3 m×n Bits auf (wobei m die Anzahl der hinzuaddierten Ereigniszahlen ist).
Die Fig. 8a bis 8d zeigen Flußdiagramme zur Datenverarbei­ tung des Programms für den Start desselben Ereigniszahl-Da­ tentyps, das durch die Prozessoreinheit 304 in Fig. 4 aus­ geführt wird. Empfängt die Prozessoreinheit 304 Daten von der Übertragungsleitung über den Empfangspuffer 302 (Schritt 701 in Fig. 8a), so unterteilt sie den Ereignis­ zahlensatz der Daten in n-Bit Blöcke. (Der Wert eines jeden n-Bit Blocks wird als Ereigniszahleinheit bezeichnet.) Im folgenden sei angenommen, daß der Satz in m Ereigniszahl­ einheiten e 1, e 2, . . ., e m unterteilt worden ist (Schritt 702 in Fig. 8a). Ein Steuerkennzeichen k, das angibt, ob die Daten in der Datensteuertabelle 500 gespeichert worden sind, wird auf den Wert "0" gesetzt (Schritt 703 in Fig. 8a). Die Zeile 501 in der Programmsteuertabelle 500 wird als erstes aufgesucht (Schritt 704 in Fig. 8a). Es wird ge­ prüft (Schritt 706 in Fig. 8a), ob derselbe Inhaltscode wie der Inhaltscode (CC) 202 der eingelesenen Daten in den Fel­ dern CC 521 bis 523 in Zeile 501 gespeichert ist. Ist dies nicht der Fall bzw. existiert er nicht, so wird die nächste Zeile 502 aufgesucht (Schritt 704 in Fig. 8a). Existiert er dagegen, so wird eine Zeile der Datensteuertabelle 550 in Übereinstimmung mit PN 511 der Zeile 501 aufgesucht (Schritt 707 in Fig. 8a). Es sei angenommen, daß die Zeile 551 aufgefunden worden ist. E 562 der Tabelle 551 wird in m′ Ereigniszahleinheiten e1, e′ 2, . . ., e′ m, unterteilt (Schritt 709 in Fig. 8a). Dann werden die Ereigniszahlein­ heiten e 1, e 2, . . ., e m der eingelesenen Daten und die Er­ eigniszahleinheiten e1, e′ 2, . . ., e′ m, der Tabelle 551 miteinander verglichen, um zu überprüfen, ob es eine gleiche Ereigniszahleinheit gibt (Schritt 751 mit gestri­ chelten Linien in den Fig. 8a und 8c eingezeichnet). Ein Steuerkennzeichen l wird gesetzt, wenn gleiche Ereignis­ zahleinheiten detektiert werden. Existiert eine gleiche Er­ eigniszahleinheit, so wird auf der Grundlage der Informa­ tion der Zeile 501 der Programmsteuertabelle 500 geprüft (Schritt 71 in Fig. 8c), ob CC 581 der Daten, die bereits in D 571-572 der Zeile 551 gespeichert sind, derjenige Inhaltscode ist, der mit CC 202 der eingelesenen Daten ge­ paart werden soll. Ist CC 581 nicht derjenige Inhaltscode, der mit CC 202 gepaart werden soll, so wird eine andere Er­ eigniszahleinheit der Zeile 501 geprüft (Schritte 716, 713 und 715 in Fig. 8c). Ist der zu paarende Inhaltscode detek­ tiert worden, so werden CC 202 und DATA 206 der eingelese­ nen Daten in einen leeren Bereich von D 571-572 der Zeile 551 gespeichert (Schritt 718 in Fig. 8c). Dann werden das Steuerkennzeichen k und das Steuerkennzeichen l gesetzt (Schritt 719 in Fig. 8c). Ist die Anzahl der Ziffern des Ereigniszahlsatzes E 205 der eingelesenen Daten größer als die Anzahl der Ziffern von E 562 in Zeile 551 (Schritt 720 in Fig. 8c), so wird der Ereigniszahlsatz E 562 von Zeile 551 durch den Ereigniszahlsatz E 205 der eingelesenen Daten ersetzt (Schritt 721 in Fig. 8c). Es wird geprüft (Schritt 722 in Fig. 8a), ob Daten in allen Datenfeldern D 571-572 der Zeile 551 gespeichert worden sind. Ist dies der Fall, so werden die Daten der Datenfelder D 571-572 der Zeile 551 in den Eingangsdatenfeldern ID 661-662 des Eingabe/ Ausgabe-Datenspeicherbereichs 305 mit PN 651 in Überein­ stimmung mit PN 561 in Zeile 551 bzw. in den Eingabe/Ausga­ be-Datenspeicherbereichen 601 bis 603 gespeichert (Schritt 723 in Fig. 8d). Das Steuerkennzeichen F 563 der Zeile 551 wird auf den Wert "0" gesetzt, und die Datenfelder D 571-572 werden initialisiert (Schritt 724 in Fig. 8d). Dann wird geprüft (Schritt 707 in Fig. 8a), ob die Datensteuer­ tabelle entsprechend PN 511 der Zeile 501 in einer anderen als die Zeile 551 existiert. Existiert sie, so werden die Schritte 709 bis 724 wiederholt. Existiert sie dagegen nicht, so wird geprüft (Schritt 725 in Fig. 8d), ob l=0 ist, ob also keine Übereinstimmung zwischen der Ereignis­ zahleinheit der eingelesenen Daten und der Ereigniszahlein­ heit der Zeile 551 vorliegt. Ist l=1, so springt das Pro­ gramm sofort zurück nach Schritt 704, um den Suchvorgang innerhalb der Programmsteuertabelle 502 zu starten. Ist l=0, so wird geprüft (Schritt 726 in Fig. 8d), ob das Steuer­ kennzeichen F 563 gleich 0 ist, ob es also eine Zeile der Datensteuertabelle gibt, in der keine Daten in den Daten­ feldern D 571-572 gespeichert wurden. Wird eine Daten­ steuertabelle mit dem Wert "0" im Steuerkennzeichen F 563 detektiert, so werden die eingelesenen Daten in diese Ta­ belle hineingespeichert (Schritt 727 in Fig. 8d), wobei ferner das Steuerkennzeichen F 563 gesetzt wird (Schritt 728 in Fig. 8d). Existiert dagegen keine Tabelle mit dem Wert "0" im Steuerkennzeichen F 563, so wird eine Fehler­ nachricht, die das Fehlen gespeicherter Daten angibt, im Eingabe/Ausgabe-Datenspeicherbereich gespeichert (Schritt 729 in Fig. 8d) , wobei die eingelesenen Daten gelöscht wer­ den (Schritt 730 in Fig. 8d). Nach diesen Schritten springt das Programm zurück zum Schritt 704, um zu prüfen, ob CC 202 der eingelesenen Daten innerhalb von CC 521 bis 523 der Programmsteuertabelle 502 vorhanden ist. Die Schritte 705 bis 730 werden wiederholt. Wurden die Zeile 503 wieder auf­ gefunden und die Schritte 705 bis 730 ausgeführt (Schritt 705 in Fig. 8a), so wird geprüft (Schritt 731 in Fig. 8b), ob k=1 ist, ob also die eingelesenen Daten in der Daten­ steuertabelle gespeichert worden sind. Ist k=0, so sind die eingelesenen Daten im Eingabe/Ausgabe-Datenspeicherbe­ reich 305 gespeichert (Schritt 732 in Fig. 8b), so daß der Betrieb der Prozessoreinheit 304 endet (Schritt 739 in Fig. 8b). Ist k=1, so wird die Datensteuertabelle 500 nach PN 561 und der Ereigniszahl E 562 durchsucht (Schritt 733 in Fig. 8b), um bestimmen zu können, ob sowohl PN 561 und E 562 in derselben Tabelle vorhanden sind (Schritt 734 in Fig. 8b). Befinden sich PN 561 und E 562 nicht in derselben Tabelle, so wird der Betrieb in der Prozessoreinheit 304 beendet (Schritt 739 in Fig. 8b). Befinden sie sich dagegen in derselben Tabelle, so werden PN 561 und E 562 in einer Tabelle konsolidiert (Schritt 735 in Fig. 8b). Ein Flußdia­ gramm für die Tabellenkonsolidierung ist in Fig. 9 gezeigt. Ein Wert n, der die Anzahl der Zeilen in der zu konsolidie­ renden Tabelle angibt, wird eingestellt (Schritt 801). Fer­ ner wird ein Anfangswert "2" für i eingestellt (Schritt 802). Die Datenfelder D 571-572 der ersten Zeile und der i-ten Zeile der n Zeilen, die konsolidiert werden sollen, werden miteinander verglichen (Schritt 804). Die Daten, welche sich im Datenfeld der i-ten Zeile und nicht im Da­ tenfeld der ersten Zeile befinden, werden in das Datenfeld der ersten Zeile eingespeichert (Schritt 805). Für die i-te Zeile wird das Steuerkennzeichen F 563 auf den Wert "0" ge­ setzt, wobei ferner die Datenfelder D 571 bis 573 initiali­ siert werden (Schritt 806). Dann wird i inkrementiert (Schritt 807). Ist i n (Schritt 803), so werden die Schritte 804 bis 807 wiederholt. Ist dagegen i<n, so en­ det der Konsolidierungsprozeß. Für die konsolidierte Zeile wird geprüft (Schritt 736 in Fig. 8b), ob Daten in allen Datenfeldern 571-572 gespeichert worden sind. Wurden sie nicht gespeichert, so endet der Prozeß in der Prozessorein­ heit 304 (Schritt 739 in Fig. 8b). Wurden Daten in allen Datenfeldern gespeichert, so werden die Daten im Eingabe/ Ausgabe-Datenspeicherbereich gespeichert (Schritt 737 in Fig. 8b). Ferner wird das Steuerkennzeichen F 563 auf den Wert "0" für diese Tabelle gesetzt, wobei alle Datenfelder D 571-572 initialisiert werden (Schritt 738 in Fig. 8b). Der Betrieb der Prozessoreinheit 304 ist damit beendet.
In der zuvor beschriebenen Weise werden Daten des Mehrda­ ten-Eingangsprogramms in Übereinstimmung mit der Erfindung verarbeitet. Der gesamte Ablauf der Erfindung wird nachfol­ gend unter Bezugnahme auf die Fig. 1a und 1b näher be­ schrieben. Die Fig. 1a zeigt die Systemkonfiguration und den Prozeßablauf. Die Systemkonfiguration ist identisch zu derjenigen in Fig. 2. Anwendungsprogramme 402 und 403 wur­ den in die Prozessoren 102 und 103 geladen. Der Prozessor 101 ist mit einer externen Ausstattung bzw. Einrichtung 401 verbunden. Es existiert eine Eingabe/Ausgabebeziehung gemäß Fig. 5 zwischen der externen Ausstattung 401 und den Anwen­ dungsprogrammen 402 und 403. Dabei sei angenommen, daß der Prozessor 101 aufeinanderfolgend zwei Daten von der exter­ nen Ausstattung 401 gelesen hat. Der Prozessor 101 setzt Inhaltscodes CC1 und CC2 zu den aus der externen Ausstat­ tung gelesenen Daten und darüber hinaus zusätzlich Ereig­ niszahlen EN1 und EN2 zu den Daten. Er erstellt weiterhin Daten 21 und 22 mit einem in Fig. 1b gezeigten Format und sendet diese zur Übertragungsleitung 151. Das Format ent­ spricht dem in Fig. 3 gezeigten Format. Die Prozessoren 102 und 103 lesen die Daten 21 und 22. Dabei sei angenommen, daß der Prozessor 102 zuerst die Daten 21 einliest. Er startet daher das Anwendungsprogramm 402 gemäß den Fig. 1a und 5 durch die Daten 21. Andererseits lesen auch die Pro­ zessoren 103 und 104 die Daten 21 und 22, jedoch werden diese Daten in dem Pufferspeicher gespeichert, da noch nicht alle Daten empfangen worden sind, die zum Start des Anwendungsprogramms 408 erforderlich sind. Das Programm 402 des Prozessors 102 setzt den Inhaltscode CC2 und die Ereig­ niszahl EN1 zum Prozeßergebnis des Anwendungsprogramms, das durch die Daten 21 gestartet worden ist, hinzu, um Daten 23 zu erstellen. Diese werden dann zum Netzwerk übertragen. Anschließend wird das Anwendungsprogramm durch die Daten 22 gestartet. Dabei werden der Inhaltscode CC2 und die Ereig­ niszahl EN2 zum Prozeßergebnis hinzugefügt, um Daten 24 zu erstellen, die wiederum zum Netzwerk übertragen werden. Der Prozessor 104 liest diese Daten 23 und 24 ein. Es sei ange­ nommen, daß die Daten 24 vom Prozessor 102 zuerst gelesen werden. Der Prozessor 104 vergleicht die Ereigniszahlen der Daten 21 und 22 mit der Ereigniszahl der Daten 24. Da die Daten 22 und die Daten 24 die gleiche Ereigniszahl EN2 (event number) aufweisen, startet der Prozessor 104 das An­ wendungsprogramm 403 durch die Daten 22 und die Daten 24. Die Ereigniszahl EN2 wird dem Prozeßergebnis hinzugefügt. In ähnlicher Weise wird das Anwendungsprogramm 104 durch die Daten 21 und die Daten 23 gestartet, wobei die Ereig­ niszahl EN1 dem Prozeßergebnis hinzugefügt wird.
In Übereinstimmung mit der Erfindung erfolgt die Ausführung des Mehrdaten-Eingangsprogramms auf der Grundlage der Be­ schaffenheit von Ereigniszahlen zwischen einer Mehrzahl von Daten für ein einzelnes Programm.
Der Prozessor, der Daten von der externen Eingabeeinrich­ tung empfangen hat, kann zu den Daten eine Eingangszeit als Label bzw. Kennung hinzufügen. Liest ein anderer Prozessor die Daten von der Übertragungsleitung ein, so kann er die Daten korrelieren, und zwar anhand der Zeit, die den Inhalt der Kennung bildet.
Liest der Prozessor die Daten von der Übertragungsleitung, so kann er den Daten eine Lesezeit als Label bzw. Kennung hinzufügen. Er kann dann die Daten auf der Grundlage der Zeit, die den Inhalt der Kennung darstellt, korrelieren.

Claims (6)

1. Verfahren zur Verarbeitung einer Mehrzahl von Daten in einem verteilten Verarbeitungssystem mit einer Mehrzahl von Prozessoren (100 bis 108), die über ein gemeinsames Netzwerk (151) miteinander verbunden sind, gekennzeichnet durch die folgenden Schritte:
  • (a) Einstellen eines Bereichs einer Mehrzahl von Datensät­ zen, die durch ein Verarbeitungsprogramm in einem der Prozessoren verarbeitet werden sollen,
  • (b) Hinzufügen einer Kennung zu denjenigen Daten, die von irgendeinem der Prozessoren zum gemeinsamen Netzwerk geliefert werden, und
  • (c) Vergleich der Kennung des an diesen einen Prozessor ge­ lieferten Datensatzes mit den zu den durch das eine Programm zu verarbeitenden Datensätzen hinzugefügten Kennungen zwecks Korrelation der Daten.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß jeder der Prozessoren (101 bis 108) Daten vom gemein­ samen Netzwerk (151) liest und eine Kennung hinzufügt, die einen auf der Grundlage der Kennung innerhalb der Eingangs­ daten erzeugten Inhalt aufweist, also eine durch Verarbei­ tung der Eingangsdaten erzeugte Datenkennung.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß alle Kennungen in den Eingangsdaten zu Kennungen der Ausgangsdaten hinzugefügt bzw. hinzuaddiert werden, um Ken­ nungen mit einem Inhalt einzustellen, der die Kennungen in­ nerhalb der Eingangsdaten berücksichtigt.
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß eine Kennung zu Daten hinzugefügt bzw. hinzuaddiert wird, die aus einer externen Eingangsausstattung (161) aus­ gelesen worden sind.
5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß jeder Prozessor (101 bis 108) eine Kennung zu Daten hinzufügt bzw. hinzuaddiert, die aus dem gemeinsamen Netz­ werk (151) ausgelesen worden sind.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß die durch jeden Prozessor (101 bis 108) hinzugefügte bzw. hinzuaddierte Kennung die Zeit des Dateneingangs ist.
DE3842286A 1987-12-18 1988-12-15 Verfahren zur Verarbeitung von Daten in einem verteilten Verarbeitungssystem Expired - Lifetime DE3842286C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62318823A JPH01161566A (ja) 1987-12-18 1987-12-18 分散処理システムにおけるデータ処理方式

Publications (2)

Publication Number Publication Date
DE3842286A1 true DE3842286A1 (de) 1989-06-29
DE3842286C2 DE3842286C2 (de) 1994-05-19

Family

ID=18103351

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3842286A Expired - Lifetime DE3842286C2 (de) 1987-12-18 1988-12-15 Verfahren zur Verarbeitung von Daten in einem verteilten Verarbeitungssystem

Country Status (7)

Country Link
US (1) US5313632A (de)
JP (1) JPH01161566A (de)
KR (1) KR920002571B1 (de)
CN (1) CN1009317B (de)
BR (1) BR8806691A (de)
DE (1) DE3842286C2 (de)
IN (1) IN171481B (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IN170793B (de) * 1987-12-18 1992-05-23 Hitachi Ltd
DE69316631T2 (de) * 1992-08-31 1998-07-16 Dow Chemical Co Drehbuch-basiertes system zum testen eines mehrbenutzer-rechnersystems
JP3552258B2 (ja) * 1993-12-27 2004-08-11 株式会社日立製作所 分散計算機システム及びその情報管理方法
JP3508513B2 (ja) * 1997-11-07 2004-03-22 株式会社日立製作所 計算機システムの運用管理方法
US6301670B1 (en) * 1998-10-06 2001-10-09 Ricoh Corporation Method and apparatus for erasing data when a problem is identified
US7325052B1 (en) 1998-10-06 2008-01-29 Ricoh Company, Ltd. Method and system to erase data after expiration or other condition
US7039657B1 (en) * 1999-11-09 2006-05-02 International Business Machines Corporation Method, system, and program for accessing data from storage systems
US20060156381A1 (en) 2005-01-12 2006-07-13 Tetsuro Motoyama Approach for deleting electronic documents on network devices using document retention policies
US8272028B2 (en) * 2008-10-15 2012-09-18 Ricoh Company, Ltd. Approach for managing access to electronic documents on network devices using document retention policies and document security policies

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4498082A (en) * 1981-01-30 1985-02-05 Allied Corporation Method and apparatus for locating a discontinuity in a data transmission ring
US4627055A (en) * 1984-01-09 1986-12-02 Hitachi, Ltd. Decentralized processing method and system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55140347A (en) * 1979-04-20 1980-11-01 Oki Electric Ind Co Ltd Information sequence security system
US4382277A (en) * 1979-05-14 1983-05-03 System Development Corp. Method and means utilizing multiple processing means for determining degree of match between two data arrays
JPS57146361A (en) * 1981-03-06 1982-09-09 Hitachi Ltd Decentralized processing method
US4532588A (en) * 1982-11-09 1985-07-30 International Business Machines Corporation Electronic document distribution network with uniform data stream
JPS59127133A (ja) * 1983-01-11 1984-07-21 Minolta Camera Co Ltd デ−タ伝送方式
JPS60154750A (ja) * 1984-01-25 1985-08-14 Fujitsu Ltd パケツト通信網における選択的順序制御方式
US4653048A (en) * 1984-05-14 1987-03-24 American Telephone And Telegraph Company Method for interprocessor message accountability
JPH0823861B2 (ja) * 1985-06-14 1996-03-06 株式会社日立製作所 分散処理方法
US4712214A (en) * 1986-01-10 1987-12-08 International Business Machines Corporation Protocol for handling transmission errors over asynchronous communication lines
JPH071482B2 (ja) * 1986-01-22 1995-01-11 株式会社日立製作所 分散ファイルの編集方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4498082A (en) * 1981-01-30 1985-02-05 Allied Corporation Method and apparatus for locating a discontinuity in a data transmission ring
US4627055A (en) * 1984-01-09 1986-12-02 Hitachi, Ltd. Decentralized processing method and system

Also Published As

Publication number Publication date
CN1035732A (zh) 1989-09-20
BR8806691A (pt) 1989-08-29
IN171481B (de) 1992-10-31
CN1009317B (zh) 1990-08-22
JPH01161566A (ja) 1989-06-26
DE3842286C2 (de) 1994-05-19
KR890010688A (ko) 1989-08-10
US5313632A (en) 1994-05-17
KR920002571B1 (ko) 1992-03-30

Similar Documents

Publication Publication Date Title
DE3416939A1 (de) Verfahren zur steuerung von betriebseinrichtungen
DE2810082A1 (de) Hilfslesespeichersystem
DE3842289C2 (de) Verfahren zur Entwicklung von Programmen für ein verteiltes Datenverarbeitungssystem
DE2943149C2 (de) Ringnetzwerk mit mehreren an eine Daten-Ringleitung angeschlossenen Prozessoren
DE2722124A1 (de) Anordnung zum feststellen des prioritaetsranges in einem dv-system
DE1499182B2 (de) Datenspeichersystem
EP1307006A2 (de) Akzeptanz-Filter
DE3201768A1 (de) Job-verarbeitungsverfahren
DE3842286A1 (de) Verfahren zur verarbeitung von daten in einem verteilten verarbeitungssystem
DE4100151A1 (de) Ic-karte
WO2019091901A1 (de) Verfahren zum verknuepfen eines ersten datenblocks mit einem zweiten datenblock, verfahren zum ueberpruefen der integritaet einer blockchain-struktur, vorrichtung und computerprogrammprodukt
DE3639609C2 (de)
DE3821088A1 (de) Verfahren zum starten eines rechnerprogrammes
DE3718472C2 (de)
WO2005038662A2 (de) Betriebsverfahren für einen server und hiermit korrespondierende gegenstände
DE69913152T2 (de) Ersetzen von Sonderzeichen in einem Datenstrom
EP0856176A1 (de) Datenbankmanagementsystem sowie datenübertragungsverfahren
EP1248430B1 (de) Verfahren und Generierungsmodul zur Ermittlung von Filtermasken zur Relevanzprüfung von Kennzeichnern
EP1331794B1 (de) Verfahren zur Adresszuweisung in einem Netzwerk und Komponenten dafür
DE102004017837B4 (de) Informationsverarbeitungsterminal, Sendeprivilegrundführungssystem, Sendeprivilegrundführungsverfahren und Sendeprivilegerwerbungsprogramm
EP0925540B1 (de) Synchronisationsverfahren
DE3711273A1 (de) Verfahren fuer eine verteilte datenverarbeitungsanlage zum ausfuehren einer folge von verarbeitungen eines auftrags in verteilter form sowie verteilte datenverarbeitungsanlage zur durchfuehrung des verfahrens
EP0531573B1 (de) Verfahren zum Berechtigungsverifizierten Zugriff auf temporär belegbare Datenspeicherbereiche in einer Datenbasis einer programmgesteuerten Kommunikationsanlage
DE10218645A1 (de) An einen Bus angeschlossene Einrichtung
EP4002038A1 (de) Vorrichtung zum schützen eines zugriffs für segmente in verteilten systemen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8128 New person/name/address of the agent

Representative=s name: STREHL, P., DIPL.-ING. DIPL.-WIRTSCH.-ING. SCHUEBE

D2 Grant after examination
8364 No opposition during term of opposition