-
GEBIET DER ERFINDUNG
-
Die
vorliegende Erfindung bezieht sich allgemein auf den Betrieb von
Datenverarbeitungssystemen und genauer auf einen entfernten und
verteilten Betrieb eines Datenverarbeitungssystems.
-
HINTERGRUND DER ERFINDUNG
-
Datenverarbeitungssysteme
erforderten historisch gesehen eine Bedienersteuerung für die Arbeitsabläufe von
Tag zu Tag des Host-Prozessors. Die System-Betriebsschnittstellen
des Standes der Technik haben eine direkt mit dem System gekoppelte
Betriebskonsole eingeschlossen. Eine typische Konsole schloss eine
Tastatur für
die Eingabe von Steuerungsbefehlen, eine Vielzahl von Wählschaltern,
ein oder mehrere Reihen von Anzeigelampen und eine CRT-Anzeige zum
Bereitstellen von Systemzustandsinformation für den Bediener ein.
-
Bei
verschiedenen Instanzen ist die Betriebskonsole das Mittel, über das
ein Bediener Befehle an das Betriebssystem eingeben kann. Zusätzlich kann
der Bediener Nachrichten beobachten, die von dem Betriebssystem
kommen. Das gestattet es dem Bediener, Systeminformation zu sammeln
und eine Anzahl von Aufgaben vorzunehmen, die sich von Starten oder
Neustarten des Systems bis hin zu Benutzer- und Datei-Verwaltung
erstrecken.
-
Ein
zu dem Voranstehenden ähnlicher
Mechanismus ist in dem an Bonnafoux erteilte US-Patent Nr. 5,593,676
offenbart, das eine Systemarchitektur zum Aktivieren einer entfernten
Steuerung einer Anwendung beschreibt, die einen Dienstprozessor,
der über
ein Netzwerk verbunden ist, und eine Aufrechterhaltungseinheit mit
Kanälen
einschließt, die
mit einem zentralen System verbunden sind.
-
In
Systemen, wie z. B. den Datenverarbeitungssystemen der 2200-Serie
von Unisys können mehrere
Betriebskonsolen konfiguriert werden, wobei jede eine unterschiedliche
Betriebsfunktion in Bezug auf das System unterstützt. Zum Beispiel können separate
Konsolen für
die Magnetband-Verwaltung, Benutzer-Verwaltung und Datei-Verwaltung
konfiguriert werden. Für
jede Konsole ist historisch eine physikalische Hardware-Vorrichtung
erforderlich gewesen.
-
Produkte,
wie z. B. die von der Unisys Corporation erhältliche Software Single Point
Operations (SPO) haben eine zentralisierte und eine entfernte Schnittstelle
zum Betreiben von Datenverarbeitungssystemen bereitgestellt. In
einem System, das mehrere Betriebskonsolen aufweist, unterstützt die SPO-Software eine entfernte
und zentralisierte Schnittstelle für die Interaktion mit den mehreren Konsolen über ein
Netzwerk. Ein Netzwerk koppelt die Arbeitsstation, die die SPO-Software
hostet, mit den Hardware-Vorrichtungen, die die separaten Konsolen
implementieren. Die SPO-Anordnung als auch andere Anordnungen waren
auf das Vorhandensein von physikalischen Vorrichtungen für die Konsolen angewiesen,
wodurch sie zu Hardware- und Software-Aufrechterhaltungskosten beigetragen
haben.
-
Ein
Verfahren und eine Vorrichtung, die sich an die zuvor genannten
Probleme als auch andere verwandte Probleme richtet, sind deshalb
wünschenswert.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Die
Erfindung stellt in verschiedenen Ausführungsformen ein Verfahren
und eine Vorrichtung zum Betreiben eines Datenverarbeitungssystems
bereit. Das Datenverarbeitungssystem hostet ein Betriebssystem,
das mit einem Verwaltungsschnittstellenprozessor gekoppelt ist,
wobei der Verwaltungsschnittstellenprozessor mit einem Netzwerk
gekoppelt ist, das eine Vielzahl von daran gekoppelten Computersystemen
aufweist. Eine oder mehrere Instanzen einer unabhängig betreibbaren
Konsolen-Ansicht werden auf einem oder mehreren der Computersysteme initiiert
und ein oder mehrere logische Konsolen-Objekte werden auf dem Verwaltungsschnittstellenprozessor
instanziiert. Auf ausgewählten
Systemen des Computersystems werden eine oder mehrere Instanzen
eines System-Betriebsprogramms konfiguriert, um Daten, die aus einer
Konsolen-Ansicht empfangen wurden, zu dem logischen Konsolen-Objekt
zu senden und um Daten, die aus einem logischen Konsolen-Objekt
empfangen wurden, zu einer oder mehreren Instanzen einer Konsolen-Ansicht
zu senden. Die Instanzen des System-Betriebsprogramms sind jeweilig mit
den logischen Konsolen-Objekten gekoppelt, und als Reaktion auf
Benutzer-initiierte Verbindungsanfragen für jeden der einen oder mehreren
Instanzen der Konsolen-Ansicht ist jede Instanz der Konsolen-Ansicht
mit einer ausgewählten
Instanz des System-Betriebsprogramms gekoppelt.
-
Die
obige Zusammenfassung der vorliegenden Erfindung soll nicht jede
offenbarte Ausführungsform
der vorliegenden Erfindung beschreiben. Die folgenden Figuren und
die detaillierte Beschreibung liefern zusätzliche Ausführungsbeispiele
und Aspekte der vorliegenden Erfindung.
-
Das
Ziel und die Aufgaben dieser Erfindung werden durch die Verfahren
und Systeme gemäß des unabhängigen Anspruchs
1 und beliebiger anderer unabhängiger
Ansprüche
dieser Erfindung erreicht. Weitere Details können in den verbleibenden abhängigen Ansprüchen gefunden
werden.
-
KURZE BESCHREIBUNG DER
ZEICHNUNGEN
-
Andere
Aspekte und Vorteile der Erfindung werden beim Durchgehen der detaillierten
Beschreibung und unter Bezugnahme auf die Zeichnungen offensichtlich,
in denen:
-
1 ein
funktionelles Blockdiagramm eines Datenverarbeitungssystems ist,
das über
ein oder mehrere logische Konsolen-Objekte und eine oder mehrere
Instanzen von Konsolen-Ansichten
gemäß einer
Ausführungsform
der Erfindung betrieben werden kann;
-
2 ein
funktionelles Blockdiagramm ist, das die Beziehungen zwischen logischen
Konsolen-Objekten, Instanzen von System-Betriebsprogrammen und Instanzen
von Konsolen-Ansichten darstellt;
-
3 ein
Interaktionsdiagramm ist, das Interaktionen zwischen einer Instanz
einer Konsolen-Ansicht, einer Betriebsschnittstelle und einer Instanz
des Systembetriebs darstellt;
-
4 ein
Flussdiagramm eines Prozesses ist, der eine Instanz einer Konsolen-Ansicht
gemäß eines
Ausführungsbeispiels
der Erfindung implementiert;
-
5A ein
Flussdiagramm eines Prozesses zum Beziehen eines Threads für die Verbindungsverwaltung
ist;
-
5B ein
Flussdiagramm eines Prozesses ist, der den Thread für die Verbindungsverwaltung implementiert;
-
6 ein
Flussdiagramm eines Prozesses ist, der die Betriebsschnittstelle
implementiert; und
-
7 ein
Flussdiagramm eines Prozesses ist, der eine Instanz des System-Betriebsprogramms implementiert.
-
Während die
Erfindung für
unterschiedliche Modifikationen und alternative Formen empfänglich ist,
sind spezifische Ausführungsformen
davon beispielhaft in den Zeichnungen gezeigt worden und werden
hierin detailliert beschrieben. Es sollte jedoch verstanden werden,
dass die detaillierte Beschreibung die Erfindung nicht auf die bestimmten
offenbarten Formen beschränken
soll. Im Gegensatz dazu besteht die Absicht darin, dass die Erfindung
sämtliche
Modifikationen, Äquivalente
und Alternativen abdeckt, die in das Wesen und unter den Schutzumfang der
Erfindung fallen, wie sie durch die angefügten Ansprüche bestimmt ist.
-
DETAILLIERTE BESCHREIBUNG
-
In
verschiedenen Ausführungsformen
der Erfindung werden ein Verfahren und eine Vorrichtung zum Betreiben
eines Datenverarbeitungssystems bereitgestellt. Ein Verwaltungsschnittstellenprozessor ist
mit dem/den Betriebssystem(en) eines oder mehrerer Datenverarbeitungssysteme
gekoppelt. Zum Beispiel können
einige Datenverarbeitungssysteme, wie z. B. Systeme der CPIX-Serie
von Unisys, in mehrere unabhängige
Datenverarbeitungssysteme (von denen jedes als eine "Partition" bezeichnet wird) partitioniert
werden. Der Verwaltungsschnittstellenprozessor hostet ein oder mehrere
logische Konsolen-Objekte für
die jeweiligen Partitionen des Datenverarbeitungssystems.
-
Die
logischen Konsolen-Objekte sind, zum Beispiel über ein Netzwerk, mit Instanzen
von System-Betriebsprogrammen gekoppelt, die auf verschiedenen Computersystemen
auf dem Netzwerk ausgeführt
werden. Die System-Betriebsprogramme sind zwischen Computersystemen
portierbar und verwalten die Schnittstelle mit dem Betriebssystem. Die
Trennung der logischen Konsolen-Objekte von den Instanzen der System-Betriebsprogramme
stellt eine Flexibilität
bei der Entfaltung der Instanzen auf geeigneten Computersystemen
auf dem Netzwerk bereit. Somit kann die Arbeitsbelastung zwischen Computersystemen
und Bedienern ausgeglichen werden. Außerdem kann bei einem Ausfall
eines Computersystems das System-Betriebsprogramm auf einem anderen
Computersystem neu gestartet werden.
-
Die 1 ist
ein funktionelles Blockdiagramm einer Datenverarbeitungsanordnung,
die ein Datenverarbeitungssystem einschließt, das über eine Vielzahl von logischen
Konsolen gemäß einer Ausführungsform
der Erfindung betrieben werden kann. Die Datenverarbeitungsanordnung 100 schließt einen
zentralen Elektronik-Komplex 102, einen Betriebsserver 104 und
mehrere Anzeigestationen 106-1–106-n ein. Die Konsolen-Ansichten 108 stellen
die Benutzer-Schnittstelle für
den Betrieb der Systeme bereit, die durch die Partitionen 110-1–110-i definiert
sind.
-
In
einer Ausführungsform
ist der zentrale Elektronik-Komplex 102 ein
großflächiges Datenverarbeitungssystem,
wie z. B. das Datenverarbeitungssystem der CPIX-Serie von Unisys.
Der zentrale Elektronik-Komplex 102 kann in mehreren Partitionen 110-1–110-i konfiguriert
werden. Jede der Partitionen ist selbst ein Datenverarbeitungssystem,
das von einer Instanz eines Betriebssystems (nicht gezeigt) gesteuert
wird.
-
Der
Verwaltungsschnittstellenprozessor 112 ist in einer Ausführungsform
ein Windows NT-Computer, der in dem Gehäuse (nicht gezeigt) angeordnet ist,
das den zentralen Elektronik-Komplex 102 umgibt.
Andere Hardware- und Software-Kombinationen können für die Implementierung des Verwaltungsschnittstellenprozessors
in anderen Ausführungsformen
geeignet sein. Jede der Partitionen 110-1–110-i ist
mit dem Verwaltungsschnittstellenprozessor 112 gekoppelt
und die Instanzen des Betriebssystems, die auf den Partitionen ausgeführt werden,
sind mit Software gekoppelt, die auf dem Verwaltungsschnittstellenprozessor 112 ausgeführt wird.
Der Verwaltungsschnittstellenprozessor schließt ferner eine Netzwerkschnittstelle
(nicht gezeigt) für
die Verbindung mit dem Netzwerk 114 ein.
-
Der
Verwaltungsschnittstellenprozessor 112 hostet Objektorientierte
Software, die die logischen Konsolen-Objekte 116 und ein
oder mehrere Betriebsserver-Objekte 117 instanziiert. Das
Betriebssystem auf jeder der Partitionen 110-1–110-i kann
in Abhängigkeit
von Partitionsspezifischen Konfigurationscharakteristika über ein
oder mehrere assoziierte logische Konsolen-Objekte verfügen. Zum Beispiel können manche
Partitionen konfiguriert werden, um über zweckbestimmte Betriebskonsolen
für die
Betrachtung und Verwaltung von Nachrichten zu verfügen, die
auf die Handhabung von Magnetbändern
gerichtet sind.
-
Der
Verwaltungsschnittstellenprozessor 112 stellt einen Kommunikationspfad
zwischen den Betriebssystemen der verschiedenen Partitionen 110-1–110-i und
den Instanzen des System-Betriebsprogramms 118 bereit.
Wenn eine Konsole erstellt wurde, wird ein logisches Konsolen-Objekt
instanziiert und das logische Konsolen-Objekt wird mit einer Instanz
eines System-Betriebsprogramms verbunden, wenn die Konsole aktiviert
ist. Aus Gründen
der Kürze
wird eine Instanz des System-Betriebsprogramms manchmal als die "logische Konsole" bezeichnet. Das
sollte nicht mit dem logischen Konsolen-Objekt verwechselt werden,
das auf dem Verwaltungsschnittstellenprozessor 112 gehostet
wird. Der Prozess zur Erstellung und Aktivierung logischer Konsolen
ist in der Patentanmeldung mit dem Titel "Method and Apparatus for Operating a
Data Processing System" von
Wilson et al. beschrieben, die am 08. November 2000 eingereicht
wurde und die Patentanmeldenummer 09/708,323 hat.
-
Die
logischen Konsolen-Objekte 116 sind mit jeweiligen Instanzen
des System-Betriebsprogramms 118 assoziiert. Eine Instanz
eines System-Betriebsprogramms verwaltet die Nachrichtenübertragung
zwischen einer assoziierten logischen Konsole und einer oder mehreren
Konsolen-Ansichten 108 und unterstützt in einer weiteren Ausführungsform
die Automatisierung des System betriebs. In einer Ausführungsform
implementiert das System-Betriebsprogramm
die Fähigkeiten,
die in den von Unisys erhältlichen
Software-Komponenten Friendly Console und Autoaction Message System
zu finden sind. Die Instanzen des System-Betriebsprogramms werden auf einem oder
mehreren Datenverarbeitungssystemen, zum Beispiel Maschinen der Klasse
Arbeitsstation, gehostet und von dem Betriebsschnittstellenprogramm 120 gestartet.
Jeder Betriebsserver 104, der eine oder mehrere Instanzen eines
System-Betriebsprogramms hostet, hostet ferner ein Betriebsschnittstellenprogramm.
-
Das
Betriebsschnittstellenprogramm 120 verwaltet die Instanzen
des System-Betriebsprogramms, das auf demselben Betriebsserver 104 betrieben
wird. Als Reaktion auf Steuerungsanweisungen aus dem Verwaltungsschnittstellenprozessor 112 werden
Instanzen des System-Betriebsprogramms 118 von der Betriebsschnittstelle 120 gestartet
und gestoppt. Zusätzlich
werden Nachrichten des Verbindungszustands zwischen der Betriebsschnittstelle
und dem entsprechenden Betriebsserver-Objekt 117 auf dem Verwaltungsschnittstellenprozessor für den Zweck
der Aufrechterhaltung einer Abbildung der logischen Konsolen-Objekte
und des/der Betriebsserver(s) 104 gesendet, der/die die
assoziierte Instanz des System-Betriebsprogramms hosten. Das bedeutet,
dass der Verwaltungsschnittstellenprozessor verfolgt, welche logischen
Konsolen mit welchen Partitionen assoziiert sind und auf welchem
Betriebsserver 104 die Instanzen des System-Betriebsprogramms
ausgeführt
werden.
-
Die
Konsolen-Ansichten 108 sind GUIs, die den manuellen Betrieb
des/der Datenverarbeitungssystems(e) unterstützen. Mehr als eine Konsolen-Ansicht
kann für
eine bestimmte logische Konsole offen sein und eingegebene Befehle/Daten
können
aus beliebigen der Ansichten eingegeben werden. In einer Ausführungsform
sind die Konsolen-Ansichten als X-Windows implementiert und die
Anzeige-Stationen sind Datenverarbeitungssysteme der Klasse Arbeitsstation.
-
Es
wird verstanden, dass die logische Natur der Konsolen-Objekte 116 und
die Portierbarkeit der Konsolen-Ansichten 108, der Instanzen
des Systembetriebs 118 und des Betriebsschnitt stellenprogramms
die Flexibilität
bei dem Betrieb der Partitionen 110-1–110-i verbessern.
Zum Beispiel kann das Netzwerk 114 ein LAN-, WAN- oder
weltweites Netzwerk sein, wodurch ein entfernter Betrieb der Partitionen
geboten wird. Zusätzlich
kann die Betriebsschnittstelle 120 auf einer Anzahl von
Computersystemen gehostet werden, wodurch die Arbeitsbelastung verteilt
wird, und zwar sowohl aus der Sicht der rechenbetonten Ressource
als auch aus der Sicht eines Bedieners.
-
Eine
Sockel-basierte Kommunikation wird zwischen den verschiedenen Komponenten
in der Anordnung 100 verwendet, wodurch es gestattet wird,
dass die Komponenten über
das Netzwerk verteilt werden. In einer alternativen Ausführungsform kann
das DCOM von Microsoft verwendet werden.
-
Die 2 ist
ein funktionelles Blockdiagramm, das die Beziehungen zwischen logischen Konsolen-Objekten,
Instanzen von System-Betriebsprogrammen und Instanzen von Konsolen-Ansichten
darstellt. Jedes der logischen Konsolen-Objekte 116-1–116-j ist
mit einer der Instanzen der System-Betriebsprogramme 118-1–18-j gekoppelt,
wie durch die gepunkteten bidirektionalen Linien gezeigt ist. Jede
der Instanzen des System-Betriebsprogramms ist mit einer oder mehreren
Instanzen von assoziierten Konsolen-Ansichten einer Konsolen-Ansicht 108-1–108-k gekoppelt.
Das System, das eine Instanz einer Konsolen-Ansicht hostet, muss
nicht dasselbe System sein, das die gekoppelte Instanz des System-Betriebsprogramms
hostet. Zum Beispiel kann die Konsolen-Ansicht 108-1 durch
ein erstes System gehostet werden und die gekoppelte Instanz des
System-Betriebsprogramms kann von einem zweiten System gehostet
werden. Alternativ kann die Konsolen-Ansicht und die assoziierte
Instanz eines System-Betriebsprogramms
auf demselben System gehostet werden.
-
Jede
Instanz einer Konsolen-Ansicht verfügt über einen assoziierten Satz
von Konfigurationsdaten. Zum Beispiel verfügen die Konsolen-Ansichten 108-1–108-k über die
damit assoziierten Konfigurationsdatensätze 202-1–202-k.
Jeder Konfigurationsdatensatz spezifiziert Anzeigecharakteristika
für die assoziierte
Konsolen-Ansicht. Die Anzeigecharakteristika schließen zum
Beispiel Bildschirmfarben, Schriftarten und Kriterien für die selektive
Anzeige von Daten ein, die aus einem logischen Konsolen-Objekt empfangen
wurden. Somit können
Benutzer unabhängig
jede Konsolen-Ansicht maßschneidern,
damit sie sich einzigartigen Betriebserfordernissen eignen.
-
Eine
Verbindung zwischen einer Konsolen-Ansicht und einer Instanz eines
System-Betriebsprogramms wird als Reaktion auf eine Benutzerinteraktion
mit der Konsolen-Ansicht hergestellt. Als Reaktion auf eine Benutzerauswahl,
die eine Konsole (logisches Konsolen-Objekt/Partitions-Name/System-Name)
spezifiziert, verbindet die Konsolen-Ansicht mit einer Instanz des
System-Betriebsprogramms. Das gestattet es, dass eine einzelne Konsolen-Ansicht
als die Konsolen-Benutzer-Schnittstelle für unterschiedliche Systeme
verwendet wird.
-
Eine
Instanz des System-Betriebsprogramms empfängt von einem Benutzer eingegebene Befehle/Daten
aus einer verbundenen Konsolen-Ansicht und verarbeitet sie oder
leitet die Befehle/Daten unabhängig
von beliebigen anderen verbundenen Konsolen-Ansichten zu dem Host weiter. Somit
verfügt
jede Konsolen-Ansicht,
die mit einer gegebenen Instanz eines System-Betriebsprogramms verbunden
ist, über
einen Kanal zur Bereitstellung von Eingabebefehlen/-daten an das
System-Betriebsprogramm oder den Host ohne eine Beeinträchtigung von
anderen Eingabebefehlen/-daten
aus anderen Konsolen-Ansichten. Die Eingabesteuerung für die Tastatur
und Maus werden nicht gemeinsam verwendet; Befehle/Daten, die bei
einer Konsolen-Ansicht eingegeben wurden, werden bei einer anderen
Konsolen-Ansicht nicht kopiert. Wo jedoch zwei Konsolen-Ansichten
zu derselben Instanz eines System-Betriebsprogramms verbunden werden,
werden Ausgabedaten zu beiden Konsolen-Ansichten geroutet, wobei
jede die Daten gemäß ihrer
eigenen Konfigurationsparameter anzeigt. Die Ausgabedaten schließen die
Wiederholung von Host-Befehlen und die Host-erzeugten Ergebnisse
oder von dem System-Betriebsprogramm erzeugte Ergebnisse von sämtlichen
Befehlen/Daten ein, die bei den Konsolen-Ansichten eingegeben wurden.
-
Die 3 ist
ein Interaktionsdiagramm, das Interaktionen zwischen einer Instanz
einer Konsolen-Ansicht, einer Betriebsschnittstelle und einer Instanz
des Systembetriebs darstellt.
-
Die
senkrechten Linien 202, 204 und 206 stellen
die Ausführung
einer Instanz einer Konsolen-Ansicht, einer Instanz einer Betriebsschnittstelle und
einer Instanz eines System-Betriebsprogramms dar.
-
Die
Interaktion beginnt damit, dass die Konsolen-Ansicht zu der Betriebsschnittstelle
eine Anfrage für
eine Verbindung (Linie 208) an eine Instanz eines System-Betriebsprogramms
sendet. Der Benutzer initiiert die Anfrage durch Spezifizieren eines
System-Namens (102), Partitions-Namens (110) und
eines Konsolen-Namens (116), die bei der Systeminstallation
konfiguriert wurden. Die Anfrage identifiziert eine bestimmte Instanz
des System-Betriebsprogramms und wird in einer Ausführungsform über eine
Sockel-basierte Verbindung vorgenommen. Die Betriebsschnittstelle
erstellt als Reaktion auf die Verbindungsanfrage eine Verbindung
(Linie 210) mit der spezifizierten Instanz des System-Betriebsprogramms.
Zum Beispiel wird in einer Ausführungsform eine
Sockel-basierte Verbindung erstellt. Dann überträgt die Betriebsschnittstelle
ihre Sockelverbindung mit der Konsolen-Ansicht auf die Instanz des
System-Betriebsprogramms (Linie 212).
-
Das
System-Betriebsprogramm bestätigt
die Verbindung in einer Nachricht, die an die Konsolen-Ansicht (214)
gesendet wird, und die Konsolen-Ansicht sendet eine Initialisierungsanfrage
an das System-Betriebsprogramm (Linie 216). Als Reaktion
auf die Initialisierungsanfrage sendet das System-Betriebsprogramm
Konsolen-Daten, zum Beispiel Nachrichten von dem Host-Datenverarbeitungssystem,
zu der Konsolen-Ansicht (Linie 218).
-
Von
einem Benutzer eingegebene Befehle werden aus der Konsolen-Ansicht
zu dem System-Betriebsprogramm gesendet (Linie 220). Während es
nicht gezeigt ist, wird es verstanden, dass die Befehle dann zu
dem verbundenen logischen Konsolen-Objekt gesendet werden, das wiederum
den Befehl zu der passenden Partition der Partitionen 110-1–110-i weiter
leitet. Das System-Betriebsprogramm kopiert nicht in einer Instanz
der Konsolen-Ansicht Tastenbetätigungen
und Mausbewegungen, die von einer anderen Instanz der Konsolen-Ansicht
eingegeben wurden. Somit sieht ein Benutzer, der mit einer Konsolen-Ansicht
inter agiert, keine Benutzerinteraktion, die aus anderen Konsolen-Ansichten eingegeben
wurde. Ausgabenachrichten und andere Ergebnisse von Befehlen von
dem Host oder System-Betriebsprogramm werden jedoch von der Instanz
des System-Betriebsprogramms zu sämtlichen verbundenen Konsolen-Ansichten
gesendet und jede Konsolen-Ansicht zeigt die Nachrichten und Ergebnisse
auf eine Art und Weise an, die durch den assoziierten Konfigurationsdatensatz
spezifiziert wird.
-
Die 4 ist
ein Flussdiagramm eines Prozesses, der eine Instanz einer Konsolen-Ansicht
gemäß eines
Ausführungsbeispiels
der Erfindung implementiert. Der Prozess zieht im Allgemeinen die
Verarbeitung von Benutzer-Anfragen aus einer Anfrage-Warteschlange
nach sich.
-
In
dem Schritt 302 wird ein Thread für die Benutzer-Schnittstelle als
Reaktion auf eine Benutzer-Anfrage gestartet. Eine Anfrage-Warteschlange wird
in dem Schritt 304 aufgestellt und in dem Schritt 306 wird
eine Anfrage aus der Warteschlange für die Verarbeitung entfernt.
Der Thread für
die Benutzer-Schnittstelle
koordiniert die Interaktion mit einem Benutzer. Zum Beispiel liest
der Thread für
die Benutzer-Schnittstelle Befehle, Auswahlen für Steuerungstasten und Reaktionen
auf Nachrichten (von dem Host) und reagiert dementsprechend. Zum
Beispiel kann eine Steuerungstastenauswahl eine Menü-getriebene
Schnittstelle aufrufen, während
ein Befehl als eine Anfrage eingegeben wird, die von dem Prozess
der Konsolen-Ansicht verarbeitet werden soll. Aus dem Thread für die Benutzer-Schnittstelle gibt der
Benutzer ferner verschiedene Anweisungen der Verbindungsverwaltung
ein.
-
Der
Entscheidungsschritt 310 lenkt den Prozess gemäß der Art
der Anfrage. Damit eine Anfrage mit einer Konsole verbunden wird,
wird der Prozess zu dem Schritt 312 gelenkt. In dem Schritt 312 erhält der Prozess
einen Thread für
die Verbindungsverwaltung, wie in der 5A beschrieben
ist. Der Thread für
die Verbindungsverwaltung handhabt die Aufgabe der Herstellung einer
Verbindung zwischen der Instanz der Konsolen-Ansicht und der angefragten
Instanz des System-Betriebsprogramms. Die Steuerung kehrt dann zu
dem Schritt 306 zurück,
um die nächste Anfrage
aus der Warteschlange zu beziehen.
-
Wenn
die Anfrage eine Bestätigung
von der Betriebsschnittstelle (120, 1) ist,
wird der Prozess zu dem Entscheidungsschritt 314 gelenkt. Wenn
eine Bestätigung
von der Betriebsschnittstelle anstatt von dem System-Betriebsprogramm
empfangen wurde, zeigt dies an, dass die Konsole auf diesem Betriebsserver
nicht vorhanden ist. Der Entscheidungsschritt 314 prüft, ob die
angefragte Instanz des System-Betriebsprogramms auf einem anderen
Betriebsserver gehostet wird. Falls nicht, zeigt dies einen Verbindungsfehler
an (z. B. ist die angefragte Konsole nicht aktiv oder nicht bereit,
um eine Verbindung zu empfangen) und der Prozess wird zu dem Schritt 316 gelenkt.
In dem Schritt 316 wartet der Prozess der Konsolen-Ansicht
eine ausgewählte Zeitspanne
ab und versucht erneut eine Verbindung mit einem anderen Betriebsserver
(ruft den Prozess für
den Bezug eines Threads für
die Verbindungsverwaltung der 5A auf).
Falls die angefragte Instanz des System-Betriebsprogramms auf einem
anderen Betriebsserver gehostet wird, erhält der Schritt 318 den
Standort des System-Betriebsprogramms und verbindet (ruft den Prozess
für den
Bezug eines Threads für
die Verbindungsverwaltung der 5A auf).
Der Prozess kehrt dann zu dem Schritt 306 zurück, um die
nächste
Anfrage aus der Anfrage-Warteschlange zu beziehen.
-
Wenn
die Anfrage eine Bestätigung
von der verbundenen Instanz des System-Betriebsprogramms ist, wird
der Prozess zu dem Schritt 320 gelenkt. In dem Schritt 320 wird
der Zustand des Prozesses der Konsolen-Ansicht auf die Anzeige "verbunden" gesetzt. In dem
Schritt 322 wird eine Nachricht Verbindungserfolg in dem
Thread für
die Benutzer-Schnittstelle eingereiht. Als Reaktion informiert der
Thread für
die Benutzer-Schnittstelle den Benutzer darüber, dass die Verbindung hergestellt
worden ist. Der Prozess der Konsolen-Ansicht sendet dann eine Initialisierungsnachricht
zu der verbundenen Instanz des System-Betriebsprogramms in dem Schritt 324 und
kehrt zu dem Schritt 306 zurück, um die nächste Anfrage
aus der Anfrage-Warteschlange zu beziehen.
-
Der
Entscheidungsschritt 310 lenkt den Prozess zu dem Schritt 326,
weil andere Arten von Anfragen in der Anfrage-Warteschlange zum Beispiel Eingabebefehle
von dem Benutzer einschließen.
In dem Schritt 326 werden diese Arten von Anfragen gemäß der Art
der Anfrage verarbeitet. Befehle werden zu der Instanz des System-Betriebsprogramms gesendet.
Der Prozess kehrt dann zu dem Schritt 306 zurück, um die
nächste
Anfrage aus der Warteschlange zu beziehen. Andere Arten von Anfragen schließen zum
Beispiel Konfigurationsänderungen (Änderungen
bei der Farbabbildung, Steuerung der Nachrichtenunterdrückung, usw.)
und Eingabebefehle ein, die von dem System-Betriebsprogramm verarbeitet
werden, wie z. B. Änderungen
an den Merkmalen der automatischen Reaktion und der Anzeigesteuerung
von ausgewählten
Host-Nachrichten.
-
Die 5A ist
ein Flussdiagramm eines Prozesses zum Beziehen eines Threads für die Verbindungsverwaltung.
In dem Schritt 402 wird jeder zuvor erstellter Thread für die Verbindungsverwaltung
der Konsolen-Ansicht beendet. Eine Instanz der Betriebsschnittstelle
wir in dem Schritt 404 ausgewählt. Der Prozess zum Beziehen
eines Threads für
die Verbindungsverwaltung wählt
eine Betriebsschnittstelle auf der Basis einer Liste von gegenwärtig ausgeführten Instanzen
der Betriebsschnittstelle und mit welchen Instanzen der Betriebsschnittstelle
eine Verbindung zuvor gesucht wurde aus.
-
In
dem Schritt 406 wird ein Thread für die Verbindungsverwaltung
(5B) gestartet und eine Anfrage wird vorgenommen,
um die ausgewählte
Instanz der Betriebsschnittstelle zu verbinden. Die Anfrage wird
in die Verbindungswarteschlange der Betriebsschnittstelle (6, 484)
eingereiht. Der Prozess führt
dann die Steuerung zu dem Prozess der Konsolen-Ansicht (4)
zurück.
-
Die 5B ist
ein Flussdiagramm eines Prozesses, der den Thread für die Verbindungsverwaltung
implementiert. Der Thread für
die Verbindungsverwaltung handhabt die Verbindung und Übertragung
von Nachrichten zwischen einer Instanz der Konsolen-Ansicht und einer
verbundenen Instanz des System-Betriebsprogramms. In dem Schritt 452 bezieht
der Prozess eine Anfrage aus der Warteschlange der Verbindungsverwaltung
und der Ent scheidungsschritt 454 lenkt den Prozess als
Reaktion auf die Art der Anfrage. Für Nachrichten und andere Ereignisse,
die von der Host-Partition über
die Instanz des System-Betriebsprogramms empfangen wurden, und Ereignisse,
die von dem System-Betriebsprogramm
erzeugt wurden, wird der Prozess zu dem Schritt 456 gelenkt,
wo die Nachricht oder das Ereignis in den Thread für die Benutzer-Schnittstelle für die Verarbeitung
eingereiht wird. Der Thread für die
Benutzer-Schnittstelle verarbeitet Nachrichten und Ereignisse gemäß den Arten
von Nachrichten und Ereignissen und konsistent mit den Anzeigecharakteristika,
die von den assoziierten Konfigurationsdaten (z. B. 202-1, 2)
spezifiziert werden.
-
Damit
eine Anfrage der Verbindungsverwaltung die Verbindung zwischen der
Instanz der Konsolen-Ansicht und der Instanz des System-Betriebsprogramms
schließt,
wird der Prozess zu dem Schritt 458 gelenkt. Der Thread
für die
Verbindungsverwaltung wird beendet, um die Verbindung zu beenden.
-
Falls
ein Fehler von dem Thread für
die Verbindungsverwaltung entdeckt oder ihm berichtet wird, wird
der Prozess zu dem Entscheidungsschritt 460 gelenkt. Ein
Fehler von dem Thread für
die Verbindungsverwaltung bei der Verbindung mit einer Betriebsschnittstelle
führt dazu,
dass der Prozess zu dem Schritt 462 gelenkt wird. In dem
Schritt 462 wird eine Anfrage 'Verbindung mit Konsole' in den Thread für die Benutzer-Schnittstelle
eingereiht, um einen erneuten Versuch zu initiieren. Andere Arten
von Fehlern werden in dem Schritt 464 verarbeitet. Zum
Beispiel wird der Prozess der Konsolen-Ansicht (4) wegen
Fehlern beendet, die als katastrophal eingestuft werden.
-
Die 6 ist
ein Flussdiagramm eines Prozesses, der die Betriebsschnittstelle
implementiert. In dem Schritt 482 wird ein horchender Socket
erstellt, um Verbindungen von unterschiedlichen Komponenten anzunehmen,
zum Beispiel Instanzen der Konsolen-Ansicht und des System-Betriebsprogramms. Der
Entscheidungsschritt 484 prüft, ob eine Nachricht, die
auf dem Horch-Socket
empfangen wurde, eine Anfrage aus einer Instanz der Konsolen-Ansicht ist,
um mit einer bestimmten Instanz des System-Betriebsprogramms zu
verbinden.
-
Für Verbindungsanfragen
wird der Prozess zu dem Entscheidungsschritt 486 gelenkt.
Wenn die angefragte Instanz des System-Betriebsprogramms (die "Konsole") auf dem Betriebsserver
(1, 104) gehostet wird, auf dem die Betriebsschnittstelle
ausgeführt
wird, wird der Prozess zu dem Schritt 488 gelenkt. In dem
Schritt 488 wird eine Verbindung für die Kommunikation zwischen
der Konsolen-Ansicht und dem System-Betriebsprogramm erstellt. Die
Verbindung wird dann in dem Schritt 490 auf das System-Betriebsprogramm übertragen.
Man beachte, dass das System-Betriebsprogramm eine Bestätigung an
die Konsolen-Ansicht zurück
sendet, um die Verbindung (7, 514)
zu vollenden. Danach kommunizieren die Konsolen-Ansicht und das
System-Betriebsprogramm über diese
Verbindung. Der Prozess kehrt dann zu dem Entscheidungsschritt 484 zurück, um die
nächste
Nachricht zu verarbeiten, die über
den horchenden Socket empfangen wurde.
-
Der
Entscheidungsschritt 486 lenkt den Prozess zu dem Schritt 492,
wenn das angefragte System-Betriebsprogramm (die "Konsole") nicht auf diesem
Betriebsserver gehostet wird. Die Betriebsschnittstelle teilt dem
Prozess der Konsolen-Ansicht einen anderen Betriebsserver mit, auf
dem die Konsole gehostet wird, oder teilt mit, dass er nicht gefunden
werden kann. Der Prozess kehrt dann zu dem Entscheidungsschritt 484 zurück, um die
nächste Nachricht
zu verarbeiten, die über
den horchenden Socket empfangen wurde.
-
Der
Entscheidungsschritt 484 lenkt den Prozess zu dem Schritt 494 für andere
Arten von Anfragen. Zum Beispiel fragt das Betriebsserver-Objekt (1, 117)
eine Verbindung an und fragt möglicherweise
die Erstellung und Aktivierung von Konsolen an; die Konsole (1, 118)
fragt die Rückverbindung
an, sobald sie instanziiert wurde, um Verwaltungsanfragen zu empfangen,
wie z. B. Ansicht-Verbindungen und Verbindungsanfragen von einer
Anwendung der Konsolenverwaltung (nicht gezeigt). Der Prozess kehrt
dann zu dem Entscheidungsschritt 484 zurück, um die
nächste
Nachricht zu verarbeiten, die über
den horchenden Socket empfangen wurde.
-
Die 7 ist
ein Flussdiagramm eines Prozesses, der eine Instanz des System-Betriebsprogramms
implementiert. Das System- Betriebsprogramm
verwaltet im Allgemeinen die Nachrichtenübertragung zwischen einer oder
mehreren Instanzen der Konsolen-Ansicht
und einem logischen Konsolen-Objekt (1, 116).
In dem Schritt 502 empfängt der
Prozess eine Nachricht von der Konsolen-Ansicht, dem logischen Konsolen-Objekt
oder der Betriebsschnittstelle. Der Entscheidungsschritt 504 prüft, ob die
Nachricht eine Nachricht der Art Verbindungsverwaltung ist, und
falls nicht, lenkt er den Prozess zu dem Schritt 506. In
dem Schritt 506 wird die Nachricht gemäß ihrer Art verarbeitet. Zum
Beispiel werden Nachrichten, die von einer Host-Partition stammen,
zu jeder verbundenen Konsolen-Ansicht gesendet, und Nachrichten,
die Befehle aus einer Instanz der Konsolen-Ansicht enthalten, werden
zu dem logischen Konsolen-Objekt gesendet.
-
Der
Entscheidungsschritt 504 lenkt den Prozess zu dem Entscheidungsschritt 508,
wenn die Nachricht von der Art Verbindungsverwaltung ist. Wenn die
Nachricht eine Verbindung mit einer neuen Instanz der Konsolen-Ansicht
ist (von der Betriebsschnittstelle 120 übertragen), lenkt der Entscheidungsschritt 508 den
Prozess zu dem Schritt 512. In dem Schritt 512 werden
ein Identifizierer für
die neue Konsolen-Ansicht und ihre Verbindung einer Liste von Konsolen-Ansichten
hinzugefügt.
In dem Schritt 514 sendet das System-Betriebsprogramm eine
Bestätigungsnachricht
zu der neuen Konsolen-Ansicht und führt die Steuerung zu dem Schritt 502 zurück, um eine
weitere Nachricht zu empfangen. Wenn die neue Konsolen-Ansicht mit
einer Initialisierungsnachricht reagiert, empfängt das System-Betriebsprogramm
die Nachricht in dem Schritt 502. Der Entscheidungsschritt 504 lenkt
den Prozess zu dem Schritt 506 für Nachrichten der Nicht-Verbindungsverwaltung.
Als Reaktion auf eine Initialisierungsnachricht sendet das System-Betriebsprogramm
die zuletzt empfangenen Nachrichten von der Host-Partition zu der
neuen Konsolen-Ansicht. Somit hält
das System-Betriebsprogramm einen Puffer von neuesten Nachrichten
aus der Host-Partition aufrecht.
-
Falls
die Nachricht der Verbindungsverwaltung eine andere als eine Verbindung
mit einer neuen Konsolen-Ansicht ist, wird die Nachricht gemäß der Art
der Nachricht verarbeitet (520). Diese Nachrichten enthalten
Ereignisse, die für
die Verwaltung der Konsole verwendet werden. Beispielhafte Nachrichten
der Verbindungsverwaltung signalisieren die erneute Initialisierung
der Konsole und beliebiger verbundener Ansichten und signalisieren
die Beendigung der Konsole.
-
Dementsprechend
stellt die vorliegende Erfindung unter anderen Aspekten ein Verfahren
und eine Vorrichtung zum Betreiben eines Datenverarbeitungssystems
bereit. Andere Aspekte und Ausführungsformen
der vorliegenden Erfindung werden dem Fachmann unter Betrachtung
der Spezifikation und der Durchführung
der hierin offenbarten Erfindung ersichtlich sein.