DE3842289A1 - Verfahren zur entwicklung von programmen in einem verteilten verarbeitungssystem - Google Patents
Verfahren zur entwicklung von programmen in einem verteilten verarbeitungssystemInfo
- Publication number
- DE3842289A1 DE3842289A1 DE3842289A DE3842289A DE3842289A1 DE 3842289 A1 DE3842289 A1 DE 3842289A1 DE 3842289 A DE3842289 A DE 3842289A DE 3842289 A DE3842289 A DE 3842289A DE 3842289 A1 DE3842289 A1 DE 3842289A1
- Authority
- DE
- Germany
- Prior art keywords
- program
- programs
- information
- processors
- attribute
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/28—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 for polarising
-
- G—PHYSICS
- G03—PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
- G03B—APPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
- G03B21/00—Projectors or projection-type viewers; Accessories therefor
- G03B21/54—Accessories
- G03B21/56—Projection screens
- G03B21/60—Projection screens characterised by the nature of the surface
- G03B21/604—Polarised screens
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Optics & Photonics (AREA)
- Stored Programmes (AREA)
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Description
Die Erfindung bezieht sich auf ein Verfahren gemäß dem
Oberbegriff des Patentanspruchs 1 zur Entwicklung von Pro
grammen in einem verteilten Verarbeitungssystem zur an
teilsweisen Ausführung einer Serie von Prozessen durch eine
Mehrzahl von Prozessoren, wobei ein Entwicklungsprozessor
zur Programmentwicklung Anwendungsprogramme entwickelt, die
durch die jeweiligen Prozessoren ausgeführt werden, und wo
bei die entwickelten Anwendungsprogramme in die jeweiligen
Prozessoren geladen werden.
Die Entwicklung von Programmen in einem verteilten Verar
beitungssystem ist in der US-P 46 27 055 beschrieben. Die
JP-A-57-1 46 361 offenbart bereits ein verteiltes Verarbei
tungsverfahren zur unterteilten Bearbeitung einer Serie von
Aufgaben durch Prozessoren, die mit einer gemeinsamen Über
tragungsleitung verbunden sind. Bei diesem Verfahren sind
Programme zur jeweiligen Ausführung eines zu einer Serie
von Prozessen gehörenden Prozesses verteilt in den jeweili
gen Prozessoren gespeichert. Die Programme in den jeweili
gen Prozessoren werden gestartet, wenn zur Ausführung der
Programme notwendige Daten, die über die Übertragungslei
tung erhalten worden sind, in dem jeweiligen Prozessor ge
laden worden sind. Dieses Verfahren ermöglicht eine aufge
teilte Bearbeitung einer Serie von Prozessen durch jeweili
ge Prozessoren, ohne daß ein Steuerprozessor zur Steuerung
des Gesamtsystems erforderlich ist.
Die JP-A-61-2 86 959 offenbart ein Verfahren zur Übertragung
von durch jeweiligen Prozessoren auszuführenden Programmen
in Form einer Nachricht über eine Übertragungsleitung, so
daß jeder Prozessor die über die Übertragungsleitung über
tragenen Programme aufnehmen und in seinem Inneren spei
chern kann.
In der Vergangenheit wurden Programme kollektiv entwickelt.
Soll daher ein Programm geändert und angepaßt werden, um
eine neue Version des Programms zu entwickeln, so lassen
sich die neue und die alte Version der entwickelten Pro
gramme durch bloßes Hinzufügen einer Seriennummer (Erzeu
gungs- bzw. Generationsnummer) identifizieren, die angibt,
wie oft das Originalprogramm aktualisiert bzw. auf den
neuesten Stand gebracht worden ist. Aufgrund dieser Nummer
kann bestimmt werden, ob das entwickelte Programm weiter
aktualisiert werden soll (Modifikation oder Ergänzung),
oder ob das entwickelte Programm in einem ausführenden Com
puter verwendet werden soll.
Dieses Verfahren berücksichtigt jedoch nicht den Fall, bei
dem Programme in separaten Entwicklungssystemen modifiziert
oder ergänzt werden, und zwar auf der Grundlage eines Pro
gramms in einem verteilten Verarbeitungssystem mit einer
Mehrzahl von Entwicklungssystemen.
Bei einem herkömmlichen verteilten bzw. verzweigten Verar
beitungssystem ist es möglich, jeweilige Programme indivi
duell zu entwickeln, da Verbindungen bzw. Schnittstellen
(Interfaces) zwischen den Programmen nur durch die Ein
gangs-/Ausgangsdaten der Programme definiert sind. Es be
steht bei diesem herkömmlichen Verfahren jedoch keine Mög
lichkeit zu prüfen, ob eine Konsistenz bzw. Verträglichkeit
zwischen den individuell entwickelten Programmen oder zwi
schen den Programmen und definierter Information für die
Programme vorhanden ist. Dies führt zu gewissen Problemen
bei der Programmentwicklung.
Beim herkömmlichen Verfahren ist es erforderlich, beim La
den der jeweiligen Prozessoren mit den entwickelten Pro
grammen die Eingangs-/Ausgangsnachrichten der Programme zu
definieren, um die Eingangs-/Ausgangsdaten der Programme
identifizieren zu können. Wird eine falsche Information de
finiert, so würde das Programm den Prozeß aufgrund einer
von der gewünschten Nachricht völlig verschiedenen Nach
richt ausführen.
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren zur
Entwicklung von Programmen in einem verteilten Verarbei
tungssystem anzugeben, das die Konsistenz bzw. Verträglich
keit zwischen entwickelten Programmen prüfen kann und das
in der Lage ist, auf der Grundlage von Programmattributin
formation in einem Ladeprozessor zum Laden erforderliche
Information zu erzeugen, so daß sich ein erhöhter Wirkungs
grad bei der Programmentwicklung ergibt.
Der Erfindung liegt ferner die Aufgabe zugrunde, ein Ver
fahren zur Entwicklung von Programmen in einem verteilten
Verarbeitungssystem zur Durchführung einer Serie von Pro
zessen durch eine Mehrzahl von Prozessoren zu schaffen, bei
dem während der Entwicklung der in die jeweiligen Prozesso
ren zu ladenden Programme eine Beziehung zwischen Nachrich
ten mit Eingangs-/Ausgangsinformation und Programmen zur
Eingabe oder Ausgabe dieser Nachrichten detektiert werden
kann, so daß der Vorbereitungs- bzw. Herstellungsstatus der
Programme erfaßt werden kann.
Ziel der Erfindung ist weiterhin die Schaffung eines Ver
fahrens zur Entwicklung von Programmen in einem verteilten
Verarbeitungssystem, mit dessen Hilfe eine Beziehung zwi
schen den Programmen erfaßt und eine Abnormalität in der
Beziehung zwischen den Programmen detektiert werden können,
bevor die Programme in die jeweiligen Prozessoren geladen
und in ihnen gestartet werden, so daß sich eine vergrößerte
Zuverlässigkeit der Software ergibt.
Der Erfindung liegt weiterhin die Aufgabe zugrunde, ein
Verfahren zur Entwicklung von Programmen in einem verteil
ten Verarbeitungssystem zu schaffen, bei dem Programme
nicht durch eine zentrale Steuerfunktion, sondern durch ei
ne Kombination einer Mehrzahl von Entwicklungssystemen und
einem Prozessor entwickelt werden, und bei dem charakteri
stische Information, durch die jeder Prozessor bestimmen
kann, ob er das Programm ausführen kann oder nicht, zum
entwickelten Programm hinzugefügt wird, und zwar auf der
Grundlage der Bestimmung durch jeden Prozessor.
Nach der Erfindung soll weiterhin ein verteiltes Verarbei
tungssystem geschaffen werden, in welchem mehrere Programm
entwicklungssysteme, die Programme in Kooperation entwik
keln (die Entwicklungssysteme können z. B. ein Originalpro
gramm parallel oder verschiedene Teile nacheinander modifi
zieren), sehr schnell Programmbildungen, eine Beziehung
zwischen den Programmen und Merkmale der Programme durch
ihre eigene Entscheidung erkennen können.
Außerdem ist es Ziel der Erfindung, ein verteiltes Verar
beitungssystem (distributed processing system) mit einer
Mehrzahl von Prozessoren zu schaffen, das keinen zentralen
Steuermechanismus zum zentralen Programmanagement benötigt
und eine kooperative Entwicklung der Programme ermöglicht,
ohne durch Hinzufügung eines neuen Prozessors in das System
oder durch Wartungsarbeiten für den Prozessor beeinträch
tigt zu sein.
Die Lösung der gestellten Aufgaben ist im kennzeichnenden
Teil des Patentanspruchs 1 angegeben. Vorteilhafte Ausge
staltungen der Erfindung sind den Unteransprüchen zu ent
nehmen.
Die obigen Aufgaben werden durch die Erfindung insbesondere
durch folgende Schritte gelöst: Separieren von Attributin
formation in den Eingangs-/Ausgangsnachrichten, die in ei
nem Quellenprogramm (source program) definiert sind, und
zwar während des Kompilierens des Quellenprogramms, Spei
chern der Attributinformation in einer entsprechenden Be
ziehung zu einem kompilierten Lademodul und Erstellung ei
ner Tabelle, die die Beziehung zwischen den Programmen re
präsentiert, und zwar auf der Grundlage der Attributinfor
mation.
Die Programmeingangs-/Ausgangsinformation wird für jedes
Programm während der Entwicklung erstellt, wobei die Ein
gangs-/Ausgangsinformationen für die jeweiligen Programme
so korreliert sind, daß eine Beziehung zwischen den Pro
grammen während der Entwicklung erfaßt und daher die Kon
sistenz bzw. Verträglichkeit überprüft werden kann. Beim
Laden der Programme wird eine Ladenachricht automatisch er
zeugt, die einen Lademodul des Programms und die Eingangs-/
Ausgangsinformation enthält.
Bei der Entwicklung der Programme im verteilten Verarbei
tungssystem werden Programme über die Übertragungsleitung
gesendet, ohne daß diese gegenüber den normalen Daten dis
kriminiert werden. Die Programmentwicklungsprozessoren im
verteilten Verarbeitungssystem nehmen die erforderlichen
Programme auf, und zwar nur auf der Grundlage von Codes,
die die Inhalte der Programme engeben, und fügen charakte
ristische Programminformation und Information hinsichtlich
des Prozesses der Aktualisierung bzw. Erneuerung hinzu, so
daß die entwickelten Programme durch die Entscheidung nur
der jeweiligen Prozessoren gehandhabt werden.
Die charakteristische Programminformation ist eine Informa
tion zur Identifizierung von Teilprogrammen. Programmver
sionsinformation wird den herzustellenden bzw. zu modifi
zierenden Programmen in den Prozessoren hinzugefügt, wobei
diese Programme über das gemeinsame Übertragungsmedium
übertragen bzw. gesendet werden. Empfangen die jeweiligen
Entwicklungsprozessoren die Information vom gemeinsamen
Übertragungsmedium, so modifizieren sie die Programme auf
der Grundlage der charakteristischen Programminformation
und senden diese wieder zum Übertragungsmedium. Die mehre
ren Programmentwicklungssysteme können daher die Programme
in einer kooperativen Weise entwickeln.
Die Erfindung wird nachfolgend unter Bezugnahme auf die
Zeichnung näher beschrieben. Es zeigen:
Fig. 1 ein Beispiel eines in einen Entwicklungsprozessor
zu ladenden Programms zwecks Durchführung eines
Programmentwicklungsverfahrens nach der Erfindung,
Fig. 2 ein System, in das nach der Erfindung entwickelte
Programme geladen werden können,
Fig. 3 ein Beispiel eines Formats eines Quellenprogramms,
das Gegenstand des Programmentwicklungsverfahrens
nach der Erfindung ist,
Fig. 4 bis 7 das Verfahren nach der Erfindung im einzelnen,
Fig. 8 ein Blockdiagramm eines verteilten Prozessorsy
stems zur Durchführung des erfindungsgemäßen Ver
fahrens,
Fig. 9 ein Beispiel eines Nachrichtenformats von Informa
tion, die über ein Übertragungsmedium übertragen
und empfangen wird,
Fig. 10 bis 12 Beispiele von Änderungen des Programms nach
der Erfindung, und
Fig. 13 ein Flußdiagramm eines Prozesses in einem Prozes
sor in Übereinstimmung mit dem erfindungsgemäßen
Verfahren.
Die Fig. 2a bis 2c zeigen ein System zur Durchführung des
Verfahrens nach der Erfindung. Die Gesamtansicht dieses Sy
stems ist in Fig. 2a dargestellt. Die Ziffern 11 bis 14 be
zeichnen Prozessoren, die in ihnen gespeicherte Anwendungs
programme ausführen. Mit der Ziffer 15 ist ein Prozessor
zur Entwicklung der Programme bezeichnet, die durch die
Prozessoren 11 bis 14 ausgeführt werden. Mit diesem Prozes
sor 15 sind eine Speicherplatte 1502 und ein Kathoden
strahlröhren-Terminal 1501 verbunden. Jene Einheiten werden
nachfolgend als Entwicklungssystem bezeichnet. Die entwik
kelten Programme werden durch ein Ausführungssystem ausge
führt. Die Prozessoren 11 bis 15 sind mit einem Netzwerk 1
verbunden, das in beliebiger Weise ausgebildet sein kann.
Die erhaltenen Verarbeitungsergebnisse (data) der Prozesso
ren 11 bis 14 werden zum Netzwerk 1 übertragen bzw. gesen
det. Aus den über das Netzwerk 1 gesendeten Nachrichten
nimmt jeder Prozessor Nachrichten (einschließlich Programme
und Daten) auf, die zur Ausführung der in ihm gespeicherten
Programme erforderlich sind und startet das Programm, wenn
er alle Nachrichten, die zur Durchführung erforderlich
sind, erhalten hat. Das gestartete Programm führt seinen
eigenen Prozeß aus und liefert ein Ergebnis.
Die Fig. 2b zeigt das Format der Nachricht, die über das
Netzwerk 1 gesendet wird. Jeder Prozessor bestimmt, ob die
über das Netzwerk empfangene Nachricht für sein eigenes
Programm erforderlich ist, und zwar anhand eines Inhalts
codes (CC) 202 (content code), der den Dateninhalt bezeich
net. Eine Quellenadresse (SA) 203 ist eine Adresse desjeni
gen Prozessors, der eine Nachricht ausgegeben hat, während
C 204 eine Seriennummer ist, die die Sequenz der Übertra
gung angibt. Data 205 gibt den Inhalt des durch das Pro
gramm erhaltenen Ergebnisses an, während FCS 206 Fehler
prüfdaten für die Übertragungsdaten sind. F 201 und F 207
sind Steuerkennzeichen (flgas), die den Anfang und das Ende
der Nachricht angeben.
Die Fig. 2c zeigt eine Tabelle, die ein jeder Prozessor zur
Bestimmung des Starts seines eigenen Programms aufweist.
Die Zeilen 1051, 1052, . . . in der Tabelle nach Fig. 2c
stimmen mit entsprechenden Programmen überein. In der er
sten Zeile ist Prog 10512 ein Bereich zur Speicherung von
Information des zu startenden Programms, während IData
10511 ein Bereich ist, in dem eine vom Netzwerk erhaltene
Nachricht gespeichert ist, die zur Ausführung des Programms
Prog 10512 notwendig ist. Die zweite Zeile 1052 ist so auf
gebaut, daß das Programm nur dann ausgeführt wird, wenn
zwei Nachrichten IData-1 10521 und IData-2 10522 gespei
chert worden sind. Die dritte und die nachfolgenden Zeilen
sind von ähnlicher Struktur. Der Inhaltscode der Nachricht,
die zur Programmausführung nötig ist, wurde bereits zuvor
in IData 10511 der Tabelle für jedes Programm gespeichert.
Jeder Prozessor vergleicht den Inhaltscode CC 202 der vom
Netzwerk erhaltenen Nachricht mit dem Inhaltscode der in
ihm gespeicherten Tabelle und speichert die Nachricht im
Übereinstimmungsfall im Bereich IData 10511. Wurden alle
erforderlichen Nachrichten im Bereich IData 10511 gespei
chert, so benutzt der Prozessor die Daten der Nachrichten
zur Ausführung des Programms im Bereich Prog 10512. Wurden
alle erforderlichen Nachrichten in den Bereichen IData-1
und I-Data-2 gespeichert, so wird das Programm im Bereich
Prog 10521 ausgeführt.
Das Programmentwicklungssystem führt das durch das obige
System auszuführende Programm wird nachfolgend unter Bezug
nahme auf die Fig. 1, 3, 4a, 4b, 5a, 5b, 6a, 6b, 6c, 7a und
7b im einzelnen erläutert.
Die Fig. 1 zeigt ein Programm zur Behandlung einer Nach
richt im Entwicklungsprozessor 15. Im Prozessor 15 sind
Programme 15001, 15002 und 15003 geladen. Diese Programme
werden in Antwort auf Eingaben vom Anzeigeterminal 1501
(Kathodenstrahlröhren-Terminal) gestartet. Das Programm
15001 ist ein Attributerzeugungsprogramm, das Lademodul-
Files 3501 bis 350 n und ein Attribut-File 3500 für ein be
stimmtes von mehreren Quellenprogramm-Files 3011, 3012,
. . ., 301 n erzeugt. Das Programm 15002 ist ein Rundfunkpro
gramm, das eine Ladenachricht durch Kombination von Lademo
dul-File und Attribut-File erzeugt und über das Netzwerk 1
sendet. Dagegen ist das Programm 15003 ein Konsistenzprüf
programm, das Programme korreliert, und zwar auf der Grund
lage des Attribut-Files 3500. Die Prozeßinhalte der jewei
ligen Programme werden nachfolgend im einzelnen erläutert.
Zunächst wird das Verfahren gemäß Programm 15001 unter Be
zugnahme auf die Fig. 3 und 4 genauer beschrieben. Die Fig.
3 zeigt Inhalte der Quellenprogramme 3011 bis 301 n in Fig.
1. Diese Quellenprogramme wurden zuvor eingegeben, und zwar
durch einen Programmentwickler vom CRT-Terminal 1501. Das
Quellenprogramm als Gegenstand des vorliegenden Verfahrens
besteht aus einem Attributteil 401 und einem Prozedurteil
402. Der Attributteil 401 enthält ein Programmnamen-Defini
tionsfeld 4011, ein Eingabenachricht-Inhaltscode-Defini
tionsfeld 4012, ein Ausgabenachricht-Inhaltscode-Defini
tionsfeld 4013 sowie eine Information zum Testen des Pro
gramms 4014 (z. B. Testeingang und das daraus erhaltene Er
gebnis). Der Prozedurteil 402 enthält ein codiertes Pro
gramm.
Die Fig. 4a zeigt den Verfahrensablauf gemäß dem Programm
15001. Das Compile-Programm 15001 beginnt seinen Betrieb,
wenn ein Sourceprogramm-File, das in ein Lademodul umgewan
delt werden soll, über die Eingabeeinheit 1501 (Terminal)
bestimmt worden ist. Das Attributerzeugungsprogramm 15001
unterteilt das bestimmte Sourceprogramm in einen Attribut
teil und in einen Prozedurteil (Schritt 551). Ein Formal
des separierten Attributteils wird geprüft (Schritt 552).
Beim Prüfen des Formats wird festgestellt, ob der Inhalt
des Attributteils gleich dem in 401 von Fig. 3 ist. Ist das
Ergebnis der Formatprüfung in Ordnung, so wird nachfolgend
Schritt 554 erreicht. Ist dagegen das Ergebnis der Format
prüfung nicht in Ordnung, so wird eine Fehlernachricht
(Schritt 557) erzeugt, wonach das Verfahren endet. Der ent
sprechende Vergleich erfolgt in Schritt 553. Im Schritt 554
wird der im Schritt 551 abgetrennte Prozedurteil kompi
liert, um ein Lademodul-File zu erzeugen.
Wird das Kompilieren normal beendet, so wird nachfolgend
Schritt 556 erreicht. Erfolgt dagegen eine nicht normale
Beendigung des Kompilierens, so wird im Schritt 557 eine
Fehlernachricht erzeugt, wonach das Verfahren endet. Im
Schritt 556 werden die rechten Seiten der Ausdrücke der At
tributteile 401, die die Formatprüfung durchlaufen haben,
gesammelt, um ein Attribut-File (3500 in Fig. 1) zu erstel
len (Schritt 556). Strukturen des so erhaltenen Attribut-
Files und des so erhaltenen Lademodul-Files sind in Fig. 4b
dargestellt. Das Attribut-File 3500 enthält Attributtabel
len 35001, 35002, . . ., von denen jeweils einem Lademodul-
File 3501, 3502, . . . zugeordnet ist, die in Schritt 554 er
zeugt worden sind. Die Tabelle 35001 enthält einen Bereich
PN 350011, der einen im Quellenprogramm-Attributteil 401 in
Fig. 3 definierten Programmnamen 4011 aufweist, einen Be
reich ICC 350012, der einen im Attributteil 401 definierten
Eingangsnachricht-Inhaltscode 4012 aufweist, einen Bereich
OCC 350013, der einen Ausgangsnachricht-Inhaltscode 4013
aufweist und eine File-Hinweisadresse (file pointer) FP
350014 zur Markierung eines Lademodul-Files, das durch ein
Quellenprogramm mit Beiträgen der Bereiche PN, ICC und OCC
hergestellt worden ist. Die Tabellen 35002, 35003, . . .,
3500 n weisen dieselbe Struktur auf. Auf die Lademodul-Files
3501, 3502, . . ., 350 n wird über die Attributtabellen 35001,
35002, . . ., 3500 n immer zugegriffen. Insbesondere erfolgt
ein Zugriff auf die Lademodul-Files durch die Programmna
men. Soll daher ein Lademodul-File gelöscht werden, so
sollte die entsprechende Attributtabelle ebenfalls gelöscht
werden. Existiert bereits eine Attributtabelle mit demsel
ben Programmnamen PN, so sollten in Schritt 556 von Fig. 4a
die existierende Attributtabelle und das entsprechende La
demodul-File gelöscht und eine Attributtabelle hergestellt
werden.
Im folgenden wird unter Bezugnahme auf die Fig. 5 das Lade
programm 15002 nach Fig. 1 zur Erzeugung einer in einen
Prozessor zu ladenden Nachricht erläutert. Dieses Programm
wird ausgeführt, wenn der Programmname des Programms be
stimmt worden ist, das von der CRT-Eingabeeinheit (1501 in
Fig. 2) über das Netzwerk 1 geladen werden soll. Eine At
tributtabelle mit einem PN-Feld (Fig. 4b) identisch zum be
nannten Programmnamen wird aus dem Attribut-File herausge
sucht (Schritt 581). Dann werden die aufgefundene Attribut
tabelle und der entsprechende Lademodul miteinander kombi
niert, um eine zu ladende Nachricht zu erstellen (Schritt
582). Der Inhalt des Datenfeldes (205 in Fig. 2b) der zu
ladenden Nachricht, die in Schritt 582 erstellt worden ist,
ist in Fig. 5b gezeigt. PN 591 speichert den Programmnamen
PN der Attributtabelle, während ICC 592 und OCC 593 jeweils
den Eingangs-Inhaltscode ICC und den Ausgangs-Inhaltscode
OCC der Attributtabelle speichern.
LM 594 speichert den Inhalt des Lademodul-Files. Das CC-
Feld (202 in Fig. 2b) der zu ladenden Nachricht speichert
den Inhaltscode in Übereinstimmung mit dem Programm, wenn
die Erstellung der Nachrichten gemäß den Fig. 5b und 2b
vollständig beendet ist. Das Rundfunkprogramm 15002 (broad
cast program) sendet die Nachrichten über das Netzwerk aus
(Schritt 583). Die durch das Verfahren nach Fig. 5 herge
stellte und über das Netzwerk gesendete Nachricht wird
durch die mit dem Netzwerk verbundenen Prozessoren empfan
gen. Auf der Grundlage des CC-Feldes in der Nachricht be
stimmt der Prozessor, ob das Programm in der Nachricht für
ihn selbst bestimmt bzw. erforderlich ist. Ist das Programm
in der Nachricht für diesen Prozessor erforderlich, so
nimmt der Prozessor die empfangene Nachricht auf. Nach der
Aufnahme der Nachricht durch den Prozessor speichert er den
Inhalt von LM des Datenfeldes der Nachricht in seinen Spei
cherbereich und übernimmt ferner das in die Programmspei
chertabelle nach Fig. 2c geladene Programm auf der Grundla
ge der Inhalte von PN, ICC und OCC des Datenfeldes der
Nachricht (vgl. Fig. 5b). Anschließend wird das geladene
Programm zu Testzwecken gestartet, und zwar unter Verwen
dung von Testinformation in der Attributinformation, also
unter Verwendung von Testeingangsdaten, um bestimmen zu
können, ob die durch das Programm erstellten Ausgangsdaten
eine vorbestimmte Beziehung zu den Eingangsdaten aufweisen.
Ist das Testergebnis in Ordnung, wird das Programm On-Line
ausgeführt bzw. wiedergegeben. Beim oben beschriebenen Pro
zeß sei angenommen, daß der Inhaltscode, der das für den
Prozessor erforderliche Programm angibt, in diesem Prozes
sor gespeichert worden ist.
Unter Bezugnahme auf die Fig. 6 und 7 wird nachfolgend das
Konsistenz-Prüfprogramm 15003 (Fig. 1) näher beschrieben,
das die Programme auf der Grundlage des Inhalts des Attri
but-Files korreliert. Dieses Programm kann auch als Ver
träglichkeitsprogramm oder als Programm zur Überprüfung der
Übereinstimmung bezeichnet werden. Die Fig. 6a zeigt eine
Tabelle mit einer Beziehung zwischen Eingangs-/Ausgangspro
grammen, hergestellt durch das Programm 15003. Das Ein
gangs/Ausgangs-Beziehungsprogramm enthält Zeilen 601, 602,
. . . entsprechend den jeweiligen Inhaltscodes. Die erste
Zeile 601 enthält einen Bereich CC 6011 zur Speicherung des
Inhaltscodes, einen Bereich IPROG 6012 zur Speicherung des
Namens des Programms, das die Nachricht mit dem Inhaltscode
im Bereich CC 6011 eingibt bzw. liefert, und einen Bereich
OPROG 6013 zur Speicherung des Namens des Programms, das
die Nachricht mit dem Inhaltscode im Bereich CC 6011 aus
gibt. Die zweite Zeile und die nachfolgenden Zeilen weisen
dieselbe Struktur auf.
Die Fig. 6b zeigt einen Programmablauf zur Erstellung der
Eingangs/Ausgangsbeziehungstabelle in Fig. 6a. Zunächst
wird ein Zähler auf den Zählwert i gesetzt (Schritt 651).
Auf der Grundlage des Inhalts der i-ten Attributtabelle
(Fig. 4b) wird die Eingangs/Ausgangs-Beziehungstabelle in
Übereinstimmung mit dem in Fig. 6c gezeigten Flußdiagramm
erstellt (Schritt 652). Eine Zeile innerhalb des CC-Feldes,
die den gleichen Inhaltscode wie den im ICC-Feld der Attri
buttabelle eingestellten Inhaltscode aufweist, wird aus der
Eingangs/Ausgangs-Beziehungstabelle (Schritt 681) herausge
sucht. Existiert die entsprechende Zeile, so wird der In
halt des PN-Feldes der Attributtabelle im Bereich IPROG
6012 der Zeile gesetzt (Schritt 682). Existiert die ent
sprechende Zeile nicht, so wird eine neue Zeile zur Ein
gangs/Ausgangs-Beziehungstabelle hinzugefügt bzw. hinzuad
diert, wobei die Inhalte des ICC-Feldes und des PN-Feldes
der Attributtabelle im CC-Feld und im IPROG-Feld dieser
Zeile jeweils gesetzt werden (Schritt 683). Anschließend
wird eine Zeile, die einen Inhaltscode gleich dem Inhalts
code innerhalb des OCC-Feldes der Attributtabelle aufweist,
aus der Eingangs/Ausgangs-Beziehungstabelle herausgesucht
(Schritt 684). Existiert die entsprechende Zeile, so wird
der Inhalt des PN-Feldes der Attributtabelle im Ausgangs
programmbereich (OPROG) dieser Zeile gesetzt (Schritt 685).
Existiert die entsprechende Zeile nicht, so wird der Pro
grammname in Fig. 4 in eine neue Zeile der Eingangs/Aus
gangs-Beziehungstabelle eingeschrieben, wobei die Inhalte
des OCC-Feldes und des PN-Feldes der Attributtabelle im CC-
Feld und im OPROG-Feld dieser Reihe jeweils gesetzt werden
(Schritt 686). Nach Ablauf des Prozesses gemäß Fig. 6c wird
geprüft, ob alle Attributtabellen im Attribut-File auf die
se Weise verarbeitet worden sind oder nicht (Schritt 653).
Ist dies nicht der Fall, so wird die Zählervariable i um
den Wert 1 heraufgesetzt (Schritt 654), wonach das Verfah
ren zum Schritt 652 zurückspringt.
Auf der Grundlage der so erstellten Eingangs/Ausgangs-Be
ziehungstabelle lassen sich ein Programm, das durch eine
Nachricht mit irgendeinem Inhaltscode gestartet wird, und
ein Programm, das die Nachricht mit diesem Inhaltscode aus
gibt, erfassen bzw. ausführen. Durch Aufsuchen einer Zeile,
in der der IPROG-Bereich oder der OPROG-Bereich der Tabelle
nicht gesetzt worden sind, lassen sich das Programm, wel
ches kein Programm zur Ausgabe der Eingangsnachricht ent
hält, und das Programm, welches kein Programm zur Aufnahme
der Ausgangsnachricht enthält, detektieren. Dies ist ein
Beispiel einer Fehlerdetektion in der Programmbeziehung.
Durch diese Eingangs/Ausgangs-Beziehungstabelle kann eine
Serie von Programmen detektiert werden, die für irgendeine
Nachricht gestartet worden sind. Unter Bezugnahme auf die
Fig. 7a und 7b wird ein hierfür geeigneter Prozessor genau
er beschrieben. Der Prozeß beginnt mit der Benennung eines
Inhaltscodes einer Nachricht, die als sogenannter Trigger
arbeitet. Ein interner Zähler ℓ wird auf den Wert "0" ge
setzt (Schritt 700). Ein Programm, das die Nachricht mit
dem Inhaltscode empfängt, der durch einen Benutzer über die
Eingabeeinheit 1501 eingegeben worden ist, wird aus der
Eingangs/Ausgangs-Beziehungstabelle herausgesucht und als
Pegel ℓ Programm bezeichnet (Schritt 701). Für jedes aufge
suchte Pegel l Programm wird dasjenige Programm, das dessen
Ausgangsnachricht empfängt, aufgesucht und als Pegel (ℓ+1)
Programm definiert (Schritt 702). Dies wird dadurch er
reicht, daß der Inhaltscode der Ausgangsnachricht von der
Attributtabelle für das Programm detektiert und das Pro
gramm aufgesucht wird, welches die Nachricht mit dem Code
von der Eingangs/Ausgangs-Beziehungstabelle empfängt. Es
wird geprüft, ob unter den bisher aufgesuchten Programmen
(Pegel 0 bis ℓ Programme) ein Programm existiert, das
gleich dem in Schritt 702 aufgefundenen Pegel (ℓ+1) Pro
gramm ist. Existiert ein solches Programm, so wird das Pe
gel (ℓ+1) Programm keiner Schleifenprüfung unterworfen
(Schritt 703). Dies ist ein Prozeß zum Detektieren einer
abnormalen Struktur, wie in Fig. 7b gezeigt, in der die
Ziffern 761 und 762 Programme, die Ziffer 751 eine Nach
richt mit einem Inhaltscode CC1 und die Ziffer 752 eine
Nachricht mit einem Inhaltscode CC2 bezeichnen. In dieser
Struktur erfolgt der Prozeßablauf für den Start des Pro
gramms 761 durch die Ausgangsnachricht des Programms 762
innerhalb einer Schleife, so daß die Möglichkeit besteht,
daß eine abnormale Beziehung zwischen den Programmen vor
handen ist. Schritt 703 stellt demzufolge auch ein Beispiel
für das Detektieren einer abnormalen Beziehung zwischen den
Programmen dar. In einem Schritt 704 wird geprüft, ob das
Pegel (ℓ+1)-Programm existiert oder nicht. Existiert es
nicht, so endet der Prozeß. Existiert es dagegen, so wird
die interne variable ℓ um den Wert 1 heraufgesetzt, wonach
der Prozeß zurück zum Schritt 702 springt. Im Schritt 704
wird das Programm, das keiner Schleifenprüfung unterzogen
worden ist, so behandelt, als wenn kein Pegel (ℓ+1)-Pro
gramm vorhanden wäre.
Durch einfaches Definieren der Information bezüglich der
Eingangs/Ausgangsnachricht in einem Quellenprogramm ist es
auf diese Weise möglich, die Information zum Laden des
Programms in den ausführenden Prozessor automatisch zu er
zeugen. Es ist ebenfalls möglich, die Beziehung zwischen
Programmen zu erfassen und eine abnormale Beziehung zwi
schen den Programmen zu detektieren.
Beim vorliegenden Ausführungsbeispiel wird die Attributta
belle des Programms zusammen mit dessen Lademodul erzeugt.
Alternativ kann auch nur die Attributtabelle ohne Erzeugung
des Lademoduls gebildet werden. Die Beziehung zwischen Pro
grammen läßt sich auch dann überprüfen, wenn nur das Attri
butfeld im Quellenprogramm definiert ist. Beim vorliegenden
Ausführungsbeispiel ist die Attributtabelle in anderen
Files als der Lademodul gespeichert. Alternativ dazu können
der Lademodul und die entsprechende Attributtabelle aber
auch in einem File gespeichert sein und als Einheit behan
delt werden.
Bei der Erfindung wird ein System mit einer Mehrzahl von
Prozessoren verwendet, obwohl das erfindungsgemäße Verfah
ren aber auch bei einem System zum Einsatz kommen kann, das
nur einen einzelnen Prozessor enthält (entwickelnder Pro
zessor und ausführender Prozessor sind nicht voneinander
getrennt).
Bei der vorliegenden Erfindung testet der mit einem Pro
gramm geladene Prozessor das Programm auf der Grundlage der
Testinformation in der Programmattributinformation. Im Ent
wicklungsprozessor ist ein automatischer Test des entwik
kelten Programms auf der Grundlage der Programmattributin
formation möglich.
Die Fig. 8 zeigt ein Blockdiagramm eines verteilten Verar
beitungssystems zur Durchführung des erfindungsgemäßen Ver
fahrens. Beim verteilten Verarbeitungssystem nach Fig. 8
stehen n Prozessoren 111, 112, . . . 11 n in Verbindung mit
einander, und zwar über ein gemeinsames Übertragungsmedium
3, wobei die Verbindung zwischen den Prozessoren mit Hilfe
von Übertragungssteuereinheiten 121, 122, . . . 12 n zustande
kommt, die einerseits mit den Prozessoren und andererseits
mit dem gemeinsamen Übertragungsmedium verbunden sind. Je
der Prozessor kann Programme ändern und erzeugen.
Die Fig. 9 zeigt ein Übertragungsformat für Information,
die über das gemeinsame Übertragungsmedium 3 übertragen
wird. Im verteilten Prozessorsystem wird die über das Über
tragungsmedium übertragene Information durch die Übertra
gungssteuereinheiten empfangen, die den Inhaltscode 200 der
Information lesen und bestimmen, ob sie für die Prozessoren
erforderlich ist. Ist sie für die Prozessoren erforderlich,
so wird die Information zu dem mit der Übertragungssteuer
einheit verbundenen Prozessor übertragen. Wenn die Informa
tion mit diesem Inhaltscode vollständig von dem im Prozes
sor gespeicherten Programm empfangen worden ist, so wird
sie als Eingangsdateninformation des auszuführenden Pro
gramms gelesen und verarbeitet. (Es sei angenommen, daß der
Eingangscode im Speicher der Übertragungssteuereinheit ge
speichert worden ist.) Beim vorliegenden Ausführungsbei
spiel erfolgt eine datenflußweise verteilte Verarbeitung in
Übereinstimmung mit dem Inhaltscode. Die Information läßt
sich ferner zwischen den Prozessoren mittels eines Übertra
gungsprotokolls bzw. Kommunikationsprotokolls austauschen,
welches die einzelnen Ziele bestimmt, ohne den Inhaltscode
zu verwenden.
Ein durch wenigstens einen der Prozessoren des verteilten
Verarbeitungssystems erzeugtes und über das gemeinsame
Übertragungsmedium übertragenes Programm wird in das Daten
feld 220 der Fig. 9 eingeschrieben. Die nachfolgende Infor
mation bezüglich des in das Datenfeld eingeschriebenen Pro
gramms wird in das Programminformationsfeld 210 einge
schrieben. Die Programminformation enthält (i) Programmin
haltsinformation, (ii) Programmerzeugungsinformation und
(iii) Programmcharakteristikinformation (Programmeigen
schaftsinformation).
Die Programminhaltsinformation repräsentiert Funktion und
Inhalt des Programms. Beispielsweise beschreibt sie eine
Eingangs/Ausgangsbeziehung des Programms. Beim Programm
nach dem vorliegenden Ausführungsbeispiel, bei dem eine da
tenflußweise Verarbeitung unter Verwendung des Inhaltscodes
erfolgt, kann die Eingangs/Ausgangsbeziehung den Inhalts
code der für den Prozeß erforderlichen Information und den
Inhaltscode der Information enthalten, die nach Durchfüh
rung des Prozesses ausgegeben wird.
Die Programmerzeugungsinformation repräsentiert die Modifi
kationen für ein Programm durch die Mehrzahl der Prozesso
ren. Im verteilten Verarbeitungssystem nach dem vorliegen
den Ausführungsbeispiel fließt ein Programm durch die Pro
zessoren und durch das gemeinsame Übertragungsmedium, wobei
jeder Prozessor den Programmen etwas hinzufügt, Löschungen
in den Programmen vornimmt oder die Programme ersetzt. Die
Programmerzeugungsinformation wird zum Diskriminieren des
Quellenprogramms vor der Modifikation durch das Quellenpro
gramm und danach verwendet. Diese Information kann durch
Zusammenfassen aller Modifikationsprozesse beschrieben wer
den, so daß die Programmentwicklungsstruktur im verteilten
Verarbeitungssystem erkannt werden kann. Alternativ kann
entsprechend Fig. 10 die Anzahl der Änderungen des Origi
nalprogramms jedesmal dann gezählt werden, wenn der Prozes
sor eine Änderung vornimmt. Modifizieren bei diesem Verfah
ren in Fig. 10 mehrere Prozessoren jeweils individuell ein
Programm A 1, so existieren mehrere Programme A 2 im verteil
ten Verarbeitungssystem (der Index 2 gibt eine Programmer
zeugungs- und -modifikationsversion an). Dies kann erfol
gen, wenn die Änderungsarbeiten in den jeweiligen Prozesso
ren im Entwicklungsprozeß des Programms vorbestimmt worden
sind und ein Quellenprogramm durch Sammlung der Programme
derselben Version erstellt werden soll. Die Programmerzeu
gungsinformation kann Information bezüglich der Version
oder Anzahl von Änderungen als auch Information bezüglich
des Änderungsbereichs enthalten. Die Änderungs- bzw. Modi
fikationsbereichsinformation kann den Änderungsbereich
durch eine Anweisungsmarke des Programms angeben. Es kann
aber auch eine Quellenmodulmarke (Quellenmodulpegel) des
geänderten Bereichs nur unter Berücksichtigung einer Quel
lenprogramm-Modulstruktur in einem Quellenprogramm be
schrieben werden, wie in Fig. 11 gezeigt ist. Dieses Ver
fahren ist ausreichend, wenn das Programm für jeden Modul
pegel entwickelt wird. Entsprechend Fig. 12 wird ein Pro
gramm A 1 durch die Prozessoren modifiziert bzw. verändert
(die Übertragungssteuereinheiten sind nicht mit eingezeich
net). A 1, A 2, A 3, . . . geben die Anzahl der Modifikationen
bzw. Änderungen an, während 1-1 und 1-2 die Änderungsberei
che (Modulpegel) bezeichnen.
Die Programmcharakteristikinformation bezieht sich auf eine
Eigenschaft eines Programms bei der Ausführung des Pro
gramms und enthält die Ausführungszeit, eine Programm
größe und die Speicherkapazität. Diese Information wird
in dem Prozessor hinzugefügt, in dem das Programm modifi
ziert worden ist, und verwendet, wenn das Programm ausge
führt wird.
Die oben beschriebene (i) Programminhaltsinformation, die
(ii) Programmerzeugungsinformation und die (iii) Programm
eigenschaftsinformation stimmen mit einer externen Spezifi
kation des Programms überein. Gemäß der Erfindung wird die
externe Spezifikation zum Programm hinzugefügt und eben
falls über das gemeinsame Übertragungsmedium übertragen, so
daß die weitere Programmentwicklung und Programmausführung
im Prozessor erfolgen können, und zwar bei einer durch den
Prozessor getroffenen Entscheidung, ohne daß irgendeine
zentrale Steuerfunktion erforderlich ist.
Das Programminformationsfeld 210 in Fig. 9 enthält die ge
samte oder einen Teil der Information (i) bis (iii).
Die Fig. 13 zeigt einen Programmablauf im Prozessor in
Übereinstimmung mit dem erfindungsgemäßen Verfahren. Jeder
Prozessor empfängt gemäß Fig. 13 das Quellenprogramm, das
über das gemeinsame Übertragungsmedium übertragen worden
ist (Schritt 61) und prüft die Programminhaltsinformation,
die Programmerzeugungsinformation und die Eigenschaftsin
formation innerhalb des Programms, um zu bestimmen, ob das
Programm geändert werden muß oder nicht (Schritte 62 und
63).
Soll es geändert werden und ist kein weiteres Programm er
forderlich (Schritt 64), so erfolgt eine Änderung des Pro
gramms in Schritt 65, derart, daß neue Programminhaltsin
formation, Erzeugungsinformation und Eigenschaftsinforma
tion zum Programm (Schritt 66) hinzuaddiert werden. Sie
werden über das gemeinsame Übertragungsmedium übertragen
(Schritt 67). Ist ein anderes Programm erforderlich, so
wird das Programm gespeichert (Schritt 68).
Claims (6)
1. Verfahren zur Entwicklung von Programmen durch we
nigstens einen Prozessor in einem verteilten Verarbeitungs
system zur anteilsweisen Ausführung einer Serie von Schrit
ten durch Programme in einer Mehrzahl von Prozessoren (11
bis 15), die über eine Übertragungsleitung (1) miteinander
verbunden sind, gekennzeichnet durch folgende Schritte:
- (a) zu einem Schritte beschreibenden Programm wird Attri butinformation bezogen auf Eingangs-/Ausgangsdaten des Programms in einem Prozessor hinzugefügt und
- (b) das die Attributinformation enthaltende Programm wird über die Übertragungsleitung übertragen, um durch einen der Prozessoren geladen zu werden.
2. Verfahren nach Anspruch 1, gekennzeichnet durch ei
nen Schritt zur Prüfung der Beziehung der Eingangs-/Aus
gangsdaten von Programmen auf der Grundlage der Attributin
formation der Programme.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
daß jeder der Prozessoren die für ihn selbst erforderliche
Nachricht auf der Grundlage der Attributinformation der
über die Übertragungsleitung übertragenen Nachricht auf
nimmt bzw. lädt.
4. Verfahren nach Anspruch 1, gekennzeichnet durch ei
nen Schritt zur Erstellung einer Tabelle zur Korrelation
der Programme auf der Grundlage der Attributinformation.
5. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
daß die Attributinformation Information zum Testen der Pro
gramme enthält.
6. Verfahren nach Anspruch 1, gekennzeichnet durch die
weiteren Schritte:
- - es wird über die Übertragungsleitung ein Programm über tragen bzw. gesendet, dem Programmerzeugungsinformation, Programminhaltsinformation und Programmänderungsinforma tion hinzugefügt sind,
- - in jedem der Prozessoren wird das Programm auf der Grund lage der Information im übertragenen bzw. gesendeten Pro gramm geändert und es wird der Inhalt der Information in Übereinstimmung mit der Änderung aktualisiert,
- - das geänderte Programm wird erneut über die Übertragungs leitung übertragen bzw. gesendet.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62318822A JPH01161567A (ja) | 1987-12-18 | 1987-12-18 | 分散処理システムのプログラム開発方式 |
JP63060371A JP2685477B2 (ja) | 1988-03-16 | 1988-03-16 | 分散システムのプログラム開発方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3842289A1 true DE3842289A1 (de) | 1989-06-29 |
DE3842289C2 DE3842289C2 (de) | 1997-12-18 |
Family
ID=26401431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3842289A Expired - Lifetime DE3842289C2 (de) | 1987-12-18 | 1988-12-15 | Verfahren zur Entwicklung von Programmen für ein verteiltes Datenverarbeitungssystem |
Country Status (6)
Country | Link |
---|---|
US (1) | US5561802A (de) |
KR (1) | KR920007502B1 (de) |
CN (1) | CN1010807B (de) |
BR (1) | BR8806690A (de) |
DE (1) | DE3842289C2 (de) |
IN (1) | IN170793B (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0290828A2 (de) * | 1987-04-24 | 1988-11-17 | Hitachi, Ltd. | Progammverwaltungsverfahren für verteilte Verarbeitungssysteme und angepasste Vorrichtung |
EP0903666A1 (de) * | 1997-09-23 | 1999-03-24 | Alcatel | Verfahren zum Verteilen von Datenpaketen einer Betriebssoftware |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1992016895A1 (en) | 1991-03-18 | 1992-10-01 | Echelon Corporation | Networked variables |
JP3552258B2 (ja) * | 1993-12-27 | 2004-08-11 | 株式会社日立製作所 | 分散計算機システム及びその情報管理方法 |
US5781787A (en) * | 1995-04-21 | 1998-07-14 | Lockheed Martin Corporation | Parallel program execution time with message consolidation |
GB9603582D0 (en) | 1996-02-20 | 1996-04-17 | Hewlett Packard Co | Method of accessing service resource items that are for use in a telecommunications system |
JPH09212352A (ja) * | 1996-01-31 | 1997-08-15 | Hitachi Software Eng Co Ltd | プログラム開発支援システム |
US6308212B1 (en) | 1998-05-29 | 2001-10-23 | Hewlett-Packard Company | Web user interface session and sharing of session environment information |
US6728947B1 (en) * | 1998-06-05 | 2004-04-27 | R. R. Donnelley & Sons Company | Workflow distributing apparatus and method |
US6460136B1 (en) * | 1999-07-12 | 2002-10-01 | Hewlett-Packard Co., | Method and apparatus for loading an operating system kernel from a shared disk memory |
US6393435B1 (en) | 1999-09-22 | 2002-05-21 | International Business Machines, Corporation | Method and means for evaluating the performance of a database system referencing files external to the database system |
JP3861538B2 (ja) * | 1999-12-15 | 2006-12-20 | 株式会社日立製作所 | プログラム配付管理システム |
US20030188300A1 (en) * | 2000-02-18 | 2003-10-02 | Patrudu Pilla G. | Parallel processing system design and architecture |
US6681383B1 (en) | 2000-04-04 | 2004-01-20 | Sosy, Inc. | Automatic software production system |
US7334216B2 (en) * | 2000-04-04 | 2008-02-19 | Sosy, Inc. | Method and apparatus for automatic generation of information system user interfaces |
GB2393294B (en) * | 2001-04-27 | 2005-04-06 | Ibm | Method and apparatus for controlling operation speed of processor |
US7036114B2 (en) * | 2001-08-17 | 2006-04-25 | Sun Microsystems, Inc. | Method and apparatus for cycle-based computation |
EP1380938A1 (de) * | 2001-11-12 | 2004-01-14 | Alcatel | Verfahren und Vorrichtung zur Überprüfung der Konsistenz von Rechnerprogrammen |
US7007064B2 (en) * | 2002-08-02 | 2006-02-28 | Motorola, Inc. | Method and apparatus for obtaining and managing wirelessly communicated content |
US20040260797A1 (en) * | 2002-11-07 | 2004-12-23 | De Loye Martin | Method and apparatus for checking the consistency of software applications |
US8238538B2 (en) | 2009-05-28 | 2012-08-07 | Comcast Cable Communications, Llc | Stateful home phone service |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57146361A (en) * | 1981-03-06 | 1982-09-09 | Hitachi Ltd | Decentralized processing method |
US4627055A (en) * | 1984-01-09 | 1986-12-02 | Hitachi, Ltd. | Decentralized processing method and system |
JPS61286959A (ja) * | 1985-06-14 | 1986-12-17 | Hitachi Ltd | 分散処理方法 |
DE3711273A1 (de) * | 1986-04-04 | 1987-10-15 | Hitachi Ltd | Verfahren fuer eine verteilte datenverarbeitungsanlage zum ausfuehren einer folge von verarbeitungen eines auftrags in verteilter form sowie verteilte datenverarbeitungsanlage zur durchfuehrung des verfahrens |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4130865A (en) * | 1974-06-05 | 1978-12-19 | Bolt Beranek And Newman Inc. | Multiprocessor computer apparatus employing distributed communications paths and a passive task register |
US4648064A (en) * | 1976-01-02 | 1987-03-03 | Morley Richard E | Parallel process controller |
US4307447A (en) * | 1979-06-19 | 1981-12-22 | Gould Inc. | Programmable controller |
US4500960A (en) * | 1982-06-28 | 1985-02-19 | At&T Bell Laboratories | Geographically distributed multiprocessor time-shared communication processing system |
US4577272A (en) * | 1983-06-27 | 1986-03-18 | E-Systems, Inc. | Fault tolerant and load sharing processing system |
US4558413A (en) * | 1983-11-21 | 1985-12-10 | Xerox Corporation | Software version management system |
US4719622A (en) * | 1985-03-15 | 1988-01-12 | Wang Laboratories, Inc. | System bus means for inter-processor communication |
JPS61220027A (ja) * | 1985-03-27 | 1986-09-30 | Hitachi Ltd | 文書ファイリングシステム及び情報記憶検索システム |
US4694396A (en) * | 1985-05-06 | 1987-09-15 | Computer X, Inc. | Method of inter-process communication in a distributed data processing system |
JP2709705B2 (ja) * | 1985-06-12 | 1998-02-04 | 株式会社日立製作所 | マルチコンピユータシステムにおけるプログラム管理方法 |
JPS625465A (ja) * | 1985-07-01 | 1987-01-12 | Akira Nakano | 情報処理ユニツトおよびマルチ情報処理ユニツトシステム |
US4803683A (en) * | 1985-08-30 | 1989-02-07 | Hitachi, Ltd. | Method and apparatus for testing a distributed computer system |
JPH06103481B2 (ja) * | 1985-11-15 | 1994-12-14 | 株式会社日立製作所 | プログラムロ−デイング方式 |
US4714992A (en) * | 1985-11-26 | 1987-12-22 | International Business Machines Corporation | Communication for version management in a distributed information service |
JPH071482B2 (ja) * | 1986-01-22 | 1995-01-11 | 株式会社日立製作所 | 分散ファイルの編集方法 |
JP2585535B2 (ja) * | 1986-06-02 | 1997-02-26 | 株式会社日立製作所 | 複合計算機システムにおけるプロセス結合方法 |
JPH0827738B2 (ja) * | 1986-08-15 | 1996-03-21 | 株式会社日立製作所 | オンラインテスト方法 |
US4819159A (en) * | 1986-08-29 | 1989-04-04 | Tolerant Systems, Inc. | Distributed multiprocess transaction processing system and method |
US5146559A (en) * | 1986-09-29 | 1992-09-08 | Hitachi, Ltd. | System for recognizing program constitution within a distributed processing system by collecting constitution messages generated by different processors |
US4841433A (en) * | 1986-11-26 | 1989-06-20 | American Telephone And Telegraph Company, At&T Bell Laboratories | Method and apparatus for accessing data from data attribute tables |
JP2624676B2 (ja) * | 1987-04-24 | 1997-06-25 | 株式会社日立製作所 | プログラム世代管理方法 |
JPH01161566A (ja) * | 1987-12-18 | 1989-06-26 | Hitachi Ltd | 分散処理システムにおけるデータ処理方式 |
US4864497A (en) * | 1988-04-13 | 1989-09-05 | Digital Equipment Corporation | Method of integrating software application programs using an attributive data model database |
-
1988
- 1988-12-07 IN IN1011/CAL/88A patent/IN170793B/en unknown
- 1988-12-15 DE DE3842289A patent/DE3842289C2/de not_active Expired - Lifetime
- 1988-12-16 BR BR888806690A patent/BR8806690A/pt not_active IP Right Cessation
- 1988-12-17 KR KR1019880016822A patent/KR920007502B1/ko not_active IP Right Cessation
- 1988-12-17 CN CN87101153A patent/CN1010807B/zh not_active Expired
-
1994
- 1994-11-30 US US08/351,166 patent/US5561802A/en not_active Expired - Lifetime
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57146361A (en) * | 1981-03-06 | 1982-09-09 | Hitachi Ltd | Decentralized processing method |
US4627055A (en) * | 1984-01-09 | 1986-12-02 | Hitachi, Ltd. | Decentralized processing method and system |
JPS61286959A (ja) * | 1985-06-14 | 1986-12-17 | Hitachi Ltd | 分散処理方法 |
DE3711273A1 (de) * | 1986-04-04 | 1987-10-15 | Hitachi Ltd | Verfahren fuer eine verteilte datenverarbeitungsanlage zum ausfuehren einer folge von verarbeitungen eines auftrags in verteilter form sowie verteilte datenverarbeitungsanlage zur durchfuehrung des verfahrens |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0290828A2 (de) * | 1987-04-24 | 1988-11-17 | Hitachi, Ltd. | Progammverwaltungsverfahren für verteilte Verarbeitungssysteme und angepasste Vorrichtung |
EP0290828A3 (de) * | 1987-04-24 | 1991-10-09 | Hitachi, Ltd. | Progammverwaltungsverfahren für verteilte Verarbeitungssysteme und angepasste Vorrichtung |
US5291591A (en) * | 1987-04-24 | 1994-03-01 | Hitachi, Ltd. | Method of managing programs for distributed processing systems and apparatus therefor |
EP0903666A1 (de) * | 1997-09-23 | 1999-03-24 | Alcatel | Verfahren zum Verteilen von Datenpaketen einer Betriebssoftware |
Also Published As
Publication number | Publication date |
---|---|
DE3842289C2 (de) | 1997-12-18 |
CN1035189A (zh) | 1989-08-30 |
BR8806690A (pt) | 1989-08-29 |
CN1010807B (zh) | 1990-12-12 |
IN170793B (de) | 1992-05-23 |
US5561802A (en) | 1996-10-01 |
KR890010689A (ko) | 1989-08-10 |
KR920007502B1 (ko) | 1992-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3842289C2 (de) | Verfahren zur Entwicklung von Programmen für ein verteiltes Datenverarbeitungssystem | |
DE69932371T2 (de) | Verschiebbare Instrumentationskennzeichen für die Prüfung und die Fehlerbeseitigung eines Computerprogramms | |
DE3750515T2 (de) | Verfahren zur Zugriffssteuerung einer Datenbasis. | |
DE69230452T2 (de) | Verfahren und Vorrichtung zur Änderungskontrolle in mehreren Entwicklungsumgebungen | |
DE4235193C2 (de) | Netzwerksystem und zugehöriges Softwareverwaltungsverfahren | |
DE3783042T2 (de) | System zur automatisierung von testen. | |
DE3416939C2 (de) | ||
DE1928202C3 (de) | Einrichtung zur Erstellung statistischer Daten über den Operationsablauf programmgesteuerter Datenverarbeitungsanlagen | |
DE69503065T2 (de) | Objektorientierte vorrichtung für konfigurationsverlaufsverwaltung | |
DE68926345T2 (de) | Datenverarbeitungsnetzwerk | |
DE69802437T2 (de) | Feinkörniger übereinstimmungsmechanismus für optimistische parallelsteuerung mit verriegelungsgruppen | |
DE19740525C1 (de) | Verfahren zur Abspeicherung und Wiedergewinnung von Daten in einem Steuersystem, insbesondere in einem Kraftfahrzeug | |
DE69804099T2 (de) | Initialisierung von unterteilten datenobjekten | |
DE3751949T2 (de) | Verfahren zum Starten eines Untersystems in einem verteilten Verarbeitungssystem | |
DE19959758A1 (de) | Bestimmung der Art und der Genauigkeit von lokalen Variablen bei vorhandenen Subroutinen | |
EP0685086B1 (de) | Einrichtung zur automatischen erzeugung einer wissensbasis für ein diagnose-expertensystem | |
DE2611907A1 (de) | Dv-system mit einer prioritaets- unterbrechungs-anordnung | |
DE10128883A1 (de) | Verfahren und System für die Verteilung von Anwendungsdaten auf verteilte Datenbanken mit verschiedenen Formaten | |
DE1900141A1 (de) | Datenverarbeitungsvorrichtung | |
DE69518996T2 (de) | Verfahren und Vorrichtung zur selbstbeschreibenden Datenkodierung | |
DE2210325B2 (de) | Datenverarbeitungseinrichtung | |
DE112013007083B4 (de) | Programmanalysevorrichtung, Programmanalyseverfahren und Programmanalyseprogramm | |
DE19924702A1 (de) | Systeme mit einheitlicher Datenstruktur, Verfahren und Computerprogrammprodukte zur Feststellung von globalen Konflikten | |
DE69618007T2 (de) | Fehlerdatenerfassung beim wiederanlauf eines rechners | |
DE3751493T2 (de) | Verteiltes Verarbeitungssystem und -verfahren. |
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 |