DE19607515A1 - Ein Computerbetriebsverwaltungssystem für ein Computerbetriebssystem, das dazu in der Lage ist gleichzeitig eine Mehrzahl von Anwendungsprogrammen auszuführen - Google Patents

Ein Computerbetriebsverwaltungssystem für ein Computerbetriebssystem, das dazu in der Lage ist gleichzeitig eine Mehrzahl von Anwendungsprogrammen auszuführen

Info

Publication number
DE19607515A1
DE19607515A1 DE19607515A DE19607515A DE19607515A1 DE 19607515 A1 DE19607515 A1 DE 19607515A1 DE 19607515 A DE19607515 A DE 19607515A DE 19607515 A DE19607515 A DE 19607515A DE 19607515 A1 DE19607515 A1 DE 19607515A1
Authority
DE
Germany
Prior art keywords
program
programs
computer
execution
error
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19607515A
Other languages
English (en)
Other versions
DE19607515B4 (de
Inventor
Hajime Matsumoto
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE19607515A1 publication Critical patent/DE19607515A1/de
Application granted granted Critical
Publication of DE19607515B4 publication Critical patent/DE19607515B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Description

Die vorliegende Erfindung betrifft ein System, das eine sehr zuverlässige Ausführung und Hochgeschwindigkeitsverarbeitung von einer Mehrzahl von Anwendungsprogrammen, die auf einem einzelnen Computer oder auf einer Mehrzahl von Computern über ein Netzwerk ausgeführt werden, ermöglicht. Insbesondere be­ triff sie ein stabiles Betriebsverwaltungssystem für Computer.
Die der Anmelderin bekannten Computersysteme weisen Hardware auf, wie z. B. den Speicher, Diskettenlaufwerke, eine zentrale Verarbeitungseinheit (CPU) und Netzwerkeinrichtungen, und weisen Betriebssystemsoftware auf, die es ermöglicht die Hard­ ware effektiv zu nutzen, und weisen Programme auf, die durch den Computer auszuführende Prozeduren speichern, um spezielle Aufgaben auszuführen. Die Person, die den Computer verwendet, führt normalerweise Anwendungsprogramme, die durch den Program­ mierer in einer Programmsprache geschrieben sind, durch Anweisen der Betriebssystemsoftware, das Anwendungsprogramm auszuführen, aus oder startet ("run") das gewünschte Anwendungsprogramm durch Mittel. Das Betriebssystem führt dann das eine gewünschte Programm aus, oder es führt gleichzeitig mehrere Programme aus, indem es den Speicher (Hauptspeichermittel), das Disketten­ laufwerk (Ergänzungsspeichermittel), die CPU und die Netzwerk­ einrichtungen, die dem Computer zur Verfügung stehen, effektiv nutzt. Einige der Defactostandardbetriebssysteme, die heutzutage verwendet werden, enthalten MVS, verwendet bei Zentralcomputern, VAX, verwendet bei Minicomputern, UNIX, verwendet bei Arbeits­ platzrechnern, und MS-DOS und Windows verwendet bei Personal­ computern.
Von diesen bekannten Betriebssystemen ist UNIX in der Lage gleichzeitig mehrere Anwenderprogramme auszuführen.
UNIX wurde ursprünglich durch AT≧ in der Vereinigten Staaten von Amerkika entwickelt und wird heutzutage hauptsächlich in großen Umfang auf Arbeitsplatzrechnern verwendet. Ursprünglich entwickelt für Softwareentwicklung, computerunterstützter Ent­ wurf (CAD) und andere technische Anwendungen, die von Ingenieu­ ren verwendet werden, bietet UNIX die folgenden Merkmale im Vergleich mit den anderen oben genannten Betriebssystemen.
  • (1) UNIX kann gleichzeitig mehrere Programme parallel ausfüh­ ren.
  • (2) Ein Programm, das unter UNIX ausgeführt wird, kann andere Programme dazu bringen unter UNIX zu laufen und die An­ zahl der gleichzeitig laufenden Programme kann sich er­ höhen, ohne durch das Betriebssystem begrenzt zu sein.
  • (3) Programme, die gleichzeitig ausgeführt werden, werden gleich behandelt und mit der gleichen Priorität ausgeführt, außer es ist für ein oder mehrere Programme festgelegt, mit Vorrang (Priorität) gegenüber einem anderem oder anderen Programmen ausgeführt zu werden. Die Priorität der Aus­ führung der Programme kann auch dynamisch geändert werden.
  • (4) Da das virtuelle Speichergebiet eine begrenzte Größe auf­ weist, verursachen Versuche ein Programm auszuführen, das diese Grenze überschreitet, daß das Programm sofort be­ endet wird und das ein Fehler erzeugt wird (ein "abnor­ males Ende").
Die Schwierigkeit mit UNIX ist, daß die Anzahl der Anwendungs­ programme, die gleichzeitig auf einem einzelnen Computer aus­ geführt werden können, nicht begrenzt werden kann. Als ein Er­ gebnis wird, wenn die Anzahl der gleichzeitig ausgeführten Pro­ gramme die geplante Grenze übersteigt, die Kapazität der Haupt­ speichervorrichtung (Speicher) ungenügend. Wenn der Speicher un­ genügend wird, wird zusätliches virtuelles Speichergebiet auf der ergänzenden Speichervorrichtung (Diskettenlaufwerk) reser­ viert, und die Daten im Speicher werden auf die Diskette ge­ schrieben. Wenn jedoch das virtuelle Speichergebiet (virtueller Speicher) für die Programmausführung verwendet wird, wird die Ausführungsgeschwindigkeit des Programmes um einige 10% bis einige 100% fallen. Bei einigen Anwendungsprogrammen ist es nur umständlich, wenn die Ausführungsgeschwindigkeit fällt, aber bei Systemen, die Echtzeitausführung verlangen, kann die reduzierte Ausführungsgeschwindigkeit eine Quelle für Schwierigkeiten werden.
Wenn beide, der Hardwarespeicher und der virtuelle Speicher, ungenügend sind, wird UNIX eines der Anwendungsprogramme zwangs­ weise beenden. Da es nicht möglich ist, die Reihenfolge (Vor­ rang), festzulegen, in der die Programme zwangsweise beendet werden, werden Programme, für die Zuverlässigkeit wesentlich ist, und Programme, für die Zuverlässigkeit nicht wesentlich ist, zwangsweise mit derselben Wahrscheinlichkeit beendet. Wenn ein Programm zwangsweise beendet wird, ist die Funktionalität des Systems auch verloren.
UNIX weist auch keine Mittel auf zum zentralen Verwalten von Änderungen, die in einem Programm aufgetreten sind, wann diese Änderungen aufgetreten sind, von den Fehlermeldungen, die er­ zeugt wurden als das Programm gestartet, normal beendet oder abnormal beendet wurde. Als ein Ergebnis davon gibt es keine Möglichkeit zu bestimmen welches Programm die Ursache der Schwierigkeit war, wenn sich ein Systemfehler oder eine Schwie­ rigkeit entwickelt. Während einige Fehlermeldungen ausgegeben werden, sind die Meldungen nicht durch die Maschine (CPU), durch die Ausgabevorrichtung oder durch das Ausgabeverfahren vereinheitlicht, und eine Fehlersuche ist daher schwierig und zeitaufwendig.
UNIX behandelt jedes der Mehrzahl von gleichzeitig ausgeführten Programmen gleich und ist nicht in der Lage die Ausführungszeit (CPU-Zeit), die jedem Programm zugeordnet ist, zu steuern. Als ein Ergebnis verringern Programme, die ungewöhnlich große An­ forderungen an die CPU und den Speicher stellen, die gesamte Antwortzeit und den Durchsatz des Systems.
Bei großen Systemen, die auf UNIX basierende Computer über ein gemeinsames Netzwerk miteinander verbinden, können die oben be­ schriebenen Schwierigkeiten häufig auftreten und das Auffinden der Quelle der Schwierigkeiten ist noch schwieriger. Es gibt auch keine Mittel zum sofortigen Benachrichtigen des Bedieners, das eine der oben aufgeführten Schwierigkeiten aufgetreten ist, und die Wiederherstellungsanstrengung sind daher verzögert.
Aufgabe der vorliegenden Erfindung ist es, ein Computerbetriebs­ verwaltungssystem zur Verfügung zu stellen, das auf einem Be­ triebssystem arbeitet, wie z. B. UNIX, das die oben aufgeführten Schwierigkeiten aufweist.
Um die oben aufgeführte Aufgabe zu lösen, ermöglicht ein Com­ puterberiebsverwaltungssystem gemäß der vorliegenden Erfindung stabile und sehr zuverlässige Ausführung von individuellen An­ wendungsprogrammen durch Begrenzen der Anzahl der gleichzeitig ausführbaren Anwendungsprogramme, die gleichzeitig ausgeführt werden, und Überwachen der Anwendungsprogrammausführung, der Computerelemente und des Netzwerks in einem Computerbetriebs­ system, das eine gleichzeitige Ausführung von mehreren Anwen­ dungsprogrammen ermöglicht.
Ein Computerbetriebsverwaltungssystem gemäß dem ersten Aspekt der Erfindung ist zwischen dem Betriebssystem und den gleich­ zeitig ausgeführten Anwendungsprogrammen angeordnet, weist eine Schnittstelle zu beiden, dem Betriebssystem und dem individuel­ len Applikationsprogrammen, auf, und tritt gegenüber dem Be­ triebssystem als einzelnes Anwendungsprogramm auf. Dieses Comp­ puterbetriebsverwaltungssystem enthält eine durch den Anwender vordefinierte Programmdefinitionsdatei zum Aufzeichnen der maxi­ malen Anzahl von gleichzeitig ausführbaren Programmen für jede Programmkategorie der Ausführungspriorität des Programmes, der Fehlerwiederherstellungsprozedur, der Programme, die durch Kom­ munikation mit anderen Programmen auf dem Netzwerk ausgeführt werden, und Informationen über das auszuführende Nachverfahren nachdem das Programm beendet ist. Weiterhin enthält es eine Wartenschlangenaufzeichnungsdatei zum Aufzeichnen der Informa­ tionen der in der Warteschlange befindlichen Programme, die darauf warten ausgeführt zu werden. Weiterhin enthält das Com­ puterbetriebsverwaltungssystem eine Protokolldatei zum Aufnehmen von Protokolldaten, wenn ein Programm beginnt oder endet und wenn ein Fehler auftritt.
Ein Computerbetriebsverwaltungssystem gemäß dem zweiten Aspekt der Erfindung verwaltet und steuert den Ausführungsstatus der Anwendungsprogramme durch Ausführen der zu verwaltenden Aus­ führungsprogramme in einer Art, daß eine direkte Kommunikation mit oder eine direkte Verwaltung durch ein Betriebsverwaltungs­ programm zum Verwalten des Betriebs von diesen ermöglicht wird.
Ein Computerbetriebsverwaltungssystem gemäß dem dritten Aspekt der vorliegenden Erfindung erreicht das Anwendungsprogramm­ steuerverfahren mittels einer Programmdefinitionsdatei zum Auf­ nehmen der maximalen Anzahl der gleichzeitig ausführbaren Pro­ gramme für jede Programmkategorie oder für jeden Computer, wie durch den Anwender festgelegt ist, mittels einer Ausführungs­ steuereinheit zum effektiven Verwenden der Computersystemmittel und zum Erreichen eines stabilen Anwendungsprogrammbetriebes während gleichzeitiger Ausführung von mehreren Programmen durch Begrenzen der Anzahl der ausgeführten Programme der Programm­ kategorie oder des Computers basierend auf der maximalen Anzahl der gleichzeitig ausführbaren Programme, die von der Programm­ definitionsdatei gelesen wurden, für das Betriebssystem beim Starten der Anwendungsprogramme, mittels einer Warteschlangenprogrammaufnahmedatei zum vorüber­ gehenden Speichern der Daten der Programme, die momentan nicht gleichzeitig ausgeführt werden können, um zu ermöglichen, daß das Programm in der Warteschlange nach einer vorbestimmten Zeitdauer gestartet werden kann, und mittels einer Protokolldatei zum Aufnehmen eines Startproto­ kolls nach dem Programmstart, die den Namen des gestarteten Pro­ grammes, die Zeit, das Datum und den Computernamen enthält.
Ein Computerbetriebsverwaltungssystem gemäß dem vierten Aspekt der Erfindung erreicht das Anwendungsprogrammstatusüberwachungs­ verfahren mittels eines Ausführungsstatusüberwachungsmittels, das ein Mittel zum regelmäßigen Senden einer Statusanforderungs­ nachricht zu und zum Empfangen einer Antwort von dem Anwendungs­ programm, ein Mittel zum Bestätigen, das ein Anwendungsprogramm ausge­ führt wird, durch Empfangen der Antwort von dem Anwendungspro­ gramm und zum Bestätigen des Inhalts der empfangenen Antwort, und ein Mittel zum Festlegen eines Programmfehlers, wenn es keine Antwort von dem Anwendungsprogramm auf die Ausführungs­ statusanforderungsnachricht innerhalb einer vorbestimmten Zeit­ dauer gibt, und dann zum Benachrichtigen des Fehlerwiederher­ stellungsprozessors, der das vorbestimmte Fehlerwiederherstel­ lungsverfahren ausführt, und das Fehlerkommunikationsmittel zur Kommunikation, wenn ein Fehler auftritt, aufweist.
Ein Computerbetriebsverwaltungssystem gemäß dem fünften Aspekt der vorliegenden Erfindung führt das Fehlerwiederherstellungs­ verfahren aus, wenn ein Anwendungsprogrammfehler auftritt, durch die Programmdefinitionsdatei, die das Fehlerantwortver­ fahren speichert, das durch den Benutzer vordefiniert ist und zum Ausführen ist, wenn ein Programm abnormal beendet wird. Das Computerbetriebsverwaltungssystem weist ein Wiederherstel­ lungsprozeßausführungsmittel zum Ausführen der Fehlerwieder­ herstellung auf, wenn ein Fehler auftritt, basierend auf dem Fehlerantwortverfahren, das in der Programmdefinitionsdatei gespeichert ist.
Ein Computerbetriebsverwaltungssystem nach dem sechsten Aspekt der Erfindung führt das Verfahren die Fehler, die auf dem Com­ puter auftreten, dem Bediener mitzuteilen durch die Programm­ definitionsdatei, die das durch den Benutzer definierte Fehler­ kommunikationsverfahren speichert, und durch ein Fehlerkommuni­ kationsmittel aus. Das Fehlerkommunikationsmittel enthält ein Mittel zum Sammeln der Protokolldateien der Anwendungssoftware unter der Verwaltung des Betriebsverwaltungssystems auf allen Computern, die mit dem Netzwerk verbunden sind, ein Mittel zum Ausführen und Anzeigen von Daten für den Bediener in einem ein­ fach verständlichen Format, und ein Mittel zum automatischen Anzeigen eines Fehlers mittels Ausgeben eines Alarms, einer elektronischen Post, mittels eines Bedienungspultes, eines Druckers und/oder einer Datei.
Ein Computerbetriebsverwaltungssystem nach dem siebten Aspekt der Erfindung führt das Verfahren zum gleichzeitigen Ausführen mehrerer Programme unter dem Betriebssystem durch Empfangen von Startanforderungen neuer Programme in dem Schritt der Über­ wachung des Ausführungsstatus nachdem der Schritt der Ausfüh­ rungssteuerung und des Prozeßstarts beendet ist, und durch un­ abhängiges und paralleles Starten zu den vorher ausgeführten Programmen, die nacheinander gestartet wurden, aus.
Ein Computerbetriebsverwaltungssystem nach dem achten Aspekt der Erfindung führt das Verfahren zum Steuern der Ausführungs­ priorität der Anwendungsprogramme folgendermaßen durch. Die Programmdefinitionsdatei speichert die Ausführungsprioritäts­ sequenz von jeder Programmkategorie so wie durch den Benutzer definiert. Eine Ausführungsprioritätssequenzsteuereinheit ent­ hält ein Mittel zum dynamischen Steuern der Prioritätssequenz von ausgeführten Programmen und Programmen in der Warteschlange basieren auf der Prioritätssequenz, die von der Programmdefini­ tionsdatei durch Neuordnen der vorgemerkten Programme ent­ sprechend der Prioritätssequenz, die in der Warteschlangenpro­ grammaufnahmedatei gespeichert ist, zum dynamischen Ändern der Ausführungspriorität der ausgeführten Programme und der Ausfüh­ rungspriorität in der Warteschlange und zum Informieren des Be­ triebssystems über die geänderte Prioritätssequenz.
Ein Computerbetriebsverwaltungssystem nach dem neunten Aspekt der Erfindung führt das Verfahren zum Anhalten eines Anwendungs­ programmes, das auf einem Computer ausgeführt wird, folgender­ maßen aus. Die Programmdefinitionsdatei speichert die Defini­ tionen eines durch den Benutzer festgelegten Nachverfahrens, das gemäß dem Endstatus nachfolgend durchgeführt werden soll. Ein Endprozessor enthält ein Mittel zum Erkennen einer Pro­ grammbeendigung basierend auf einer Endnachricht von dem Be­ triebssystem, ein Mittel zum Identifizieren des Endstatus, wenn ein Programm endet, ein Nachverfahrenausführmittel zum Ausführen des Nachverfahrens entsprechend der Nachverfahrendefinition und eine Protokolldatei, die ein Endprotokoll speichert, wenn ein Programm endet, wobei das Endprotokoll den Programmnamen, den Computernamen, die Zeit und das Datum der Programmbeendigung enthält.
Ein Computerbetriebsverwaltungssystem nach dem zehnten Aspekt der vorliegenden Erfindung führt das Verfahren zum Verwalten der Ressourcen des Anwendungsprogrammes, das auf dem Computer ausgeführt wird, folgendermaßen durch. Die Programmdefinitions­ datei speichert für jedes ausgeführte Anwendungsprogramm die maximale Hauptspeichervorrichtungskapazität (Speicher), Zusatz­ speichervorrichtungskapazität (Diskettenlaufwerk) und die auf­ summierte Prozessorzeitgrenze, die für jedes Programm ver­ wendbar ist. Ein Computer-Ressourcen-Verwalter enthält ein Mittel zum Feststellen, wenn ein ausgeführtes Programm die definierte Hauptspeicher und Zusatzspeichervorrichtungskapazität oder die aufsummierte Prozessorzeitgrenze überschreitet, und ein Mittel, das eine Funktion zum Feststellen eines Fehlers aufweist, wenn die Computerressourcen so verwendet werden, daß die definierten Grenzen überschritten werden, und zum Benachrichtigen des Feh­ lerwiederherstellungsprozessors und des Fehlerkommunikations­ mittels.
Ein Computerbetriebsverwaltungssystem nach dem elften Aspekt der Erfindung führt das Verfahren zum Verwalten des Betriebs der Anwendungssoftware, die durch Mittel der Kommunikation zwischen den mehreren Computern, die in einem gemeinsamen Netz­ werk miteinander verbunden sind, ausgeführt wird, folgendermaßen durch. Die Programmdefinitionsdatei speichert durch den Benut­ zer festgelegte Informationen für Programme, die durch Zuord­ nung und Kommunikation über ein Netzwerk ausgeführt werden. Ein Computernetzwerkverwalter enthält ein Mittel zur Kommunikation zwischen den Betriebsverwaltungssystemen, die auf unterschied­ lichen Computern des Netzwerkes installiert sind, ein Mittel zum Verwalten des Betriebes der Programme, die durch Zuordnung und Kommunikation über ein Netzwerk entsprechend zu den Infor­ mationen für die Programme, die in der Programmdefinitionsdatei gespeichert sind, ausgeführt werden, und ein Mittel zum Er­ kennen von Kombinationen von Programmen, die durch Zuordnung und Kommunikation über ein Netzwerk ausgeführt werden.
Ein Computerbetriebsverwaltungssystem nach dem zwölften Aspekt der Erfindung führt die Ausführungssteuereinheit, das Ausfüh­ rungsstatutsüberwachungsmittel, den Computer-Ressourcen-Verwal­ ter und den Endprozessor als ein kontinuierliches Verfahren innerhalb des Hauptprogrammes aus, und führt die Ausführungspri­ oritätssequenzsteuereinheit, den Fehlerwiederherstellungsprozes­ sor, das Fehlerkommunikationsmittel und den Netzwerkverwalter auf Bedarf als unabhängige Programme durch das Hauptprogramm aus.
Ein Computerbetriebsverwaltungssystem nach dem dreizehnten Aspekt der Erfindung führt die Ausführungssteuereinheit, das Ausführungsstatusüberwachungsmittel und den Endprozessor als ein kontinuierliches Verfahren innerhalb des Hauptprogrammes aus, und führt die Ausführungsprioritätssequenzsteuereinheit, den Fehlerwiederherstellungsprozessor, das Fehlerkommunikations­ mittel, den Computer-Ressourcen-Verwalter und den Netzwerkver­ walter auf Bedarf als unabhängige Programme durch das Hauptpro­ gramm aus.
Betrieb: Ein Computerbetriebsverwaltungssystem nach der Erfin­ dung begrenzt die Anzahl der Anwendungsprogramme, die auf einem Betriebssystem ausgeführt werden, das die gleichzeitige Ausfüh­ rung von mehreren Anwenderprogrammen zuläßt, und überwacht die Anwenderprogrammausführung, die Computerressourcen und das Netz­ werk, um einen stabilen, sehr zuverlässigen Betrieb der indivi­ duellen Anwendungsprogramme zu ermöglichen.
Ein Computerbetriebsverwaltungssystem nach dem ersten Aspekt der vorliegenden Erfindung ist zwischen den gleichzeitig aus­ geführten Anwenderprogrammen und dem Betriebssystem angeordnet. Das Betriebssystem ist dadurch charakterisiert, daß es in der Lage ist gleichzeitig mehrere Anwenderprogramme auszuführen, von einem ausgeführten Programm ein neues darauf bezogenes Programm zu erzeugen, mit dem kommuniziert werden kann oder das direkt verwaltet werden kann, alle ausgeführten Programme gleich zu be­ handeln, außer das Betriebssystem ist während dem Programmstart speziell anders benachrichtigt worden, dynamisch die Prioritäts­ sequenz der ausgeführten Programme zu ändern. Es weist einen virtuellen Speicherbereich von endlicher Größe auf, und ist in der Lage, die Programmausführung sofort abnormal zu beenden, wenn das auszuführende Programm die Grenzen des virtuellen Spei­ cherbereiches überschreitet. Das Computerbetriebsverwaltungs­ system weist weiter eine Schnittstelle zu beiden auf, dem Be­ triebssystem und den individuellen Anwendungsprogrammen, und tritt dem Betriebssystem gegenüber als einzelnes Anwendungs­ programm auf. Die Programmdefinitionsdatei ist durch den An­ wender vordefiniert, um die maximale Anzahl der gleichzeitig ausführbaren Programme, die Ausführungspriorität des Programms, das Fehlerwiederherstellungsverfahren, Programme, die durch Kommunikation mit anderen Programmen auf dem Netzwerk ausge­ führt werden und Informationen über das nach der Programmbe­ endigung für jede Programmkategorie auszuführende Nachverfahren zu speichern. Eine Warteschlangeprogrammaufnahmedatei bzw. eine Vormerkprogrammaufnahmedatei speichert die Informationen der vorgemerkten Programme, die darauf warten ausgeführt zu werden, und eine Protokolldatei speichert Protokolldaten, wenn ein Pro­ gramm startet oder endet oder wenn ein Fehler auftritt.
Ein Computerbetriebsverwaltungssystem nach dem zweiten Aspekt der Erfindung verwaltet und steuert den Ausführungsstatus der Anwenderprogramme durch Ausführen eines Betriebsverwaltungs­ programmes auf einem Betriebssystem zum Verwalten des Betriebes der mehreren Anwenderprogrammen in einer Art, die eine direkte Kommunikation mit oder eine direkte Verwaltung der zu verwalten­ den Anwenderprogramme ermöglicht.
Ein Computerbetriebsverwaltungssystem nach dem dritten Aspekt der Erfindung speichert in der Programmdefinitionsdatei während dem Anwendungsprogrammstart die maximale Anzahl der gleichzeitig ausgeführten Programme für jede Programmkategorie oder für den Computer, wie durch den Anwender festgelegt ist. Während der gleichzeitigen Ausführung von mehreren Anwenderprogrammen be­ grenzt die Ausführungssteuereinheit für das Betriebssystem die Anzahl der ausgeführten Programme der Programmkategorie oder des Computers basierend auf der maximalen Anzahl der gleich­ zeitig ausführbaren Programme, die von der Programmdefinitions­ datei ausgelesen wird (Programmdefinitionsaufnahmemittel). Als ein Ergebnis können die Computerressourcen effektiv verwendet werden und ein stabiler Betrieb der individuellen Anwenderpro­ gramme wird erreicht. Wenn ein Programm momentan nicht gleich­ zeitig ausgeführt werden kann, speichert die Ausführungssteuer­ einheit zeitweise die Daten des Programmes in eine Vormerkpro­ grammaufnahmedatei, damit das vorgemerkte Programm nach einer vorbestimmten Zeitdauer ausgeführt werden kann. Nachdem ein Programm gestartet wird, speichert die Ausführungssteuereinheit den Namen des gestarteten Programmes, die Zeit, das Datum und den Computernamen in einer Protokolldatei.
In einem Computerbetriebsverwaltungssystem nach dem vierten As­ pekt der Erfindung versendet das Ausführungsstatusüberwachungs­ mittel regelmäßig eine Ausführungsstatusanforderungsnachricht an und empfängt eine Antwort von dem Anwendungsprogramm, und bestätigt den Inhalt der empfangenen Antwort, um zu bestimmen ob das Ausführungsprogramm ausgeführt wird. Wenn es keine Ant­ wort von dem Ausführungsprogramm auf die Ausführungsstatutsan­ forderungsnachricht gibt, wird festgelegt, das ein Fehler auf­ getreten ist, und der Fehlerwiederherstellungsprozessor, der den vorbestimmten Fehlerwiederherstellungsprozeß durchführt, und das Fehlerkommunikationsmittel zur Kommunikation, wenn ein Feh­ ler auftritt, werden benachrichtigt.
In einem Computerbetriebsverwaltungssystem nach dem fünften Aspekt der Erfindung speichert die Programmdefinitionsdatei das durch den Benutzer vordefinierte Fehlerantwortverfahren, das zum Ausführen vorgesehen ist, wenn ein Programm abnormal beendet wird, und ein Wiederherstellungsprozeßausführungsmittel führt eine Fehlerwiederherstellung durch, wenn ein Fehler auftritt, basierend aus dem von der Programmdefinitionsdatei ausgelesen Fehlerantwortverfahren.
In einem Computerbetriebsverwaltungssystem nach dem sechsten Aspekt der Erfindung speichert die Programmdefinitionsdatei das durch den Benutzer definierte Fehlerkommunikationsverfahren. Das Fehlerkommunikationsmittel erfaßt die Protokolldatein der Anwendungssoftware, die unter der Verwaltung des Betriebsver­ waltungssystems auf allen Computern sind, die mit dem Netzwerk verbunden sind. Basierend auf dem von der Programmdefinitions­ datei gelesenen Verfahren werden die Daten verarbeitet und in einem einfach verständlichen Format für den Bediener angezeigt. Der Bediener wird automatisch mittels der Ausgabe eines Alarms, einer elektronischen Post, mittels der Konsole, des Druckers und/oder einer Datei informiert.
In einem Computerbetriebsverwaltungssystem nach dem siebten Aspekt der Erfindung werden in dem Schritt der Ausführungs­ statusüberwachung neue Programmstartanfragen empfangen, nach­ dem der Schritt der Ausführungssteuerung und des Verarbeitungs­ starts abgeschlossen ist und die zuletzt ausgeführten Programme werden unabhängig und parallel mit vorher ausgeführten Program­ men gestartet, um eine gleichzeitige Ausführung von mehreren Anwenderprogrammen zu erreichen.
In einem Computerbetriebsverwaltungssystem nach dem achten Aspekt der Erfindung speichert die Programmdefinitionsdatei die Ausführungspriorität von jeder Programmkategorie, wie durch den Benutzer definiert. Basierend auf der von der Programmdefini­ tionsdatei ausgelesenen Prioritätssequenz steuert die Ausfüh­ rungsprioritätssequenzsteuereinheit dynamisch die Prioritäts­ sequenz von beiden, ausgeführten und vorgemerkten Programmen, durch Neuordnen der vorgemerkten Programme entsprechend der in der Vormerkprogrammaufnahmedatei gespeicherten Prioritäts­ sequenz, ändert dynamisch die Ausführungspriorität der ausge­ führten Programme und die Ausführungspriorität der vorgemerkten Programme und benachrichtigt das Betriebssystem von der geänder­ ten Prioritätssequenz.
In einem Computerbetriebsverwaltungssystem nach dem neunten Aspekt der Erfindung speichert die Programmdefinitionsdatei ein durch den Benutzer festgelegtes Nachverfahren, das nachfolgend gemäß dem Endstatus ausgeführt werden soll. Der Endprozessor stellt basierend auf einer Endnachricht von dem Betriebssystem fest, daß das Programm beendet ist, identifiziert den Endstatus des Programmes und führt das Nachverfahren gemäß der von der Programmdefinitionsdatei ausgelesenen Definition aus. Wenn ein Programm beendet wird, wird ein Endprotokoll, das den Programm­ name, den Computernamen, die Zeit und das Datum der Programmbe­ endigung enthält, in der Protokolldatei gespeichert.
In einem Computerbetriebsverwaltungssystem nach dem zehnten Aspekt der Erfindung speichert die Programmdefinitionsdatei für jedes auszuführende Anwendungsprogramm die maximale Hauptspei­ chervorrichtungskapazität (Speicher), Ergänzungsspeichervor­ richtungskapazität (Diskettenlaufwerk) und die kumulierte Pro­ zessorzeitgrenze, die für jedes Programm verwendet werden kann. Der Computer-Ressourcen-Verwalter stellt fest, wenn ein ausge­ führtes Programm die in der Programmdefinitionsdatei gespeicher­ ten Grenzen überschreitet, und bestimmt einen Fehler, wenn die Computerressourcen so verwendet werden, daß die definierten Grenzen überschritten werden, und informiert den Fehlerwieder­ herstellungsprozessor und das Fehlerkommunikationsmittel, wenn ein Fehler festgestellt wird.
In einem Computerbetriebsverwaltungssystem nach dem elften Aspekt der Erfindung speichert die Programmdefinitionsdatei Informationen für Programme, die durch Zuordnung und Kommuni­ kation über ein Netzwerk ausgeführt werden. Der Computernetz­ werkverwalter kommuniziert zwischen den Betriebsverwaltungs­ systemen, die auf unterschiedlichen Computern des Netzwerks installiert sind, verwaltet den Betrieb der Anwendungssoftware entsprechend der in der Programmdefinitionsdatei gespeicherten Informationen unter Verwendung des Netzwerkes, und stellt Kombinationen von Programmen fest, die durch Zuordnung und Kommunikation über ein Netzwerk ausgeführt werden.
In einem Computerbetriebsverwaltungssystem nach dem zwölften Aspekt der Erfindung werden die Ausführungssteuereinheit, das Ausführungsstatusüberwachungsmittel, der Computer-Ressourcen-Ver­ walter und der Endprozessor als ein kontinuierliches Verfahren innerhalb des Hauptprogrammes ausgeführt, und die Ausführungs­ prioritätssequenzsteuereinheit, der Fehlerwiederherstellungs­ prozessor, das Fehlerkommunikationsmittel und der Netzwerkver­ walter werden durch das Hauptprogramm als unabhängige Programme auf Bedarf aufgerufen und ausgeführt.
In einem Computerbetriebsverwaltungssystem nach dem dreizehnten Aspekt der Erfindung werden die Ausführungssteuereinheit, das Ausführungsstatusüberwachungsmittel und der Endprozessor als kontinuierliches Verfahren innerhalb des Hauptprogrammes ausge­ führt, und die Ausführungsprioritätssequenzsteuereinheit, der Fehlerwiederherstellungsprozessor, das Fehlerkommunikations­ mittel, der Computer-Ressourcen-Verwalter und der Netzwerkver­ walter werden durch das Hauptprogramm als unabhängige Programme auf Bedarf aufgerufen und ausgeführt.
Weitere Merkmale und Zweckmäßigkeiten der Erfindung ergeben sich aus der Beschreibung von Ausführungsbeispielen anhand der Figuren. Von den Figuren zeigen
Fig. 1 ein Konzeptdiagramm der Beziehung zwischen dem Betriebs­ system, den Anwendungsprogrammen und dem Computerbe­ triebsverwaltungssystem der vorliegenden Erfindung;
Fig. 2 ein Blockdiagramm des Computerbetriebsverwaltungs-Systems entsprechend der vorliegenden Erfindung;
Fig. 3 ein Blockdiagramm und ein Ablaufdiagramm der verschie­ denen Steuereinheiten einer Ausführungsform des Com­ puterbetriebsverwaltungssystems entsprechend der vor­ liegenden Erfindung;
Fig. 4 ein Flußdiagramm des Betriebes der Ausführungssteuer­ einheit einer Ausführungsform eines Computervertriebs­ verwaltungssystems entsprechend der vorliegenden Er­ findung;
Fig. 5 ein Flußdiagramm des Betriebes des Ausführungsstatus­ überwachungsmittels einer Ausführungsform eines Com­ puterbetriebsverwaltungssystems entsprechend der vor­ liegenden Erfindung;
Fig. 6 ein Flußdiagramm des Betriebes der Ausführungspriori­ tätssequenzsteuereinheit, wenn ein Programmstart bzw. ein Programmanlaufen in dem Computerbetriebsverwaltungs­ system entsprechend der vorliegenden Erfindung angefor­ dert wird;
Fig. 7 ein Flußdiagramm des Betriebes der Ausführungssequenz­ steuereinheit, wenn die Prioritätssequenz der auszu­ führenden Programme in dem Computerbetriebsverwaltungs­ system entsprechend der vorliegenden Erfindung dynamisch geändert wird;
Fig. 8 ist ein Flußdiagramm mit Betrieb des Fehlerwiederher­ stellungsprozessors in dem Computervertriebsverwaltungs-System entsprechend der vorliegenden Erfindung;
Fig. 9 eine Tabelle eines Beispiels von Verfahrensdefinitionen für das Fehlerwiederherstellungsbehandeln in dem Com­ puterbetriebsverwaltungssystem entsprechend der vorlie­ genden Erfindung;
Fig. 10 ein Flußdiagramm des Betriebes des Endprozessors in dem Computerbetriebsverwaltungssystem entsprechend der vor­ liegenden Erfindung;
Fig. 11 ein Flußdiagramm des Betriebes des Computer-Ressourcen-Verwalters in dem Computerbetriebsverwaltungssystem entsprechend der vorliegenden Erfindung;
Fig. 12 ein Flußdiagramm des Betriebes des Netzwerkverwalters in dem Computerbetriebsverwaltungssystem entsprechend der vorliegenden Erindung;
Fig. 13 ein Flußdiagramm des Betriebes des Fehlerkommunikations­ mittels, das die Fehlerkommunikationsfunktion des Com­ puterbetriebsverwaltungssystems entsprechend der vor­ liegenden Erfindung realisiert;
Fig. 14 ein Flußdiagramm des Betriebes des Fehlerkommunikations­ mittels, das die Fehlerkommunikationsfunktion und die Fehlerüberwachungsfunktion des Computerbetriebsverwal­ tungssystems entsprechend der vorliegenden Erfindung realisiert;
Fig. 15 ein Flußdiagramm und ein Blockdiagramm von verschiedenen Steuereinheiten einer zweiten Ausführungsform eines Computerbetriebsverwaltungssystems entsprechend der vorliegenden Erfindung.
Im folgenden werden bevorzugte Ausführungsformen eines Computer­ betriebsverwaltungssystems entsprechend der vorliegenden Erfin­ dung mit Bezug zu den Figuren beschrieben.
Ausführungsform 1
Fig. 1 ist ein Konzeptdiagramm des Softwarebetriebsverwaltungs­ systems in einem Computersystem entsprechend der vorliegenden Erfindung. Wie in Fig. 1 gezeigt ist, ist das Computerbetriebs­ verwaltungssystem 1 der vorliegenden Erfindung zwischen dem Be­ triebssystem 2 und den Anwendungsprogrammen 3 angeordnet. Das Computerbetriebsverwaltungssystem 1 arbeitet, von der Perspek­ tive des Betriebssystems 2 aus gesehen, als ein einzelnes An­ wendungsprogramm, aber es weist eine Schnittstelle zu den Appli­ kationsprogrammen 3 auf, wodurch das Computerbetriebsverwal­ tungssystem 1 aus Sicht der Anwendungsprogramme 3 als Teil des Betriebssystems 2 erscheint. Die Funktion des Computerbetriebs­ verwaltungssystems 1 ist es, die Ausführung der Anwendungspro­ gramme 3 zu überwachen und zu steuern.
Das Betriebssystem 2 weist die folgenden Merkmale auf.
  • (1) Die Fähigkeit, mehrere Anwendungsprogramme parallel auszu­ führen.
  • (2) Die Fähigkeit, ein neues Programm (Kindprogramm bzw. Toch­ terprogramm) von einem ausgeführten Programm (Elternpro­ gramm) zu erzeugen. Die Anzahl der gleichzeitig ausgeführ­ ten Programme erhöht sich, ohne durch das Betriebssystem begrenzt zu sein.
  • (3) Gleichzeitig ausgeführte Programme werden mit der gleichen Priorität ausgeführt und behandelt, außer es ist etwas anderes festgelegt. Die Priorität der ausgeführten Pro­ gramme kann festgelegt werden und dynamisch geändert wer­ den.
  • (4) Der virtuelle Speicherbereich weist eine endliche Größe auf. Wenn ein Programm ausgeführt wird, das diese endliche Größe überschreitet, wird das Programm sofort beendet und ein abnormales Ende (Fehler) wird erzeugt.
Der Aufbau des in Fig. 1 gezeigten Computerbetriebsverwaltungs­ systems 1 wird in Fig. 2 gezeigt und im folgenden beschrieben.
Wie in Fig. 2 gezeigt ist, enthält das Computerbetriebsverwal­ tungssystem 1 einen Prozeßverwalter 12, eine Programmdefini­ tionsdatei 21, eine Aufnahmedatei für vorgemerkte Programme (Anforderungswarteschlange) 22 und eine Protokolldatei 23. Der Prozeßverwalter 12 ist ein Programm, das unter dem Betriebs­ system arbeitet und das entweder im Hauptspeicher (Speicher) oder in einer ergänzenden Speichereinrichtung (Diskettenlauf­ werk) des Computers angeordnet ist, um das Ausführen der Pro­ gramme zu überwachen und zu steuern. Die Programmdefinitions­ datei 21 ist in der ergänzenden Speichereinrichtung (Disketten­ laufwerk) vorgesehen und ist das Mittel zum Aufzeichnen von Informationen über die ausgeführten Programme und enthält die maximale Anzahl der gleichzeitig ausführbaren Programme für jede Programmkategorie, die Ausführungspriorität von jedem Pro­ gramm, die Prozedur, die auszuführen ist, wenn ein Fehler auf­ tritt, und die Grenzen der Computerressourcen. Die Anforderungs­ warteschlangendatei 22 ist auch in der ergänzenden Speicher­ vorrichtung (Diskettenlaufwerk) vorgesehen und ist das Mittel zum Aufnehmen von Informationen über Programme, für die der Start der Ausführung während des Programmstarts eingeschränkt ist. Die Protokolldatei 23 ist auch in der ergänzenden Speicher­ vorrichtung (Diskettenlaufwerk) vorgesehen und ist das Mittel zum Aufnehmen der Protokollinformationen, die den Programmstart, das Programmende und Programmfehler betreffen.
Wie in Fig. 2 gezeigt ist, enthält die Programmdefinitionsdatei 21 die folgenden Daten: die maximale Anzahl der gleichzeitig ausführbaren Programme für jede Programmkategorie, die Ausfüh­ rungspriorität für jedes Programm, die auszuführenden Proze­ duren, wenn ein Fehler während der Programmausführung auftritt, und die auszuführenden Prozeduren, wenn ein Programm normale endet. Alle diese Datenparameter werden durch den Benutzer defi­ niert. Die Programmkategorien sind genauer durch den Benutzer vordefinierte Gruppen von Programmen und zeigen den Typ des Programms an. Die maximale Anzahl der gleichzeitig ausführbaren Programme, die Prioritätssequenz, die Fehlerwiederherstellungs­ prozeduren und die Endprozedur sind für jede Programmkategorie festgelegt. Auf die in der Programmdefinitionsdatei gespeicher­ ten Daten wird beim Programmstart, beim Programmende und, wenn ein Fehler auftritt, Bezug genommen, um die definierten Prozesse auszuführen.
Die Aufnahmedatei für vorgemerkte Programme (Anforderungswarte­ schlange) 22 ist ein Pufferbereich zum Halten der Programme, die aufgrund der Ausführungsgrenzen warten, ausgeführt zu werden. Die Programme sind in der Aufnahmedatei für vorgemerkte Pro­ gramme 22 in absteigender Reihenfolge der Programmausführungs­ priorität für jede Programmkategorie gespeichert. Genauer gibt es mehrere Anforderungswarteschlangen für jede Programmkategorie in der Aufnahmedatei für vorgemerkte Programme 22, und die vor­ gemerkten Programme sind innerhalb jeder Anforderungswarte­ schlange in absteigender Reihenfolge von dem Programm mit der höchsten Ausführungspriorität gespeichert. Als ein Ergebnis werden die Programme beginnend von dem Programm mit der höchsten Priorität ausgeführt.
Bei einem Programmstart speichert die Protokolldatei 23 ein Startprotokoll, das den Namen des gestarteten Programms, die Zeit und das Datum an dem das Programm gestartet wurde, den Computernamen und die Programmnummer beim Start enthält. Wenn ein Fehler auftritt, speichert die Protokolldatei 23 ein Fehler­ protokoll, das den Programmnamen, die Zeit und das Datum an dem der Fehler auftrat, den Computernamen, die Programmnummer und den Fehlerstatus enthält. Der Fehlerstatus ist die Abschluß­ nachricht des Betriebssystems oder die Bedingungen als der Fehler auftrat und wird durch den Prozeßverwalter 12 zur Ver­ fügung gestellt. Wenn ein Programm endet, speichert die Proto­ kolldatei 23 ein Endprotokoll, das den Programmnamen, die Zeit und das Datum an dem das Programm endete, den Computernamen, die Programmnummer und den Endstatus (normales oder abnormales Ende) enthält. Auf die gespeicherten Protokolldateien kann durch den Benutzer zugegriffen werden, um den Betriebsstatus des Systems, für die Fehlersuche den Grund eines Fehlers festzu­ stellen, oder falls es anderweitig nötig ist.
Der in Fig. 2 gezeigte Prozeßverwalter 12 weist auch die fol­ genden Steuereinheiten 13-20 auf.
Die Ausführungssteuereinheit 13 steuert die Ausführung der ein­ zelnen Anwendungsprogramme entsprechend den Anwendungsprogramm­ startanweisungen, die entweder von dem Bediener oder von dem Programm empfangen werden.
Das Ausführungsstatusüberwachungsmittel 14 überwacht den Aus­ führungsstatus der Anwendungsprogramme durch Austausch von Nachrichten mit den ausgeführten Anwendungsprogrammen. Wenn in einem der ausgeführten Programme ein Fehler auftritt, benach­ richtigt das Ausführungsstatusüberwachungsmittel 14 die Steuer­ einheit, die den vordefinierten Fehlerprozeß ausführt.
Der Computer-Ressourcen-Verwalter 15 überwacht die Verwendung der Computerressourcen einschließlich der CPU, des Speichers und des Diskettenlaufwerks durch Vergleichen der von der Programm­ definitionsdatei 21 gelesenen Grenzwerte mit der aktuellen Be­ nutzung. Wenn ein Fehler auftritt, benachrichtigt der Computer- Ressourcen-Verwalter 15 den Fehlerwiederherstellungsprozessor, der den vordefinierten Fehlerwiederherstellungsprozeß ausführt, und das Fehlerkommunikationsmittel, das den vordefinierten Feh­ lerbenachrichtigungsprozeß ausführt.
Die Ausführungsprioritätssequenzsteuereinheit 16 steuert die Prioritätsreihenfolge der Programme in der Aufnahmedatei für vorgemerkte Programme (Anforderungswarteschlange) 22 und die Prioritätsreihenfolge der ausgeführten Programme entsprechend der von der Programmdefinitionsdatei 21 gelesenen Programm­ prioritätssequenz.
Der Endprozessor 17 führt den Nachprozeß (der Prozeß, der aus­ geführt wird, nachdem ein Programm endet) entsprechend der in der Programmdefinitionsdatei 21 gespeicherten Nachprozeßprozedur aus, wenn ein Programm endet, und speichert das Endprotokoll in der Protokolldatei 23.
Der Fehlerwiederherstellungsprozessor 18 führt den Fehlerwieder­ herstellungsprozeß entsprechend dem in der Programmdefinitions­ datei 21 gespeicherten vordefinierten Fehlerwiederherstellungs­ prozeß aus, wenn ein Fehler auftritt, und speichert ein Fehler­ protokoll in der Protokolldatei 23.
Das Fehlerkommunikationsmittel 19 informiert den Bediener un­ mittelbar nach dem Auftreten eines Fehlers mittels beispiels­ weise eines hörbaren Alarms oder anderen Kommunikationsmittel entsprechend dem in der Programmdefinitionsdatei 21 gespeicher­ ten Fehlerwiederherstellungsprozeß.
Der Netzwerkverwalter 20 kommuniziert mit den Prozeßverwaltern 12, die auf anderen Computern des Kommunikationsnetzwerks aus­ geführt werden, um Protokollinformationen betreffend dem Pro­ grammstart, Fehlern und Programmende auszutauschen. Der Prozeß­ verwalter 12 von einem Computer kann damit den Ausführungsstatus der Programme auf anderen Computern des Netzwerke s festlegen bzw. bestimmen und eine zentralisierte Betriebsverwaltung kann mittels eines einzelnen Computers erreicht werden.
Fig. 3 ist ein Blockdiagramm und ein Flußdiagramm der verschie­ denen Steuereinheiten einer Ausführungsform des Computerbe­ triebsverwaltungssystems 1 entsprechend der vorliegenden Erfin­ dung.
Wenn ein Anwendungsprogramm ausgeführt werden soll, gelangt eine Ausführungsanforderung an das Computerbetriebsverwaltungs­ system 1 und nicht an das Betriebssystem. Wenn eine Programm­ startanforderung durch den Bediener oder von einem anderen Programm an das Computerbetriebsverwaltungssystem 1 (S21) gegeben wird, liest die Ausführungssteuereinheit 13 die maxi­ male Anzahl der gleichzeitig ausführbaren Programme von der Programmdefinitionsdatei 31 (S22) und vergleicht diese maximale Anzahl mit der Anzahl der ausgeführten Programme. Wenn die An­ zahl der ausgeführten Programme kleiner als die gelesene Grenze (maximale Anzahl) ist, wird eine Tochterprogrammstartanforderung an das Betriebssystem (S23) gegeben. Wenn die Anzahl der ausge­ führten Programme mit der Grenze (maximale Anzahl) übereinstimmt und eine Programmstartanforderung herausgegeben wird, wird das angeforderte Programm in der Aufnahmedatei für vorgemerkte Pro­ gramme 33 vorgemerkt.
Die Ausführungssteuereinheit 13 überwacht regelmäßig die Anzahl der ausgeführten Programme. Als ein Ergebnis wird, wenn es mög­ lich wird ein vorgemerktes Programm auszuführen, das nächste auszuführende Programm von der Aufnahmedatei für vorgemerkte Programme 33 gelesen und eine Startanforderung wird an das Betriebssystem (S23) gegeben. Die Ausführungssteuereinheit 13 speichert dann das Startprotokoll in der Protokolldatei 32, wenn der Programmstart endet.
Die so ausgeführten Anwendungsprogramme 3 werden so ausgeführt, daß eine Eltern-Tochterbeziehung mit dem Prozeßverwalter 12 er­ halten wird, so daß Informationen mit dem Prozeßverwalter 12 in dem Computerbetriebsverwaltungssystem 1 immer ausgetauscht (kommuniziert) werden können. Wenn ein neues Programm ausgeführt wird, erkennt das Betriebssystem 2 das Programm (d. h. der Pro­ zeßverwalter 12 in dem Computerbetriebsverwaltungssystem 1) und führt das neue Programm als "Eltern" und das neue Programm als "Tochter" aus. Das Mittel zum Durchführen dieser Eltern-Tochterkommunikation ist dadurch gekennzeichnet, daß es deut­ lich einfacher ist als das Mittel, das für eine Kommunikation zwischen Programmen mit unterschiedlicher Beziehung benötigt wird. Die Anwendungsprogramme, die durch den Prozeßverwalter 12 verwaltet werden, sind relativ zu dem Prozeßverwalter 12 immer "Tochter" und sind so aufgebaut und verwaltet, daß "Tochter der Tochter", d. h. "Enkel"-Programme nicht auftreten.
Wenn ein Programm einmal gestartet ist, überwacht das Ausfüh­ rungsstatusüberwachungsmittel 14 den Ausführungsstatus von jedem ausgeführten Programm durch Senden von Nachrichten zu und Empfangen von Antworten von jedem ausgeführten Programm (S24). Wenn ein Fehler mit einem überwachten Programm auftritt, werden der Fehlerwiederherstellungsprozessor 18 und das Fehlerkommuni­ kationsmittel 19 entsprechend informiert, um die vordefinierten Prozesse (S29 und S30) auszuführen.
Wenn es eine Anforderung von dem Bediener oder einem anderen Programm während der Programmausführung gibt, die Prioritäts­ sequenz eines ausgeführten Programmes oder eines vorgemerkten Programmes in der Aufnahmedatei für vorgemerkte Programme (An­ forderungswarteschlange) 33 zu ändern, ändert die Ausführungs­ prioritätssequenzsteuereinheit 16 die Prioritätssequenz der aus­ geführten Programme oder der Programme in der Aufnahmedatei für vorgemerkte Programme 33 (S28).
Gleichzeitig zu der Überwachung der Programmausführung durch das Ausführungsstatusüberwachungsmittel 14 überwacht der Computer- Ressourcen-Verwalter 15 die Computerressourcen (S25) durch Ver­ gleichen der aktuellen Benutzung der Computerressourcen (ein­ schließlich der CPU-Zeit, Speicher und Diskettenlaufwerk) mit den in der Programmdefinitionsdatei definierten Ressourcenver­ wendungsgrenzen. Wenn ein Fehler auftritt, werden der Fehler­ wiederherstellungsprozessor 18 und das Fehlerkommunikations­ mittel 19 benachrichtigt, um die vordefinierten Prozesse auszu­ führen (S29 und S30).
Als Teil der Ausführungsstatusüberwachung und der Computer­ ressourcenverwaltungsroutinen werden Programme, die während der Kommunikation mit anderen Programmen auf dem Netzwerk ausge­ führt werden, auch mittels des Netzwerkverwalters 20 überwacht durch Austausch von Informationen mit den Prozeßverwaltern der anderen Computer 34 auf dem Netzwerk (31).
Die Statusausführungsüberwachung (S24) und die Computerressour­ cenverwaltung (S25) werden dann in einer andauernden Schleife ausgeführt bis das Betriebssystem dem Prozeßverwalter mitteilt, daß ein Programm beendet wurde.
Wenn ein Fehler während der Ausführungsstatusüberwachung oder der Computerressourcenverwaltung auftritt, wird die Fehlerin­ formation dem Fehlerwiederherstellungsprozessor 18 zur Verfü­ gung gestellt, der den Wiederherstellungsprozeß entsprechend der in der Programmdefinitionsdatei gespeicherten Wiederher­ stellungsprozedur ausführt und der gleichzeitig das Fehler­ protokoll in der Protokolldatei 32 speichert (S29). Das Fehler­ kommunikationsmittel 19 gibt auch einen entsprechenden Alarm heraus oder eine andere Benachrichtigung entsprechend dem in der Programmdefinitionsdatei 21 gespeicherten Fehlerwiederherstel­ lungsprozeß (S30).
Wenn der Prozeßverwalter durch das Betriebssystem benachrich­ tigt wird, daß ein Programm beendet wurde, führt der Endpro­ zessor 17 den in der Programmdefinitionsdatei gespeicherten Endprozeß aus und schreibt das Endprotokoll in die Protokoll­ datei (S27).
Die allgemeine Funktion der verschiedenen Steuereinheiten des Computerbetriebsverwaltungssystems 1 entsprechend der vorlie­ genden Erfindung wurden oben beschrieben. Eine detailliertere Beschreibung ihres Betriebes wird im folgenden beschrieben.
Fig. 4 ist ein Flußdiagramm des Betriebes der Ausführungssteuer­ einheit 13 des Prozeßverwalters 12 in dem Computerbetriebsver­ waltungssystem 1 entsprechend der vorliegenden Erfindung.
Programmstartanforderungen, die von dem Bediener oder von einem anderen Programm zu dem Computerbetriebsverwaltungssystem 1 gegeben werden (S41), werden in dem Prozeßverwalter 12 einge­ geben, der dann die maximale Anzahl der Programmkopien von der Programmdefinitionsdatei 21 liest, die gleichzeitig ausgeführt werden können (S42). Die maximale Anzahl der gleichzeitig aus­ führbaren Programme kann (1) die gesamte Anzahl der Programme sein, die gleichzeitig auf dieser Maschine ausgeführt werden können, oder kann (2) die Anzahl der Kopien von einer Programm­ kategorie sein, die gleichzeitig ausgeführt werden können. Die Anzahl der Programme des gleichen Typs, die momentan auf dem Computer (Maschine) laufen, wird auch gezählt. Die von der Pro­ grammdefinitionsdatei 21 gelesene Steuergrenze wird mit der An­ zahl der ausgeführten Programme verglichen (S44). Wenn die An­ zahl der ausgeführten Programme kleiner ist als die Steuer­ grenze, kann das Programm sofort ausgeführt werden und der Pro­ grammstart wird fortgesetzt (S45). Die Startprozedur weist das Betriebssystem an, daß das Programm als "Tochter" (Tochterpro­ zeß) des Prozeßverwalters gestartet wurde. Wenn der normale Start vollendet ist, werden der Name des gestarteten Programms, die Zeit und das Datum, der Computername und die Programmnummer beim Start in der Protokolldatei 23 als das Startprotokoll ge­ speichert (S46).
Wenn während der Programmausführung die Anzahl der momentan ausgeführten Programme kleiner ist als die Steuergrenze, wird das Programm in die Aufnahmedatei für vorgemerkte Programme (Anforderungswarteschlange) 22, der Pufferbereich für Programme, die darauf warten ausgeführt zu werden, geschrieben.
Der Prozeßverwalter 12 überprüft regelmäßig ob vorgemerkte Programme in der Aufnahmedatei für vorgemerkte Programme (An­ forderungswarteschlange) 22, für die eine Ausführungsanfor­ derung ausgegeben wurde, ausgeführt werden können. Dieser Aus­ führungsanfrageprozeß wird fortgeführt, um festzustellen ob vorgemerkte Programme ausgeführt werden können soweit die An­ zahl der momentan ausgeführten Programme die Steuergrenze über­ schreitet. Wenn die Anzahl der momentan ausgeführten Programme kleiner wird als die Steuergrenze, wird das Betriebssystem instruiert mit der Programmausführung fortzufahren (S45).
Fig. 5 ist ein Flußdiagramm des Betriebes des Ausführungs­ statusüberwachungsmittels 14 in einer Ausführungsform des Com­ puterbetriebsverwaltungssystems entsprechend der vorliegenden Erfindung.
Wie in Fig. 5 gezeigt ist, startet der Prozeßverwalter 12 ein Anwendungsprogramm als "Tochter" des Prozeßverwalters 12, basie­ rend auf der Programmstartanforderung (S51). Das Betriebssystem verfolgt das Programm (Prozeß), das den Start eines Programms verwaltet, als den "Eltern-Prozeß" und das Programm, das somit als "Tochter-Prozeß" gestartet wird. Das Mittel zur Kommunika­ tion zwischen den Programmen in einer Eltern-Tochterbeziehung ist einfach.
Alle Anwendungsprogramme werden als "Tochter" des Prozeßverwal­ ters 12 ausgeführt. Durch eine regelmäßige Kommunikation mit den ausgeführten Programmen ist der Prozeßverwalter 12 in der Lage den Ausführungsstatus von jedem Anwendungsprogramm zentral zu verwalten.
Wie wiederum in Fig. 5 gezeigt ist, sendet das Ausführungs­ statusüberwachungsmittel 14 zu jedem Anwendungsprogramm unter seiner Verwaltung in regelmäßigen Zeitabständen eine Nachricht, um festzustellen ob jedes abgefragte Programm noch ausgeführt wird (S52).
Das abgefragte Anwendungsprogramm sendet dem Ausführungsstatus­ überwachungsmittel 14 eine Antwortnachricht, die bestimmt auf welche Bestätigungsnachricht das Anwendungsprogramm antwortet. Der Prozeßverwalter 12 bestätigt, daß das abgefragte Anwendungs­ programm noch ausgeführt wird, indem er die Antwort innerhalb eines vorbestimmten Zeitraums empfängt (S53). Der Prozeßver­ walter 12 überwacht den Ausführungsstatus von jedem Programm durch Wiederholen dieses Nachrichtenaustauschs mit jedem Anwen­ dungsprogramm bis das Betriebssystem dem Prozeßverwalter 12 mitteilt, daß ein spezielles Anwendungsprogramm beendet ist (S54).
Alle Anwendungsprogramme sind so geschrieben, daß sie sofort antworten, wenn ein Bestätigungsnachricht von dem Prozeßver­ walter 12 empfangen wird. Diese Funktion kann dadurch erreicht werden, daß die benötigten Unterroutinen als Bibliothek vorge­ sehen werden, die eingefügt werden, wenn das Programm geschrie­ ben und übersetzt wird.
Wenn die Antwort nicht innerhalb der vorbestimmten Zeitperiode empfangen wird (S53), bestimmt der Prozeßverwalter 12 das ein Fehler in dem Anwendungsprogramm aufgetreten ist, und benach­ richtigt den Fehlerwiederherstellungsprozessor 18 und das Feh­ lerkommunikationsmittel 19 (S55, S56). Der Fehlerwiederherstel­ lungsprozessor 18 und das Fehlerkommunikationsmittel 19 führen dann entsprechend vorbestimmte Prozeduren aus.
Es ist dadurch für das Computerbetriebsverwaltungssystem mög­ lich, die Fehler festzustellen, wenn ein Fehler in einem ausge­ führten Programm auftritt, und es kann die entsprechende Fehler­ wiederherstellung oder den Umschaltprozeß ausführen. Fehler, die durch ein Programm erzeugt werden, können oft weder durch das Programm selbst noch durch das Betriebssystem festgestellt werden. Dies macht ein durch die vorliegende Erfindung beschrie­ benes Computerbetriebsverwaltungssystem notwendig für den Be­ trieb von Systemen, die eine hohe Zuverlässigkeit erfordern.
Ein Verfahren zum gleichzeitigen Ausführen von mehreren Pro­ grammen mittels der Ausführungssteuereinheit 13 und des Aus­ führungsstatusüberwachungsmittels 14 des Computerbetriebsver­ waltungssystems entsprechend der vorliegenden Erfindung wird im folgenden beschrieben.
Wenn eine neue Programmstartanforderung entweder durch den Be­ diener oder durch ein Programm ausgegeben wird, startet der Pro­ zeßverwalter 12, wie oben beschrieben, das Programm als Tochter-Prozeß Nach dem Programmstart überwacht das Ausführungsstatus­ überwachungsmittel 14 den Ausführungsstatus des Programmes. Von diesem Zustand an ist es für den Prozeßverwalter 12 möglich eine andere neue Progammstartanforderung zu empfangen. Wenn dann eine andere Programmstartanforderung empfangen wird, wird das neue Programm durch die Ausführungssteuereinheit 13 gestartet und der Ausführungsstatus wird dann durch das Ausführungsstatusüber­ überwachungsmittel 14 überwacht. Zu diesem Zeitpunkt überwacht der Prozeßverwalter 12 die Ausführung von zwei Programmen und kann eine andere Programmstartanforderung empfangen. Diese ein­ fache Schleife wird danach wiederholt und somit wird es möglich, die Anzahl der gleichzeitig ausgeführten Programme zu erhöhen.
Fig. 6 ist ein Flußdiagramm eines Betriebes der Ausführungs­ prioritätssequenzsteuereinheit 16, wenn in dem Computerbetriebs­ verwaltungssystem nach der vorliegenden Erfindung ein Programm­ start gefordert wird.
Wie in Fig. 6 gezeigt ist, liest die Ausführungsprioritäts­ sequenzsteuereinheit 16 die Prioritätsreihenfolge des Programms und die maximale Anzahl der gleichzeitig ausführbaren Programme, die durch die Programmgruppe verwaltet werden, von der Programm­ definitionsdatei 21 (S62), wenn eine Programmstartanforderung in dem Prozeßverwalter 12 (S61) eingegeben wird. Die Ausführungs­ prioritätssequenzsteuereinheit 16 bestätigt dann bzw. stellt dann die Anzahl der momentan ausgeführten Programme und die An­ zahl der Programme der gleichen Programmkategorie (S63) fest.
Wenn die Anzahl der momentan ausgeführten Programme kleiner ist als die Anzahl der ausführbaren Programme, die von der Programm­ definitionsdatei ausgelesen wurde, wird das Programm als Toch­ terprogramm des Prozeßverwalters gestartet durch Mitteilen der Prioritätsreihenfolge des Programmes an das Betriebssystem und durch Anweisen des Betriebssystems, das Programm zu starten. Wenn versucht wird ein Programm zu starten, das die Steuergrenze der Anzahl der gleichzeitig ausführbaren Programme überschrei­ tet, wird die Ausführung sofort unterbrochen, wird ein defi­ nierte Prioritätsreihenfolge (Initialisierungswert) an das Programm angehängt und wird das Programm vorübergehend in der Aufnahmnedatei für vorgemerkte Programme (Anforderungswarte­ schlange) 22 als eine Ausführungsanforderung (S66) gespeichert. Die Prioritätsreihenfolge des vorgemerkten Programms wird mit der der anderen Programme in der Anforderungswarteschlange 22 verglichen und die Anforderungswarteschlange (22) wird in ab­ steigender Reihenfolge der Priorität sortiert (S67).
Der Prozeßverwalter 12 überwacht regelmäßig die Anzahl der ausgeführten Programme, so daß das Programm an der Spitze der Warteschlange in den Speicher gebracht wird und durch die Aus­ führungssteuereinheit ausgeführt wird, wenn die Ausführung eines der Programme in der Anforderungswarteschlange 22 mög­ lich wird.
Fig. 7 ist ein Flußdiagramm des Betriebes der Ausführungsprio­ ritätssequenzsteuereinheit 16, wenn die Prioritätsreihenfolge der ausgeführten Programme basierend auf Bedieneranweisungen, die von einem Steuerpult eingegeben werden, oder basierend auf Anweisungen von anderen Programmen dynamisch geändert wird.
Die Ausführungsprioritätssequenzsteuereinheit 16 ist immer darüber informiert welche Programme momentan ausgeführt werden und über die Prioritätsreihenfolge von diesen Programmen. Wenn es basierend auf Bedieneranweisungen, die von einem Steuerpult eingegeben werden, oder basierend auf Anweisungen von einem anderen Programm eine Anforderung gibt, die Prioritätsreihen­ folge eines ausgeführten Programms zu ändern (S71), ist die Ausführungsprioritätssequenzsteuereinheit 16 in der Lage basie­ rend auf der neuen Prioritätsreihenfolgeänderungsanforderung, die von einer externen Quelle empfangen wurde, die geeignete Prioritätsreihenfolge und die Beziehung zwischen den verschie­ denen ausgeführten Programmen (S72) festzulegen.
Diese Auswertung vergleicht die Prioritätsreihenfolge des an­ geforderten Programms (genauer, das Programm für das die Änderung der Prioritätsreihenfolge angefordert wurde) mit der Prioritäts­ reihenfolge der momentan ausgeführten Programme, um die relative Priorität der betreffenden Programme festzulegen und um die Menge der Änderung, die in der Ausführungspriorität gemacht werden kann, einzustellen. Daher wird, wenn ein anderes Programm mit einer höheren Priorität ausgeführt wird und die Priorität des angeforderten Programms erhöht werden soll, die Priorität deutlich erhöht, um eine bevorzugte Ausführung gegenüber den anderen Programmen zu ermöglichen. Eine Änderung in der Priori­ tätsreihenfolge der Programme, die im Speicher ausgeführt werden, wird durch Ändern der Zeit, die die Programme die CPU (CPU) benutzen können, erreicht.
Somit wird die Prioritätsreihenfolge basierend auf dieser Ver­ arbeitung (S73) geändert. Nachdem die Prioritätsreihenfolge ge­ ändert wurde, wird die neue Prioritätsreihenfolge sofort gültig und alle Programme werden basierend auf dieser neuen Prioritäts­ reihenfolge ausgeführt. Dieser Prozeß kann durch Mitteilen des Programmnamens und der geänderten (aktuallisierten) Prioritäts­ reihenfolge an das Betriebssystem erreicht werden.
Die Ausführungsprioritätssequenzsteuereinheit 16 kann auch die Prioritätsreihenfolge der vorgemerkten Programme basierend auf Bedieneranweisungen, die von einem Eingabepult eingegeben wer­ den, oder basierend auf Anweisungen von einem anderen Programm dynamisch ändern. Wenn es eine Anforderung gibt, die Prioritäts­ reihenfolge der vorgemerkten Programme basierend auf Bediener­ anweisungen, die von einem Eingabepult eingegeben werden, oder basierend auf Anweisungen von einem anderen Programm zu ändern, wird die Prioritätsreihenfolge des angeforderten Programmes mit der der anderen vorgemerkten Programmen verglichen, um, wie oben beschreiben eine Änderung der Prioritätsreihenfolge zu erwirken. Nachdem die Prioritätsreihenfolge geändert wurde, werden die vorgemerkten Programme in absteigender Ordnung der Priorität neu sortiert.
Fig. 8 ist ein Flußdiagramm des Betriebes des Fehlerwiederher­ stellungsprozessors 18 in dem Computerbetriebsverwaltungssystem nach der vorliegenden Erfindung.
Wie in Fig. 8 gezeigt ist, wird der Fehlerwiederherstellungs­ prozessor 18 aktiviert, wenn er durch das Ausführungsstatus­ überwachungsmittel 14 informiert wird, daß ein Anwendungspro­ gramm in einem Fehlerzustand ist (S81). Der Fehlerwiederher­ stellungsprozessor 18 liest dann die Fehlerwiederherstellungs­ prozedur von der Programmdefinitionsdatei (S82).
Die Fehlerwiederherstellungsprozedur ist für jede Anwenderpro­ grammkategorie getrennt definiert und enthält die Maßnahmen, die durchzuführen sind, wenn ein Fehler auftritt, die Wieder­ herstellungsprozedur, die Alarmbenachrichtigung, die Post, und die Maßnahmen, die für jedes verbundenes Programm durchzu­ führen sind. Die gleiche Fehlerwiederherstellungsprozedur wird für alle Programme in einer einzelnen Programmkategorie verwen­ det, obwohl es möglich ist eine einzelne Fehlerwiederherstel­ lungsprozedur für jedes Programm zu definieren. Diese Daten können auf Anforderung des Systemverwalters geeignet neu ge­ schrieben werden und die neuen Fehlerwiederherstellungsproze­ duren können als die gültige Wiederherstellungsprozedur von dem Zeitpunkt an, ab dem die Prozedur neu geschrieben wurde, ausge­ führt werden.
Der Fehlerwiederherstellungsprozessor 18 führt genau die Fehler­ wiederherstellungsprozeduren (S84), wie definiert, aus. Diese Fehlerwiederherstellungsprozedur wird auch mit Vorrang gegenüber allen anderen ausgeführten Programmen ausgeführt und eine Auf­ nahme der Wiederherstellungsprozedurausführung wird als das Feh­ lerprotokoll, das den Computernamen, den Programmnamen, die ausgeführte Tätigkeit und die Zeit enthält in der Protokolldatei 23 gespeichert (S83).
Fig. 9 ist eine Tabelle eines Beispiels der Prozedurdefinitionen für die Fehlerwiederherstellungsverarbeitung in dem Computerbe­ triebsverwaltungssystem entsprechend der vorliegenden Erfindung. In Fig. 9 beschreibt die Programmkategorie den Programmnamen. Mehrere Kopien des gleichen Programmes können gleichzeitig aus­ geführt werden, aber die Fehlerwiederherstellungsprozedur ist die gleiche für alle ausgeführten Kopien des Programms.
Die auszuführende Maßnahme, wenn ein Fehler auftritt (Spalte 2 der Tabelle), beschreibt welche Maßnahme aufzunehmen ist, wenn ein Fehler in einer Ausführung der Anwendungsprogramme auftritt. Die gezeigten Maßnahmen sind nichts Unternehmen, zwangsweises Beenden und eine Fehlerwiederherstellungsprozedur. Die Proze­ duren für ein zwangsweises Beenden und die Fehlerwiederherstel­ lungsprozeduren sind in der Programmdefinitionsdatei 21 defi­ niert.
Die Alarmbenachrichtigung (Spalte 4) definiert ob der Bediener automatisch mittels eines Funkrufs über einen Taschenempfänger (Pager), eines Funkrufs über das öffentliche Adressensystem oder anderen Mitteln informiert wird, wenn ein Fehler auftritt. Post (Spalte 5) bezieht sich auf elektronische Post und defi­ niert, ob ein Alarm (Fehlernachricht) auf dem Computerterminal angezeigt werden soll, wenn ein Fehler auftritt, oder ob eine e-mail Nachricht zu einem anderen Computerterminal des Netz­ werkes gesendet werden soll. Die Kommunikationsfunktion, die angewendet wird, wenn ein Fehler auftritt, wird mittels der unten beschriebenen Fehlerkommunikationsfunktion erreicht.
Die verbundenen Programme (Spalte 6) definieren die Programm­ gruppe, die gleichzeitig mit dem Programm ausgeführt wird, das den Fehler erzeugt, und die eine Beziehung mit diesem Programm aufweisen, oder sie definieren die Programmgruppe, die nach dem Beenden des Programms, das den Fehler erzeugt, ausgeführt werden soll. Die Fehlerwiederherstellungsprozedur ist in der Programmdefinitionsdatei 21 für alle Programme definiert, die zur der gleichen Gruppe gehören, und alle ausgeführten Programme in dieser Gruppe werden entsprechend der gleichen Fehlerwieder­ herstellungsprozedur verarbeitet.
Fig. 10 ist ein Flußdiagramm des Betriebes des Endprozessors 17 in dem Computerbetriebsverwaltungssystem entsprechend der vorliegenden Erfindung.
Wenn eine Ausführung eines Programms gestoppt wird (S101), be­ nachrichtigt das Betriebssystem den Endprozessor 17 des Prozeß­ verwalters, daß das Programm beendet wurde (S102). Basierend auf dem Endstatus des Programms, das vom Betriebssystem empfan­ gen wurde, stellt der Endprozessor 17 fest, ob das Ende normal oder abnormal war (S103). Wenn das Programm aufgrund eines ab­ normalen Endes beendet wurde, wird der Fehlerwiederherstellungs­ prozessor 18 benachrichtigt (S107) und der entsprechende Wieder­ herstellungsprozeß wird angefordert. Wenn die Programmbeendung normal war, speichert der Endprozessor 17 den Programmnamen des beendeten Programms, den Maschinennamen, die Zeit und das Datum, die Programmnummer und den Endstatus in das Endprotokoll der Protokolldatei 23 (S104). Eine Prozedur, die zur Ausführung nach einer Programmbeendigung definiert ist, wird dann aus der Programmdefinitionsdatei 21 (S105) gelesen und die Prozedur wird genau ausgeführt (S106). Eine kontinuierliche Verarbeitung eines Programms kann unter Verwendung dieser Nachprozeßdefini­ tion erreicht werden. Wenn der Nachprozeß durchgeführt ist, ist die komplette Reihenfolge der Prozesse durchgeführt.
Fig. 11 ist ein Flußdiagramm des Betriebes des Computer-Ressour­ cen-Verwalters 15 in dem Computerbetriebsverwaltungssystem ge­ mäß der vorliegenden Erfindung.
Wie in Fig. 11 gezeigt ist, überprüft der Computer-Ressourcen-Verwalter 15 die aufsummierte bzw. gesamte CPU-Zeit, die durch jedes Programm verwendet wurde, für alle ausgeführten Programme, die durch den Prozeßverwalter 12 verwaltet werden (S111) und vergleicht dann die gesamte aktuelle CPU-Zeit mit den Steuer­ grenzen (vordefinierter Wert), die aus der Programmdefinitions­ datei (S112) ausgelesen wurden. Wenn der Vergleich zeigt, daß die Steuergrenze überschritten wird, werden der Fehlerwieder­ herstellungsprozessor 18 und das Fehlerkommunikationsmittel 19 benachrichtigt (S121, S122).
Wenn die aufsummierte CPU-Zeit die Steuergrenze nicht über­ schreitet, überprüft der Computer-Ressourcen-Verwalter 15 die Menge des verwendeten Speichers (S114) und vergleicht dann den aktuell verwendeten Speicher mit der Steuergrenze (vordefinier­ ter Wert), die aus der Programmdefinitionsdatei gelesen wurde (S115). Wenn dieser Vergleich zeigt, daß die Steuergrenze über­ schritten wird, werden der Fehlerwiederherstellungsprozessor 18 und das Fehlerkommunikationsmittel 19 benachrichtigt (S121, S122).
Die Größe des verwendeten Diskettenplatzes wird in gleicher Weise überprüft (S117) und der aktuell verwendete Disketten­ platz wird mit den Steuergrenzen (vordefinierte Werte), die von der Programmdefinitionsdatei gelesen wurden (S118), verglichen. Wenn dieser Vergleich zeigt, daß die Steuergrenze überschritten wird, werden der Fehlerwiederherstellungsprozessor 18 und das Fehlerkommunikationsmittel 19 benachrichtigt (S121, S122).
Die Ressourcensteuergrenzen sind in der Programmdefinitions­ datei 21 durch den Benutzer definiert als der maximale Platz eines gegebenen Betriebsmittels, der durch jede Programmkate­ gorie verwendet werden kann. In diesem Beispiel sind die auf­ summierte CPU-Zeit, die Speicherzuweisung und die Disketten­ platzzuweisung speziell definiert. Die auszuführenden Aktionen, wenn die definierten Betriebsmittelgrenzen überschritten werden, werden auch durch den Benutzer für jedes Programm (oder Pro­ grammkategorie) in der Programmdefinitionsdatei 21 definiert.
Der Netzwerkverwalter 20 des Computerbetriebsverwaltungssystems gemäß der vorliegenden Erfindung wird im folgenden beschrieben.
Die Aufgabe des Netzwerkverwalters 20 ist es den Betrieb eines großen Anwendungsprogramms zu verwalten, das auf einer Mehrzahl von Computern durch Kommunikation zwischen den einzelnen Kopien der Anwendung (eine Netzwerkanwendung) betrieben wird, dadurch das die Prozeßverwalter 12 in die Lage versetzt werden mitein­ ander zu kommunizieren und Informationen zwischen mehreren Netzwerkcomputern, die miteinander zu einem gemeinsamen Netz­ werk verbunden sind, zu teilen und verwendet werden, um indivi­ duell eine Anwendung auszuführen, die mit anderen Kopien dieser Anwendung, die auf anderen Computern laufen, kommuniziert.
Die Information, die zwischen den Prozeßverwaltern 12 auf ver­ schiedenen Computern ausgetauscht werden, ist die Protokoll­ dateiinformation, die sich auf den Programmstart, -ende und -fehler bezieht; sind die Betriebsstatusdaten für Anwendungs­ programme, die durch Kommunikation zwischen den Computern ar­ beiten; und sind Informationen, die die Programmdefinitionsdatei (einschließlich Prioritätsreihenfolge und Fehlerwiederherstel­ lungsprozeduren) betreffen. Die Protokolldatei speichert auch den Namen des Computers von dem die Informationen stammen, wodurch es möglich ist, festzustellen von welchem Computer die Protokolldatei stammt und wodurch es ermöglicht wird, das die Informationen durch einen einzelnen Computer überwacht werden. Der Betriebsstatus der Anwenderprogramme, die während der Kom­ munikation mit Programmen, die auf anderen Netzwerkcomputern ausgeführt werden, arbeiten, wird durch die Prozeßverwalter, die auf den einzelnen Computern ausgeführt werden, verwaltet. Die einzelnen Prozeßverwalter kommunizieren dann miteinander regelmäßig, so daß die Netzwerkanwendung ohne Konflikt ausge­ führt werden kann. Die Programmprioritätsreihenfolge, die Feh­ lerwiederherstellungsprozedur und andere Informationen in der Programmdefinitionsdatei werden zentral verwaltet, dadurch das die Informationen, die in einen Computer eingegeben werden, zu mehreren Computern - wie notwendig - kopiert werden.
Fig. 12 ist ein Flußdiagramm des Betriebes des Netzwerkver­ walters 20 in dem Computerbetriebsverwaltungssystem gemäß der vorliegenden Erfindung.
Wie in Fig. 12 gezeigt ist, versendet der Prozeßverwalter 12 eine Statusanforderungsnachricht an das Anwendungsprogramm, das auf einem Computer ausgeführt wird, um den Status dieses Pro­ grammes zu überwachen (S121). Wenn der Prozeßverwalter 12 die Antwort von diesem Anwendungsprogramm innerhalb der vordefi­ nierten Zeitdauer empfängt (S122), setzt der Prozeßverwalter 12 die Überwachung des Programmstatus durch Wiederholen dieser Nachrichtenschleife, wie oben beschrieben, fort.
Wenn der Prozeßverwalter 12 die Antwort des Anwendungsprogramms nicht innerhalb der vordefinierten Zeitdauer empfängt (S122), überprüft der Prozeßverwalter 12 den Ausführungsstatus des ab­ gefragten Programms. Der Prozeßverwalter 12 erkennt den Kommu­ nikationscomputer und das Programm basierend auf der Definition der verbundenen Programme in der Programmdefinitionsdatei 21. Nachrichten werden zwischen den Prozeßverwaltern von den komu­ nizierenden Computern zum Statusüberwachen ausgetauscht (S123). Wenn der Prozeßverwalter die Antwort von dem Programm normal empfängt (S124), stellt der Prozeßverwalter fest, daß ein Fehler auf dem Netzwerk aufgetreten ist (S127). Wenn der Pro­ zeßverwalter die Antwort von dem Programm nicht empfängt, stellt der Prozeßverwalter fest, daß ein Fehler in einem der verwalteten Programme aufgetreten ist (S125) und schreibt ein Fehlerprotokoll in die Protokolldatei 23 (S126).
Fig. 13 und 14 sind Flußdiagramme des Betriebes des Fehlerkom­ munikationsmittels 19. Das Fehlerkommunikationsmittel 19 hat zwei Funktionen: (1) eine Fehlerkommunikationsfunktion, die den Bediener gemäß der Prozedur, die zum Ausführen definiert ist, wenn ein Fehler auftritt, benachrichtigt, daß ein Fehler aufge­ treten ist, (2) eine Fehlerüberwachungsfunktion zum Feststellen des Auftretens von Fehlern auf einem anderen Computer des Netz­ werkes.
Das Flußdiagramm in Fig. 13 beschreibt die Fehlerkommunikations­ funktion. Wenn das Fehlerkommunikationsmittel 19 durch das Sta­ tusüberwachungsmittel 14 oder den Computer-Ressourcen-Verwalter 15 von einem Fehler benachrichtigt wird (S131), wird die Fehler­ wiederherstellungsprozedur von der Programmdefinitionsdatei 21 gelesen (S132). Um den Bediener von dem Fehler zu benachrich­ tigen, werden die Nachrichteninhalte zu einem allgemeinen Zweckalarm, einer elektonischen Post, einer zentralen Über­ wachungsstation oder anderen Mitteln, die durch die Fehler­ wiederherstellunsprozedur definiert sind, ausgegeben (S133).
Eine allgemeiner Zweckalarm ist im wesentlichen ein Zwischen­ computer- oder öffentliches Adressensystem, wobei eine Anzeige unter Verwendung von elektronischen Tönen gemacht wird. Elek­ tronische Post bezieht sich auf elektronische Postnachrichten, die anzeigen das ein Fehler aufgetreten ist. Diese Nachrichten werden an dem Computerterminal des Bedieners, des Systemver­ walters oder anderen definierten Bestimmungsorten ausgegeben. Die zentrale Überwachungsstation ist einfach eine zentrale Com­ putersystemeingabeeinheit oder Anzeige, wo Nachrichten ange­ zeigt werden. Es ist auch möglich gleichzeitig die gleiche Nachricht in eine Diskettendatei oder einen Drucker auszugeben.
Das Flußdiagramm in Fig. 14 beschreibt den Betrieb, der durch die Fehlerkommunikationsfunktion ausgeführt wird nach der Fehlerfeststellung durch die Fehlerüberwachungsfunktion des Fehlerkommunikationsmittels 19. Die Fehlerüberwachungsfunktion überwacht regelmäßig den Inhalt der Protokolldateien 23 der Netzwerkcomputer, um zu überprüfen, ob ein neues Fehlerprotokoll erzeugt worden ist (S141). Wenn ein neues Fehlerprotokoll nicht festgestellt wird (S142), führt die Fehlerüberwachungsfunktion die regelmäßige Überprüfung für neue Fehlerprotokolle fort (S141). Wenn ein neues Fehlerprotokoll festgestellt wird (S142), wird der Protokollinhalt überprüft (S143). Wenn ein Fehlerprotokoll durch die Fehlerüberwachungsfunktion bestätigt wird, wird die Fehlerwiederherstellungsprozedur von der Pro­ grammdefinitionsdatei 21 durch die Fehlerkommunikationsfunk­ tion gelesen (S144) und ein Alarm wird entsprechend der in der Programmdefinitionsdatei 21 vordefinierten Prozedur ausgegeben (S145).
Somit verwaltet das Fehlerkommunikationsmittel 19 die Protokoll­ dateien der Netzwerkcomputer über die Prozeßverwalter 12 der Netzwerkcomputer zentral und es umfaßt eine Funktion zur Kommu­ nikation der Fehler und eine Funktion zum zentralen Überwachen, ob Fehler auf dem Netzwerk aufgetreten sind. Die Fehlerüber­ wachungsfunktion wird durch Feststellen eines neuen Fehlerproto­ kolls auf einem Netzwerkcomputer ausgelöst. Die Fehlerüberwach­ ungsfunktion überwacht definierte Typen von Fehlerprotokollen, die auf einem Computer erzeugt wurden, innerhalb eines spezi­ fischen Bereiches, der in der Programmdefinitionsdatei vorher festgelegt ist.
2. Ausführungsform
Fig. 15 ist ein Flußdiagramm und ein Blockdiagramm von den verschiedenen Steuereinheiten in einer zweiten Ausführungsform eines Computerverwaltungsbetriebssystems gemäß der vorliegenden Erfindung.
Wie in Fig. 3 gezeigt ist, umfaßt die erste Ausführungsform der vorliegenden Erfindung die Computerressourcenverwaltungsfunktion als Teil der Hauptprogrammschleife. In der in Fig. 15 gezeigten zweiten Ausführungsform arbeitet jedoch der Computerressourcen­ verwalter als ein unabhängiges Programm, das auf Anfrage aufge­ rufen und ausgeführt wird, wie durch das Hauptprogramm verlangt wird.
Die verschiedenen in Fig. 15 gezeigten Steuereinheiten arbeiten identisch zu denen, die in der obigen ersten Ausführungsform beschrieben wurden.
Wie in Fig. 15 gezeigt ist, geht die Ausführungsanforderung zu dem Computerbetriebsverwaltungssystem 1 und nicht zu dem Be­ triebssystem 2 in einem Computerbetriebsverwaltungssystem 1 gemäß der vorliegenden Erfindung, wenn ein Anwendungsprogramm 3 ausgeführt werden soll. Wenn eine Programmstartanforderung durch den Bediener oder von einem anderen Programm zu den Com­ puterbetriebsverwaltungssystem 1 ausgegeben wird (S201), liest die Ausführungssteuereinheit 13 die maximale Anzahl der gleich­ zeitig ausführbaren Programme von der Programmdefinitionsdatei 201 (S202) und vergleicht diese maximale Anzahl mit der Anzahl der ausgeführten Programme. Wenn die Anzahl der ausgeführten Programme kleiner ist als die gelesene Grenze (maximale Anzahl), wird eine Tochterprogrammstartanforderung zu dem Betriebssystem ausgegeben (S203). Wenn die Anzahl der ausgeführten Programme gleich zu der Grenze ist (maximale Anzahl) und eine Programm­ startanforderung ausgegeben wird, wird das angeforderte Programm in der Aufnahmedatei für vorgemerkte Programme 203 vorgemerkt. Die Ausführungssteuereinheit 13 überwacht regelmäßig die Anzahl der ausgeführten Programme. Als ein Ergebnis wird, wenn es mög­ lich wird, ein vorgemerktes Programm auszuführen, das nächste auszuführende Programm von der Aufnahmedatei für vorgemerkte Programme 203 gelesen und eine Startanforderung wird zu dem Be­ triebssystem ausgegeben (S203). Die Ausführungssteuereinheit 13 speichert dann das Startprotokoll in die Protokolldatei 202, wenn der Programmstart beendet ist.
Wenn ein Programm einmal gestartet ist, überwacht das Ausfüh­ rungsstatusüberwachungsmittel 14 den Ausführungsstatus von jedem ausgeführten Programm durch Senden von Nachrichten zu und Empfangen von Antworten von jedem ausgeführten Programm (S204). Wenn ein Fehler bei einem überwachten Programm auftritt, werden der Fehlerwiederherstellungsprozessor 18 und das Fehlerkommuni­ kationsmittel 19 genau benachrichtigt, um die vordefinierten Prozesse auszuführen (S209 und S210).
Wenn es von dem Bediener oder einem anderen Programm während der Programmausführung eine Anforderung gibt, die Prioritäts­ reihenfolge eines ausgeführten Programmes oder eines vorge­ merkten Programmes in der Aufnahmedatei für vorgemerkte Pro­ gramme (Anforderungswarteschlange) 203 zu ändern, ändert die Ausführungsprioritätssequenzsteuereinheit 16 die Prioritäts­ reihenfolge der ausgeführten Programme oder der Programme in der Aufnahmedatei für vorgemerkte Programme 203 (S207).
Soweit notwendig benachrichtigt das Ausführungsstatusüberwach­ ungsmittel 14 den Computer-Ressourcen-Verwalter 15 und der Com­ puter-Ressourcen-Verwalter 15 überwacht die Computerressourcen bzw. Betriebsmittel (S208) durch Vergleichen der aktuellen Ver­ wendung der Computerbetriebsmittel (einschließlich der CPU-Zeit, Speicher und des Diskettenlaufwerkes) mit den Betriebsmittel­ verwendungsgrenzen, die in der Programmdefinitonsdatei 21 ge­ speichert sind. Wenn ein Fehler auftritt, werden der Fehler­ wiederherstellungsprozessor 18 und das Fehlerkommunikations­ mittel 19 benachrichtigt, um die vordefinierten Prozesse aus­ zuführen (S209 und 210).
Die Ausführungsstatusüberwachung (S204) wird dann in einer kontinuierlichen Schleife ausgeführt, bis das Betriebssystem 2 den Prozeßverwalter 12 benachrichtigt, daß ein Programm beendet wurde. Der Netzwerkverwalter 20 überwacht auch Programme, die ausgeführt werden während Kommunikation mit anderen Programmen auf dem Netzwerk mittels Austauschen von Informationen mit den Prozeßverwaltern 12 der anderen Computer 204 des Netzwerkes (S211).
Wenn ein Fehler während der Ausführungsstatusüberwachung oder der Computer-Ressourcen-Verwaltung auftritt, wird die Fehlerin­ formation in dem Fehlerwiederherstellungsprozessor 18 zur Ver­ fügung gestellt, der den Wiederherstellungsprozeß gemäß der in der Programmdefinitionsdatei gespeicherten Wiederherstellungspro­ zedur durchführt und der gleichzeitig das Fehlerprotokoll in die Protokolldatei 202 schreibt (S209). Das Fehlerkommunika­ tionsmittel 19 gibt auch einen geeigneten Alarm oder eine andere Benachrichtigung gemäß des Fehlerwiederherstellungsprozesses aus, der in der Programmdefinitionsdatei gespeichert ist (S210).
Wenn der Prozeßverwalter 12 durch das Betriebssystem benach­ richtigt wird, daß ein Programm beendet wurde, führt der End­ prozessor 17 den Endprozeß aus, der in der Programmdefinitions­ datei 21 gespeichert ist, und schreibt das Endprotokoll in die Protokolldatei 202 (S206).
Vorteile der Erfindung
Das Computerbetriebsverwaltungssystem der vorliegenden Erfindung erreicht die folgenden Vorteile durch effektives Verwenden des Hauptspeichers (Speicher), des ergänzenden Speichers (Disketten­ laufwerk) und der CPU eines einzelnen Computers oder Netzwerk­ computern durch Begrenzen und Überwachung der Anzahl der gleichzeitig ausführbaren Programme für das Betriebssystem.
  • (1) Durch Begrenzen der Anzahl der gleichzeitig ausführbaren Programme für das Betriebssystem und durch Verwalten der Programmausführung, so daß Speichermangel oder Disketten­ platzmangel nicht auftritt, kann eine übermäßige Ver­ schlechterung der Verarbeitungsgeschwindigkeit aufgrund Speichermangels verhindert werden und die Leistung kann daher verbessert werden, wenn mehrere Programme gleich­ zeitig auf einem einzelnen Computer oder Netzwerkcomputern ausgeführt werden.
  • (2) Gezwungenes abnormales Beenden von einigen Programmen und der Verlust von einiger Systemfunktionalität aufgrund des zeitweisen nicht ausreichenden Speichers oder Disketten­ platzes kann verhindert werden, wenn mehrere Programme gleichzeitig ausgeführt werden und ein sehr zuverlässiges System, das frei von normalen Programmbeendigungen ist, kann erreicht werden.
  • (3) Wenn in einem Anwendungsprogramm ein Fehler auftritt und das Programm abnormal endet, können das Programm, das die Schwierigkeit verursacht, und der Zeitablauf des Fehlers durch Bezug auf ein zentral verwaltetes Protokoll heraus­ gefunden werden. Fehler die in Systemen auftreten, bei denen Programme über ein Netzwerk verwendet werden oder bei denen mehrere Programme zusammen arbeiten, können auch herausgefunden werden.
  • (4) Es ist auch möglich Fehler festzustellen, die bei unvoll­ ständigen Programm auftreten, die keine Fehlermeldung aus­ geben sogar wenn ein Fehler während der Programmausführung aufgetreten ist.
  • (5) Die Programmausführungspriorität kann definiert werden und damit kann eine Echtzeitverarbeitung ermöglicht werden, wenn sie durch ein gegebenes Programm verlangt wird. Es ist auch möglich die Programme gemäß ihrer Wichtigkeit zu gewichten, so daß wichtige Programme mit Priorität verar­ beitet werden.
  • (6) Die Wiederherstellungsprozedur, die hier ausgeführt wird, wenn ein Programm abnormal endet, kann definiert werden und automatisch ausgeführt werden, und damit wird die Fehler­ suche für den Bediener stark vereinfacht.

Claims (11)

1. Ein Computerbetriebsverwaltungssystem mit
einem Computer mit einer zentralen Verarbeitungseinheit, einem Hauptspeicher und einem Zusatzspeicher,
einem Betriebssystemmittel (2) zum Betreiben des Computers, wo­ bei das Betriebssystemmittel (2) den Computer in die Lage ver­ setzt mehrere Programme gleichzeitig auszuführen,
und einem Prozeßverwaltungsmittel (12) zum Überwachen eines Ausführungsstatus von mehreren Anwendungsprogrammen (3), um die Anzahl der gleichzeitig ausgeführten Anwendungsprogramme zu be­ grenzen.
2. Das Computerbetriebsverwaltungssystem nach Anspruch 1, dadurch gekennzeichnet, daß
das Prozeßverwaltungsmittel (12) ein Verwaltungsprogramm, daß vor dem Betriebssystemmittel (2) als ein Anwendungsprogramm (3) agiert,
und ein Programmdefinitionsdateimittel (21) zum Speichern von Informationen, die die maximale Anzahl der gleichzeitig aus­ führbaren Anwendungsprogramme (3) für jede Programmkategorie betreffen, umfaßt
und daß das Verwaltungsprogramm die Anzahl der momentan ausge­ führten Anwendungsprogramme (3) beim Starten eines neuen An­ wendungsprogramms (3) überwacht,
und wenn die Anzahl der momentan ausgeführten Anwendungspro­ gramme (3) gleich ist mit der maximalen Anzahl, die in der Programmdefinitionsdatei (21) gespeichert ist, wird der Start eines neuen Anwendungsprogramms (3) verhindert.
3. Computerbetriebsverwaltungssystem nach Anspruch 2, dadurch gekennzeichnet, daß der Ausführungsstatus der Anwendungsprogramme durch Ausführen des Prozeßverwaltungsprogramms in einer Art, die eine direkte Kom­ munikation mit oder eine direkte Verwaltung der zu verwaltenden Anwendungsprogramme (3) ermöglicht, verwaltet und gesteuert wird.
4. Computerbetriebsverwaltungssystem nach einem der Ansprüche 1 bis 3 dadurch gekennzeichnet, daß ein Prioritätssteuermittel (16) zum Steuern der Ausführungspri­ orität von jedem Anwendungsprogramm (3) für jede Programmkatego­ rie vorgesehen ist, daß die Ausführungspriorität von jedem Anwendungsprogramm (3) Informationen enthält, die mit der Ausführungsreihenfolge und einer Zeitrate verbunden sind, die beim Ausführen von jedem Anwendungsprogramm (3) zugeordnet sind.
5. Das Computerbetriebsverwaltungssystem nach Anspruch 4, dadurch gekennzeichnet, daß
das Prioritätssteuermittel (16) eine Aufnahmedatei für vorge­ merkte Programme (22) zum vorübergehenden Speichern von Daten von Anwendungsprogrammen (3), die zum Ausführen vorgemerkt sind, aufweist
und daß das Prioritätssteuermittel (16) eine Reihenfolge der Ausführung der vorgemerkten Programme basierend auf der Aus­ führungspriorität für jedes Anwendungsprogramm (3) festlegt.
6. Das Computerbetriebsverwaltungssystem nach einem der An­ sprüche 1 bis 5, dadurch gekennzeichnet, daß ein Ausführungsstatusüberwachungsmittel (14) zum periodischen Senden einer Nachricht zu jedem Anwendungsprogramm (3) und zum Feststellen von den Inhalten der von jedem Anwendungsprogramm (3) zurückgesendeten Nachricht, ob das Anwendungsprogramm in Ausführung ist, aufweist.
7. Das Computerbetriebsverwaltungssystem nach Anspruch 6, dadurch gekennzeichnet, daß ein Fehlerwiederherstellungsmittel (18) zum Ausführen einer vordefinierten Fehlerwiederherstel­ lungsprozedur für ein Anwendungsprogramm (3), wenn keine Nachricht von dem Anwendungsprogramm (3) zurückgesendet wird, vorgesehen ist.
8. Das Computerbetriebsverwaltungssystem nach einem der An­ sprüche 1 bis 7, dadurch gekennzeichnet, daß ein Nachverarbeitungsmittel (17) zum Ausführen einer Nachver­ arbeitung, wenn eine Nachricht, die bezeichnend für ein Ende eines Anwendungsprogrammes (3) und für einen Zustand des Endes ist, von dem Anwendungsprogramm (3) ausgegeben wird, vorgesehen ist, wobei die Nachverarbeitung gemäß dem Zustand des Endes vordefiniert ist.
9. Das Computerbetriebsverwaltungssystem nach einem der An­ sprüche 1 bis 8, dadurch gekennzeichnet, daß ein Fehlerfeststellungsmittel zum Feststellen eines Fehlers, wenn ein Anwendungsprogramm (3) ausgeführt wird, daß eine der vordefinierten Grenzen bezüglich des Haupt- und des Zusatz­ speichers und der aufsummierten Verarbeitungszeit, die dem An­ wendungsprogramm (3) zugeordnet sind, überschreitet, und ein Fehlerwiederherstellungsmittel zum Ausführen einer vor­ definierten Fehlerwiederherstellungsprozedur vorgesehen sind.
10. Das Computerbetriebsverwaltungssystem nach einem der An­ sprüche 1 bis 9, dadurch gekennzeichnet, daß ein Fehlermitteilungsmittel zum Mitteilen eines Fehlers an einen Anwender vorgesehen ist, wenn ein Fehler festgestellt wird.
11. Ein Computerbetriebsverwaltungssystem mit
einer Mehrzahl von Computern, die durch ein Netzwerk verbunden sind, wobei jeder Computer ein Betriebssystem (2) zum Betreiben des Computers aufweist, wobei das Betriebssystem (2) den Compu­ ter in die Lage versetzt mehrere Anwendungsprogramme (3) gleich­ zeitig auszuführen,
und ein Prozeßverwaltungsmittel (12) zum Überwachen eines Aus­ führungsstatus von mehreren Anwendungsprogrammen (3), um die An­ zahl der gleichzeitig ausgeführten Anwendungsprogramme (3) zu begrenzen, aufweist,
einem Kommunikationsmittel zum Kommunizieren zwischen Prozeß­ verwaltungsmitteln (12) von zwei beliebigen Computern, einer Programmdefinitionsdatei zum Speichern von durch einen Benutzer definierten Informationen für Programme, die über das Netzwerk zusammenarbeitend ausgeführt werden, und
einem Verwaltungsmittel zum Verwalten eines Betriebes der Pro­ gramme, die zusammenarbeitend ausgeführt werden, gemäß den in der Programmdefinitionsdatei (21) gespeicherten Informationen.
DE19607515A 1995-05-31 1996-02-28 Computer mit Prozessverwalter Expired - Fee Related DE19607515B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPP7-133920 1995-05-31
JP7133920A JPH08328880A (ja) 1995-05-31 1995-05-31 複数のアプリケーションプログラムを同時に実行できるオペレーティングシステムにおける計算機運転管理システム

Publications (2)

Publication Number Publication Date
DE19607515A1 true DE19607515A1 (de) 1996-12-12
DE19607515B4 DE19607515B4 (de) 2004-04-29

Family

ID=15116183

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19607515A Expired - Fee Related DE19607515B4 (de) 1995-05-31 1996-02-28 Computer mit Prozessverwalter

Country Status (4)

Country Link
US (1) US5835765A (de)
JP (1) JPH08328880A (de)
DE (1) DE19607515B4 (de)
TW (1) TW371742B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1916602A1 (de) * 2006-10-26 2008-04-30 Nokia Siemens Networks Gmbh & Co. Kg Wiederanlauf durch geordneten Neustart von Prozessen

Families Citing this family (86)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7036019B1 (en) 1994-04-01 2006-04-25 Intarsia Software Llc Method for controlling database copyrights
JPH07271865A (ja) 1994-04-01 1995-10-20 Mitsubishi Corp データベース著作権管理方法
US6744894B1 (en) 1994-04-01 2004-06-01 Mitsubishi Corporation Data management system
US7302415B1 (en) 1994-09-30 2007-11-27 Intarsia Llc Data copyright management system
DE69535013T2 (de) 1994-10-27 2006-12-28 Intarsia Software LLC, Las Vegas Urheberrechtsdatenverwaltungssystem
DE69532434T2 (de) 1994-10-27 2004-11-11 Mitsubishi Corp. Gerät für Dateiurheberrechte-Verwaltungssystem
US6424715B1 (en) 1994-10-27 2002-07-23 Mitsubishi Corporation Digital content management system and apparatus
US6161147A (en) * 1995-03-31 2000-12-12 Sun Microsystems, Inc. Methods and apparatus for managing objects and processes in a distributed object operating environment
US8595502B2 (en) 1995-09-29 2013-11-26 Intarsia Software Llc Data management system
US7801817B2 (en) 1995-10-27 2010-09-21 Makoto Saito Digital content management system and apparatus
JPH10269091A (ja) * 1997-03-24 1998-10-09 Canon Inc 情報処理装置及びその方法
US6938254B1 (en) * 1997-05-06 2005-08-30 Microsoft Corporation Controlling memory usage in systems having limited physical memory
US6038596A (en) * 1997-05-23 2000-03-14 International Business Machines Corporation Method and system in a network for decreasing performance degradation triggered by multiple user redundant input events
FR2766592B1 (fr) * 1997-07-23 1999-08-27 Bull Sa Dispositif et procede de regulation dynamique de l'attribution des ressources sur un systeme informatique
US6360279B1 (en) * 1997-10-14 2002-03-19 Bea Systems, Inc. True parallel client server system and method
JPH11120106A (ja) * 1997-10-17 1999-04-30 Fujitsu Ltd サーバ資源利用状況の表示方式およびそのための記録媒体
IL123512A0 (en) * 1998-03-02 1999-03-12 Security 7 Software Ltd Method and agent for the protection against hostile resource use access
FR2784474A1 (fr) * 1998-10-08 2000-04-14 Thomson Multimedia Sa Gestionnaire d'applications avec jeu d'instructions de gestion variable
JP4763866B2 (ja) 1998-10-15 2011-08-31 インターシア ソフトウェア エルエルシー 2重再暗号化によりデジタルデータを保護する方法及び装置
US6658485B1 (en) * 1998-10-19 2003-12-02 International Business Machines Corporation Dynamic priority-based scheduling in a message queuing system
US6910210B1 (en) * 1998-11-24 2005-06-21 Microsoft Corp. System and method for terminating applications
JP2000259585A (ja) * 1999-03-08 2000-09-22 Toshiba Corp システムアプリケーション管理方式とその管理方式を実行するためのプログラムを記録した記録媒体
US6470491B1 (en) * 1999-03-29 2002-10-22 Inventec Corporation Method for monitoring computer programs on window-based operating platforms
US6704806B1 (en) 1999-05-27 2004-03-09 Computer Associates Think, Inc. Method and device for monitoring the creation and destruction of child processes within an application executing in a computer system
JP3711789B2 (ja) * 1999-06-08 2005-11-02 日立オムロンターミナルソリューションズ株式会社 システム自動再立ち上げ制御方法およびシステム自動再立ち上げ制御システム
JP2001117783A (ja) * 1999-08-10 2001-04-27 Seiko Epson Corp プログラム起動システム及びプログラム起動制御方法
WO2001014980A1 (fr) * 1999-08-19 2001-03-01 Fujitsu Limited Procede permettant de commander le fonctionnement du systeme d'exploitation d'un systeme informatique et support d'enregistrement sur lequel le programme destine a cet effet est enregistre
WO2001020456A1 (fr) * 1999-09-10 2001-03-22 Hitachi, Ltd. Systeme de gestion et procede pour systeme d'exploitation
EP1096382B1 (de) * 1999-10-26 2007-06-27 Iontas Limited Überwachung von Rechnerbenutzung
WO2001044967A1 (en) * 1999-12-14 2001-06-21 Fujitsu Limited Multiprocessor system
US6732359B1 (en) * 1999-12-21 2004-05-04 Bellsouth Intellectual Property Corporation Application process monitor
JP2001255955A (ja) * 2000-03-14 2001-09-21 Seiko Epson Corp 情報処理装置、情報処理装置の制御方法及び情報処理装置の制御プログラムを記録した記録媒体
US7181743B2 (en) * 2000-05-25 2007-02-20 The United States Of America As Represented By The Secretary Of The Navy Resource allocation decision function for resource management architecture and corresponding programs therefor
US20020073145A1 (en) * 2000-10-02 2002-06-13 Tadashi Shimoji System for dynamically generating and processing a program
AU2002230616A1 (en) * 2000-12-06 2002-06-18 Waveset Technologies, Inc. System and method for managing information objects
US6948165B1 (en) * 2001-02-28 2005-09-20 Western Digital Ventures, Inc. Method for installing an application program, to be executed during each bootload of a computer system for presenting a user with content options prior to conventional system startup presentation, without requiring a user's participation to install the program
US7003569B2 (en) * 2001-03-20 2006-02-21 Cypress Semiconductor Corp. Follow-up notification of availability of requested application service and bandwidth between client(s) and server(s) over any network
US7355739B2 (en) * 2001-09-14 2008-04-08 Ricoh Company, Ltd. Image forming device having a memory assignment unit
US20030079205A1 (en) * 2001-10-22 2003-04-24 Takeshi Miyao System and method for managing operating systems
US8768715B2 (en) * 2001-12-13 2014-07-01 Oracle America, Inc. System and method for resource management
JP2003256225A (ja) 2002-03-06 2003-09-10 Mitsubishi Electric Corp コンピュータシステム、障害対応方法及びコンピュータシステムを機能させるためのプログラム
US20030218765A1 (en) * 2002-04-26 2003-11-27 Tsutomu Ohishi Apparatus for controlling launch of application and method
JP2004195972A (ja) * 2002-12-06 2004-07-15 Hitachi Printing Solutions Ltd 印刷装置、プログラム及び記憶媒体
JP4597488B2 (ja) 2003-03-31 2010-12-15 株式会社日立製作所 プログラム配置方法及びその実施システム並びにその処理プログラム
JP4713820B2 (ja) * 2003-05-28 2011-06-29 パナソニック株式会社 プログラム実行制御装置、プログラム実行制御方法
US20040250235A1 (en) * 2003-06-09 2004-12-09 Sun Microsystems, Inc. Methods and apparatus for enhanced statistical performance
US7406686B2 (en) * 2003-06-09 2008-07-29 Sun Microsystems, Inc. Systems and methods for software performance tuning
US20050021655A1 (en) * 2003-06-09 2005-01-27 Sun Microsystems, Inc. System for efficiently acquiring and sharing runtime statistics
US7415699B2 (en) * 2003-06-27 2008-08-19 Hewlett-Packard Development Company, L.P. Method and apparatus for controlling execution of a child process generated by a modified parent process
US7185320B2 (en) * 2003-06-27 2007-02-27 Hewlett-Packard Development Company, L.P. System and method for processing breakpoint events in a child process generated by a parent process
US7900092B2 (en) * 2003-07-11 2011-03-01 Computer Associates Think, Inc. Kernel-level method of flagging problems in applications
US7213176B2 (en) * 2003-12-10 2007-05-01 Electronic Data Systems Corporation Adaptive log file scanning utility
JP4994575B2 (ja) * 2004-03-12 2012-08-08 キヤノン株式会社 ネットワークインターフェース装置及びその制御方法、及び画像形成システム
GB0422086D0 (en) * 2004-10-05 2004-11-03 Symbian Software Ltd Navigating applications in a computing device
JP4309829B2 (ja) 2004-10-28 2009-08-05 ソフトバンクモバイル株式会社 情報端末装置
US7603404B2 (en) * 2004-12-20 2009-10-13 Sap Ag Grid parallel execution
US7770173B2 (en) * 2005-02-03 2010-08-03 International Business Machines Corporation System for dynamic processor enablement
JP4060322B2 (ja) 2005-03-28 2008-03-12 三菱電機株式会社 アプリケーション管理装置およびそのソフトウェアを格納した記憶媒体
JP4955943B2 (ja) 2005-06-28 2012-06-20 クラリオン株式会社 情報端末および計算機資源管理方法
KR100658730B1 (ko) * 2005-11-30 2006-12-15 삼성에스디아이 주식회사 태양 전지
US20070150599A1 (en) * 2005-12-22 2007-06-28 International Business Machines Corporation Generation of resource-usage profiles for application sessions of a number of client computing devices
JP4389174B2 (ja) * 2005-12-27 2009-12-24 ブラザー工業株式会社 画像形成装置
FR2915006B1 (fr) * 2007-04-13 2009-08-21 Wavecom Sa Procede et dispositif de gestion de l'utilisation d'un processeur par plusieurs applications, produit programme d'ordinateur et moyen de stockage correspondants.
JP2008310695A (ja) * 2007-06-15 2008-12-25 Ntt Docomo Inc 移動通信端末
JP2009009378A (ja) * 2007-06-28 2009-01-15 Brother Ind Ltd 印刷制御装置及びプログラム
US7822918B2 (en) * 2007-12-18 2010-10-26 International Business Machines Corporation Preallocated disk queuing
JP4584324B2 (ja) * 2008-05-22 2010-11-17 ルネサスエレクトロニクス株式会社 データ処理システム、及びコンポーネント管理方法
US10642794B2 (en) * 2008-09-11 2020-05-05 Vmware, Inc. Computer storage deduplication
US9032181B2 (en) 2009-05-19 2015-05-12 Vmware, Inc. Shortcut input/output in virtual machine systems
US8413153B2 (en) * 2009-06-12 2013-04-02 Freescale Semiconductor Inc. Methods and systems for sharing common job information
JP4932877B2 (ja) * 2009-07-14 2012-05-16 株式会社日立製作所 業務リソース管理方法及びその実施システム
JP2011159011A (ja) * 2010-01-29 2011-08-18 Toshiba It Service Kk ジョブ監視システム及びジョブ監視プログラム
GB2510729B (en) * 2011-09-28 2020-01-08 Hewlett Packard Development Co Managing data usage of a computing device
JP5804970B2 (ja) * 2012-02-23 2015-11-04 三菱電機株式会社 データ処理装置及びデータ処理方法及びプログラム
US9286118B2 (en) 2012-06-15 2016-03-15 Freescale Semiconductor, Inc. System and method for improved job processing to reduce contention for shared resources
US9104478B2 (en) 2012-06-15 2015-08-11 Freescale Semiconductor, Inc. System and method for improved job processing of a number of jobs belonging to communication streams within a data processor
US20140244190A1 (en) * 2013-02-28 2014-08-28 Cellco Partnership D/B/A Verizon Wireless Power usage analysis
US9632977B2 (en) 2013-03-13 2017-04-25 Nxp Usa, Inc. System and method for ordering packet transfers in a data processor
US9454310B2 (en) * 2014-02-14 2016-09-27 Micron Technology, Inc. Command queuing
DE102014208840A1 (de) * 2014-05-12 2015-11-12 Robert Bosch Gmbh Verfahren zum Behandeln von Software-Funktionen in einem Steuergerät
CN106126404B (zh) * 2016-06-21 2019-03-19 上海新炬网络技术有限公司 一种cpu高消耗的db2进程/线程快速定位方法
EP3392810A1 (de) * 2017-04-20 2018-10-24 Siemens Aktiengesellschaft Verfahren zur zusammenarbeitung von arbeitsprodukten, die von einem mes / mom-system ausgeführt werden
US11580255B2 (en) 2019-11-11 2023-02-14 Bank Of America Corporation Security tool for n-tier platforms
US11169855B2 (en) * 2019-12-03 2021-11-09 Sap Se Resource allocation using application-generated notifications
CN111752800B (zh) * 2020-06-24 2023-02-21 研祥智能科技股份有限公司 一种计算机系统及应用程序的监控方法及监控装置
JP2022154943A (ja) * 2021-03-30 2022-10-13 本田技研工業株式会社 車両用制御システム、車両、制御方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4318173A (en) * 1980-02-05 1982-03-02 The Bendix Corporation Scheduler for a multiple computer system
US4493020A (en) * 1980-05-06 1985-01-08 Burroughs Corporation Microprogrammed digital data processor employing microinstruction tasking and dynamic register allocation
GB2191918B (en) * 1986-06-16 1990-09-05 Ibm Data display system
JP2915061B2 (ja) * 1990-04-04 1999-07-05 株式会社日立製作所 計算機システムの負荷制御方法
JPH05181631A (ja) * 1991-06-10 1993-07-23 Internatl Business Mach Corp <Ibm> ダイナミックな変数更新及び自動境界用サポートを有するデータ処理装置のリアルタイム装置リソースモニタ
US5210872A (en) * 1991-06-28 1993-05-11 Texas Instruments Inc. Critical task scheduling for real-time systems
JP3064516B2 (ja) * 1991-07-19 2000-07-12 富士通株式会社 情報処理装置
JPH05120037A (ja) * 1991-10-28 1993-05-18 Nec Corp システム資源管理ジヨブ動的情報の動的管理表示方式
US5421011A (en) * 1991-12-20 1995-05-30 International Business Machines Corporation Method and system for access and accounting control in a data processing system by using a single resource account for a user or a group of users
JPH05265775A (ja) * 1992-03-19 1993-10-15 Hitachi Ltd ジョブ実行予測制御方法およびジョブ実行状況表示方法
AU3944793A (en) * 1992-03-31 1993-11-08 Aggregate Computing, Inc. An integrated remote execution system for a heterogenous computer network environment
US5485626A (en) * 1992-11-03 1996-01-16 International Business Machines Corporation Architectural enhancements for parallel computer systems utilizing encapsulation of queuing allowing small grain processing
JPH06161823A (ja) * 1992-11-20 1994-06-10 Hitachi Ltd 論理シミュレーション・ジョブスケジューリング方式
JP2508589B2 (ja) * 1993-05-25 1996-06-19 日本電気株式会社 サ―バ運用方式
JPH0721063A (ja) * 1993-06-30 1995-01-24 Mitsubishi Electric Corp 計算機システム監視装置
US5437032A (en) * 1993-11-04 1995-07-25 International Business Machines Corporation Task scheduler for a miltiprocessor system
US5495606A (en) * 1993-11-04 1996-02-27 International Business Machines Corporation System for parallel processing of complex read-only database queries using master and slave central processor complexes
JPH07311688A (ja) * 1994-05-19 1995-11-28 Nec Corp システム資源管理方法及び装置
US5440726A (en) * 1994-06-22 1995-08-08 At&T Corp. Progressive retry method and apparatus having reusable software modules for software failure recovery in multi-process message-passing applications

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KENAH, Lawrence J., BATE, Simon F.: VAX/VMS Internals and Data Structures. Digital Press, 1984, S. 3-12, 183-188, 443-517 u. 704-705 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1916602A1 (de) * 2006-10-26 2008-04-30 Nokia Siemens Networks Gmbh & Co. Kg Wiederanlauf durch geordneten Neustart von Prozessen

Also Published As

Publication number Publication date
JPH08328880A (ja) 1996-12-13
US5835765A (en) 1998-11-10
DE19607515B4 (de) 2004-04-29
TW371742B (en) 1999-10-11

Similar Documents

Publication Publication Date Title
DE19607515A1 (de) Ein Computerbetriebsverwaltungssystem für ein Computerbetriebssystem, das dazu in der Lage ist gleichzeitig eine Mehrzahl von Anwendungsprogrammen auszuführen
DE60018803T2 (de) Verfahren und apparat zur verwaltung von information der speicheraktivitäten von datenspeichersystemen
DE60220287T2 (de) System und verfahren zur überwachung von software-warteschlangenanwendungen
DE69823078T2 (de) System und Verfahren zur Verwaltung von Arbeitsgruppendruckern
DE69936152T2 (de) System und verfahren zur dynamischen korrelation von ereignissen
DE69634762T2 (de) Gerät zur Erzeugung und Übertragung einer verwalteten Gerätbeschreibungsdatei
DE60130808T2 (de) System und Verfahren zur Konfiguration von Netzwerkressourcen
DE602005002713T2 (de) Informationsverarbeitungssystem mit redundanten Pfaden und Zugriffsverfahren
DE69825571T2 (de) System und verfahren zur überwachung verteilter anwendungen
DE69329743T9 (de) Computerverwaltungssystem und entsprechende Datenbank für Verwaltungsinformationen
DE60215002T2 (de) Verfahren und system für effiziente verteilung von netzwerk-ereignisdaten
DE60214862T2 (de) Methode für die verbesserte verwaltung von einer ereignisdatenbasis und system für ereignismeldung in einem netzwerk
DE60020633T2 (de) Geräteverwaltungsnetzwerksystem, Verwaltungsserver, und Rechner
DE60214994T2 (de) Verfahren und system zur verringerung von falschalarmen in netzwerkfehlermanagementsystemen
DE4033336A1 (de) Verfahren zum erzeugen einer ausfallmeldung und mechanismus fuer ausfallmeldung
DE10255125A1 (de) Dezentralisierte Automatische Testung von Grafischen Benutzerschnittstellen(GUI) von Software
DE202011110892U1 (de) System von aktivem Risikomanagement, um die Wahrscheinlichkeit des Descheduling der Jobs in Computer-Clustern zu reduzieren
DE69907852T2 (de) Hochverfügbare asynchrone Ein/Ausgabe für gruppierte Rechnersysteme
DE60220375T2 (de) Spezifischer Datenregistrierungsserver in einem Bedien- und Verwaltungszentrum für ein Telekommunikationssystem
DE10311082A1 (de) Elektronikdokumentmanagementverfahren und Programm
DE69937266T2 (de) Anwenderschnittstelle für Datenverarbeitungssystem mit Jobüberwachung
DE60120532T2 (de) Verfahren und Vorrichtung zum Sammeln von statistischen Daten in einem Datenkommunikationsnetzwerk
DE69935115T2 (de) Dokumenteingabesystem
DE20221531U1 (de) Vorrichtung für die Überwachung von Tasks, insbesondere zur Verwendung in einem Echtzeit-Telekommunikationssystem
DE10234138A1 (de) Verwalten einer Speicherkonkurrenz bei automatisierten Speichersystemen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee