[go: up one dir, main page]

DE69425699T2 - Integrierung von Systemverwaltungsdiensten mit einem unterliegenden Systemobjektmodell - Google Patents

Integrierung von Systemverwaltungsdiensten mit einem unterliegenden Systemobjektmodell

Info

Publication number
DE69425699T2
DE69425699T2 DE69425699T DE69425699T DE69425699T2 DE 69425699 T2 DE69425699 T2 DE 69425699T2 DE 69425699 T DE69425699 T DE 69425699T DE 69425699 T DE69425699 T DE 69425699T DE 69425699 T2 DE69425699 T2 DE 69425699T2
Authority
DE
Germany
Prior art keywords
distributed
internal state
distributed system
storing
interface
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.)
Expired - Lifetime
Application number
DE69425699T
Other languages
English (en)
Other versions
DE69425699D1 (de
Inventor
Mark S. Blanford
Isaac J. Heizer
Anirudh A. Sahni
Michael R.C. Seaman
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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of DE69425699D1 publication Critical patent/DE69425699D1/de
Application granted granted Critical
Publication of DE69425699T2 publication Critical patent/DE69425699T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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/465Distributed object oriented systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)

Description

  • Die vorliegende Erfindung betrifft allgemein Datenverarbeitungssysteme und insbesondere die Integrierung von Systemverwaltungsdiensten mit einem unterliegenden Systemobjektmodell.
  • Damit Systemverwaltungsfunktionen ihre beabsichtigten Aufgaben richtig ausführen, müssen die Funktionen den internen Zustand der Komponenten überwachen können, die sie verwalten. Herkömmliche Systemen hatten keinen Zugriff auf den internen Zustand verwalteter Komponenten gehabt. Als Ergebnis ist es häufig bei herkömmlichen Systemen schwierig gewesen, die Komponenten richtig zu verwalten. Gewisse herkömmliche Systeme haben versucht, den Zugriff auf Informationen in bezug auf verwaltete Komponenten zu vergrößern, indem eine getrennte Grundstruktur und Zugriffstechnik für die internen Zustandsinformationen hinzugefügt wurden. Solche herkömmlichen Systeme haben jedoch die internen Zustandsinformationen nicht allgemein durch übliche, für Benutzer sichtbare Systemschnittstellen und Personen-Schnittstellen verfügbar gemacht.
  • Z. Hong und W. McCoy, An associated object model for distributed systems, Operating Systems Review (SIGOPS), Oktober 1990, Bd. 24, Nr. 4, Seiten 34 bis 51, beschreiben ein Modell zur Unterstützung verteilter Anwendungen, das Associated Object Model genannt wird, in dem mehrere Objekte miteinander durch eine abstrakte Zuordnung kommunizieren können, wodurch die Arbeitsweise der verteilten Anwendungsobjekte (DAO) verbessert wird. Ein Broker genannter Mechanismus unterstützt die Herstellung und Beibehaltung von Zuordnungen zwischen zusammenarbeitenden DAOen. In dem Modell ist der Broker dazu bestimmt, das Auffinden von mehreren Objekten zu unterstützen. Der Broker errichtet und verwaltet abgeleitete Zuordnungen zwischen zusammenarbeitenden DAOen, der Broker liegt zwischen den DAOen in dem System und ein lokaler Broker ist an jedem Ort vorhanden, wo einige DAOen vorhanden sind. Die Aufgaben eines lokalen Brokers umfassen den Aufbau einer Zuordnung, die die entsprechenden Glieder umfaßt, das Bereitstellen eines zuverlässigen Datenübertragungsmechanismus, die Ausführung einer Abbildung von dem lokalen Namen auf einen globalen Namen, die Garantie der Einzigartigkeit der globalen Namen und die Bereitstellung von Mechanismen zur Erholung von Fehlern.
  • Es ist die Zielsetzung der Erfindung, ein verteiltes System zu schaffen, bei dem die Komponenten in wirksamer und passender Weise verwaltet werden können, sowie ein Verfahren zum Betrieb des verteilten Systems.
  • Diese Zielsetzung wird durch ein Verfahren erreicht, wie es im unabhängigen Anspruch 1 beansprucht ist, ein computerlesbares Medium, wie es im Anspruch 18 beansprucht ist, und ein verteiltes System, wie es in dem unabhängigen Anspruch 19 beansprucht ist. Bevorzugte Ausführungsformen der Erfindung sind Gegenstände der abhängigen Ansprüche.
  • Gemäß einem ersten Gesichtspunkt der vorliegenden Erfindung wird ein Verfahren in einem verteilten System durchgeführt, das zumindest eine Speichereinrichtung und Prozessoren zur Durchführung von Prozessen aufweist. Bei diesem Verfahren wird der interne Zustand einer verwalteten Komponente als ein Objekt in einer der Speichereinrichtungen dargestellt. Das Objekt ist für die Prozesse auf den Prozessoren sichtbar. Auf das Objekt wird dann im Auftrag von einem der Prozesse zugegriffen, um den internen Zustand der verwalteten Komponente zu erhalten.
  • Die verwaltete Komponente kann in eine einzige Unterkomponente oder in mehrere Unterkomponenten unterteilt werden. Jede der Unterkomponenten hat einen internen Zustand. Des weiteren kann das Verfahren den zusätzlichen Schritt umfassen, das Objekt in ein Behälterobjekt für die Komponente einzuschließen. Das Behälterobjekt wird in einer der Speichereinrichtungen gespeichert und ist für Prozesse sichtbar, die auf dem Prozessor laufen. Das Verfahren ist zur Verwendung mit mehreren Komponenten anpaßbar, die verwaltet werden sollen. Ein Systemverwaltungsobjekt kann in den Speichereinrichtungen gespeichert werden. Das Systemverwaltungsobjekt verwaltet die verwaltete Komponente.
  • Gemäß einem anderen Gesichtspunkt der vorliegenden Erfindung umfaßt ein verwaltetes System Speichereinrichtungen und Prozessoren zur Durchführung der Prozesse. Das verteilte System umfaßt auch eine zu verwaltende Komponente, die einen internen Zustand hat. Das verteilte System umfaßt eine Einrichtung zur Speicherung des internen Zustands der Komponente in der Speichereinrichtung als ein Objekt. Das verteilte System umfaßt des weiteren eine Einrichtung, das Objekt für die auf den Prozessoren laufenden Prozesse zugreifbar zu machen.
  • Gemäß einem noch anderen Gesichtspunkt der vorliegenden Erfindung wird ein Verfahren bei einem verteilten System durchgeführt, das eine Prozedurfernaufrufeinrichtung, ein erstes Datenverarbeitungssystem und ein zweites Datenverarbeitungssystem aufweist. Das erste Datenverarbeitungssystem umfaßt einen Prozessor zur Durchführung eines Prozesses. Das zweite Datenverarbeitungssystem umfaßt eine Komponente, die einen Zustand und eine Speichereinrichtung aufweist. Bei diesem Verfahren wird ein Objekt in der Speichereinrichtung des zweiten Datenverarbeitungssystems gespeichert. Das Objekt hält den Zustand der Komponente. Der Prozeß, der auf dem Prozessor des ersten Datenverarbeitungssystems läuft, verlangt Zugriff auf den Zustand der Komponente, die in dem Objekt gehalten ist. In Antwort auf die Anforderung wird ein Prozedurfernaufruf durchgeführt, wobei die Prozedurfernaufrufeinrichtung verwendet wird, Zugriff auf die Information durch den Prozeß über den Zustand der Komponente zu erlangen, die in dem Objekt gehalten ist.
  • Entsprechend einem noch anderen Gesichtspunkt der vorliegenden Erfindung wird ein Verfahren in einem verteilten System durchgeführt, das Speichereinrichtungen zur Speicherung von Objekten, die Namen besitzen, Prozessoren, die Programme mit Zuständen durchführen und ein Betriebssystem aufweist. Das Betriebssystem umfaßt einen Namendienst, der einen globalen Namensraum für die Namen der Objekte liefert, die in den Speichereinrichtungen gespeichert sind. Bei diesem Verfahren wird eine Variable in einem Programm erklärt, daß sie eine Variable ist, deren Wert in dem globalen Namensraum verfügbar ist. Das Programm läuft auf einem der Prozessoren, so daß der Variablen ein Wert zugeordnet wird, und der Wert wird in dem Objekt gespeichert, das in dem globalen Namensraum sichtbar ist. Die Variable kann ein Zähler sein, der mit vorbestimmten Größen erhöht wird, eine Meßeinrichtung, deren Wert sich über einen vorbestimmten Bereich ändert, oder irgendeine andere Variable, die Zustandsinformationen über das Programm hält.
  • Entsprechend einem zusätzlichen Gesichtspunkt der vorliegenden Erfindung wird ein Verfahren in einem verteilten System durchgeführt, das Datenverarbeitungsbetriebsmittel und zumindest eine Speichereinrichtung umfaßt. In diesem Verfahren werden die Datenverarbeitungsbetriebsmittel, die Hardwarekomponenten und/oder Softwarekomponenten umfassen können, als Objekte mit Namen modelliert. Die mit Namen versehenen Objekte werden in der Speichereinrichtung gespeichert. Systemverwaltungsobjekte mit Namen werden auch in der Speichereinrichtung gespeichert. Die Systemverwaltungsobjekte werden verwendet, die Datenverarbeitungsbetriebsmittel zu verwalten.
  • Kurze Beschreibung der Zeichnungen
  • Fig. 1 ist ein Blockdiagramm eines verteilten Systems zur Durchführung einer bevorzugten Ausführungsform der vorliegenden Erfindung.
  • Fig. 2 ist ein Blockdiagramm eines Datenverarbeitungssystems des verteilten Systems der Fig. 1.
  • Fig. 3 ist ein Blockdiagramm, das ausführlicher zwei Datenverarbeitungssysteme in dem verteilten System der Fig. 1 darstellt.
  • Fig. 4 ist ein Schema, das einen verteilten Namensraum darstellt, der entsprechender der bevorzugten Ausführungsform der vorliegenden Erfindung erzeugt wird.
  • Fig. 5 ist ein Flußdiagramm, das die von der bevorzugten Ausführungsform der vorliegenden Erfindung durchgeführten Schritte darstellt, die gemeinsame Benutzung interner Zustandsinformationen in dem verteilten System der Fig. 1 zu gestatten.
  • Fig. 6 ist ein Flußdiagramm, das die Schritte darstellt, die zur Verwendung eines Instruments in dem verteilten System der Fig. 1 durchgeführt werden.
  • Ausführliche Beschreibung der Erfindung
  • Die bevorzugte Ausführungsform der vorliegenden Erfindung integriert Systemverwaltungsdienste mit einem unterliegenden Systemobjektmodell. Fig. 1 zeigt ein Blockdiagramm eines verteilten Systems 10 zur Durchführung der bevorzugten Ausführungsform der vorliegenden Erfindung. Der Durchschnittsfachmann auf dem Gebiet sieht, daß das verteilte System 10 der Fig. 1 nur beispielhaft ist, und erkennt, daß die vorliegende Erfindung in anderen verteilten Systemen durchgeführt werden kann. Das verteilte System 10 umfaßt vier Datenverarbeitungssysteme 11A, 11B, 11C und 11D. Die Datenverarbeitungssysteme 11A, 11B, 11C und 11D stehen miteinander über ein Netz 12, wie ein lokales Netz (LAN), in Verbindung.
  • Fig. 2 zeigt ein ausführlicheres Blockdiagramm des Datenverarbeitungssystems 11A. Es wird zum Zweck der Einfachheit bei der Erörterung unten angenommen, daß die Datenverarbeitungssysteme 11B, 11C und 11D die gleichen Konfigurationen haben. Das Datenverarbeitungssystem 11A umfaßt eine zentrale Verarbeitungseinheit (CPU) 14, einen Speicher 16, eine Tastatur 18, eine Maus 20 und eine Videoanzeige 22. Der Speicher 16 hält eine Kopie eines objektorientierten Betriebssystems 24. Eine getrennte Kopie des Betriebssystems 24 läuft in jedem der Datenverarbeitungssysteme 11A, 11B, 11C und 11D (Fig. 1). Das Betriebssystem 24 ist in eine Anzahl Untersysteme unterteilbar, die ein Systemverwaltungsuntersystem umfassen, das zur Verwaltung von Komponenten des Systems verantwortlich ist. Das Verwaltungsuntersystem der Systeme ist der Brennpunkt der Erörterung unten.
  • Damit jemand versteht, wie die bevorzugte Ausführungsform der vorliegenden Erfindung arbeitet, ist es zunächst notwendig, gewisse objektorientierte Programmierkonzepte zu verstehen, die darin verwendet werden. Ein erstes, objektorientiertes, von der bevorzugten Ausführungsform verwendetes Konzept ist die Bezeichnung eines "Objekts". Ein "Objekt" ist eine Gesamtheit, die eine Kombination aus zumindest zwei Dingen ist: Daten, die einen internen Zustand des Objekts spezifizieren, und Funktionen, die auf die Daten wirken. Ein Objekt kann als eine Kombination von Datenstrukturen und Funktionen betrachtet werden. Die Funktionen sind darauf beschränkt, nur die Elemente der Datenstruktur zu verarbeiten.
  • Ein eng verwandtes Konzept ist das Konzept einer "Schnittstelle". Eine "Schnittstelle" ist eine Gruppe semantisch verwandter Funktionen, die in einer mit Namen versehenen Einheit organisiert sind (der Name ist die Kennung der Schnittstelle). Schnittstellen haben der Definition nach keine Instantiierungen (d. h., eine Schnittstelle enthält keinen Code zur Ausführung von Funktion, die in der Schnittstelle identifiziert sind); vielmehr spezifizieren Schnittstellen einen Satz von Signaturen für Funktionen. "Instantüerung" bezieht sich auf den Prozeß, Strukturen innerhalb des Speichers zu erzeugen, die ein Objekt darstellen, so daß Operationen an dem Objekt hervorgerufen werden können. Wenn ein Objekt eine Schnittstelle "unterstützt", liefert das Objekt Code für die Funktionen, die durch die Schnittstelle festgelegt sind. Somit ist das Objekt, das die Schnittstelle unterstützt, dafür verantwortlich, den Code zur Ausführung der Funktionen der Schnittstelle zu liefern. Der Code, der vorgesehen wird, muß den Signaturen der Funktionen entsprechen, die durch die Schnittstelle festgelegt sind (d. h., der Code muß die gleichen Parameter und Funktionalität wie in der Schnittstelle spezifiziert aufweisen). Entsprechend kann eine Schnittstelle als ein Standard betrachtet werden, dem Objekte entsprechen müssen.
  • Ein anderes in der bevorzugten Ausführungsform verwendetes Konzept ist die Bezeichnung eines "Moniker". Ein "Moniker" ist ein zusammengesetzter Name für ein Objekt, das einen Zeiger zu dem Objekt enthält. Eine formalere Definition eines Moniker ist ein Objekt, der die IMoniker Schnittstelle unterstützt (wie durch das Microsoft OLE 2.0 Protokoll festgelegt). Die IMoniker Schnittstelle umfaßt eine Funktion, um den Moniker an das Objekt zu binden, auf das der Zeiger des Monikers zeigt. Das Binden bringt ein Objekt in einen Arbeitszustand, so daß Dienste, die von dem Objekt geliefert werden, aufgerufen werden können. Man erkennt, daß die vorliegende Erfindung nicht auf Ausführungsformen begrenzt ist, die Moniker verwenden. Die Diskussion der Moniker bei der bevorzugten Ausführungsform ist lediglich beispielhaft.
  • Wie es oben erwähnt wurde, integriert die bevorzugte Ausführungsform der vorliegenden Erfindung das Systemverwaltungs-Untersystem in das unterliegende Objektmodell des objektorientierten Betriebssystems 24. Mit anderen Worten modelliert das Betriebssystem Komponenten des verteilten Systems 10 als Objekte, und das Systemverwaltungs-Untersystem wird in die Objekte integriert. Die Integration des Systemverwaltungs-Untersystems mit dem unterliegenden Systemobjektmodell liefert eine vereinheitlichte Methode, auf Systemverwaltungsfunktionen zuzugreifen. Des weiteren erleichtert die Integration die Verwendung von Werkzeugen in dem Systemverwaltungs-Untersy stem, die von anderen Untersystemen des Betriebssystems 24 bereitgestellt werden. Des weiteren erlaubt die Integration, daß das Systemverwaltungs-Untersystem ohne weiteres Zugriff auf interne Zustandsinformationen über verwaltete Komponenten gewinnt, die als Objekte modelliert sind. Das kumulative Ergebnis der Integration ist eine wesentliche Verringerung der Last, die dem Systemverwaltungs-Untersystem auferlegt ist, und eine wesentliche Zunahme der dem Systemverwaltungs-Untersystem verfügbaren Leistungen.
  • Die Systemverwaltung ist bei der bevorzugten Ausführungsform der vorliegenden Erfindung vorgesehen, indem den Systemkomponenten erlaubt wird, daß sie so konstruiert werden, daß sie ohne weiteres verwaltbar sind, und indem Dienstprogramme zur Verwaltung der Systemkomponenten bereitgestellt werden. Jede Systemkomponente in dem verteilten System 10 ist als ein Objekt modelliert. Unterkomponenten einer Komponente können auch getrennt als Objekte modelliert werden. Systemkomponenten werden gebildet, damit sie verwaltbar sind, indem die Komponenten und Unterkomponenten in Objekte eingeschlossen werden, die in dem globalen Namensraum sichtbar sind. Die Unterkomponenten und die Komponenten umfassen Eigenschaften, die Zustandsinformationen festlegen. Da die Zustandsinformation in einem Objekt gehalten wird, das in dem globalen verteilten Namensraum sichtbar ist, können andere Objekte Zugriff auf die Zustandsinformation gewinnen. Da die Komponenten und Unterkomponenten als Objekte modelliert werden, sind sie ohne weiteres auffindbar und zugriffsbereit. Im allgemeinen unterstützt jedes verwaltete Objekt Schnittstellen, die Dienste für andere Requesterobjekte bereitstellen.
  • Die Arbeitsweise des Systemverwaltungs-Untersystem der bevorzugten Ausführungsform wird vielleicht am besten anhand eines Beispiels erklärt. Das Systemverwaltungs- Untersystem ist nicht in einem einzigen der Datenverarbeitungssysteme 11A, 11B, 11C und 11 D isoliert. Vielmehr wir die Verantwortung des Systemverwaltungs-Untersystems auf die Datenverarbeitungssysteme 11A, 11B, 11C und 11D verteilt, so daß die Datenverarbeitungssysteme gemeinsam die Systemverwaltung durchführen. Wie es in Fig. 3 gezeigt ist, sei angenommen, daß das Datenverarbeitungssystem 11A bei der Durchführung von Systemverwaltungsfunktionen wünscht, zusätzliche Informationen über den Zustand eines Datenservers 26 herauszufinden, der fernliegend in einem Speicher 16' des Datenverarbeitungssystems 11B gehalten wird. Bei diesem Beispiel ist der Datei server 26 die verwaltete Komponente, die das Systemverwaltungs-Untersystem zu verwalten sucht. Der Zustand des Dateiservers 26 ist der Bequemlichkeit halber in eine Anzahl von Unterkomponenten unterteilt. Insbesondere ist der Dateiserver 26 in einen Anforderungsempfänger, einen Anforderungsprozessor und einen Ergebnisrückgeber unterteilt. Der Anforderungsempfänger ist verantwortlich, Anforderungen für einen Dienst von dem Dateiserver zu empfangen. Der Anforderungsprozessor ist verantwortlich, solche Anforderungen zu verarbeiten, und der Ergebnisrückgeber ist verantwortlich, die Ergebnisse des Diensts an den Requester zurückzugeben, der den Dienst verlangte.
  • Man erkennt, daß der Satz von Unterkomponenten, der in einer verwalteten Komponente enthalten ist, nicht der gleiche bleiben muß; vielmehr können sich die Unterkomponenten dynamisch mit der Zeit ändern, so daß Unterkomponenten mit fortschreitender Zeit hinzugefügt oder entfernt werden. Man erkennt auch, daß die Unterkomponenten hierarchisch organisiert werden können.
  • Die CPU 14' des Datenverarbeitungssystems 11 B stellt Informationen über den Datenserver 26 und seine Unterkomponenten her, die anderen Komponenten in dem verteilten System 10 (Fig. 1) zur Verfügung stehen, indem ein Objekt 32 für den Dateiserver und Objekte 34A, 34B und 34C für die Unterkomponenten erzeugt werden, die Zustandsinformationen über den Dateiserver und seine Unterkomponenten halten, wie es in Fig. 4 dargestellt ist. Diese Objekte 32, 34A, 34B und 34C sind in einem verteilten Namensraum 28 sichtbar. Jedes der Datenverarbeitungssysteme 11A, 11 B, 11 C und 11 D (Fig. 1) in dem verteilten System 10 hat Zugriff auf die Objekte in dem verteilten Namensraum 28 (Fig. 4). Der verteilte Namensraum 28 umfaßt auch Objekte 30A, 30B, 30C und 30D, die die Datenverarbeitungssysteme 11A, 11 B, 11 C bzw. 11 D modellieren.
  • Das Dateiserverobjekt 32 ist ein "Behälter". Ein Behälter ist eine Gesamtheit, die andere Objekte enthält. Bei dem Beispiel der Fig. 4 ist das Dateiserverobjekt 32 ein Behälter, der Objekte 34A, 34B und 34C für die entsprechenden Unterkomponenten des Dateiservers 26 enthält. Daher kann eine verwaltete Komponente als ein Behälterobjekt modelliert werden, das Objekte für die Unterkomponenten des verwalteten Objekts hält.
  • Das Dateiserverobjekt 32 ist auch ein spezieller Typ eines Objekts, das als ein Verknüpfungspunkt bekannt ist und sich von anderen Objekten in dem verteilten Namens raum 28 unterscheidet. Ein Verknüpfungspunkt ist ein Objekt, das als eine Verknüpfung zwischen zwei Namensräumen dient. Das Dateiserverobjekt 32 ist ein Verknüpfungspunkt, der den verteilten Namensraum mit dem Namensraum der Unterkomponentenobjekte 34A, 34B und 34C verbindet. Zugriff auf die Unterkomponentenobjekte 34A, 34B und 34C kann durch das Dateiserver-Behälterobjekt 32 vorgenommen werden. Jedes der Unterkomponentenobjekte 34A, 34B und 34C unterstützt eine Schnittstelle, um ihr Verhalten zu überwachen und zu verwalten. Des weiteren hält jedes der Unterkomponentenobjekte 34A, 34B und 34C Zustandsinformationen in bezug auf die entsprechende Unterkomponente, die mit dem Objekt verbunden ist. Diese Zustandsinformationen werden in Eigenschaftssätzen gehalten, die in den Unterkomponentenobjekten 34A, 34B und 34C gespeichert sind, die abgefragt werden können, um die in ihnen enthaltenen Zustandsinformationen zu erhalten.
  • Der Verknüpfungspunkt für das Dateiserverobjekt 32 speichert eine global einzigartige Kennung ID (GUID) für das Dateiserverobjekt 32. Diese GUID wird verwendet, um eindeutig das Dateiserverobjekt 32 in dem verteilten Namensraum 28 zu erkennen. Zusätzlich wird eine laufende Fernprozedurruf-(RPC)-Adresse für einen "Agenten" des Dateiservers 26 in dem Dateiserverobjekt 32 gespeichert. Der Agent ist ein Körper eines Bibliothekscodes, der von dem Betriebssystem 24 bereitgestellt wird und mehreren Zwecken dient, einschließlich der Herstellung von Unterkomponentenobjekten 34A, 34B und 34C, die in dem verteilten globalen Namensraum 28 sichtbar sind. Der Agent liefert auch einen Prozedurfernaufruf-(RPC)-Server, um Prozedurfernaufrufe im Auftrag des Dateiservers und seiner Unterkomponenten herzustellen. Es gibt eine unmittelbare eins-zueins Entsprechung zwischen einer verwalteten Komponente, wie dem Dateiserver, und ihrem Agenten. Das Betriebssystem 24 liefert Anwendungsprogrammschnittstellen (A- Pls), um dem Benutzer zu ermöglichen, einen neuen Agenten zu erzeugen, Objekte für verwaltete Komponenten und Unterkomponenten zu erzeugen, Objekte für verwaltete Komponenten und Unterkomponenten zu entfernen und eine Antwort auf Operationen an verwalteten Komponenten und Unterkomponenten zu liefern. Der Agent kann Werte ausgewählter Eigenschaften eines verwalteten Objekts wiedergewinnen, und der Agent kann die Werte der Eigenschaften abändern, die in verwalteten Objekten gehalten sind.
  • Unter Rückkehr zu dem Beispiel der Fig. 4 sei angenommen, daß das Datenverarbeitungssytem 11A Zugriff auf das Unterkomponentenobjekt 34B des Requesterprozessors sucht. Fig. 5 zeigt ein Flußdiagramm der Schritte, die durchgeführt werden, um Zugriff auf die Zustandsinformationen zu erhalten, die in dem Requesterprozessorobjekt 34B gehalten sind. Anfangs verlangt das Datenverarbeitungssystem 11A Zugriff auf dis Zustandsinformationen, die in dem Unterkomponentenobjekt 34B des Requesterprozessors gehalten sind (Schritt 40 in Fig. 5). Das Betriebssystem 24 (Fig. 2) erkennt, daß das Unterkomponentenobjekt 34B des Requesterprozessors ein Fernobjekt ist, das in dem Datenverabeitungssystem 11 B gespeichert ist. Als Ergebnis wird der Agent für die Unterkomponentenobjekte 34A, 34B und 34C in dem Datenverarbeitungssystem 11 B aufgerufen, wobei eine RPC-Einrichtung verwendet wird, die als Teil des Betriebssystems 24 vorgesehen ist. Der Agent lädt seinerzeit Prozedurfernaufruf-(RPC)-Anzapfroutinen (stub routines), die Daten packen und die RPC-Einrichtung verwenden, den RPC-Aufruf zu dem Datenverarbeitungssystem 11 B durchzuführen. Zwei Sätze Anzapfroutinen werden geladen.
  • Zuerst wird ein Satz Anzapfroutinen bei dem Datenverabeitungssystem 11A geladen, um den RPC-Aufruf zu machen, und zweitens wird ein Satz Anzapfroutinen bei dem Datenverarbeitungssystem 11 B geladen, um den Rückruf auf das Datenverarbeitungssystem 11A herzustellen (Schritt 42 in Fig. 5). Die RPC-Anzapfroutinen bei dem Datenverarbeitungssytem 11A werden dann ausgeführt, um den RPC-Server des Agenten aufzurufen, der den RPC-Aufruf durchführt (Schritt 44). Die Zustandsinformationen werden örtlich bei dem Datenverarbeitungssytem 11 B abgefragt (Schritt 46 in Fig. 5). Die Zustandsinformationen werden abgefragt, indem zuerst ein Moniker für eine Schnittstelle gefunden wird, die von dem Unterkomponentenobjekt 34B des Requesterprozessors unterstützt wird (Fig. 4) und die die Abfrage der Zustandsinformationen ermöglicht, die in dem Unterkomponentenobjekt des Requesterprozessors gehalten sind. Dieser Moniker wird unter Verwendung der Querylnterface() Funktion erhalten.
  • Jedes Objekt in dem verteilten Namensraum 28 muß nach Definition die IUnknown Schnittstelle unterstützen (d. h., alle Objekte unterstützen Schnittstellen, die die I- Unknown Schnittstelle erben). Die IUnknown Schnittstelle umfaßt die Funktion Querylnterface(), um abzufragen, ob ein Objekt eine bestimmte Schnittstelle unterstützt. Die Querylnterfacefunktion() kehrt zurück, um einen Zeiger zu dem Code zur Ausführung der Funktionen zu erhalten. Im allgemeinen muß, wenn immer eine Funktion aufgerufen wird, die Teil einer Schnittstelle ist, die von einem Objekt unterstützt wird, die Querylnterfacefunktion() zuerst aufgerufen werden.
  • Der durch den Aufruf der Querylnterfacefunktion() erhaltene Moniker zeigt zu einer Stelle der Schnittstelle, die von dem Unterkomponentenobjekt 34B des Requesterprozessors unterstützt wird (Fig. 4). Der Moniker wird dann verwendet, auf Funktionen zuzugreifen, um Zustandsinformationen abzufragen, die in dem Unterkomponentenobjekt 348 des Requesterprozessors gehalten sind.
  • Sobald die Zustandsinformationen lokal an dem Datenverarbeitungssystem 11 B erhalten worden sind, wird ein Rückaufruf zu dem Datenverarbeitungssystem 11 A gemacht, wobei die RPC-Anzapfroutinen verwendet werden, die früher geladen worden sind (Schritt 48 in Fig. 5). Das Datenverarbeitungssystem 11A erhält dann die Zustandsinformationen und verwendet die Zustandsinformationen für Systemverwaltungsfunktionen (Schritt 50 in Fig. 5).
  • Das oben beschriebene Beispiel stellt dar, wie die bevorzugte Ausführungsform der vorliegenden Erfindung die Systemverwaltungsaufgaben erleichtert. Insbesondere schließt die bevorzugte Ausführungsform Zustandsinformationen für verwaltete Komponenten in Objekte ein, die in dem verteilten Namensraum sichtbar sind, so daß ein Fernzugriff auf die Zustandsinformationen möglich ist. Des weiteren können, da die Zustandsinformationen in das unterliegende Systemobjektmodell integriert sind, die Objekte, die Zustandsinformationen halten, verarbeitet und verwaltet werden, wobei Werkzeuge eingesetzt werden, die bei allen Arten von Objekten verwendet werden können.
  • Das Betriebssystem 24 der bevorzugten Ausführungsform der vorliegenden Erfindung liefert zumindest zwei Arten "Instrumente". Instrumente sind Variable, deren Wert in dem verteilten Namensraum 28 sichtbar ist. Fig. 6 ist ein Flußdiagramm, das zeigt, wie Instrumente bei der bevorzugten Ausführungsform der vorliegenden Erfindung verwendet werden. Anfangs wird eine Variable als ein Instrumente innerhalb eines Anwendungsprogramms erklärt (Schritt S2 in Fig. 6). Das Anwendungsprogramm ordnet dann dem Instrument einen Wert während seiner Ausführung zu (Schritt S4). Der dem Instrumente zugeordnete Wert wird in einem entsprechenden Objekt eingeschlossen, das in dem verteilten Namensraum 28 sichtbar ist (Schritt S6). Entsprechend kann der Wert des Instruments erhalten werden, indem das entsprechende Objekt abgefragt wird.
  • Instrumente stehen in drei Arten zur Verfügung. Ein Benutzer spezifiziert mit der Erklärung des Typs der Variablen, welche Art Instrument er wünscht. Eine erste Art Instrument ist ein Zähler. Der Zähler wirkt in einer einem Wegstreckenmesser entsprechenden Weise dahingehend, daß sein Wert stets zunimmt, bis er zurückgesetzt wird. Ähnlich ist eine zweite Art Instrument ein Meßinstrument, das wie ein Meßgerät wirkt, das zwischen einem Bereich von Werten schwanken kann.
  • Die bevorzugte Ausführungsform der vorliegenden Erfindung schafft auch einen zusätzlichen Mechanismus, um Zustandsinformationen in dem verteilten Namensraum 28 anzuordnen. Dieser Mechanismus ist als Arbeitsstations-Verwaltungsagent bekannt. Der Arbeitsstations-Verwaltungsagent gibt den gegenwärtigen Zustand einer Arbeitsstation in den verteilten globalen Namensraum 28.
  • Während die vorliegende Erfindung unter Bezugnahme auf eine bevorzugte Ausführungsform von ihr beschrieben worden ist, erkennt der Durchschnittsfachmann auf dem Gebiet nichtsdestotrotz, daß verschiedene Abänderungen in der Form und bei Einzelheiten vorgenommen werden können, ohne von der vorliegenden Erfindung abzuweichen, wie sie in den beigefügten Ansprüchen definiert ist. Beispielsweise muß die vorliegende Erfindung keine Schnittstellen oder Moniker verwenden, vielmehr können andere alternative Mechanismen verwendet werden.

Claims (35)

1. Verfahren zum Betreiben eines verteilten Systems, wobei das verteilte System (10) eine Speichereinrichtung (16) zur Speicherung von Objekten, einen Prozessor (14) zur Ausführung eines Prozesses und eine verwaltete Komponente mit einem internen Zustand aufweist, wobei das Verfahren die Schritte umfaßt:
Herstellen von Objekten in einem verteilten Namensraum (28), der für den Prozeß sichtbar ist, gekennzeichnet durch
Speichern des internen Zustands der verwalteten Komponente als ein Objekt in der Speichereinrichtung (16); und
Zugreifen auf das Objekt, um Zugriff auf den internen Zustand der durch den Prozeß verwalteten Komponente zu erhalten.
2. Verfahren, wie in Anspruch 1 beansprucht, wobei das Objekt eine Schnittstelle zum Zugreifen auf das Objekt unterstützt.
3. Verfahren, wie in Anspruch 1 oder 2 beansprucht, wobei das Objekt eine Schnittstelle zur Abfrage unterstützt, ob das Objekt eine bestimmte Schnittstelle unterstützt, wobei die Schnittstelle als eine IUnknown Schnittstelle bezeichnet wird.
4. Verfahren, wie in einem der Ansprüche 1 bis 3 beansprucht, wobei das Objekt eine Schnittstelle zum Binden eines Monikers an das Objekt unterstützt, die Schnittstelle als IMoniker Schnittstelle bezeichnet wird und der Moniker einen Zeiger zu einem Objekt umfaßt.
5. Verfahren, wie in einem der Ansprüche 1 bis 4 beansprucht, das des weiteren den Schritt umfaßt: Speichern eines Systemverwaltungsobjekts zur Verwaltung der verwalteten Komponente in der Speichereinrichtung (16).
6. Verfahren, wie in Anspruch 5 beansprucht, das des weiteren den Schritt umfaßt: Verwalten der verwalteten Komponente unter Verwendung des Systemverwaltungsobjekts.
7. Verfahren, wie in einem der Ansprüche 1 bis 6 beansprucht, das des weiteren den Schritt umfaßt: Bereitstellen eines Namensdienstes zur Organisation der Namen von Objekten in dem verteilten Namensraum (28).
8. Verfahren, wie in einem der Ansprüche 1 bis 7 beansprucht, das des weiteren die Schritte umfaßt:
Unterteilen der verwalteten Komponente in mehrere Unterkomponenten, wobei jede Unterkomponente einen internen Zustand aufweist; und
Speichern des internen Zustands einer jeden Unterkomponente in einem getrennten Objekt in der Speichereinrichtung (16), wobei jedes Objekt in dem verteilten Namensraum (28) für den Prozeß sichtbar ist.
9. Verfahren, wie in Anspruch 8 beansprucht, das des weiteren die Schritte umfaßt: Einschließen der Objekte, die die internen Zustände der Unterkomponenten speichern, in das Objekt, das den internen Zustand der verwalteten Komponente speichert, so daß auf die Objekte, die die internen Zustände der Unterkomponenten speichern, durch das Objekt zugegriffen werden kann, das den internen Zustand der verwalteten Komponente speichert.
10. Verfahren, wie in einem der Ansprüche 1 bis 8 beansprucht, wobei das verteilte System (10) des weiteren eine zweite, verwaltete Komponente mit einem internen Zustand umfaßt, und das Verfahren des weiteren den Schritt umfaßt: Speichern des internen Zustands der zweiten, verwalteten Komponente als ein Ob jekt in der Speichereinrichtung (16), wobei das Objekt in dem verteilten Namensraum (28) für den Prozeß sichtbar ist.
11. Verfahren, wie in einem der Ansprüche 1 bis 10 beansprucht, wobei das verteilte System (10) des weiteren umfaßt:
eine Prozedurfernaufrufeinrichtung,
ein erstes Datenverarbeitungssystem (11), das den Prozessor (14) umfaßt, und ein zweites Datenverarbeitungssystem (11), das die Speichereinrichtung (16) umfaßt; und wobei das Verfahren des weiteren die Schritte umfaßt:
Verlangen von Zugriff auf den internen Zustand der Komponente in dem Prozeß, und
Durchführen eines Prozedurfernaufrufs in Antwort auf den Schritt der Zugriffsanforderung, wobei die Prozedurfernaufrufeinrichtung verwendet wird, um den Schritt des Zugriffs auf das Objekt im Auftrag des Prozesses durchzuführen.
12. Verfahren, wie in einem der Ansprüche 1 bis 11 beansprucht,
wobei die verwaltete Komponente ein Programm ist, und
das Verfahren des weiteren die Schritte umfaßt:
Erklären einer Variablen in dem Programm als eine Variable, auf die in dem verteilten Namensraum (28) zugreifbar ist,
Durchführen des Programms, so daß der Variablen ein Wert zugeordnet wird, und Speichern des Werts der Variablen in dem Objekt.
13. Verfahren, wie in Anspruch 12 beansprucht, wobei die Variable ein Zähler ist, und der Schritt, das Programm durchzuführen, des weiteren den Schritt umfaßt: Erhöhen der Variablen um eine vorbestimmte Größe.
14. Verfahren, wie in Anspruch 12 oder 13 beansprucht, wobei der Schritt, das Programm durchzuführen, des weiteren den Schritt umfaßt: Zuordnen eines Werts der Variablen, der den Zustand des Programms spezifiziert.
15. Verfahren, wie in einem der Ansprüche 1 bis 10 beansprucht, wobei die verwaltete Komponente ein Datenverarbeitungsbetriebsmittel ist, und das Verfahren des weiteren den Schritt umfaßt: Modellieren, des Datenverarbeitungsbetriebsmittels als ein Objekt.
16. Verfahren, wie in Anspruch 15 beansprucht, wobei das Datenverarbeitungsbetriebsmittel eine Hardwarekomponente umfaßt.
17. Verfahren, wie in Anspruch 15 oder 16 beansprucht, wobei das Datenverarbeitungsbetriebsmittel eine Softwarekomponente umfaßt.
18. Computerlesbares Medium, das Befehle zur Ausführung des computerisierten Verfahrens umfaßt, wie es in einem der Ansprüche 1 bis 17 beansprucht ist.
19. Verteiltes System (17) mit einer Einrichtung zur Herstellung von Objekten in einem verteilten Namensraum (28), der für einen Prozeß sichtbar ist, gekennzeichnet durch
eine Speichereinrichtung (16) zur Speicherung von Objekten,
einen Prozessor (14) zur Ausführung des Prozesses,
eine verwaltete Komponente mit einem internen Zustand,
eine Einrichtung zur Speicherung des internen Zustands der verwalteten Komponente als ein Objekt in der Speichereinrichtung (16) und
eine Einrichtung zum Zugreifen auf das Objekt, um durch den Prozeß Zugriff auf den internen Zustand der verwalteten Komponente zu erlangen.
20. Verteiltes System (10), wie in Anspruch 19 beansprucht, wobei das Objekt eine Schnittstelle zum Zugreifen auf das Objekt unterstützt.
21. Verteiltes System (10), wie in Anspruch 19 oder 20 beansprucht, wobei das Objekt eine Schnittstelle zur Abfrage unterstützt, ob das Objekt eine bestimmte Schnittstelle unterstützt, wobei die Schnittstelle als eine IUnknown Schnittstelle bezeichnet wird.
22. Verteiltes System (10), wie in einem der Ansprüche 19 bis 21 beansprucht, wobei das Objekt eine Schnittstelle zum Binden eines Moniker an das Objekt unterstützt, die Schnittstelle als IMoniker Schnittstelle bezeichnet wird und der Moniker einen Zeiger zu einem Objekt umfaßt.
23. Verteiltes System (10), wie in einem der Ansprüche 19 bis 22 beansprucht, weiterhin umfassend: eine Einrichtung zur Speicherung eines Systemverwaltungsobjekts zur Verwaltung der verwalteten Komponente in der Speichereinrichtung (16).
24. Verteiltes System (10), wie in Anspruch 23 beansprucht, das des weiteren eine Einrichtung zur Verwaltung der verwalteten Komponente unter Verwendung des Systemverwaltungsobjekts umfaßt.
25. Verteiltes System (10), wie in einem der Ansprüche 19 bis 24 beansprucht, das des weiteren eine Einrichtung (24) umfaßt, einen Namensdienst zur Organisation der Namen von Objekten in dem verteilten Namensraum (28) bereitzustellen.
26. Verteiltes System (10), wie in einem der Ansprüche 19 bis 25 beansprucht, das des weiteren umfaßt,
eine Einrichtung zum Unterteilen der verwalteten Komponente in mehrere Unterkomponenten, wobei jede Unterkomponente einen internen Zustand aufweist; und
eine Einrichtung zum Speichern des internen Zustands einer jeden Unterkomponente in einem getrennten Objekt in der Speichereinrichtung (16), wobei jedes Objekt in dem verteilten Namensraum (28) für den Prozeß sichtbar ist.
27. Verteiltes System (10), wie in Anspruch 26 beansprucht, das des weiteren eine Einrichtung zum Einschließen der Objekte, die die internen Zustände der Unterkomponenten speichern, in dem Objekt umfaßt, das den internen Zustand der verwalteten Komponente speichert, so daß auf die Objekte, die die internen Zustände der Unterkomponenten speichern, durch das Objekt zugegriffen werden kann, das den internen Zustand der verwalteten Komponente speichert.
28. Verteiltes System (10), wie in einem der Ansprüche 19 bis 27, das des weiteren eine zweite, verwaltete Komponente mit einem internen Zustand und eine Einrichtung umfaßt, den internen Zustand der zweiten, verwalteten Komponente als ein Objekt in der Speichereinrichtung (16) zu speichern, wobei das Objekt in dem verteilten Namensraum (28) für den Prozeß sichtbar ist.
29. Verteiltes System (10), wie in einem der Ansprüche 19 bis 28 beansprucht, das des weiteren umfaßt:
eine Prozedurfernaufrufeinrichtung,
ein erstes Datenverarbeitungssystem (11), das den Prozessor (14) umfaßt,
ein zweites Datenverarbeitungssystem (11), das die Speichereinrichtung (16) umfaßt;
eine Einrichtung zur Zugriffsanforderung in dem Prozeß auf den internen Zustand der Komponente; und
eine Einrichtung zur Ausführung eines Prozedurfernaufruf in Antwort auf die Einrichtung zur Zugriffsanforderung, wobei die Prozedurfernaufrufeinrichtung verwendet wird, die Einrichtung zum Zugreifen auf das Objekt im Auftrag des Prozesses zu betreiben.
30. Verteiltes System (10), wie in einem der Ansprüche 19 bis 29 beansprucht, bei dem
die verwaltete Komponente ein Programm ist, und
das Verteiltes System (10), des weiteren umfaßt:
eine Einrichtung zum Erklären einer Variable in dem Programm als eine Variable, auf die in dem verteilten Namensraum (28) zugreifbar ist,
eine Einrichtung zur Ausführung des Programms, so daß der Variablen ein Wert zugeordnet wird, und
eine Einrichtung zum Speichern des Werts der Variablen in dem Objekt.
31. Verteiltes System (10), wie in Anspruch 30 beansprucht, wobei
die Variable ein Zähler ist, und
die Einrichtung zur Ausführung des Programms des weiteren eine Einrichtung umfaßt, die Variable um einen vorbestimmten Wert zu erhöhen.
32. Verteiltes System (10), wie in Anspruch 30 oder 31 beansprucht, wobei die Einrichtung zur Ausführung des Programms des weiteren eine Einrichtung umfaßt, einen Wert, der den Zustand des Programms spezifiziert, der Variablen zuzuordnen.
33. Verteiltes System (10), wie in einem der Ansprüche 19 bis 29 beansprucht, wobei die verwaltete Komponente ein Datenverarbeitungsbetriebsmittel ist, und das Verteiltes System (10), des weiteren eine Einrichtung umfaßt, das Datenverarbeitungsbetriebsmittel als ein Objekt zu modellieren.
34. Verteiltes System (10), wie in Anspruch 33 beansprucht, wobei das Datenverarbeitungsbetriebsmittel eine Hardwarekomponente umfaßt.
35. Verteiltes System (10), wie in Anspruch 33 oder 34 beansprucht, wobei das Datenverarbeitungsbetriebsmittel eine Softwarekomponente umfaßt.
DE69425699T 1993-06-25 1994-06-23 Integrierung von Systemverwaltungsdiensten mit einem unterliegenden Systemobjektmodell Expired - Lifetime DE69425699T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US8298893A 1993-06-25 1993-06-25

Publications (2)

Publication Number Publication Date
DE69425699D1 DE69425699D1 (de) 2000-10-05
DE69425699T2 true DE69425699T2 (de) 2000-12-28

Family

ID=22174719

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69425699T Expired - Lifetime DE69425699T2 (de) 1993-06-25 1994-06-23 Integrierung von Systemverwaltungsdiensten mit einem unterliegenden Systemobjektmodell

Country Status (5)

Country Link
US (1) US6175878B1 (de)
EP (2) EP0987626A3 (de)
JP (1) JP3949180B2 (de)
CA (1) CA2124720C (de)
DE (1) DE69425699T2 (de)

Families Citing this family (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6751796B1 (en) * 1993-06-25 2004-06-15 Microsoft Corporation Integration of systems management services with an underlying system object model
AU3490397A (en) * 1997-06-16 1999-01-04 Network Programs, Inc. Composition of systems of objects by interlocking coordination, protection, and distribution
US5890155A (en) * 1997-08-22 1999-03-30 Honeywell Inc. System and methods for providing encapsulated and performance-efficient data references in an object-oriented controller and distributed control system employing the same
CA2221654A1 (en) * 1997-11-20 1999-05-20 Michael J. Mccloskey Knowledge module
DE60000301T2 (de) * 1999-02-25 2003-01-30 Siemens Energy & Automation, Inc. Verfahren, gerät, und hergestellter gegenstand für beinamen
US6460082B1 (en) * 1999-06-17 2002-10-01 International Business Machines Corporation Management of service-oriented resources across heterogeneous media servers using homogenous service units and service signatures to configure the media servers
US6604148B1 (en) 1999-10-01 2003-08-05 International Business Machines Corporation Method, system, and program for accessing a network namespace
US7581231B2 (en) 2001-07-10 2009-08-25 Microsoft Corporation Computing system and method for allowing plurality of applications written in different programming languages to communicate and request resources or services via a common language runtime layer
US7546602B2 (en) * 2001-07-10 2009-06-09 Microsoft Corporation Application program interface for network software platform
US7165239B2 (en) * 2001-07-10 2007-01-16 Microsoft Corporation Application program interface for network software platform
US7017162B2 (en) 2001-07-10 2006-03-21 Microsoft Corporation Application program interface for network software platform
US6920461B2 (en) 2001-07-10 2005-07-19 Microsoft Corp. Application program interface for network software platform
US7117504B2 (en) 2001-07-10 2006-10-03 Microsoft Corporation Application program interface that enables communication for a network software platform
US7363149B2 (en) * 2001-12-13 2008-04-22 Robert Bosch Gmbh Autonomous in-vehicle navigation system and diagnostic system
US7426734B2 (en) * 2003-10-24 2008-09-16 Microsoft Corporation Facilitating presentation functionality through a programming interface media namespace
US20050091535A1 (en) * 2003-10-24 2005-04-28 Microsoft Corporation Application identity for software products
US20050091658A1 (en) * 2003-10-24 2005-04-28 Microsoft Corporation Operating system resource protection
JP4856966B2 (ja) * 2006-01-27 2012-01-18 株式会社日立製作所 バックアップシステム、ファイルサーバ、及びバックアップ方法
CN101600886B (zh) 2007-01-15 2013-07-17 维斯塔斯风力系统有限公司 用于风电场监视和控制的系统和方法
US7971228B2 (en) * 2007-02-07 2011-06-28 Cisco Technology, Inc. System and method for providing application-specific on-line charging in a communications environment
WO2009144821A1 (ja) * 2008-05-30 2009-12-03 富士通株式会社 装置構成情報最適配置方法及び装置構成情報最適配置システム
US8739258B2 (en) * 2010-11-12 2014-05-27 Sony Corporation Certificate based access control in open mobile alliance device management
USRE47020E1 (en) * 2010-11-12 2018-08-28 Sony Mobile Communications Inc. Certificate based access control in open mobile alliance device management
US11449370B2 (en) 2018-12-11 2022-09-20 DotWalk, Inc. System and method for determining a process flow of a software application and for automatically generating application testing code
US11436039B2 (en) 2019-05-04 2022-09-06 Prasaga Foundation Systemic extensible blockchain object model comprising a first-class object model and a distributed ledger technology
US11025508B1 (en) 2020-04-08 2021-06-01 Servicenow, Inc. Automatic determination of code customizations
US11296922B2 (en) 2020-04-10 2022-04-05 Servicenow, Inc. Context-aware automated root cause analysis in managed networks
US10999152B1 (en) 2020-04-20 2021-05-04 Servicenow, Inc. Discovery pattern visualizer
US11301435B2 (en) 2020-04-22 2022-04-12 Servicenow, Inc. Self-healing infrastructure for a dual-database system
US11392768B2 (en) 2020-05-07 2022-07-19 Servicenow, Inc. Hybrid language detection model
US11263195B2 (en) 2020-05-11 2022-03-01 Servicenow, Inc. Text-based search of tree-structured tables
US11470107B2 (en) 2020-06-10 2022-10-11 Servicenow, Inc. Matching configuration items with machine learning
US11277359B2 (en) 2020-06-11 2022-03-15 Servicenow, Inc. Integration of a messaging platform with a remote network management application
US11451573B2 (en) 2020-06-16 2022-09-20 Servicenow, Inc. Merging duplicate items identified by a vulnerability analysis
US11379089B2 (en) 2020-07-02 2022-07-05 Servicenow, Inc. Adaptable user interface layout for applications
US11277321B2 (en) 2020-07-06 2022-03-15 Servicenow, Inc. Escalation tracking and analytics system
US11301503B2 (en) 2020-07-10 2022-04-12 Servicenow, Inc. Autonomous content orchestration
US11449535B2 (en) 2020-07-13 2022-09-20 Servicenow, Inc. Generating conversational interfaces based on metadata
US11632300B2 (en) 2020-07-16 2023-04-18 Servicenow, Inc. Synchronization of a shared service configuration across computational instances
US11272007B2 (en) 2020-07-21 2022-03-08 Servicenow, Inc. Unified agent framework including push-based discovery and real-time diagnostics features
US11748115B2 (en) 2020-07-21 2023-09-05 Servicenow, Inc. Application and related object schematic viewer for software application change tracking and management
US11343079B2 (en) 2020-07-21 2022-05-24 Servicenow, Inc. Secure application deployment
US11582106B2 (en) 2020-07-22 2023-02-14 Servicenow, Inc. Automatic discovery of cloud-based infrastructure and resources
US11095506B1 (en) 2020-07-22 2021-08-17 Servicenow, Inc. Discovery of resources associated with cloud operating system
US11275580B2 (en) 2020-08-12 2022-03-15 Servicenow, Inc. Representing source code as implicit configuration items
US11372920B2 (en) 2020-08-31 2022-06-28 Servicenow, Inc. Generating relational charts with accessibility for visually-impaired users
US11245591B1 (en) 2020-09-17 2022-02-08 Servicenow, Inc. Implementation of a mock server for discovery applications
US11150784B1 (en) 2020-09-22 2021-10-19 Servicenow, Inc. User interface elements for controlling menu displays
US11625141B2 (en) 2020-09-22 2023-04-11 Servicenow, Inc. User interface generation with machine learning
US11632303B2 (en) 2020-10-07 2023-04-18 Servicenow, Inc Enhanced service mapping based on natural language processing
US11734025B2 (en) 2020-10-14 2023-08-22 Servicenow, Inc. Configurable action generation for a remote network management platform
US11342081B2 (en) 2020-10-21 2022-05-24 Servicenow, Inc. Privacy-enhanced contact tracing using mobile applications and portable devices
US11258847B1 (en) 2020-11-02 2022-02-22 Servicenow, Inc. Assignments of incoming requests to servers in computing clusters and other environments
US11363115B2 (en) 2020-11-05 2022-06-14 Servicenow, Inc. Integrated operational communications between computational instances of a remote network management platform
US11868593B2 (en) 2020-11-05 2024-01-09 Servicenow, Inc. Software architecture and user interface for process visualization
US11281442B1 (en) 2020-11-18 2022-03-22 Servicenow, Inc. Discovery and distribution of software applications between multiple operational environments
US11693831B2 (en) 2020-11-23 2023-07-04 Servicenow, Inc. Security for data at rest in a remote network management platform
US11216271B1 (en) 2020-12-10 2022-01-04 Servicenow, Inc. Incremental update for offline data access
US11269618B1 (en) 2020-12-10 2022-03-08 Servicenow, Inc. Client device support for incremental offline updates
US11630717B2 (en) 2021-01-06 2023-04-18 Servicenow, Inc. Machine-learning based similarity engine
US11301365B1 (en) 2021-01-13 2022-04-12 Servicenow, Inc. Software test coverage through real-time tracing of user activity
US11418586B2 (en) 2021-01-19 2022-08-16 Servicenow, Inc. Load balancing of discovery agents across proxy servers
US11921878B2 (en) 2021-01-21 2024-03-05 Servicenow, Inc. Database security through obfuscation
US11301271B1 (en) 2021-01-21 2022-04-12 Servicenow, Inc. Configurable replacements for empty states in user interfaces
US11513885B2 (en) 2021-02-16 2022-11-29 Servicenow, Inc. Autonomous error correction in a multi-application platform
US11277369B1 (en) 2021-03-02 2022-03-15 Servicenow, Inc. Message queue architecture and interface for a multi-application platform
US11831729B2 (en) 2021-03-19 2023-11-28 Servicenow, Inc. Determining application security and correctness using machine learning based clustering and similarity
US12254063B2 (en) 2021-03-22 2025-03-18 Servicenow, Inc. Cross-modality curiosity for sparse-reward tasks
US11640369B2 (en) 2021-05-05 2023-05-02 Servicenow, Inc. Cross-platform communication for facilitation of data sharing
US11635752B2 (en) 2021-05-07 2023-04-25 Servicenow, Inc. Detection and correction of robotic process automation failures
US11635953B2 (en) 2021-05-07 2023-04-25 Servicenow, Inc. Proactive notifications for robotic process automation
US11277475B1 (en) 2021-06-01 2022-03-15 Servicenow, Inc. Automatic discovery of storage cluster
US11762668B2 (en) 2021-07-06 2023-09-19 Servicenow, Inc. Centralized configuration data management and control
US11418571B1 (en) 2021-07-29 2022-08-16 Servicenow, Inc. Server-side workflow improvement based on client-side data mining
US11516307B1 (en) 2021-08-09 2022-11-29 Servicenow, Inc. Support for multi-type users in a single-type computing system
US12254352B2 (en) 2021-10-28 2025-03-18 Servicenow, Inc. Reduced memory utilization for data analytics procedures
US11960353B2 (en) 2021-11-08 2024-04-16 Servicenow, Inc. Root cause analysis based on process optimization data
US11734381B2 (en) 2021-12-07 2023-08-22 Servicenow, Inc. Efficient downloading of related documents
US12099567B2 (en) 2021-12-20 2024-09-24 Servicenow, Inc. Viewports and sub-pages for web-based user interfaces
US12001502B2 (en) 2022-01-11 2024-06-04 Servicenow, Inc. Common fragment caching for web documents
US11829233B2 (en) 2022-01-14 2023-11-28 Servicenow, Inc. Failure prediction in a computing system based on machine learning applied to alert data
US11582317B1 (en) 2022-02-07 2023-02-14 Servicenow, Inc. Payload recording and comparison techniques for discovery
US11734150B1 (en) 2022-06-10 2023-08-22 Servicenow, Inc. Activity tracing through event correlation across multiple software applications
US11989538B2 (en) 2022-06-21 2024-05-21 Servicenow, Inc. Orchestration for robotic process automation
US12231508B2 (en) 2022-07-12 2025-02-18 Servicenow, Inc. Rapid error detection through command validation
US12056473B2 (en) 2022-08-01 2024-08-06 Servicenow, Inc. Low-code / no-code layer for interactive application development
US12095634B2 (en) 2022-08-12 2024-09-17 Servicenow, Inc. Hybrid request routing system
US12039328B2 (en) 2022-09-30 2024-07-16 Servicenow, Inc. Configuration items for supporting automations and efficacies thereof
US12141048B2 (en) 2022-10-12 2024-11-12 Servicenow, Inc. Machine learning model for determining software defect criticality
US12072775B2 (en) 2022-12-07 2024-08-27 Servicenow, Inc. Centralized configuration and change tracking for a computing platform
US12147487B2 (en) 2022-12-07 2024-11-19 Servicenow, Inc. Computationally efficient traversal of virtual tables
US12192245B2 (en) 2023-01-23 2025-01-07 Servicenow, Inc. Control of cloud infrastructure configuration
US12131168B1 (en) 2023-04-18 2024-10-29 Servicenow, Inc. Outcome-oriented automation platform
US12222834B2 (en) 2023-05-24 2025-02-11 Servicenow, Inc. Discovery troubleshooting based on machine learning
US12248361B2 (en) 2023-07-31 2025-03-11 Servicenow, Inc. Parallelized exception handling for large datasets
US12254014B1 (en) 2024-02-23 2025-03-18 Servicenow, Inc. Document creation with guided generative artificial intelligence

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62126457A (ja) * 1985-11-27 1987-06-08 Fujitsu Ltd 分散デ−タ処理方式
JPS647231A (en) * 1987-06-30 1989-01-11 Toshiba Corp Parallel processing device for object directional system
CA2048306A1 (en) * 1990-10-02 1992-04-03 Steven P. Miller Distributed configuration profile for computing system
JPH04181436A (ja) * 1990-11-16 1992-06-29 Fujitsu Ltd デバック方式
EP0501610B1 (de) * 1991-02-25 1999-03-17 Hewlett-Packard Company Objektorientiertes verteiltes Rechnersystem
US5367635A (en) * 1991-08-29 1994-11-22 Hewlett-Packard Company Network management agent with user created objects providing additional functionality
JP3613401B2 (ja) * 1992-07-06 2005-01-26 マイクロソフト コーポレーション オブジェクトの名称を付けて結び付ける方法及びシステム
US5307490A (en) * 1992-08-28 1994-04-26 Tandem Computers, Inc. Method and system for implementing remote procedure calls in a distributed computer system
US5491796A (en) * 1992-10-23 1996-02-13 Net Labs, Inc. Apparatus for remotely managing diverse information network resources

Also Published As

Publication number Publication date
EP0631232A2 (de) 1994-12-28
EP0987626A3 (de) 2007-07-04
JP3949180B2 (ja) 2007-07-25
EP0987626A2 (de) 2000-03-22
CA2124720C (en) 2002-10-22
DE69425699D1 (de) 2000-10-05
US6175878B1 (en) 2001-01-16
JPH07146848A (ja) 1995-06-06
EP0631232A3 (de) 1995-04-19
CA2124720A1 (en) 1994-12-26
EP0631232B1 (de) 2000-08-30

Similar Documents

Publication Publication Date Title
DE69425699T2 (de) Integrierung von Systemverwaltungsdiensten mit einem unterliegenden Systemobjektmodell
DE69131245T2 (de) Verfahren und Gerät zum Verschaffen von dynamischen Aufrufen von Anwendungsprogrammen in einer verteilten heterogenen Umgebung
DE69131745T2 (de) Verfahren und Gerät zum Verschaffen einer Kundenschnittstelle zu einem objektorientierten Aufruf eines Anwendungsprogramms
DE69425548T2 (de) Verfahren und Vorrichtung zur dynamischen Objektverbindungserzeugung
DE69112156T2 (de) Gerät zur Realisierung von Datenbanken zum Verschaffen von objektorientiertem Aufrufen von Anwendungsprogrammen.
DE69425470T2 (de) Verfahren zur Ereignismeldung in einem Betriebssystem
DE69400406T2 (de) System und methode zur lokalisierung von geteilten bibliotheken
DE69131742T2 (de) Verfahren zur Realisierung von Anbieterfunktionen in einer verteilten heterogenen Umgebung
DE69428262T2 (de) Vereinigung von Dateiverzeichnisdienst mit Dateisystemdiensten
DE69425318T2 (de) Verfahren und System für Fernausführung von Codes
DE69228621T2 (de) Objektorientiertes verteiltes Rechnersystem
DE69533530T2 (de) Verfahren und System zur dynamischen Aggregation von Objekten
DE69625633T2 (de) System und Verfahren zur Bestimmung und Behandlung von Server-Konfigurationsinformation in einer Umgebung mit verteilten Objekten
DE69628965T2 (de) Verfahren und Gerät zum Verwalten von Beziehungen zwischen Objekten in einer verteilten Objektumgebung
DE69617509T2 (de) Vorrichtung und Verfahren zur Feststellung von Objekttypen in einem verteilten Objektsystem
DE69317982T2 (de) Verfahren und Anlage zur Realzeitdatensammlung und Anzeigevorrichtung
DE69621975T2 (de) Verfahren und System zum Ermöglichen der Zusammenarbeit von zur Ausführung auf unterschiedlichen Betriebssystemen geschriebenen Prozessen
DE69424597T2 (de) Erweiterbares Dateiensystem
DE69429686T2 (de) Transaktionsverwaltung in objektorientiertem System
DE69122830T2 (de) Verteiltes Konfigurationsprofil für ein Rechnersystem
DE69626377T2 (de) Vorrichtung, Verfahren, Speichermedium und computerlesbare Module zur raumeffizienten Objektverriegelung
DE69030551T2 (de) Prozess und Gerät zur Handhabung zeitaufwendiger und wiederverwendbarer Abfragen in einem objekt-orientierten Datenbankverwaltungssystem
DE112011102073B4 (de) Dienstimplementierung von einem Dienstverzeichnis
DE69428848T2 (de) Mehrsprachige Standardressourcen
DE69423853T2 (de) Ein-/Ausgabeobjekte in einem Betriebssystemkern

Legal Events

Date Code Title Description
8364 No opposition during term of opposition