WO1997004385A1 - Rechnersystem - Google Patents

Rechnersystem Download PDF

Info

Publication number
WO1997004385A1
WO1997004385A1 PCT/EP1996/003125 EP9603125W WO9704385A1 WO 1997004385 A1 WO1997004385 A1 WO 1997004385A1 EP 9603125 W EP9603125 W EP 9603125W WO 9704385 A1 WO9704385 A1 WO 9704385A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
collection
transfer
computer system
central
Prior art date
Application number
PCT/EP1996/003125
Other languages
English (en)
French (fr)
Inventor
Andreas PÜHL
Wolfgang Bauer
Heinz-Werner Ramke
Karl Ruppert
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
Priority to EP96927020A priority Critical patent/EP0840912B1/de
Priority to DE59605364T priority patent/DE59605364D1/de
Priority to US08/983,531 priority patent/US6047384A/en
Publication of WO1997004385A1 publication Critical patent/WO1997004385A1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4405Initialisation of multiprocessor systems
    • 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
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering

Abstract

Der Anlauf eines Rechnersystems sollte möglichst schnell erfolgen. Das erfindungsgemäße Recoverysystem löst diese Aufgabe, indem es die für den Recovery an die peripheren Einheiten zu übertragenden Daten vor ihrer Übertragung im gemeinsamen Speicher (CMY) auf parallele Weise sammelt.

Description

Besehreibung
Rechnersystem
Rechnersysteme, insbesondere Vermittlungssysteme, benötigen AnlaufSysteme (Recoverysysteme) , die bei der Inbetriebnahme eines Rechnersystems oder nach Auftreten eines Alarms einen für den Betrieb des Rechnersystems geeigneten Zustand von Software und Hardware möglichst schnell wieder herstellen. Ein Anlauf des Rechnersystems ist bei der Ersteinschaltung, bei Wechsel des Rechneranlagenprogrammsystems oder nach einem Systemausfall erforderlich. Bei einem Rechnersystem, dessen Struktur ein zentrales Prozessorsystem sowie periphere Pro¬ zessorsysteme umfaßt, wird der Systemanlauf durch das zentra- le Prozessorsystem des RechnerSystems gesteuert. Das zentrale Prozessorsystem steuert dabei insbesondere ein erforderliches Neuladen der peripheren Prozessorsysteme mit Daten(Code- Daten, Steuerungs-Daten usw.).
Der Erfindung liegt die Aufgabe zugrunde, ein Rechnersystem anzugeben, das ein bei einem Anlauf des Rechnersystems not¬ wendiges Neuladen der peripheren Prozessorsysteme möglichst schnell (und sicher) durchführt.
Diese Aufgabe wird durch ein Rechnersystem mit den Merkmalen des Anspruchs 1 gelöst.
Durch das parallele Sammeln der auf die peripheren Prozessor¬ systeme zu ladenden Daten durch alle Prozessoren des zentra- len Prozessorsystems wird ein schneller Anlauf des Rechnersy¬ stems möglich.
Eine weitere Ausführungsform der Erfindung ist durch Anspruch 2 angegeben. Durch das temporäre Zwischenspeichern der Daten in den lokalen Speichern der zentralen Prozessoren wird ein dynamisch optimierter Gebrauch des zentralen Speichers er¬ reicht. Eine weitere Ausführungsform der Erfindung ist durch Anspruch 3 angegeben. Durch diese Ausgestaltung wird die Anlaufzeit des Rechnersystems weiter verkürzt.
Eine Ausführungsform der Erfindung ist durch Anspruch 4 ange¬ geben. Durch diese Ausführungsform wird die Anlaufzeit des Rechnersystems weiter verkürzt.
Eine Ausführungsform der Erfindung ist durch Anspruch 5 ange¬ geben. Durch das parallele Hinunterladen der Daten im Broad- cast-Mode wird die Anlaufzeit weiter verkürzt.
Im folgenden wird ein Ausfuhrungsbeispiel der Erfindung anhand der Zeichnung näher erläutert, wobei die Zeichnung drei Figuren umfaßt.
FIG 1 zeigt die HardwareStruktur eines beispielhaften Rech¬ nersystems, nämlich eines Vermittlungssystems. Das Vermitt- lungssystems umfaßt ein zentrales Prozessorsystem CP, das über ein zentrales Koppelnetz SN mit den peripheren Anschlu߬ gruppen LTG verbunden ist, wobei es als Schnittstellen zum zentralen Koppelnetz Nachrichtenverteilereinheiten MBU um¬ faßt. An die peripheren Anschlußgruppen LTG sind wiederum digitale Leitungseinheiten DLU angeschlossen, die den Ab¬ schluß des gesamten Vermittlungssystems gegenüber dem Teil¬ nehmer bilden. Das gesamte Rechnersystem ist vom zentralen Prozessorsystem CP bis zu den Anschlußgruppen LTG gedoppelt ausgeführt, weshalb selbst bei vielen hardwaremäßigen Ausfäl- len eine Ersatzschaltung vorgenommen werden kann und der Teilnehmer somit nichts vom Ausfall merkt.
Ist es nun aber aufgrund eines schwerwiegenden Ausfalls in der Peripherie dennoch nötig, die gesamte Peripherie (z.B. bezüglich der Teilnehmerdaten) erneut zu initialisieren, so muß dieser Recovery-Vorgang sehr schnell geschehen, da der Betrieb der Peripherie in dieser Zeit unterbrochen ist und die Betriebsgüte des Vermittlungssystem in hohem Maße von der Ausfalldauer abhängt.
Der Recovery-Vorgang μmfaßt im wesentlichen zwei Vorgänge, die parallel ablaufen, nämlich einen Sammelvorgang und einen Transfervorgang. Beim Sammelvorgang werden die zu sammelnden Peripheriedaten der Datenbasis entnommen, in den lokalen Speichern LMY der zentralen Prozessoren gesammelt und von den LMYs in den CMY kopiert. Der Transfervorgang überträgt dann die im CMY zusammengestellten Peripheriedaten in die Periphe¬ rie.
FIG 2 zeigt die HardwareStruktur des zentralen Prozessorsy¬ stems CP sowie die für das erfindungsgemäße Recoverysystem vorhandene Softwarestruktur.
Die Hardwarestruktur des zentralen Prozessorsystems umfaßt im wesentlichen die zentralen Prozessoren BAPM, BAPS, CAPO,..., CAP5, die über ein gedoppeltes Bussystem B:CMYO,B:CMY1 mit dem gedoppelten gemeinsamen Speicher CMY0,CMY1 verbunden sind. Außerdem umfaßt der CP Ein-/Ausgabesteuerungen IOC0, IOC1 die insbesondere für die Datenübertragung zwischen CMY und MBU zuständig sind.
Die erfindungsgemäße Software-Struktur des Recoverysystems umfaßt, wie in FIG 2 dargestellt, einen Sammelprozeß DCP, der entsprechende Sammelroutinen DCR zur Durchführung des Sammel- Vorgangs anstößt, einen Transferprozeß TP zum Übertragen der Daten in die Peripherie sowie einen Monitorprozeß MP, der die auf den zentralen Prozessoren parallel durchgeführten Sammel- Vorgänge anhand einer zentralen Tabelle TAB im gemeinsamen Speicher überwacht.
Die zentrale Tabelle TAB dient zur Koordinierung des paralle- len Sammeins der Daten. Sie wird zu Beginn des peripheren Anlaufs vom Betriebssystem aufgebaut und vom Monitorprozeß initialisiert. Die Sammelprozesse auf den zentralen Prozessoren werden eben¬ falls vom Betriebssystem im Falle eines durchzuführenden An¬ laufs gestartet und dienen dazu, die in die Peripherie zu transferierenden Daten aus einer Datenbasis DB zu sammeln und sie in einem speziellen Speicherbereich ZSP des gemeinsamen Speichers in Form von Datenstreams zwischenzuspeichern, bevor sie in die Peripherie transferiert werden.
Für die Durchführung ihrer Arbeit bedienen sich die Sammel- prozesse und der Transferprozeß der zentralen Aufgabentabel- le, die die Reihenfolge angibt, nach der die Daten gesammelt und transferiert werden. Auf diese Weise unterstützt die zen¬ trale Aufgabentabelle das transparente Sammeln und Transfe- rieren der Daten.
Es gilt also folgendes AblaufSchema: l. Start der Sammelprozesse und des Überwachungsprozesses (Monitorprozesses) 2. Sammeln der Daten im LMY
3. Kopieren der Daten vom LMY zum CMY
4. Transferieren der Daten vom CMY in die Peripherie
Zur Durchführung des Sammeins holen sich die Sammelprozesse jeweils eine Aufgabe von der zentralen Aufgabentabelle, sam¬ meln die durch die Aufgabe beschriebenen Daten aus der Daten¬ basis DB (die Datenbasis DB ist je nach Größe des CMY entwe¬ der bereits ganz oder zumindest teilweise im CMY vorhanden) und transferieren sie in einen speziellen Speicherbereich ZSP des gemeinsamen Speichers CMY, bevor sie von dort aus durch den Transferprozeß in die Peripherie weitertransferiert wer¬ den. Die Sammelprozesse werden vom Betriebssystem auf jedem aktiven zentralen Prozessor einzeln gestartet. Bevor sie mit dem Sammeln von Daten beginnen, wird ein interner Initiali- sierungsvorgang durchgeführt, der die Anmeldung beim Moni¬ torprozeß im zentralen Prozessor BAPM mit einschließt. Nach diesen Initialisierungsvorgängen werden folgende Aufgaben zyklisch durchgeführt:
- Anfordern einer Aufgabe aus der zentralen Aufgabentabelle,
- Überprüfen, ob die Behandlung der Aufgabe möglich ist,
- (Vor-)Sammeln der in der zentralen Aufgabentabelle für die¬ se Aufgabe angegebenen Daten in den lokalen Speichern LMY der zentralen Prozessoren,
- Transferieren der gesammelten Daten in den speziellen Spei¬ cherbereich des gemeinsamen Speichers CMY.
Das Sammeln erfolgt unabhängig vom Transfer. Die Reihenfolge der Daten (verschiedener "Datenarten") ist für den Sammelpro¬ zeß egal. Der Sammelmechanismus ist somit bezüglich zukünfti¬ gen Veränderungen hinsichtlich der in die Peripherie zu transferierenden Daten (Datenmengen und Datentypen) flexibel, d.h. von diesbezüglichen Veränderungen unabhängig.
Wie oben angegeben, werden die Daten zunächst in dem lokalen Speichers eines sammelnden zentralen Prozessors gespeichert, bevor sie in den speziellen (Zwischen-)Speicherbereich ZSP des gemeinsamen Speichers transferiert werden. Das temporäre Speichern im lokalen Speicher eines zentralen Prozessors hat mehrere Vorteile. Falls ein Fehler während des Sammelvorgan¬ ges auftritt, hat dies nur Auswirkungen auf einen einzigen zentralen Prozessor und dessen eigenes Speichermanagementsy¬ stem. In diesem Fall ist es nicht notwendig, den gemeinsamen Speicher in die Fehlerbehandlung miteinzubeziehen. Ein weite¬ rer Vorteil ist darin zu sehen, daß ein Teil der zu sammeln¬ den Daten selbst dann noch gesammelt werden kann, wenn der genannte spezielle Speicherbereich ZSP im gemeinsamen Spei¬ cher momentan nicht mehr aufnahmefähig für weitere Daten ist.
Die Sammelroutinen benutzen eine gemeinsame Schnittstelle für das Sammeln der Daten. Diese gemeinsame Schnittstelle können die Sammelroutinen auf verschiedenen zentralen Prozessoren für verschiedene Teile einer für eine Task zu sammelnden Datenmenge aufrufen. Ist der lokale Speicher eines zentralen Prozessors für die im Rahmen einer Task zu sammelnde Daten¬ menge bspw. zu klein, kann die Datenmenge der Task somit von mehreren Prozessoren gesammelt werden.
Wenn andererseits zu sammelnde Daten in einem Datenbereich der zentralen Datenbasis liegen, der nicht in den gemeinsamen Speicher geladen ist, muß derjenige Teil der Datenbasis, der diese Daten enthält, zuerst von der Magnetspeicherplatte MDD in den gemeinsamen Speicher kopiert werden.
Der Zwischenspeicherbereich ZSP wird von einer speziellen Instanz, dem sog. Speicherverwalter, verwaltet. Um Zugang zu dem Zwischenspeicher zu erhalten, muß eine vom Speicherver¬ walter zur Verfügung gestellte Zugangsroutine aufgerufen werden. Diese Routine erlaubt es, Speicherplatz anzufordern und wieder freizugeben. Der Benutzer dieser Routine muß darauf vorbereitet sein, weniger Speicherplatz zugeteilt zu bekommen oder ggf. sogar keinen Speicherplatz.
Im folgenden wird das Zusammenstellen der in die Peripherie zu transferierenden Daten im ZSP des CMY näher erläutert.
Die verschiedenen zentralen Prozessoren sammeln mit Hilfe der auf ihnen laufenden Sammelprozesse zunächst die Daten in ih- ren eigenen lokalen Speichern LMY. Verschiedene Sammelrouti¬ nen DCR, die von den verschiedenen Sammelprozessen zum Sam¬ meln der Daten benötigt werden, selektieren die notwendigen Daten aus der Datenbasis DB im gemeinsamen Speicher. Diese Selektion ist notwendig, da nicht alle Daten, die in der Da- tenbasis liegen, auch in die Peripherie geladen werden müs¬ sen.
Die Größe des zur Verfügung stehenden Zwischenspeichers ZSP kann variiert werden und hängt von dem physikalischen Ausbau des gemeinsamen Speichers ab. Der Zwischenspeicher ZSP wird in Gruppen Pl,...,Pn unterteilt. Eine Gruppe wird, nachdem sie mit zu sammelnden Daten gefüllt worden ist, für den Transferprozeß zum Transfer freigegeben. Eine Gruppe stellt somit eine Transfereinheit dar. Jede Gruppe besteht wiederum aus kleinsten SpeieherSegmenten (z.B. 16 KByte oder 32 KByte, Größe kann optimiert werden) , die die zu transferierenden Daten enthalten. Ein Speichersegment stellt die für den Ver¬ walter des Zwischenspeichers kleinste verwaltbare Speicher¬ einheit dar. Ein Sammelprozeß benötigt für die Ablage der in einem Sammelvorgang gesammelten Daten im ZSP jeweils ein Speiehersegment.
Das Gesagte wird im folgenden anhand eines Beispieles ver¬ deutlicht. Gemäß einem ersten Auftrag solle eine Datenmenge von 46 KB gesammelt werden. Das kleinste Speichersegment sei 32 KB groß. Prozessor A bekommt nach Anfrage beim Überwa- chungsprozeß diesen ersten Auftrag. Er markiert diesen Auf¬ trag in der zentralen Tabelle TAB und startet den Sammelvor¬ gang in seinem lokalen Speicher. Nachdem der Sammelvorgang beendet ist, wird dies in der zentralen Tabelle eingetragen und der Transfer in den gemeinsamen Speicher wird beim Über- wachungsprozeß beantragt. Ist freier Speicher in der Gruppe Px enthalten, werden die Daten vom lokalen Speicher in den gemeinsamen Speicher übertragen. Gleichzeitig wird festgehal¬ ten, daß bisher erst ein Teil der Daten des Auftrags gesam¬ melt wurde. Ist die Gruppe Px schließlich zusammengestellt, d.h. sind alle Speichersegmente dieser Gruppe mit Peripherie¬ daten gefüllt, wird sie geschlossen, d.h. für den Transfer in die Peripherie freigegeben, und es wird eine noch freie Grup¬ pe Py geöffnet. Ein Prozessor B (dieser Prozessor könnte zu¬ fällig der gleiche Prozessor wie vorher sein) fragt den Über- wachungsprozeß nach zu sammelnden Daten ab. Stellt der Über¬ wachungsprozeß (wie in diesem Beispiel) fest, daß bezüglich eines Auftrags, für den in der Gruppe Px Daten gesammelt wur¬ den, noch weitere Daten gesammelt werden müssen, so wird be¬ züglich dieses Auftrags ein Nachfolgeauftrag zunächst an den Prozessor B vergeben. Erst wenn keine weiteren Daten der vor¬ hergehenden Gruppe (Gruppe Px) gesammelt werden müssen, wird die Gruppe Py durch "neue" Aufträge, d.h. Aufträge, die keine Nachfolgeaufträge sind, gefüllt.
Zusammenfassend bedeutet das vorher Gesagte folgendes: 1. ein Datenstrom, d.h. eine für einen Auftrag (Aufgabe, Task) zu sammelnde Datenmenge, darf geteilt werden.
2. Teile eines Datenstroms müssen in aufeinanderfolgenden Gruppen in die Peripherie geladen werden.
3. Unterschiedliche Teile eines Datenstroms können von ver- schiedenen Prozessoren gesammelt werden.
4. Fällt ein Sammelprozeß aus, so kann der gleiche Auftrag von einem anderen Sammelprozeß übernommen werden. Die Ent¬ scheidung darüber trifft der Monitorprozeß anhand von Kri¬ terien, wie "Mehrfach-Ausfall", "Hardware-Ausfall" oder "Software-Ausfall". Der Monitorprozeß ist somit für die Sicherheit in der kritischen Anlaufphase des Rechnersy¬ stems von entscheidender Bedeutung.
Die von den Sammelprozessen DCP benutzten Sammelroutinen DCR und der Zugang dieser Routinen zu der Datenbasis der periphe¬ ren Daten läuft unter speziellen Bedingungen ab, d.h. es gibt keine weiteren laufenden Prozesse, die zur selben Zeit Zu¬ griff auf die Datenbasis der peripheren Daten haben. Aus die¬ sem Grund sind die Sammelroutinen des Recovery-Vorgangs in der Weise laufzeitoptimiert, daß sie keine speziellen Zu¬ gangs- oder Schutzmechanismen, wie z.B. LOCK-Sequenzen, be¬ nützen.
Der Transferprozeß TP dient, wie bereits erwähnt, zum Über- tragen der genannten Daten in die Peripherie und ist, wie der Monitorprozeß MP, ausschließlich im zentralen Prozessor BAPM implementiert. Der Transferprozeß ist dahingehend optimiert, daß er einen transparenten Down-Loading-Mechanismus (Mecha¬ nismus, der keine Dateninhalte und Datenformate kennt) , der die Anwendung der Direct-Memory-Access-Methode (kurz DMA-Me¬ thode) und den Transfer über aktiven und passiven Nachrich¬ tenkanal umfaßt. Der Monitorprozeß überwacht das Sammeln der Daten mit Hilfe von verschiedenen Zeitgebern, d.h. er benutzt für jeden Sam¬ melprozeß jeweils einen Zeitgeber. Durch diesen Überwachungs- mechanismus erkennt der Monitorprozeß den Ausfall eines Pro¬ zessors oder einen möglichen Softwarefehler (beispielsweise eine Endlosschleife in einem Prozeß, einen Datenbasisfeh¬ ler, ... ) .
Die Sammelroutinen, die auf den genannten verschiedenen zen¬ tralen Prozessoren ablaufen, sind als unabhängige Arbeitspro¬ zesse realisiert. Für die Synchronisation zwischen den Sam¬ melprozessen untereinander auf der einen Seite und zwischen den Sammelprozessen und dem Monitorprozeß auf der anderen Seite wird die genannte zentrale Tabelle verwendet, die hier auch als Aufgabentabelle bezeichnet wird. Die Aufgabentabelle wird aufgebaut, nachdem eine interne Konfigurationstabelle aufgebaut worden ist. Die interne Konfigurationstabelle ent¬ hält eine Kopie der Peripherie und eine Kopie der Zustände der Peripherie. Der Monitorprozeß setzt die Aufgabentabelle in Abhängigkeit der Konfigurationstabelle zusammen und be¬ nützt sie um die verschiedenen Sammelprozesse zu überwachen.
Nachdem die Daten von den zentralen Prozessoren gesammelt sind, werden dem Transferprozeß im BAP-M für den darauffol¬ genden Transfer der Daten zu der Peripherie (genauer gesagt zu den peripheren Prozessoren der Anschlußgruppen LTG) Referen¬ zen auf die gesammelten Daten übergeben. Anhand der Referen¬ zen behandelt der BAP-M dann den Transfer zu den Anschluß- gruppen. Er benützt dabei die bereits genannte DMA-Methode, d.h. er versorgt einen über die Ein-/Ausgabesteuerung ange¬ schlossenen Ein-/Ausgabeprozessor mit entsprechenden Parame¬ tern aus der TAB und veranlaßt ihn zur Durchführung des Transfers. Der Ein-/Ausgabeprozessor besorgt sich daraufhin über die Ein-/Ausgabesteuerung einen Zeitschlitz auf dem
B:CMY und wickelt über diesen den Transfer der Daten aus dem CMY zu den MBUs ab. Fig 3 zeigt die HW-Struktur des CP im Hinblick auf die Trans¬ fervorgänge zischen MDD und LMY beim Vorsammeln, zwischen LMY und CMY beim Kopieren und schließlich zwischen CMY und MBU beim Transfervorgang. Das in FIG 3 dargestelle zentrale Pro¬ zessorsystem CP enthält acht Nachrichtenverteilereinheiten MBU, die jeweils acht Broadcast-Settings zur gleichen Zeit behandeln können.
Um ein optimiertes Transferieren der Daten von den MBUs zu den LTGs bzw. den Teilnehmerleitungseinheiten zu gewährlei¬ sten, werden insbesondere die folgenden zwei Methoden be¬ nützt. Die eine Methode ist das gleichzeitige Transferieren von gleichen Daten zu einer Vielzahl von Anschlußgruppen und das Transferieren mit sog. Broadcast-Settings pro MBU. Die zweite Methode ist das Transferieren der Portdaten der digi¬ talen Leitungseinheiten über die aktiven Kanäle a,b und pas¬ siven Kanäle a' und b' gleichzeitig. Aufgrund der beiden genannten Methoden ist gewährleistet, daß für das Transfe- rieren der Portdaten alle vorhandenen Resourcen des Rechner- systemε ausgenützt werden.
Im folgenden wird die zentrale Aufgabentabelle TAB näher erläutert. Die TAB stellt das Informationszentrum für die Sammelroutinen DCR und Transferroutinen dar.
Um den Inhalt der einzelnen Felder der zentralen Aufgabenta¬ belle zu lesen oder durch Schreiben zu verändern, werden ver- schiedene Zugangsroutinen zur Verfügung gestellt. Der Zugang zur zentralen Aufgabentabelle ist also nur über diese Zu- gangεroutinen möglich. Die Zugangsroutinen der zentralen Auf- gabentabelle unterstützen einen Multiprozessorzugang. Der Monitorprozeß wird dazu benützt, den Zugang zu koordinieren.
Die zentrale Aufgabentabelle ist in zwei Teile unterteilt. Ein erster Teil wird dazu benutzt, die peripheren Einheiten zu beschreiben, für die die jeweilige Task Daten sammelt und um den momentanen Zustand der Task zu markieren. Ein zweiter Teil wird für die Verwaltung der Parameter der Sammel- und Transferroutinen benutzt und außerdem vom Monitorprozeß, um Kontrolldaten zu schreiben oder zu lesen.
Im folgenden werden einige wichtige Felder der zentralen Auf- gabentabelle näher erläutert.
Ein Feld "Task" beschreibt die periphere Einheit, für die Da¬ ten gesammelt werden. Nachdem ein zentraler Prozessor diese Information von der zentralen Aufgabentabelle erhalten hat, kopiert er diese Information in seinen lokalen Speicher.
Ein Feld "Task-Control" wird benutzt, um den aktuellen Zu¬ stand einer Task zu überwachen und um das Multiprozessorkon- zept zu unterstützen. Das Feld "Task-Control" kann verschie¬ dene Werte annehmen, deren Bedeutung im folgenden näher erläutert wird.
Der Wert "FREE" zeigt an, daß die Task' noch nicht bearbeitet ist. Daten wurden bis jetzt noch nicht gesammelt. Die Task- Verwaltung wird noch nicht benutzt.
Der Wert "SNAPPED" zeigt an, daß eine Task von einem Prozes¬ sor für die Bearbeitung reserviert ist. Nachdem die Variable "SNAPPED" gesetzt ist, kann kein weiterer Sammelprozeß diese Task belegen.
Der Wert "COLLECT-DATA" zeigt an, daß die Task momentan in Bearbeitung ist. Die Daten werden also momentan gesammelt.
Der Wert "READY FOR TRANSFER TO CMY" zeigt an, daß Daten im lokalen Speicher eines zentralen Prozessors gesammelt wurden und der Transfer zum gemeinsamen Speicher bevorsteht. Falls im gemeinsamen Speicher genug Speicher verfügbar ist, werden diese Daten zum gemeinsamen Speicher übertragen. Im anderen Fall muß der Sammelprozeß auf einen erneuten Start warten.
Der Wert "DATA COLLECTION FINISHED" zeigt an, daß die Bear- beitung der Task beendet ist, d.h. die Daten sind gesammelt und im gemeinsamen Speicher abgespeichert. Die Daten sind also bereit, um in die peripheren Einheiten übertragen zu werden.
Der Wert "UNPROCESSABLE" zeigt an, daß die Task nicht durch¬ geführt werden kann. Das Feld Task-Control erhält diesen Wert, wenn Daten nicht gesammelt werden können oder die Task- Adminiεtration nicht zugänglich ist.
Ein Wert "TRANSFER TO PERIPHERY" zeigt an, daß die Task mo¬ mentan von einer Transferroutine benutzt wird. Nach dem Been¬ den des Transfervorgangε wird der Monitorprozeß informiert und setzt für das Statusfeld einen neuen Wert.
Ein Wert "TASK IS PROCESSED" zeigt an, daß alle Daten der Task in die Peripherie transferiert worden sind.
Im folgenden werden die Felder des zweiten Teils erläutert.
Ein Feld "COUNTER" bezeichnet eine der Gruppen Pl,..,Pn durch jeweils eine Nummer. Diese Nummer wird vom Transferprozeß be¬ nutzt, um die zu der jeweiligen Gruppe zusammengestellten Da¬ ten zu den peripheren Einheiten zu transferieren.
Ein Feld "PROCESSOR-ID" beschreibt den Prozessor, der die
Task behandelt, durch eine Nummer. Diese Prozessornummer wird zur Identifikation des Sammelprozesses und vom Monitorprozeß zum Zwecke der Überwachung und der Behandlung der Tasks, Prozessoren und Prozesse benutzt.
Ein Feld "PERIPHERY UNITS" beschreibt die empfangende peri¬ phere Einheit. Diese Information wird der zentralen Aufgaben- tabelle von der jeweiligen Sammelroutine übergeben. Desweite¬ ren beschreibt dieses Feld die entsprechenden Einheiten, über die die Daten transferiert werden, z.B. Nachrichtenkanal, MBU oder Partneranschlußgruppe. Der Inhalt dieses Feldes wird für Broadcast-Settings und/oder von Transferroutinen benutzt.
Ein Feld "MEMORY LENGTH" beschreibt den maximal möglichen Speicherbereich, der von einer Sammelroutine zum Zwischen¬ speichern der Daten benutzt werden kann. Falls nicht genügend Speicherbereich verfügbar ist, sind dennoch weitere Aufrufe der Sammelroutinen erlaubt. Die Sammelroutinen können nämlich die zunächst in den lokalen Speichern sammeln und später, wenn aufgrund der parallel laufenden Transfervorgänge zur Peripherie wieder genügend Speicherbereich im Zwischenspei- eher zur Verfügung steht, ihren SammelVorgang beenden, indem sie die in den lokalen Speichern bereits gesammelten Daten in den Zwischenspeicher übertragen.
Das Feld "MEMORY LENGTH" wird initialisiert, nachdem der Sam- melprozeß über den Monitorprozeß vom Verwalter des Zwischen¬ speichers ZSP einen entsprechenden Speicherbereich angefor¬ dert und bekommen hat. Der Sammelprozeß fordert diesen Spei¬ cherbereich an, sobald der Sammelvorgang beendet ist. Es gibt somit für jede Task einen streng definierten Speicherbereich für das Sammeln der Daten. Der Wert dieses Feldes wird der zentralen Aufgabentabelle als ein Parameter vom Aufrufer der Sammelroutinen, nämlich den Sammelprozeß, übergeben.
Ein Feld "MEMORY POINTER" beschreibt den Zeiger auf den Spei- cherbereich im gemeinsamen Speicher, in dem die durch die Task angegebenen Daten zwischengespeichert werden, bzw. be¬ reits zwischengespeichert sind. Der Wert des Zeigers wird initialisiert, nachdem ein Sammelprozeß vom Speicherverwalter Speicherplatz zugewiesen bekommen hat und bevor der eigentli- ehe Datensammelvorgang beginnt. Der initialisierte Wert bleibt auch während des gesamten Transfervorganges der Daten in die Peripherie unverändert. Der Wert wird als ein Parame¬ ter vom Aufrufer an die Sammelroutinen übergeben.
Ein Feld "CALL MARK FLAG" beschreibt den Status des Datensam- melvorgangs. Das Flag wird von den Sammelroutinen an den Sam¬ melprozeß zurückgegeben. Das Flag wird sowohl während des SammelVorgangs vom Sammelprozeß, als auch während des Trans¬ fervorganges vom Transferprozeß interpretiert. Das Flag kann folgende Werte annehmen:
Einen Wert "FIRST RECOVERY CALL", der beim Aufruf der ersten Sammelroutine vom Aufrufer, d.h. vom Sammelprozeß geliefert wird. Dieser Wert wird für die Initialisierung des Call Mark Flags benutzt.
Einen Wert "CALL AGAIN", der dem Sammelprozeß von der aufge¬ rufenen Sammelroutine zurückgegeben wird, wenn im gemeinsamen Speicher nicht genügend Speicher vorhanden war, um die von der Sammelroutine zu sammelnden Daten aufzunehmen. Beim näch- sten Aufruf der Sammelroutine wird dieser Wert vom Aufrufer an die Sammelroutine übergeben. Die Sammelroutine versucht dann erneut, die bereits im lokalen Speicher gesammelten Da¬ ten in den Zwischenspeicher zu übertragen. Der Wert "CALL AGAIN" zeigt außerdem dem Transferprozeß an, daß vor dem Transferieren noch mehr Daten gesammelt werden müssen.
Ein Wert "CALL NEXT DATATYPE" wird von einer Sammelroutine zurückgegeben, wenn noch weitere Datentypen transferiert wer¬ den müssen. Dieser Wert zeigt dem Transferprozeß an, daß er Daten bezüglich derselben Task, die in der nächstfolgenden Gruppe zu transferieren sind, wie bisher transferieren kann, d.h. die bisherige Konfiguration zum Transferieren der Daten dieser Task beibehalten kann. Ansonsten wird bei Vorliegen des Werts "CALL NEXT DATATYPE" vom DCP und TP wie beim Wert "CALL AGAIN" verfahren. Ein Wert "LAST CALL" wird von einer Sammelroutine zurückgege¬ ben, wenn keine weiteren Daten mehr zusammen sind.
Ein Wert "NO CALL SUCCESS" wird von einer Sammelroutine zu- rückgegeben, falls während des Sammelvorgangs ein Fehler auf¬ tritt.
Alle obengenannten Werte werden von den Sammelroutinen an den Sammelprozeß zurückgegeben, der sie daraufhin in das Feld "Call Mark Flag" der zentralen Aufgabentabelle einträgt. Dort stehen sie dann dem Transferprozeß lesend zur Verfügung.
Ein Feld "CHECKSUM" wird für die Kontrolle des Datentransfers benutzt. Es gewährleistet den sicheren Datentransfer. Der Wert des Feldes wird von den aufgerufenen Sammelroutinen ge¬ liefert.
Ein Feld "CONTINUATION POINTER" beinhaltet einen Zeiger, der den internen Zustand einer Sammelroutine sichert. Wenn mehr als ein Aufruf einer Sammelroutine notwendig ist, kehrt der Zeiger durch den Sammelprozeß unverändert zurück. Der Zeiger wird von der aufgerufenen Sammelroutine zurückgeliefert.
Ein Feld "DATA LENGTH" beschreibt die tatsächlich durch eine Sammelroutine gesammelte Datenlänge. Der Wert wird von der aufgerufenen Sammelroutine geliefert und der Transferroutine zum Transfer der Daten übergeben.
Ein Feld "ERROR FLAG" beschreibt den Zustand einer Task, die nicht im ersten Versuch behandelt werden konnte. Falls es sinnvoll ist, wird ein weiterer Versuch unternommen, die Task auszuführen. Die Bedingung zur Ausführung eines weiteren Ver¬ suchs ist erfüllt, wenn ein Prozessor während des Datensam- melvorgangs ausfällt. Falls jedoch ein Sammelprozeß auf eine entsprechende Aufforderung hin nicht antwortet, ist ein Da¬ tenfehler oder ein anderer Softwarefehler möglich. In diesem Fall ist ein weiterer Versuch nicht sinnvoll. Das Error Flag wird nur vom Monitorprozeß verändert. Die folgenden Werte können unterschieden werden:
Ein Wert "NO ERROR", mit dem das Error Flag initialisiert wird und der keinen Fehler anzeigt.
Ein Wert "TRY AGAIN", der eingegeben wird, falls ein Prozes¬ sor ausfällt. Bei einer solchermaßen gekennzeichneten Task wird ein weiterer Versuch zur Durchführung der Task unternom- men.
Ein Wert "NO FURTHER TRY", der eingegeben wird, wenn der Monitorprozeß vom Sammelprozeß keine Antwort erhält, und der verhindert, daß ein anderer Sammelprozeß Zugang zu dieser Task erhalten kann.
Ein Feld "TASK IDENTIFICATION", das zum Transferieren der Da¬ ten mit Hilfe der DMA-Methode benutzt wird. Der Wert dieses Feldes wird von einer Transferroutine zurückgegeben, die dazu dient, den Broadcastmode zu setzen. Der Wert dieses Feldes wird von der internen Verwaltung des Ein-/Ausgabeprozessors IOP benutzt. Der Wert dieses Feldes wird außerdem vom Trans¬ ferprozeß derjenigen Transferroutine übergeben,die die Daten transferiert sowie derjenigen Routine, die den Broadcastvor- gang schließlich beendet.
Schließlich ein Feld "SYNC.-FIELD", das alle Daten enthält, die für die Synchronisation zwischen dem Monitorprozeß und den Sammelprozessen notwendig sind. Ein Teil dieses Feldes ist die Information, daß eine neue Task gestartet ist und falls notwendig detaillierte Fehlerinformationen.

Claims

Patentansprüche
1. Rechnersystem mit a) einem zentralen Prozessorsystem (CP) , das das Rechnersy- stem zentral steuert, wobei es hierzu zentrale Prozessoren (BAPM, BAPS, CAPO, ..., CAP6) und einen über ein Bussy¬ stem(B:CMY) mit diesen verbundenen gemeinsamen Speicher (CMY) umfaßt, b) peripheren Prozessorsystemen, die periphere Einhei- ten(LTG,DLU) des Rechnersystems steuern, c) einem Recoverysystem, das im zentralen Prozessorsystem (CP) enthalten ist, und das einen Recovery der peripheren Einheiten durchführt, indem es die für den Recovery an die peripheren Einheiten zu übertragenden Daten vor ihrer Übertragung im gemeinsamen Speicher (CMY) sammelt, wobei es die zentralen Prozessoren derart steuert, daß sie das Sammeln in paralleler Weise durchführen.
2. Rechnersystem nach Anspruch 1, dadurch gekennzeichnet , ein zentraler Prozessor jeweils einen lokalen Speicher (LMY) umfaßt, in dem er die zu übertragenden Daten jeweils vorsam¬ melt, bevor er sie an den gemeinsamen Speicher weiterleitet.
3. Rechnersystem nach Anspruch 1 oder 2, dadurch gekennzeichnet , ein bestimmter zentraler Prozessor (BAP-M) Daten in die peripheren Einheiten überträgt, während die übrigen zentralen Prozessoren gleichzeitig weitere zu übertragende Daten sam- mein.
4. Rechnersystem nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet , daß ein bestimmter zentraler Prozessor (BAP-M) die in die Peripherie zu übertragenden Daten nach einer DMA-Methode überträgt.
5. Rechnersystem nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß ein bestimmter zentraler Prozessor (BAP-M) die in die Peripherie zu übertragenden Daten im Broadcast-Mode in die Peripherie überträgt.
PCT/EP1996/003125 1995-07-21 1996-07-16 Rechnersystem WO1997004385A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP96927020A EP0840912B1 (de) 1995-07-21 1996-07-16 Rechnersystem
DE59605364T DE59605364D1 (de) 1995-07-21 1996-07-16 Rechnersystem
US08/983,531 US6047384A (en) 1995-07-21 1996-07-16 Rapid recovery and start-up system for peripheral systems

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP95111536 1995-07-21
EP95111536.9 1995-07-21

Publications (1)

Publication Number Publication Date
WO1997004385A1 true WO1997004385A1 (de) 1997-02-06

Family

ID=8219457

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP1996/003125 WO1997004385A1 (de) 1995-07-21 1996-07-16 Rechnersystem

Country Status (6)

Country Link
US (1) US6047384A (de)
EP (1) EP0840912B1 (de)
CN (1) CN1093955C (de)
DE (1) DE59605364D1 (de)
ES (1) ES2147653T3 (de)
WO (1) WO1997004385A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000017750A1 (en) * 1998-09-24 2000-03-30 Phoenix Technologies Ltd. Use of other processors during bios boot sequence to minimize boot time

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19827430C2 (de) * 1997-07-22 2001-07-12 Siemens Ag Überwachungsverfahren zur Erkennung von Endlosschleifen und blockierten Prozessen in einem Rechnersystem
JP2002259201A (ja) * 2001-03-02 2002-09-13 Hitachi Ltd 計算機システムの起動方法
US6766482B1 (en) 2001-10-31 2004-07-20 Extreme Networks Ethernet automatic protection switching
US20070027793A1 (en) * 2005-08-01 2007-02-01 Lutnick Howard W Systems and methods for maintaining the viability of a market order type in fluctuating markets
US7996585B2 (en) * 2005-09-09 2011-08-09 International Business Machines Corporation Method and system for state tracking and recovery in multiprocessing computing systems
US20070083867A1 (en) * 2005-09-09 2007-04-12 International Business Machines Corporation Method and system to recover from control block hangs in a heterogenous multiprocessor environment
US7457985B2 (en) * 2005-09-09 2008-11-25 International Business Machines Corporation Method to detect errors in computer systems by using state tracking
US7502957B2 (en) * 2005-09-09 2009-03-10 International Business Machines Corporation Method and system to execute recovery in non-homogeneous multi processor environments
CN101398681A (zh) * 2007-09-29 2009-04-01 刘小勇 基于总线的自动烹调设备控制系统以及烹调设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0320274A2 (de) * 1987-12-09 1989-06-14 Fujitsu Limited Urladekontrollsystem in einem Mehrprozessorsystem
EP0483433A1 (de) * 1990-10-31 1992-05-06 International Business Machines Corporation Initialisierungsverfahren für die Initialisierung der Unterstationen in einem Datenverarbeitungssystem

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4296465A (en) * 1977-11-03 1981-10-20 Honeywell Information Systems Inc. Data mover
US4443850A (en) * 1981-12-01 1984-04-17 Burroughs Corporation Interface circuit for subsystem controller
US4578789A (en) * 1982-11-30 1986-03-25 Itt Corporation Simultaneous voice and data communication and data base access in a switching system using a tone bus or broadcast mode
US4914576A (en) * 1986-12-18 1990-04-03 Bull Hn Information Systems Inc. Apparatus and method of loading a control store memory of a central subsystem
JPH0690682B2 (ja) * 1987-02-28 1994-11-14 日本電気株式会社 マルチプロセツサシステムの障害処理方式
EP0541534A1 (de) * 1990-08-03 1993-05-19 Du Pont Pixel Systems Limited Datenfeld verarbeitungssystem
JP2864741B2 (ja) * 1990-12-19 1999-03-08 株式会社日立製作所 データインテグリティを保証する通信システム
CA2138263C (en) * 1993-09-27 2000-02-22 Yukihiko Okumura Multiprocessor
JPH0876166A (ja) * 1994-09-07 1996-03-22 Nikon Corp 不揮発メモリを有するシステム
US5761422A (en) * 1995-03-22 1998-06-02 Telefonaktiebolaget Lm Ericsson Transferring address of data in buffer memory between processors using read-only register with respect to second processor
JP2793517B2 (ja) * 1995-03-22 1998-09-03 甲府日本電気株式会社 データ転送制御装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0320274A2 (de) * 1987-12-09 1989-06-14 Fujitsu Limited Urladekontrollsystem in einem Mehrprozessorsystem
EP0483433A1 (de) * 1990-10-31 1992-05-06 International Business Machines Corporation Initialisierungsverfahren für die Initialisierung der Unterstationen in einem Datenverarbeitungssystem

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000017750A1 (en) * 1998-09-24 2000-03-30 Phoenix Technologies Ltd. Use of other processors during bios boot sequence to minimize boot time
US6336185B1 (en) 1998-09-24 2002-01-01 Phoenix Technologies Ltd. Use of other processors during BIOS boot sequence to minimize boot time

Also Published As

Publication number Publication date
EP0840912B1 (de) 2000-05-31
US6047384A (en) 2000-04-04
CN1093955C (zh) 2002-11-06
DE59605364D1 (de) 2000-07-06
CN1191617A (zh) 1998-08-26
EP0840912A1 (de) 1998-05-13
ES2147653T3 (es) 2000-09-16

Similar Documents

Publication Publication Date Title
EP0743595B1 (de) Kommunikationssystem mit Mitteln zum Austausch von Software
EP0635784B1 (de) Multiprozessorsystem
DE1449529C3 (de) Unterbrechungseinrichtung für ein Datenverarbeitungssystem
EP0807883B1 (de) Kommunikationssystem mit Mitteln zum Austausch von Softwareprozessen
EP0607493A2 (de) Realzeit-Steuerungssystem
DE4125389C1 (de)
DE102020113347A1 (de) Ausführung von containerisierten prozessen innerhalb der beschränkungen der verfügbaren host-knoten
DE19535546B4 (de) Verfahren zum Betreiben eines durch ein Realzeit-Betriebssystem gesteuerten Realzeit-Computersystems
WO1997004385A1 (de) Rechnersystem
DE19803697C2 (de) Verfahren zum Aufrüsten eines Softwaresystems und Vorrichtung zur Durchführung des Verfahrens
DE69914568T2 (de) Vorrichtung, Verfahren und System zur Dateisynchronisierung in einem Fehlertoleranten Netzwerk
EP0360135B1 (de) Verfahren zur Interruptverarbeitung in einer Datentverarbeitungsanlage
EP0141246B1 (de) Verfahren zm Betrieb eines Mutiprozessor-Steuerrechners, insbesondere für die Zentralsteuereinheit eines Fernsprech-Vermittlungssystems
EP0690635A2 (de) Verfahren zum Laden von Software in Kommunikationssystemen mit nichtredundanten, dezentralen Einrichtungen
DE2845218C2 (de) Mikroprogrammgesteuerte Ein-/Ausgabeeinrichtung und Verfahren zum Durchführen von Ein-/Ausgabeoperationen
DE19645861A1 (de) Plattformunabhängiges Kommunikations-Verfahren für heterogenes Netzwerk
EP1261917A2 (de) Verfahren zur sicherstellung der kompatibilität und verfahren zur datensicherung innerhalb eines mehrere teilrechnersysteme aufweisenden verteilten rechnersystems
EP0365905B1 (de) Verfahren zum Betrieb zentralgesteuerter Fermeldevermittlungsanlagen
EP0156989A1 (de) Verfahren und Anordnung zur zeitgerechten Bereitstellung von reellen Speicheradressen für den direkten Zugriff zum Hauptspeicher durch periphere Geräte in einer Datenverarbeitungsanlage
EP0763952A2 (de) Verfahren zum Speichern von teilnehmerbezogenen Daten in Kommunikationssystemen
EP0809181B1 (de) Verfahren zum Austausch von Software in laufenden Steuerungssystemen
AT392383B (de) Steuereinrichtung in nachrichtenvermittlungs- anlagen
DE19712532C1 (de) Kommunikationssystem
EP1020793A2 (de) Verfahren, System, Rechner und Vermittlungsstelle zum Betreiben eines Rechners
DE2651004A1 (de) Datenverarbeitungsanlage mit einer symmetrischen multiprozessorstruktur

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 96195716.6

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): CN US

AL Designated countries for regional patents

Kind code of ref document: A1

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

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

Ref document number: 1996927020

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 08983531

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 1996927020

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 1996927020

Country of ref document: EP