-
Die vorliegende Erfindung bezieht
sich allgemein auf Prozesse in einem verteilten Rechensystem.
-
Eine Sammlung von Computern, die
durch ein elektronisches Netzwerk und die geeignete Software verbunden
sind, kann als ein einzelnes Rechensystem verwendet werden. Bei
einem netzwerkbasierten Rechnen ist eine Rechenressource nicht notwendigerweise
an eine einzelne Maschine gebunden. Sie wird statt dessen ein Merkmal
des gesamten netzwerkbasierten Computers. Ein netzwerkbasierter Computer
kann in einer Reihe von Kontexten existieren, wie z. B. in einer
heterogenen Sammlung von Benutzerarbeitsstationen und Servermaschinen
auf einem lokalen Netzwerk. Eine Spezialzweckgruppe von Maschinen
mit individuellen Prozessoren, die durch ein Hochgeschwindigkeitsnetzwerk
verbunden sind, kann ebenfalls eine Rechenressource sei, oder ein
Unternehmen oder ein globales Netzwerk, das mehrere solcher Umgebungen
miteinander verbindet, kann ebenfalls als eine einzelne Rechenressource
betrachtet werden.
-
Dieses Modell kann eine Hochleistungsrechenplattform
erzeugen, die einen Satz von Arbeitsstationen, Prozessoren oder
PCs umfasst, die miteinander durch ein Hochgeschwindigkeitsnetzwerk
verbunden sind, wie z. B. das Fast Ethernet, Gigabit Ethernet oder
Myrinet. Jeder Prozessor oder Computer in dem System wird üblicherweise
ein Knoten genannt. Ein Knoten in dem System kann als ein Eingangsknoten
wirken, der die Systemoperation steuert. Andere Knoten in dem System
werden Rechenknoten genannt und ihre Funktion ist es, die Berechnung
auszuführen.
Jeder Knoten kann ein Voll- Multitasking-Operationssystem
betreiben (z. B. Linux, UNIX, etc.) und jeder Benutzer kann sich
zum Arbeiten an einem Knoten anmelden. Eine Einzelsystemansicht
wird durch ein gemeinschaftlich verwendetes Dateisystem erreicht,
wie z. B. NFS (Network File System) und ein gemeinschaftlich verwendetes
Informationssystem, wie z. B. NIS (Network Information System).
Viele Systeme weisen eine Parallelrechen-Softwarebibliothek auf,
wie z. B. PVM (Parallel Virtual Machine) oder MPI (Message Passing
Interface), die installiert ist, um ein Netzwerkrechensystem zu
bilden.
-
Eine Komponente, die solche Umgebungen die üblicherweise
verwenden, ist ein Ressourcenverwaltungssystem oder ein Stapelplanungssystem. Dieses
Tool hilft Benutzern, Hochleistungsrechensysteme effektiv an ihre
Rechenbedürfnisse
anzuwenden. Ein solches System weist üblicherweise die Fähigkeit
zum Lokalisieren, Planen, Zuweisen und Liefern von Ressourcen oder
Diensten auf, während Vertragsanforderungen
für Lastausgleich,
Gerechtes-Teilen-Planung und optimale Verwendung von Ressourcen
respektiert wird. Stapelplanungssysteme wurden bei vielen Organisationen
verwendet, um eine Superrechenleistung zu erschwinglichen Kosten zu
erhalten.
-
Wenn ein Benutzer kein gutes Stapelplanungsprogramm
aufweist, muß der
Benutzer die Details des Rechensystems kennen, um transparent über mehrere
Knoten in ihrer Gruppe zu arbeiten. Diese Ressourcenzuweisung kann
so konfiguriert sein, daß die
Ressourcenverwendung optimal ist.
-
Viele Implementierungen von Stapelplanungssystemen
sind verfügbar
geworden. Einige derselben umfassen PBS von NASA, NQS, modifiziert
von PBS durch verschiedene Handelsgruppen, den Resource Manager
von IDS und den Task Broker von HP. Diese Lösungsansätze lösen ähnliche Probleme und wählen entweder
einen zentralisierten oder einen dezentralisierten Lösungsansatz.
Viele der zentralisierten Lösungsansätze liefern
keinen bedeutenden Betrag an Fehlertoleranz oder Flexibilität. Ein dezentralisiertes
Planen kann in der lokalen Domäne
verwendet werden, obwohl ein zentralisierter Lösungsansatz wahrscheinlich
besser eingestuft wird.
-
Bei einem Gruppenverarbeitungssystem weist
die Stapelplanung viele wichtige Rollen auf. Erstens hilft das Stapelplanungssystem
Benutzern beim Verwalten ihrer Auftragsübermittlungen. Zweitens steuert
das Stapelsystem die Verteilung und Zuweisung von Systemressourcen,
wie z. B. die Zuweisung von Rechenknoten zu jeder Benutzeraufgabe, um
das Verhalten zu maximieren und die Ressourcenverwendung zu optimieren.
Drittens steuert das System die Gruppensystemfunktionen gemäß einer bestimmten
Systemtaktik. Zum Beispiel können
bestimmte Systeme eine Speicher- und Platten-Verwendung für jeden Benutzer abhängig von
ihrer Priorität
einschränken.
-
Es ist die Aufgabe der vorliegenden
Erfindung, ein System zum Beenden von Verfahren, ein Verfahren zum
Beenden von verwandten Prozessen und ein Verfahren zum Identifizieren
und Beenden von verwandten Prozessen mit verbesserten Charakteristika
zu schaffen.
-
Diese Aufgabe wird durch ein System
zum Beenden von Prozessen gemäß Anspruch
1, 24, 25 oder 26, ein Verfahren zum Beenden von verwandten Prozessen
gemäß Anspruch
9 und ein Verfahren zum Identifizieren und Beenden von verwandten
Prozessen gemäß Anspruch
18 gelöst.
-
Die Erfindung schafft ein System
zum Beenden von Prozessen, die auf einer Mehrzahl von verteilten
Rechenknoten ausgeführt
werden. Das System weist ein Stapelwarteschlangenbildungssystem auf,
das konfiguriert ist, um Aufträge
von einem Benutzer zu empfangen und Aufträge zu den verteilten Rechenknoten
abzuwickeln. Eine Prozeßabschaltschnittstelle
ist umfaßt,
die konfiguriert ist, um Aufgabenkriterien zum Beenden von Prozessen
zu empfangen, die den Aufgabenkriterien an den verteilten Rechenknoten
entsprechen. Ein auto matisches Prozeßabschaltmodul steht in Kommunikation
mit der Prozeßabschaltschnittstelle.
Das automatische Prozeßabschaltmodul
ist konfiguriert, um Informationen basierend auf den Aufgabenkriterien
aus dem Stapelwarteschlangenbildungssystem wiederzugewinnen, die
sich auf die Verarbeitungsposition von Aufträgen beziehen, die zu dem Stapelwarteschlangenbildungssystem übermittelt
werden. Das automatische Prozeßabschaltmodul
ist ferner konfiguriert, um die Prozesse an den Rechenknoten für Aufträge zu beenden,
die unter Verwendung der Informationen identifiziert werden, die
von dem Stapelwarteschlangenbildungssystem erhalten werden.
-
Bevorzugte Ausführungsbeispiele der vorliegenden
Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden
Zeichnungen näher
erläutert.
Es zeigen:
-
1 ein
Blockdiagramm, das ein System zum Beenden von Prozessen bei einem
Stapelwarteschlangenbildungssystem gemäß einem Ausführungsbeispiel
der vorliegenden Erfindung darstellt;
-
2 ein
Flußdiagramm,
das ein Verfahren zum Beenden von Prozessen in einem Stapelwarteschlangenbildungssystem
bei einem Ausführungsbeispiel
der vorliegenden Erfindung zeigt;
-
3 ein
Flußdiagramm,
das ein detaillierteres Verfahren von Abschlußprozessen an jedem Rechenknoten
wie in 2 darstellt;
und
-
4 ein
Blockdiagramm, das ein System zum Beenden von Prozessen bei einem
Gruppenverarbeitungssystem gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung darstellt.
-
Es wird nun Bezug auf die exemplarischen Ausführungsbeispiele
genommen, die in den Zeichnungen dargestellt sind, und es wird hierin
eine spezifische Sprache verwendet, um dieselben zu beschreiben.
Es wird trotzdem darauf hingewiesen, daß dadurch keine Einschränkung des
Schutzbereichs der Erfindung beabsichtigt ist. Änderungen und weitere Modifikationen
der hierin dargestellten erfinderischen Merkmale und zusätzliche
Anwendungen der Prinzipien der Erfindungen, wie sie hierin dargestellt sind,
die einem Fachmann auf dem Gebiet in den Sinn könnten, der in Besitz dieser
Offenbarung ist, werden als Inhalt des Schutzbereichs der Erfindung betrachtet.
-
Einer der Nachteile des Verwendens
eines Stapelwarteschlangenbildungs- oder Stapelplanungs-Systems
ist, daß der
Benutzer jeden dieser Aufträge
zurück
zu dem Planer zum Beenden übermitteln
muß, wenn
ein Benutzer wünscht,
einen Auftrag oder eine Gruppe von Aufträgen zu beenden. Leider werden
diese Abschlußaufträge hinter
anderen Aufträgen
oder Anforderungen in der Wartschlange eingereiht, die bereits an
das Stapelwarteschlangenbildungssystem gemacht wurden. Dies kann
zu einem beträchtlichen
Betrag von Verzögerung
führen,
bevor die angeforderten Stapel oder Aufträge aus der Stapelwarteschlange
und aus ihren jeweiligen Rechenknoten gelöscht werden.
-
Dementsprechend kann es eine relativ
lange Zeitperiode dauern, die Aufträge zu beenden, sogar wenn der
Benutzer sofort weiß,
daß die
Aufträge
Probleme haben, veraltet oder unnötig geworden sind.
-
Es ist ferner zeitaufwendig für den Benutzer, eine
große
Anzahl von Anforderungen zu dem Stapelplanungssystem übermitteln
zu müssen.
Dies ist insbesondere der Fall, wenn eine Gruppe von Aufträgen beendet
werden muß,
da dieselben verwandt sind.
-
Ein anderer Nachteil beim Verwenden
eines zentralisierten Stapelwarteschlangenbildungssystems ist, daß das Stapelwarteschlangenbildungssystem
nicht notwendigerweise zuverläs sig
ist. Da Benutzer ihre Aufträge
zu dem Stapelwarteschlangenbildungssystem übermitteln, wenn ein Problem
mit dem Stapelwarteschlangenbildungssystem vorliegt, können keine
neuen Aufträge
oder Auftragsabschlüsse
angefordert werden. Das Stapelwarteschlangenbildungssystem kann
ferner einen Engpaß erzeugen,
wenn eine große
Anzahl von Aufträgen
zu dem Warteschlangenbildungssystem übermittelt wurde und diese
Aufträge
einen beträchtlichen
Zeitbetrag zum Verarbeiten durch die Planungswarteschlange und den
Abwickler benötigen.
-
Eine andere ähnliche Situation ist, wenn
der Planer in dem Stapelwarteschlangenbildungssystem ausfällt und
nicht in der Lage ist, weitere Anforderungen zu verarbeiten. Anders
ausgedrückt,
kann sich der Planer aufhängen.
In dieser Situation ist es schwierig, Prozesse zu stoppen, die an
Rechenknoten ausgeführt
werden, ohne das Stapelwarteschlangenbildungssystem erneut hochzufahren.
Während der
Zeit, in der das Stapelwarteschlangenbildungssystem wieder hochfährt, verbrauchen
die Prozesse, die auf den Rechenknoten ablaufen, Rechenressourcen.
Solche Prozesse verbrauchen Rechenleistung, sogar wenn dieselben
ungewollt sind oder zusammengebrochen sind.
-
Die vorliegende Erfindung, wie sie
in 1 dargestellt ist,
schafft ein System und ein Verfahren zum Beenden von Prozessen,
die auf einer Mehrzahl von verteilten Rechenknoten 30a, 30b, 30c in
einer Netzwerkrechenumgebung ausgeführt werden. Genauer gesagt
ermöglicht
diese Erfindung es einem Benutzer, Aufträge durch Aufgabenkriterien
zu beenden, wie z. B. Testfallnahme, Anwendungsnahme oder Startzeitbereich.
Zum Beispiel sind Rechenanwendungen, die zugeordnete Aufgabenkriterien
aufweisen können,
Hardwareverifizierungs-Testfälle, Software-Testfälle, Umgebungssimulationen
(z. B. Wettersimulationen), wissenschaftliche Simulationen (z. B.
physikalische und nukleare Simulationen), Computergrafikaufbereitung,
künstliche
Intelligenz „das
Starten von Drehbüchern" und ähnliche
rechenintensive Anwendungen. Die vorliegende Erfindung schafft ein
relativ schnelles und leistungsstarkes System zum Beenden von Prozessen
an verteilten Rechenknoten unter Verwendung von minimalen Kriterien.
Zusätzlich
dazu stellt dieses System und Verfahren einen Sicherungskanal zum
Beenden von Prozeßgruppen
bereit, die auf den verteilten Rechenknoten laufen.
-
Das System weist ein Stapelwarteschlangenbildungssystem 22 auf,
das konfiguriert ist, um Auftragsanforderungen von einem oder mehreren Benutzern 20 zu
empfangen. Das Stapelwarteschlangenbildungssystem weist einen Planer 24 zum Bedienen
von Auftragsanforderungen und Bestimmen der Ausführungssequenz für Aufträge auf,
die zu dem Stapelwarteschlangenbildungssystem übermittelt wurden. Sobald die
Aufträge
geplant wurden, werden dieselben in eine Warteschlange 26 eingegeben
und die Auftragsdetails können
in ein Spool-Verzeichnis gespeichert werden. Die Warteschlange enthält Informationen über die
Aufträge
und wann die Aufträge
verarbeitet werden. Sobald sich die Aufträge in der Warteschlange befinden,
können
dieselben durch den Abwickler 28 abgewickelt werden, wenn die
geeigneten Rechenressourcen verfügbar
sind. Der Abwickler kann die Aufträge zu den Rechenknoten senden,
wenn dieselben in der Lage sind, diese basierend auf Lastausgleichsentscheidungen
zu empfangen. Die Ergebnisse von den Prozessen an den Rechenknoten
werden ebenfalls durch den Abwickler gesammelt, so daß dieselben
zu dem Benutzer zurückgesendet
werden können.
-
Eine Prozeßabschaltschnittstelle 32 ist
konfiguriert, um Aufgabenkriterien oder andere Kriterien hoher Ebene
zum Beenden von Aufträgen
und Prozessen zu empfangen, die den Aufgabenkriterien entsprechen.
Die Prozeßabschaltschnittstelle
kann eine Befehlsleitungsschnittstelle sein, oder dieselbe kann
eine graphische Benutzerschnittstelle (GUI = Graphical User Interface)
sein, die es dem Benutzer ermöglicht,
Textkriterien einzugeben und/oder bestimmte Aufgabenoptionen auszuwählen. Die
Aufgabenkriterien können
durch einen Benutzer direkt in die Prozeßabschaltschnittstelle an einem
Vorderendenknoten eingegeben werden, der die Systemoperation steuert,
oder die Aufgabenkriterien können über eine
entfernte Kommunikation zu dem System gesendet werden.
-
Ein automatisches Prozeßabschaltmodul 34 steht
in Kommunikation mit der Prozeßabschaltschnittstelle 32.
Alternativ können
das Prozeßabschaltmodul
und die Abschaltschnittstelle in dieselbe logische oder physische
Einheit kombiniert sein. Das automatische Prozeßabschaltmodul ist konfiguriert, um
Informationen von dem Stapelwarteschlangenbildungssystem wiederzugewinnen,
die den Ausführungsort
von Aufträgen
betreffen, die zu verschiedenen Knoten auf dem Stapelwarteschlangenbildungssystem übermittelt
werden. Informationen können von
den Inhalten der Planungswarteschlange unter Verwendung der Kriterien
des Benutzers abgefragt werden und die wiedergewonnenen Informationen können verwendet
werden, um noch spezifischere Informationen ausfindig zu machen.
Zum Beispiel können
die Testfallnamen aus der Warteschlange wiedergewonnen werden, und
dann kann das System die Aufträge
für Testfälle identifizieren,
die ausgewählt
wurden. Dann können
die Auftrags-Namen oder -Nummern verwendet werden, um Prozeßnamen aus
relevanten Rechenknoten wiederzugewinnen. Zusätzlich dazu können die
Ausführungs-Testfallnamen
zu der Prozeßabschaltschnittstelle
zurückgesendet
werden, und der Benutzer kann den oder die Testfälle auswählen, die der Benutzer beenden möchte.
-
Die Aufgabenkriterien oder Namenskriterien können verwendet
werden, um die Informationen zu filtern, die für Aufträge aus dem Stapelwarteschlangenbildungssystem
wiedergewonnen werden, um eine Liste zu erzeugen. Diese gefilterte
Auftragsliste wird durch das automatische Prozeßabschaltmodul 34 verwendet,
um die Prozesse auf den Rechenknoten 30a, 30b, 30c zu
beenden, die unter Verwendung der Informationen identifiziert werden,
die von dem Stapelwarteschlangenbildungssystem erhalten werden.
-
Wie vorangehend erörtert wurde,
kann ein Rechenknoten eine Computerarbeitsstation, ein Personalcomputer
oder eine andere Rechenvorrichtung sein, die mit den anderen Knoten
vernetzt ist. Diese Knoten können
miteinander unter Verwendung eines LAN, eines WAN oder einer anderen
Hochgeschwindigkeits-Netzwerkausrüstung vernetzt sein, die es den
Knoten ermöglicht,
zu kommunizieren.
-
Die Aufgabenkriterien, die durch
die automatische Prozeßabschaltschnittstelle
empfangen werden, können
einen Aufgabennamen umfassen. Genauer gesagt können Benutzer eine Gruppe von
Prozessen und Aufträgen
basierend auf einem spezifischen Aufgabennamen beenden, der durch
einen Benutzer übermittelt
wird. Der Aufgabenname kann ein Testfallname, ein Anwendungsfallname
oder spezifischere Kriterien sein, wie z. B. zeitbasierte Kriterien.
Die Aufgabenkriterien sind mit den Aufträgen für diese Aufgabe verbunden,
und die spezifischen Aufträge
helfen beim Identifizieren der Prozesse, die an den individuellen
Rechenknoten beendet werden können.
Die Verwendung des Wortes Kriterien in dieser Offenbarung ist ebenfalls
definiert, um den Eintrag eines einzelnen Kriteriums oder Aufgabennamens
zu umfassen.
-
Ein Verfahren zum Erzeugen einer
Benutzerauftragsliste erfordert Auftragsinformationen aus der Stapelplanungswarteschlange.
Wie erörtert
wurde, ist dies eine effektive Weise zum Identifizieren von Aufträgen, die
spezifischen Aufgabenkriterien entsprechen. Alternativ kann die
Auftragsliste für
eine spezifische Aufgabe zu einem früheren Zeitpunkt von der Stapelplanungswarteschlange
zu dem automatischen Prozeßabschaltmodul übertragen
worden sein.
-
Bei einem Ausführungsbeispiel kann die Aufträge-zu-Aufgabe-Abbildung in dem
Stapelwarteschlangenbildungssystem gespeichert sein. Alternativ
dazu kann diese Abbildung in dem automatischen Prozeßabschaltmodul
gespeichert sein. Auf diese Weise, wenn gefordert wird, daß eine Aufgabe
abgeschaltet wird, kennt das automatische Prozeßabschaltmodul die spezifischen
Aufträge,
die mit der angeforderten Aufgabe verbunden wurden, und dann können diese
Aufträge
in dem Stapelwarteschlangenbildungssystem nachgeschlagen werden.
Bei einem anderen alternativen Ausführungsbeispiel kann das Stapelwarteschlangenbildungssystem
die Informationen für
identifizierte Prozesse (die dem Auftrag entsprechen) zu dem automatischen
Abschaltmodul liefern.
-
Damit das automatische Prozeßabschaltmodul
die Informationen darüber
empfängt,
welche Rechenknoten bestimmte Prozesse ausführen, kann das automatische
Abschaltmodul Verbindungen zu den entsprechenden Rechenknoten herstellen.
Die Verbindung zu den Rechenknoten kann unter Verwendung der automatischen
Systemauthentifizierung für
den Benutzer ausgeführt
werden, der fordert, daß eine
Aufgabe abgeschaltet wird. Die automatische Systemauthentifizierung
stellt üblicherweise eine
verschlüsselte
Kommunikationssitzung für
entfernte Rechenknoten bereit. Diese Kommunikation kann unter Verwendung
von Skriptbildung, automatischen Telnet-Sitzungen oder entfernten Shells durchgeführt werden,
um gültige
Benutzer-Konfigurationen und -Rechte einzurichten. Ein Beispiel
eines Rechenprotokolls, das bei der vorliegenden Erfindung zum Verbinden
mit einem entfernern System verwendet werden kann, ist Secure Shell
(SSH), das verschlüsselte
oder sichere Verbindungen liefert.
-
Diese Erfindung liefert das nützliche
Ergebnis, daß ein
Benutzer in der Lage ist, alle entsprechenden Aufträge und Prozesse
für spezifische
Aufgabenkriterien abzuschalten. Dies spart einem Benutzer einen
beträchtlichen
Zeitbetrag beim Beenden von Aufträgen. Es verhindert ferner,
daß der
Benutzer wissen muß,
welche Aufträge
zu dem Stapelwarteschlangenbildungssystem für eine spezifische Aufgabe
gesendet wurden.
-
Das vorliegende System und das Verfahren vermeiden
die Zeit, die für
das Stapelwarteschlangenbildungssystem nötig ist, um die spezifischen
Abschaltaufträge
durch den Planer zu verarbeiten. Folglich liefert dies einen schnellen
Weg zum Beenden von Prozessen, die spezifischen Aufgabenkriterien entsprechen.
Da Prozesse beendet werden können, obwohl
das Stapelwarteschlangenbildungssystem gemieden wird, kann dadurch
ein Planer umgangen werden, der ausgefallen ist. Dieser zusätzliche
Abschlußweg
kann ferner andere Probleme innerhalb des Stapelwarteschlangenbildungssystems
verhindern, die ein Prozeßabschalten
verlangsamen oder verhindern könnten.
Es kann Situationen geben, in denen das Stapelwarteschlangenbildungssystem
zusammengebrochen ist und die Prozesse, die auf den Rechenknoten
laufen, Ressourcen innerhalb des gesamten Systems verbrauchen. Die
vorliegende Erfindung ermöglicht
es einem Benutzer, die Prozesse zu beenden, die auf Rechenknoten
laufen, sogar wenn der Stapelwarteschlangenbildungs-Planer und -Abwickler
nicht ordnungsgemäß arbeiten.
Der zusätzliche
Abschlußweg
kann ferner eine bestimmte Verarbeitungslast von dem Stapelwarteschlangenbildungssystem
nehmen.
-
Bei einem Ausführungsbeispiel der Erfindung
kann das automatische Prozeßabschaltmodul Informationen
anfordern und speichern, die Aufgabenkriterien entsprechen, jedes
Mal, wenn eine Aufgabe und ihre spezifischen Aufträge zu dem
Stapelwarteschlangenbildungssystem übermittelt werden. Dann, sogar
wenn das Stapelwarteschlangenbildungssystem vollkommen deaktiviert
ist, kann das automatische Prozeßabschaltmodul Aufgaben basierend
auf übermittelten
Kriterien abschalten. Dies ermöglicht
es dem gesamten Rechensystem, sich von Problemen mit dem Stapelwarteschlangenbildungssystem
zu erholen, während
das Stapelwarteschlangenbildungssystem deaktiviert ist oder wieder
hochgefahren wird.
-
2 stellt
ein Verfahren zum Beenden verwandter Prozesse dar, die auf einem
verteilten Rechensystem mit einer Mehrzahl von Rechenknoten ausgeführt werden.
Das Verfahren umfaßt
den Schritt des Empfangens von Aufgabenkriterien von einer Benutzerschnittstelle
zum Beenden verwandter Prozesse bei Block 40. Ein anderer
Schritt ist das Bestimmen von Umgebungsinformationen für einen
Benutzer in dem verteilten Rechensystem bei Block 42. Dies
bedeutet, das automatische Prozeßabschaltmodul oder die Prozeßabschaltschnittstelle
kann die automatische Anmelde- und Netzwerk-Software abfragen, um
Rechte, Genehmigungen, Paßwörter und Umgebungsvariablen
eines Benutzers in dem verteilten Rechensystem zu bestimmen. Sobald
diese Umgebungsinformationen empfangen wurden, können dieselben verwendet werden,
um Informationen aus dem Stapelwarteschlangenbildungssystem wiederzugewinnen
und mit den Rechenknoten zu verbinden.
-
Ein weiterer Schritt ist das Erzeugen
einer Benutzerauftragsliste basierend auf entsprechenden Umgebungsinformationen
für einen
Benutzer bei Block 44. Die Benutzerauftragsliste wird unter
Verwendung von Informationen erzeugt, die aus der Stapelwarteschlange
und dem Stapelwarteschlangenbildungssystem wiedergewonnen werden.
Anders ausgedrückt
kann eine Liste von Benutzeraufträgen, die momentan ablaufen
und die verarbeitet werden, für einen
Benutzer erzeugt werden. Als nächstes
wird die Benutzerauftragsliste gefiltert, um eine gefilterte Auftragsliste
zu erzeugen, die Aufträge
umfaßt,
die mit den Aufgabenkriterien übereinstimmen,
die durch den Benutzer bei Block 46 bereitgestellt werden.
-
An diesem Punkt weist das System
eine Liste aller Aufträge
auf, die derart identifiziert wurden, daß sie zu bestimmten Aufgabenkriterien
gehören, die
durch einen Benutzer bereitgestellt werden. Das System stellt dann
eine Verbindung mit dem Rechenknoten her, die Prozesse aus der gefilterten
Auftragsliste bei Block 48 ausführen. Diese Verbindungen können unter
Verwendung der ID und der Genehmigungen des Benutzers hergestellt
werden, die von dem Netzwerksystem erhalten werden. Sobald das System
der vorliegenden Erfindung mit dem spezifischen Rechenknoten verbunden
ist, führt
das System den Schritt des Beendens von Prozessen aus der gefilterten
Auftragsliste an jedem Rechenknoten bei Block
50 durch.
Die weiteren Details dieses Schrittes an jedem Rechenknoten 52 werden
nachfolgend beschrieben.
-
3 stellt
ein Ausführungsbeispiel
eines Verfahrens zum Beenden eines Prozesses an einem individuellen
Rechenknoten bei Block 60 dar (siehe Block 52 in 2). Dieser Prozeß ist darstellend
für eine
logische Implementierung dieses Abschlußprozesses, ist jedoch nicht
notwendigerweise eine tatsächliche
Implementierung. Anfänglich
kann das automatische Prozeßabschaltmodul
bei Block 62 eine Liste von Prozessen anfordern, die momentan
auf dem Rechenknoten laufen. Diese Liste umfaßt sehr spezifische Informationen über den
Prozeß,
wie z. B. die Prozeß-ID
und andere Attribute des Prozesses, wie er auf dem Rechenknoten
ausgeführt
wird. Die vorliegende Erfindung kann die Prozeßliste von dem Rechenknoten
bei Block 64 nach Prozessen durchsuchen, die sich auf die
gefilterte Auftragsliste beziehen. Anders ausgedrückt, ist
das System für
jeden Auftrag, der durch das automatische Prozeßabschaltmodul identifiziert
wurde, in der Lage, zu identifizieren, welche relevanten Prozesse
aus der gefilterten Auftragsliste auf diesem Rechenknoten vorliegen.
-
Wenn eine Übereinstimmung gefunden wird, extrahiert
das automatische Prozeßabschaltmodul die
Prozeß-ID
für jeden
Prozeß auf
dem Rechnknoten, der der gefilterten Auftragsliste zugeordnet ist, wie
bei Block 66. Dann schließt das System bei Block 68 die
Prozesse an dem Rechenknoten ab, für die die Prozeß-IDs vorangehend
extrahiert wurden. An diesem Punkt werden diese Schritte für jeden
Prozeß wiederholt,
der an dem Rechenknoten beendet werden soll, wie bei Block 70 entschieden
wird. Schließlich
werden alle Prozesse an dem spezifischen Rechenknoten beendet und
das Verfahren wird für
diesen Rechenknoten bei Block 72 fertiggestellt.
-
Dieses Abschlußverfahren kann für jeden Rechenknoten
wiederholt werden, der Prozesse von den Aufgabenkriterien oder einem
verteilten System aufweist, die auf demselben laufen.
-
Bei einem Ausführungsbeispiel der Erfindung,
wenn das System eine Liste von Prozessen anfordert, die momentan
auf dem Rechenknoten laufen, können
die ID und Umgebungsinformationen von dem Benutzer verwendet werden,
um nur Prozesse anzufordern, die diesem bestimmten Benutzer zugeordnet
sind oder spezifischen Umgebungskriterien entsprechen. Auf diese
Weise untersucht das System nicht jeden Prozeß, der auf jedem Rechenknoten
läuft,
sondern untersucht nur Prozesse, die der Benutzer besitzt, oder
Prozesse, die andere Umgebungskriterien erfüllen, die vorbestimmt sind.
Zum Beispiel kann eine Anforderung für alle Prozesse gemacht werden,
die einem bestimmten Benutzer gehören, um beendet zu werden.
Dies ist eine rationalisierte Art und Weise für einen Benutzer, jeden Auftrag
oder Prozeß abzuschalten,
den er gestartet hat.
-
Ein anderes Ausführungsbeispiel der Erfindung
kann in einem System verwendet werden, das eine Mehrzahl von verteilten
Rechenknoten enthält, die
kein Stapelwarteschlangenbildungssystem aufweisen. 4 stellt ein solches System zum beenden
von Prozessen in einer verteilten Rechenumgebung dar. Dieses System
umfaßt
ein gemeinschaftlich verwendetes Datei- und Informations-System 102,
das die Wechselwirkung und Informationen steuert, die zwischen den
Rechenknoten 110a, 110b, 110c geleitet
werden. Benutzer 100 sind in der Lage, Prozesse oder Aufträge zu dem
Prozeßverfolgungsmodul 104 zu übermitteln.
Das Prozeßverfolgungsmodul
sendet dann diese Prozesse oder Aufträge zu den Rechenknoten. Das
Prozeßverfolgungsmodul
in dem gemeinschaftlich verwendeten Datei- und Informations-System
ist konfiguriert, um die Position der ausgeführten Prozesse zu verfolgen.
Dies bedeutet, daß keine
Stapelplanungs- oder Spezifischer-Ausgleichs-Algorithmen an das System
angewendet werden, aber daß Benutzer
trotzdem Prozesse zu dem gemeinschaftlich verwendeten Dateiinformationssystem übermitteln
können,
das die Prozesse zu Rechenknoten zuordnet.
-
Eine Prozeßabschaltschnittstelle 106 ist
ferner konfiguriert, um Aufgabenkriterien zum Beenden von Aufträgen zu empfangen,
die den Aufgabenkriterien entsprechen. Wie vorangehend beschrieben wurde,
sammelt die Prozeßabschaltschnittstelle
Informationen, die spezifischen Kriterien entsprechen, wie z. B.
Fallnamen, Anwendungsnamen, Testnamen oder andere spezifische Kriterien,
mit denen der Benutzer eine Gruppe von Aufträgen beenden möchte. Die
Kriterien von der Prozeßabschaltschnittstelle können zu
dem automatischen Abschaltmodul 108 übertragen werden. Das automatische
Abschaltprozeßmodul
ist konfiguriert, um Informationen von dem Prozeßverfolgungsmodul zu empfangen,
die die Rechenknotenposition der Aufträge oder Prozesse betreffen.
Das automatische Abschaltprozeßmodul
fordert diese Informationen von dem gemeinschaftlich verwendeten
Datei- und Informations-System 102 und dem Prozeßverfolgungsmodul 104 basierend
auf den von Benutzern empfangenen Aufgabenkriterien an. Die Prozesse,
die beendet werden müssen,
werden basierend auf den Informationen identifiziert, die von dem
Prozeßverfolgungsmodul
empfangen werden, das Auftrags- oder Prozeß-Positionen an einem spezifischen
Rechenknoten identifiziert.
-
Das Konfigurieren dieses Systems,
um Prozesse zu beenden, liefert den Vorteil eines redundanten Sicherungssystems,
das zum Beenden von Prozessen verwendet werden kann. Sogar wenn
das gemeinschaftlich verwendete Datei- und Informations-System zusammengebrochen
oder ausgefallen ist, kann das automatische Prozeßabschaltmodul weiterhin
die Aufgabenkriterien von der automatischen Prozeßabschaltschnittstelle
empfangen und die Prozesse an den Rechenknoten beenden. Dieses spezifische
Szenario setzt ferner voraus, daß das automatische Prozeßabschaltmodul
Zugriff auf die spezifischen Prozeßinformationen hat, die benötigt werden,
um die Rechenknoten abzuschalten, sogar wenn das gemeinschaftlich
verwendete Datei- und Informations-System zusammengebrochen ist.
Entweder kann das automatische Prozeßmodul auf die Dateien zugreifen,
die durch das gemeinschaftlich verwende te Dateiinformationssystem
verwendet werden, oder die Informationen über Auftrags- oder Prozeß-Positionen
können
zu dem automatischen Abschaltmodul übertragen werden, wenn die
Prozesse zu dem Prozeßverfolgungsmodul übermittelt
werden.