DE10006416A1 - System und Verfahren für eine Peripheriesystemverwaltung unter Verwendung von Mehr-Objekt-Schnittstellen - Google Patents
System und Verfahren für eine Peripheriesystemverwaltung unter Verwendung von Mehr-Objekt-SchnittstellenInfo
- Publication number
- DE10006416A1 DE10006416A1 DE10006416A DE10006416A DE10006416A1 DE 10006416 A1 DE10006416 A1 DE 10006416A1 DE 10006416 A DE10006416 A DE 10006416A DE 10006416 A DE10006416 A DE 10006416A DE 10006416 A1 DE10006416 A1 DE 10006416A1
- Authority
- DE
- Germany
- Prior art keywords
- interface
- managed
- mes
- management
- service
- 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.)
- Withdrawn
Links
- 230000002093 peripheral effect Effects 0.000 title claims abstract description 64
- 238000000034 method Methods 0.000 claims abstract description 65
- 230000006870 function Effects 0.000 claims abstract description 33
- 238000004891 communication Methods 0.000 claims abstract description 8
- 238000012545 processing Methods 0.000 claims description 3
- 238000007726 management method Methods 0.000 description 39
- 230000008859 change Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000009420 retrofitting Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000001404 mediated effect Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
Abstract
Die Erfindung ermöglicht, daß ein Computer Elemente eines Peripheriesystems verwaltet, wobei jede Peripherieeinheit des Systems einen oder mehrere Dienste für den Computer liefert. Jede Peripherieeinheit weist eine zugeordnete "Verwaltete-Entität"-Schnittstelle (ME-Schnittstelle) für jeden Dienst auf. Jede ME-Schnittstelle umfaßt einen Bezug (Bezüge) auf eine oder mehrere "Verwaltungsschnittstellen" (MI), die aus mehreren Verfahren zum Liefern von Informationen bezüglich eines Merkmals (von Merkmalen) der ME und/oder zum Bewirken, daß das Gerät, das die ME aufweist, eine Funktion durchführt, besteht. Der Computer umfaßt ein Eingabe/Ausgabe-Modul zum Ermöglichen von Kommunikationen mit jeder der Einheiten des Peripheriesystems und einen Speicher zum Speichern eines Explorer-Objekts. Ein Prozessor in dem Computer spricht auf eine Benutzerabfrage bezüglich einer Peripherieeinheit an, um (i) das Explorer-Objekt aufzurufen, um eine ME zu bestimmen, die der Peripherieeinheit entspricht, und (ii) ein Verfahren des Schnittstellenanbieter-Objekts aufzurufen, um ein MI-Objekt wiederzugewinnen, das der ME zugeordnet ist, das Informationen und Verfahren, die sich auf die Peripherieeinheit, die Aktivitäten derselben und die Benutzerabfrage beziehen, umfaßt.
Description
Diese Erfindung bezieht sich auf die Verwaltung von Periphe
riesystemen und spezieller auf ein System und ein Verfahren
für eine Peripheriesystemverwaltung, die Objektschnittstel
len verwendet.
Ein Verwalten eines Peripheriesystems beinhaltet ein Konfi
gurieren von Geräten, aus denen das Peripheriesystem be
steht, ein Erhalten des Zustands derselben und ein Empfangen
von Ereignissen von den Geräten. Die Fähigkeiten der Geräte
variieren stark und Kommunikationsprotokolle, die verwendet
werden, um mit den Geräten zusammenzuwirken, variieren eben
falls stark. Eine Software, die ein Peripheriesystem verwal
tet, muß diese Vielfalt unterbringen und ist folglich oft
ziemlich komplex. Ein Peripheriesystem, wie der Ausdruck
später verwendet wird, umfaßt Drucker, Scanner (Abtastvor
richtungen), Server, Multifunktionsgeräte und Peripherie-
Clients, wie beispielsweise Personalcomputer.
Verkäufer liefern dauernd neue Modelle von Peripheriegerä
ten, Peripherieservern und Peripherie-Clients die weitere
Herausforderungen an Entwickler von Peripheriesystemverwal
tungs-Softwaresystemen darstellen. Eine solche Software muß
dauernd überprüft werden, um solche neuen Geräte und neuen
Gerätemerkmale zu unterstützen, was ferner die Komplexität
solcher Software erhöht.
Die Fähigkeiten, die durch Peripheriegeräte, Peripherieser
ver und Peripherie-Clients geliefert werden, variieren ba
sierend auf deren jeweiligen Konfigurationen. Wenn Betriebs
mittel, wie beispielsweise Festplatten, hinzugefügt oder
entfernt werden, muß die Peripheriesystemverwaltung diese
Fähigkeitsänderungen handhaben - was ferner die Komplexität
der Peripheriesystemverwaltungssoftware erhöht.
Peripheriesystemverwaltungs-Anwendungen (PSM-Anwendungen;
PSM = peripheral system management) ermöglichen oft Endbe
nutzern, "Operationen" bezüglich einer Ansammlung von Gerä
ten unter Verwendung eines einzigen Befehls durchzuführen,
was im Gegensatz zum Ausgeben des selben Befehls immer wie
der für jedes Gerät steht. Zum Beispiel ermöglichen PSM-An
wendungen, daß einer Ansammlung von Geräten ihre Adressen
durch eine Verwendung eines einzigen Befehls neu zugewiesen
werden, wobei jedoch solche Anwendungen keine neuen Fähig
keiten bezüglich solcher Geräte unterbringen. PSM-Anwendun
gen zeigen ferner typischerweise Benutzerschnittstellenele
mente an, die eine Ansammlung von Geräten, die verwaltet
werden, darstellen. Durch diese Schnittstelle kann der Be
nutzer Verwaltungshandlungen bezüglich mehrerer Geräte zur
gleichen Zeit durchführen. Im allgemeinen ist diese Schnitt
stelle nicht erweiterbar und liefert nicht die Fähigkeit;
die Art, auf die eine PSM-Anwendung mehrere Geräte anzeigt,
signifikant zu ändern. Im Gegensatz ermöglichen PSM-Anwen
dungen, daß Geräteentwickler "Applet"-Erweiterungen (d. h.
kleine Programme) beitragen, die spezifizieren, wie ein Ge
rät unterstützt wird. Wenn ein Benutzer einen Wunsch an
zeigt, ein einzelnes Gerät zu verwalten, wird das Applet
verwendet, um eine gerätespezifische Benutzerschnittstelle
für den Benutzer darzustellen. Auf dieselbe Art, auf die ein
Geräteentwickler die Art erweitern kann, auf die ein einzel
nes Gerät betrachtet wird, existiert ein Bedarf danach, eine
Änderung der Art, auf die eine Ansammlung der Geräte darge
stellt wird, zu ermöglichen.
Demgemäß existiert ein Bedarf nach einem Peripheriesystem
verwaltungssystem, das fähig ist, mit mehreren Typen von Ge
räten in dem Peripheriesystem zusammenzuwirken; das auf
Gruppen von Geräten wirken kann, die dieselben Fähigkeiten
liefern; das fähig ist, zu bestimmen, ob ein Element des Sy
stems eine besondere Fähigkeit liefert oder nicht; das er
weiterbar ist, um neu eingebaute Gerätefähigkeiten unterzu
bringen, sowohl vor als auch nach einem Verkauf an einen
Kunden; das Änderungen der Art und Weise unterbringen kann,
auf die Gruppen von Geräten dargestellt werden; und das aus
reichend dynamisch ist, um zu ermöglichen, daß die Fähigkei
ten der Peripheriesystemelemente während des Betriebs auf
treten und verschwinden.
Die Aufgabe der vorliegenden Erfindung besteht darin, ein
System und ein Speichermedium zu schaffen, die eine flexible
Verwaltung einer Mehrzahl von Einheiten eines Peripheriesy
stems ermöglichen.
Diese Aufgabe wird durch ein System gemäß Anspruch 1 und ein
Speichermedium gemäß Anspruch 9 gelöst.
Die Erfindung ermöglicht, daß ein Computer Elemente eines
Peripheriesystems verwaltet, wobei jede Peripherieeinheit
einen oder mehrere Dienste für den Computer liefert. Jede
Peripherieeinheit weist eine zugeordnete "Verwaltete-Enti
tät"-Datenstruktur (ME-Datenstruktur; ME = Managed Entity)
für jeden Dienst auf. Jede ME-Datenstruktur umfaßt einen Be
zug (Bezüge) auf ein oder mehrere "Verwaltungsschnittstel
len"-Objekte (MI-Objekte; MI = Management Interface), die
aus einem oder mehreren Verfahren zum Liefern von Informa
tionen bezüglich eines Merkmals (Merkmalen) der ME und/oder
zum Bewirken, daß das Gerät, das die ME aufweist, eine Funk
tion durchführt, bestehen. Der Computer umfaßt ein Einga
be/Ausgabe-Modul zum Ermöglichen von Kommunikationen mit je
der der Einheiten des Peripheriesystems und einen Speicher
zum Speichern eines "Explorer"-Objekts (Erforscher-Objekt).
Ein Prozessor in dem Computer spricht auf eine Benutzerab
frage bezüglich einer Peripherieeinheit an, um (i) das Ex
plorer-Objekt aufzurufen, um eine ME, die der Peripherieein
heit zugeordnet ist, zu bestimmen, und (ii) ein Verfahren
eines Schnittstellenanbieterobjekts aufzurufen, um ein MI-
Objekt, das der ME zugeordnet ist und Informationen und Ver
fahren, die sich auf die Peripherieeinheit, die Aktivitäten
derselben und die Abfrage des Benutzers beziehen, umfaßt,
wiederzugewinnen.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung
werden nachfolgend unter Bezugnahme auf die beigefügten
Zeichnungen näher erläutert. Es zeigen:
Fig. 1 eine schematische Darstellung einer typischen ME-
Datenstruktur;
Fig. 2 eine vereinheitlichte Modellierungsprachen-Darstel
lung der Beziehungen zwischen einer ME-Klasse und
einer MI-Klasse, die zeigt, daß die ME eine Unter
klasse der MI ist;
Fig. 3 unterschiedliche Arten von MEs;
Fig. 4 ein Beispiel der Ableitung von ME-Klassen und fer
ner zwei MIs, die nicht auch MEs sind. Fig. 4 zeigt
ferner, wie eine vielfache Vererbung durch eine ME
verwendet werden kann;
Fig. 5 ein Blockdiagramm eines Systems zum Durchführen des
Verfahrens der Erfindung; und
Fig. 6 und Fig. 7 ein logisches Flußdiagramm eines Bei
spiels des Verfahrens der Erfindung.
Eine Netzsoftware muß mit physischen Geräten zusammenwirken,
die mit dem Netz verbunden sind. In der Vergangenheit wurde
dies durch ein Beschreiben einer physischen Topologie und
ein Zuweisen eines Namens zu jeder Maschine erreicht. Jedoch
kann eine Software, die an vielen Orten entwickelt wird, auf
diese Weise nicht beschrieben werden, da physische Topolo
gien von Ort zu Ort variieren. Diese Erfindung verwendet ei
ne logische Topologie, die die Rollen (oder Dienste) be
schreibt, die Maschinen spielen/liefern, und spezifiziert
nicht spezielle Maschinen.
Beispiele von Rollen, die Maschinen in einer Peripheriesy
stemverwaltungs-Software (PSM-Software) spielen, die die Er
findung verkörpert, sind im folgenden angegeben:
- - "Verwaltungs-Client-Maschine": Die Rolle einer Maschine, die eine Benutzerschnittstelle für eine PSM-Software dar stellt. Zum Beispiel wird die Rolle des Verwaltungs- Client durch die Maschine durchgeführt, die ein Netzsuch programm (Web-Browser) ausführt, das verwendet wird, um auf ein Netzadministrationsprogramm zuzugreifen.
- - "Verwaltungsservermaschine": Die Rolle einer Maschine, die eine Logik für eine PSM-Software liefert. Zum Bei spiel führt die Servermaschine, in der ein Netzadmini strationsprogramm installiert ist, die Rolle einer Ver waltungsservermaschine aus.
- - "Peripherie-Client-Maschine": Die Rolle einer Maschine, die Dienste verwendet, die durch ein Peripheriegerät ge liefert werden. Eine Endbenutzerworkstation, die einen Drucker verwendet, ist ein Beispiel einer Peripherie- Client-Maschine.
- - "Peripherieservermaschine": Die Rolle einer Maschine, die einen Zugriff auf die Dienste, die durch ein Peripherie gerät geliefert werden, vermittelt. Eine Windows-NT-Ma schine (eine Marke der Microsoft Corporation), die ihre Drucker teilt, ist ein Beispiel einer Peripherieserverma schine.
- - "Peripheriemaschine": Die Rolle einer Maschine, die als ein Peripheriegerät dient. Drucker und Scanner sind Bei spiele von Peripheriegeräten.
- - "Peripherie-Verzeichnis-Maschine": Die Rolle einer Ma schine, die einen Dienst liefert, der verwendet wird, um Peripheriemaschinen und Peripherieservermaschinen zu fin den.
Es sei angemerkt, daß eine physische Maschine mehrere Rollen
durchführen kann und mehrere Dienste liefern kann. Zum Bei
spiel kann ein zentraler Server sowohl als eine Verwaltungs
servermaschine (eine Maschine, in der ein Netzadministra
tionsprogramm installiert ist) als auch als eine Periphe
rieservermaschine (z. B. ein Druckserver) dienen.
Die Peripherieverwaltungssoftware, die die Erfindung bein
haltet, ist fähig, MEs, die sich auf Peripheriegeräte bezie
hen, zu entdecken, zu organisieren, anzuzeigen, zu modifi
zieren und zu überwachen. Eine ME ist ein Softwareobjekt,
durch das die Rolle eines Geräts und ein Dienst, den das Ge
rät liefert, verwaltet werden können. Es sei erneut betont,
daß ein einzelnes Gerät mehrere Rollen haben kann und somit
mehreren MEs zugeordnet sein kann.
- - Eine ME ist eine Architektur-Abstraktion, die verwendet wird, um etwas zu modellieren, das verwaltet wird.
- - MEs werden durch eine "Explorer"-Architektur-Abstraktion entdeckt.
- - MEs werden durch eine "Datenbank"-Architektur-Abstraktion organisiert.
- - MEs werden durch eine "Ansicht"-Architektur-Abstraktion angezeigt.
- - MEs werden durch eine "Operation"-Architektur-Abstraktion modifiziert.
- - MEs werden unter Verwendung von "Ereignis"- und "Hand lung"-Architektur-Abstraktionen überwacht.
Wie aus der folgenden Erörterung klar wird, ist jede der Ab
straktionen, die oben identifiziert sind, als ein Software
objekt konfiguriert, das in dem klassischen Sinn seinen zu
stand in "Variablen" beibehält und sein Verhalten mit einem
oder mehreren Verfahren implementiert. Die verschiedenen Ob
jekte, die unten beschrieben werden, versehen die PSM-Soft
ware, die die Erfindung beinhaltet, mit einer beträchtlichen
Flexibilität, um System- und Software-Modifikationen unter
zubringen.
Eine ME (verwaltete Entität) ist ein Objekt, das ein be
nutzererkennbares Element in der Peripherieverwaltungspro
blemdomäne darstellt. Eine ME liefert eine Ansammlung von
einer oder mehreren Verwaltungsschnittstellen (MIs). Eine
MI ist ein Satz von einer oder mehreren Funktionen, die
verwendet werden, um mit einer ME zusammenzuwirken (oder
diese zu identifizieren).
Ein Benutzer, der für das Verwalten von Druckern verantwort
lich ist, erkennt die Existenz von Druckern, Druckservern
und Druck-Clients. Mit oder ohne PSM-Software wird dieser
Benutzer mit jedem dieser Elemente interagieren, um Probleme
zu lösen. Derselbe Benutzer wird wahrscheinlich die detail
lierte Architektur eines Spoolers nicht kennen. Die Existenz
einer Torüberwachungsvorrichtung oder eines Druckprozessors
wird aller Wahrscheinlichkeit nach für einen solchen Benut
zer irrelevant sein. Bei dem Lösen von Problemen setzt sich
dieser Benutzer lediglich mit denjenigen Problemen auseinan
der, die ihm vertraut sind. Diese vertrauten und einfach er
kannten Elemente sind die Basiseinheit der Verwaltung, von
der Benutzer erwarten, daß sie dieselbe in der PSM-Software
finden. Die Objekte, die diese Basiseinheiten der Verwaltung
darstellen, werden MEs genannt.
Jede dieser Basiseinheiten der Verwaltung wird in zusätzli
che Elemente unterteilt. Zum Beispiel ist ein Druckserver
aus einem Spooler, der aus noch weiteren Elementen gebildet
ist, wie Treibern, Torüberwachungseinrichtungen und Druck
prozessoren, gebildet. Obwohl es möglich ist, daß jedes die
ser Elemente verwaltet werden muß, werden diese typischer
weise im Zusammenhang mit dem Verwalten des Druckservers
verwaltet. Ein Benutzer rüstet den Treiber auf einem beson
deren Druckserver durch eine Interaktion mit dem Druckserver
nach.
Die Ansammlung von MIs, die durch eine ME geliefert wird,
ist erweiterbar. Zum Beispiel kann ein Drucker eine Schnitt
stelle zum Verwalten von Merkmalen des Druckers (d. h. Hinzu
fügen, Entfernen) liefern, sogar wenn diese Schnittstelle
vorher nicht in der PSM-Software geplant war. Um eine
Schnittstelle zu verwenden, sind "Operation"- und "An
sicht"-Objekte (die unten beschrieben werden) vorgesehen.
Die Ansammlung von MIs, die durch eine ME geliefert wird,
ist ferner dynamisch. Während des Betriebs kann die Ansamm
lung von MIs modifiziert werden. Als Betriebsmittel, die für
eine ME-Änderung verfügbar sind, können die MIs, die durch
diese ME geliefert werden, geändert werden. Zum Beispiel
kann ein Drucker eine Festplatte aufweisen oder nicht. Da
die Anwesenheit einer Festplatte bestimmt, ob es möglich
ist, Massenspeicherschriftarten zu verwalten oder nicht,
wird die MI, die sich auf eine Verwaltung von Massenspei
cherschriftarten bezieht, nicht geliefert, falls keine Fest
platte verfügbar ist.
MIs (und die Funktionen, die dieselben aufweisen), die durch
eine besondere ME unterstützt werden, können während des Be
triebs abgefragt werden. Eine Anwendung, die die MIs ab
frägt, muß nicht notwendigerweise wissen, wie dieselben zu
verwenden sind. Die Anwendung kann statt dessen einfach ver
folgen, welche MIs jede ME liefert, und diese Informationen
verwenden, um MIs mit Komponenten, die diese Schnittstellen
verstehen, auf Übereinstimmung prüfen. Zum Beispiel kann ei
ne Anwendung, die nichts über die MI, die verwendet wird, um
Schriftarten zu verwalten, weiß, eine "Operation", die die
Schriftartverwaltungsschnittstelle erfordert, mit MEs, die
diese Schnittstelle liefern, auf Übereinstimmung prüfen.
Normalerweise weist ein Objekt eine einzelne, statische
Schnittstelle auf. Jedoch bedeutet das Aufweisen lediglich
einer Schnittstelle, daß die Schnittstelle jedesmal überar
beitet werden muß, wenn die Fähigkeiten des Objekts geändert
werden. Vielfache Überarbeitungen derselben Schnittstelle
führen zu Konfusionen. Dies wird gemäß dieser Erfindung
durch ein Sicherstellen, daß eine ME mit mehreren Schnitt
stellen durch ein oder mehrere Objekte dargestellt wird,
vermieden, von denen jedes als "Verwaltungsschnittstelle"
(MI) bezeichnet wird. Eine MI weist ein oder mehrere Verfah
ren zum Bilden von Schnittstellen mit einer spezifischen Fä
higkeit der ME auf. Demgemäß können andere einzelne Objekte
diese MIs wiederverwenden. Ferner können diese MIs während
des Betriebs - ohne ein Neukompilieren - auftreten und ver
schwinden.
Die Granularität von MIs ist eine Entwurfsentscheidung, die
nicht ihre Nutzbarkeit beeinflußt. Eine MI kann einen großen
Satz von voneinander unabhängigen Funktionen oder einen
kleinen Satz von eng verwandten Funktionen umfassen. Zum
Beispiel kann eine MI, die "Neuer-LaserJet" genannt wird,
definiert sein, die Funktionen für Merkmale, die in allen
neuen LaserJet-Druckern (LaserJet ist eine Marke der Hew
lett-Packard Company) gefunden werden, umfaßt. Derselbe Satz
von Funktionen kann ferner in mehreren MIs plaziert werden,
die sich auf spezifische Merkmale, wie beispielsweise "Ände
re-Online-Zustand" und "Drucke-Testseite" beziehen. Es ist
ferner möglich, Schnittstellen sowohl einer feineren als
auch einer gröberen Granularität unter Verwendung einer
vielfacher Vererbung zu unterstützen, um grobe Schnittstel
len aus mehreren feinen Schnittstellen zu bilden. Die Ver
wendung von grobkörnigeren Schnittstellen erfordert weniger
Code, wobei jedoch feinkörnigere Schnittstellen typischer
weise einfacher zu verstehen sind und eine größere Erweiter
barkeit liefern.
Fig. 1 stellt ein typisches ME-Objekt mit Bezügen auf MIs
dar, die eine Wiedergewinnung von Merkmalsinformationen des
Geräts, das die Rolle, die durch die ME dargestellt wird,
liefert, ermöglichen. Jede MI enthält eine oder mehrere
Funktionen, wobei einige von diesen eine Wiedergewinnung der
Informationen von dem Gerät ermöglichen, und andere von die
sen ermöglichen können, daß das zugeordnete Gerät eine Funk
tion durchführt. Wieder sei daran erinnert, daß die ME sich
auf eine Rolle bezieht, die durch ein Gerät durchgeführt
wird, und nicht notwendigerweise auf das Gerät als Ganzes -
es sei denn, das Gerät führt lediglich eine Rolle durch.
Das Vererbungsdiagramm von Fig. 2 ist ein vereinheitlichtes
Modellierungssprachen-Diagramm, das zeigt, wie MIs mit MEs
zusammenhängen. Die Pfeile, die den ME-Block mit den MI- und
"Verwaltungsschnittstellenanbieter"-Blöcken verbinden, zei
gen eine Vererbung an. Spezieller diktiert die Vererbung,
daß, wenn ein Programm kompiliert wird, das ME-Objekt alle
Verfahren der vererbten Schnittstellen implementiert. ME-
Objekte sind sowohl Anbieter von MIs als auch MIs selbst.
Das "Verwaltungsschnittstellenanbieter"-Objekt, das in Fig.
2 gezeigt ist, umfaßt drei Funktionen, die durch die PSM-
Software verwendet werden. Die Funktion "Besitzt-Verwal
tungsschnittstelle()" bestimmt, ob eine ME einen Zeiger zu
einer spezifizierten MI zurückgeben kann. Die Funktion "Er
halte-Verwaltungsschnittstelle()" gibt eine MI zurück, die
verwendet werden soll, um Informationen bezüglich einer zu
geordneten ME wiederzugewinnen, oder um zu veranlassen, daß
die ME einige Funktionen durchführt. Die Funktion "Erhalte-
Verwaltungsschnittstellenliste()" gibt eine Liste von zuge
ordneten MIs zurück.
In Fig. 3 sind die unterschiedlichen Arten von MEs ausführ
licher dargestellt. Peripheriegeräte, Peripherieserver und
Peripherie-Clients werden von "Druckweg-Verwaltete-Entität"
abgeleitet, um deren gemeinsame Beziehung dahingehend, daß
dieselben ein Teil des Druckwegs sind, zu identifizieren.
Fig. 3 ist nicht dazu bestimmt, vollständig zu sein. Es ist
möglich, andere Typen von MEs vorzusehen. Zum Beispiel kann
ein Drucker einen nachgerüsteten Ausgabebehälter eines ande
ren Herstellers aufweisen, der Blätter faltet und in Um
schläge steckt. Ein solches Gerät kann eine ME sein, die
sich von der ME unterscheidet, die den Drucker darstellt.
MIs können von anderen MIs abgeleitet werden. Wenn eine ab
geleitete MI durch eine ME unterstützt wird, sollte diese ME
die Eltern-MIs dieser abgeleiteten MI unterstützen. Da die
meisten Komponententechnologien eine Schnittstellenvererbung
unterstützen, ist ein Liefern von Elternschnittstellen übli
cherweise trivial.
Fig. 4 liefert ein Beispiel dafür, wie exemplarische Verwal
tete-Entität-Klassen abgeleitet werden. Fig. 4 enthält zwei
Verwaltungsschnittstellen, die nicht auch MEs sind: "Ände
re-Online-Zustand" und "Drucke-Testseite". "LaserJet2000"
und "LaserJet2001" müssen nicht notwendigerweise als einzig
artige MEs definiert sein. Dieselben können einfach als
Drucker-MEs definiert sein und liefern alle anderen MIs, die
unterstützt werden.
Ein ME-Objekt kann an einem von drei Plätzen angeordnet
sein:
- - eingebettet in die Maschine, die dasselbe darstellt (wie anhand eines Beispiels unten beschrieben wird);
- - angeordnet in einer Maschine, die direkt mit der Maschine verbunden ist, die dasselbe darstellt;
- - angeordnet in einer Verwaltungsservermaschine.
Der Hauptvorteil des Einbettens von ME-Objekten ist die Be
seitigung der Abhängigkeit von existierenden Protokollen.
Wenn ein ME-Objekt in ein Gerät eingebettet ist, kann das
selbe mit diesem Gerät auf eine gerätespezifische Art und
Weise zusammenwirken. Da es nicht zweckmäßig ist, alle exi
stierenden Peripheriegeräte mit eingebetteten ME-Objekten
nachzurüsten, können ME-Objekte auf einer Verwaltungsserver
maschine angeordnet sein und können unter Verwendung von
existierenden Protokollen kommunizieren. Dies ist der Haupt
vorteil des Anordnens von Objekten innerhalb einer Verwal
tungsservermaschine. Der Hauptvorteil des Anordnens von MEs
in direkt verbundenen Maschinen besteht darin, Situationen
zu bewältigen, bei denen ein Peripheriegerät nicht mit einem
Netz verbunden ist. Da eine Technologie mit verteilten Kom
ponenten eine Netzverbindbarkeit erfordert, muß eine ME auf
der direkt verbundenen Maschine ein Stellvertreter für ein
direkt verbundenes Gerät sein, auf das nicht durch das Netz
zugegriffen werden kann.
Der Ort einer ME kann sich mit der Zeit ändern. Es sei ein
Peripheriegerät mit einer eingebetteten ME, die nicht mit
einer IP-Adresse konfiguriert wurde, betrachtet. Ohne eine
IP-Adresse (oder eine andere Netzprotokollunterstützung) ist
es nicht möglich, mit der eingebetteten ME zu kommunizieren.
Um diese Situation unterzubringen, kann eine Stellvertre
ter-MB, die im folgenden als Proxy-ME bezeichnet wird, in
der Verwaltungsservermaschine erzeugt werden. Diese Proxy-ME
wird nicht alle Schnittstellen, die durch die eingebettete
ME geliefert werden, unterstützen, sondern wird die Schnitt
stelle unterstützen, die ermöglicht, daß die IP-Adresse ein
gestellt wird. Nachdem die IP-Adresse eingestellt wurde,
wird die eingebettete ME dem ME-Proxy, der auf der Verwal
tungsservermaschine angeordnet ist, übergeordnet sein (su
percede). Die "Datenbank"- und "Explorer"-Abstraktionen (die
nachfolgend beschrieben werden) sind für das Erzeugen und
Ersetzen der MEs verantwortlich.
Ein "Explorer" ist ein Objekt, das Geräte entdeckt, die
den MEs entsprechen, MEs erzeugt, die diesen Geräten ent
sprechen (falls erforderlich) und ME-Bezüge zu einer Da
tenbank, die verwendet wird, um dieselben zu verfolgen,
liefert. "Explorer" haben einen Zustand und können konfi
guriert werden.
"Operationen" und "Ansichten" (die unten beschrieben werden)
wirken nicht direkt mit den Geräten zusammen. Stattdessen
wirken diese mit weiteren Objekten, z. B. einer ME, zusammen.
Dies befreit das Objekt von der Kenntnis der Einzelheiten
dessen, wie mit einem besonderen Gerät kommuniziert wird, da
die verschiedenen Implementierungen der ME-Abstraktion diese
Kenntnis einkapseln. MEs sind entweder in das Gerät einge
bettet, das dieselben darstellen oder auf einer anderen Ma
schine (d. h. den Proxies (Stellvertretern)) angeordnet. Ein
gebettete MEs werden spezialisiert (instantiated), wenn das
Gerät, in dem sie sich befinden (und das sie darstellen),
gebootet wird. Nicht eingebettete MEs existieren nicht, bis
das Gerät, das sie darstellen, entdeckt wird. Wenn dies auf
tritt, wird der geeignete Typ einer ME spezialisiert. (Der
geeignete Typ wird durch ein Abfragen des Geräts während der
Entdeckung bestimmt.)
Unterschiedliche "Explorer" werden zum Entdecken von unter
schiedlichen MEs geliefert, d. h. einer für MEs, die eine
Druckerrolle durchführen, einer für MEs, die eine Scanner
rolle durchführen, etc.. "Explorer" entdecken einfach Gerä
te, erzeugen MEs, falls erforderlich, und übergeben die ME
an eine "Datenbank"-Abstraktion (die unten erörtert wird).
Es existieren mehrere hundert Typen von Geräten, die MEs
entsprechen, wobei jedes Jahr weitere hinzukommen. Um dies
anzugehen, kann ein "Explorer" eine Tabelle verwenden, die
Gerätetypen auf ME-Erzeugungsverfahren abbildet, um zu be
stimmen, wie eine ME, die einem besonderen Gerätetyp ent
spricht, zu erzeugen ist. Da MEs den Mechanismus für eine
Kommunikation einkapseln, können unterschiedliche Typen von
MEs, abhängig davon, wie ein besonderer Gerätetyp verbunden
ist, erzeugt werden. Zum Beispiel kann ein direkt verbunde
ner Laserdrucker durch einen anderen Typ einer ME darge
stellt werden, als ein Laserdrucker, der durch ein Netz ver
bunden ist. Da ein anderer Typ eines "Explorers" verwendet
wird, um direkt verbundene Geräte zu entdecken, als zum Ent
decken von Netzgeräten verwendet wird, wird der "Explorer"
ein anderes ME-Erzeugungsverfahren verwenden, um die ME zu
erzeugen.
Obwohl oben ein spezifisches Verfahren zum Spezialisieren
der MEs erörtert wurde, ist es wichtig, daß angemerkt wird,
daß die Verfahren, die oben beschrieben wurden, lediglich
ein Beispiel dafür sind, wie MEs spezialisiert werden kön
nen. Jeder "Explorer" ist frei, seinen eigenen Mechanismus
zum Spezialisieren von MEs zu implementieren. Tatsächlich
spezialisiert ein "Explorer" überhaupt keine MEs, wenn be
reits existierende MEs (z. B. eingebettet in das Gerät) ent
deckt werden (da diese bereits spezialisiert wurden, als das
Gerät gebootet wurde).
Oft sind die am meisten interessierenden Geräte diejenigen
Geräte, die auf einem lokalen Unternetz angeordnet sind.
Diese Geräte können durch ein Netzadministrationsprogramm
entdeckt werden, wobei jedoch statt eines Erzeugens von Auf
zeichnungen für die Programm-"Datenbank" eine ME des geeig
neten Typs erzeugt wird.
Ein "Explorer" kann erzeugt werden, der alle lokalen Tore
nach direkt verbundenen Geräten untersucht, und, basierend
auf seinen Ergebnissen, den geeigneten Typ von MEs als
Stellvertreter für direkt verbundene Geräte erzeugt.
Ein "Explorer" kann erzeugt werden, der die MEs von einem
Server "entdeckt". Ein solcher "Explorer" wird in Umgebungen
verwendet, in denen ein Server, der routinemäßig Entdeckun
gen durchführt, bereits existiert. Dies kann verwendet wer
den, um den Netzverkehr zu reduzieren und das Verhalten zu
verbessern.
Es ist nicht geeignet, jede ME auf einem Netz zu entdecken.
Viele MEs werden Proxies sein, die auf dem Verwaltungsserver
angeordnet sind und dazu bestimmt sind, lediglich für die
Verwaltungsanwendung auf dem Verwaltungsserver verwendet zu
werden. Jedoch können andere mit der Absicht in ein Periphe
riegerät eingebettet sein, daß diese MEs durch eine entfern
te Peripherieverwaltungssoftware verwendet werden. Die PSM-
Software kann diejenigen MEs entdecken, die geeigneterweise
entdeckt werden sollen, ohne MEs zu entdecken, die geeigne
terweise nicht entdeckt werden sollen, unter Verwendung ei
nes bereits existierenden Benennungsdienstes, z. B. eines
CORBA-Benennungsdienst (Common Object Request Broker Archi
tecture = gemeinsame Objektanforderungsvermittlungsarchitek
tur). Da MEs selbst wissen, ob auf sie extern zugegriffen
werden soll oder nicht, können diese sich bei dem Benen
nungsdienst registrieren, was ermöglicht, daß dieselben auf
findbar sind. Diese Lösung kann erfordern, daß ein einzelner
Benennungsdienst auf dem Netz eingerichtet wird. Eine weite
re Lösung besteht darin, unter Verwendung eines weiteren
Protokolls (z. B. SNMP = Simple Network Management Protocol
einfaches Netzverwaltungsprotokoll) Geräte zu entdecken und
ein Attribut des Protokolls zu verwenden, um die eingebette
te ME des Geräts zu identifizieren. Obwohl jedes zugrunde
liegende Protokoll einen unterschiedlichen "Explorer" benö
tigt, um die Entdeckung von eingebetteten MEs zu unterstüt
zen, könnte die Bereitstellung eines Benennungsdienstes ver
mieden werden.
Eine "Operation" ist ein Objekt, das bezüglich einer An
sammlung von MEs unter Verwendung von MIs wirksam ist. Je
de ME in der Ansammlung, die bearbeitet wird, muß die MIs
unterstützen, die durch die Operation benötigt werden.
"Operationen" haben einen Zustand und können konfiguriert
sein.
Wenn neue MIs definiert sind, können neue "Operationen" de
finiert werden, die diese MIs verwenden. PSM-Anwendungen
können einfach "Operationen" im allgemeinen - ohne spezifi
sche Kenntnis einer besonderen "Operation" - unterstützen.
Eine "Operation" benötigt bestimmte MIs von den MEs, bezüg
lich derer dieselbe wirksam ist. Eine "Operation" kann mehr
als eine MI benötigen, benötigt jedoch mindestens eine.
Abhängig von der "Operation" kann die Reihenfolge der MEs in
einer Ansammlung signifikant sein oder nicht. Zum Beispiel
ist die Anzahl signifikant für eine "Operation", die verwen
det wird, um IP-Adressen einer Ansammlung von MEs zuzuwei
sen. Die Reihenfolge ist jedoch unwichtig für eine "Opera
tion", die verwendet wird, um Firmware nachzurüsten.
"Operationen" können abhängig von der "Operation" konfigu
rierbar sein oder nicht. Eine "Operation", die lediglich den
Zustand auf "online" ändert, erfordert keine Konfiguration.
Bei "Operationen", die konfigurierbar sind, wird ein Applet
vorgesehen, das weiß, wie dieser Typ einer "Operation" kon
figuriert werden soll. Ein Applet ist verantwortlich für das
Liefern einer Benutzerschnittstelle, die ermöglicht, daß ein
Zustand modifiziert wird. Ein solches Applet wird auf der
Verwaltungs-Client-Maschine laufen und die "Operation" durch
ein Aufrufen der Verfahren konfigurieren. Bei einer bevor
zugten Implementation ist das Applet in Java geschrieben.
Es sei an MI "Ändere-Online-Zustand", die in dem Klassenhie
rarchiediagramm von Fig. 4 gezeigt ist, erinnert. Diese MI
ermöglicht, daß der Online-Zustand einer ME, die diese MI
unterstützt, geändert wird. Eine "Operation" ist geschaffen,
die die MI "Ändere-Online-Zustand" verwendet, um sicherzu
stellen, daß der Online-Zustand "online" ist. Die Online-
"Operation" ist zum Erzeugen einer Verwaltungsanwendung ver
wendbar, die periodisch alle Drucker auf "online" einstellt.
Man betrachte die folgende Schnittstelle, die verwendet
wird, um True-Typ-Schriftarten zu verwalten:
Man betrachte nun eine Peripheriesystemverwaltungsanwendung,
die Schriftarten auf Endbenutzermaschinen (z. B. PCs) und
Druckern installiert. Eine solche Anwendung kann unter Ver
wendung einer "Operation" aufgebaut werden, die eine
Schriftart auf einer Maschine installiert, die die Schnitt
stelle "True-Type-Schriftartverwaltung" unterstützt. Die An
wendung identifiziert einfach alle MEs, die die Schnittstel
le "True-Type-Schriftartverwaltung" unterstützen, konfigu
riert die "Operation" "Installiere-Schriftart" mit der er
wünschten Schriftartdatei und ruft die "Operation" bei hin
sichtlich der MEs, die vorher identifiziert wurden, auf.
Wenn ein physisches Netz von einem Unternetz in ein anderes
geändert wird, ist es erforderlich, alle Geräte in dem phy
sischen Netz neu zu numerieren. Netzadministrationsprogramme
unterstützen Mechanismen zum Neuzuweisen von Netzadressen
nacheinander zu allen Geräten (die durch solche Anwendungen
verwaltet) auf dem physischen Netz. Dies kann unter
Verwendung einer "Operation" erreicht werden. Eine solche
"Operation" ist mit einem Bereich von Netzadressen konfigu
riert. Die Peripheriegeräte, die neu numeriert werden sol
len, werden dann durch die Anwendung ausgewählt (mit oder
ohne Benutzereingriff, abhängig von der Anwendung). Schließ
lich wird die "Zuweisen-Sequentieller-Netzadressen-Opera
tion" auf der vorher ausgewählten Ansammlung der Peripherie
gerät-MEs auf gerufen.
Eine "Ansicht" ist ein Objekt, das eine Ansammlung von MEs
anzeigt, die MIs verwenden. Jede ME in der Ansammlung, die
angezeigt wird, muß die MIs, die durch die "Ansicht" benö
tigt werden, unterstützen. "Ansichten" haben einen Zustand
und können konfiguriert werden.
Eine "Ansicht" ist einer "Operation" sehr ähnlich, mit der
Ausnahme, daß statt eines Arbeitens bezüglich der geliefer
ten MEs die MEs angezeigt werden. Eine "Ansicht" kann in
drei Teile geteilt werden: einen Zustand, eine Konfiguration
und eine Anzeige. Der Zustand verfolgt die gegenwärtige Kon
figuration und hat keine Benutzerschnittstelle. Die Konfigu
ration ist ähnlich einem Konfigurations-Applet für eine
"Operation". Diese ist für ein Darstellen einer Benutzer
schnittstelle verantwortlich, die ermöglicht, daß der Zu
stand modifiziert wird. Die Anzeige ist für ein Anzeigen ei
ner Ansammlung von MEs verantwortlich. Die Reihenfolge der
MEs kann, abhängig von der "Ansicht", wichtig sein oder
nicht. Einige "Ansichten" können die Reihenfolge der MEs in
einer Ansammlung ignorieren und einfach die obersten drei
"interessierenden" MEs anzeigen (und den Rest zusammenfas
sen). Andere können alle MEs in der Reihenfolge, in der sie
in der Ansammlung geliefert werden, anzeigen. Mehr als ein
Fall einer "Ansicht" kann zur selben Zeit existieren, mit
einem unterschiedlichen Zustand.
Es ist kostspielig, wenn bei einem Drucker der Toner aus
geht. Da Benutzer oft untrainiert sind, dauert das Wechseln
einer Tonerkassette länger, als wenn ein Techniker die Kas
sette ersetzt. Untrainierte Benutzer können ferner verse
hentlich den Drucker beschädigen. Um diesem Problem zu be
gegnen, ist es nützlich, eine Einrichtung zu besitzen, die
herausfindet, welche Drucker fast keinen Toner mehr haben,
so daß der Toner ersetzt werden kann, bevor derselbe er
schöpft ist. Dies wird unter Verwendung einer "Ansicht" er
reicht. Eine solche "Ansicht" zeigt Drucker unter einer ge
wissen Tonerschwelle an, der Reihe nach von einer geringsten
bis zu einer höchsten Tonermenge. Durch ein Ändern der Nie
drigtonerschwelle kann der Benutzer die Anzahl von Druckern,
die angezeigt werden, variieren. Alle Drucker werden ange
zeigt, wenn die Niedrigtonerschwelle auf 100% gesetzt ist.
Diese "Ansicht" zeigt MEs eines spezifischen Typs an. Eine
"Ansicht" kann für Drucker erzeugt werden und würde die ma
ximale Zahl der Seiten pro Minute zeigen, die der Drucker
liefern kann. Eine "Ansicht" für Scanner kann ein Feld ha
ben, das anzeigt, ob der Scanner Farbe unterstützt. Demgemäß
können "Ansichten" erzeugt werden, um spezifische Typen von
MEs zu unterstützen und Felder anzuzeigen, die für diesen
Typ sinnvoll sind.
Eine "Ansicht" kann aufgebaut werden, die, wenn diese mit
einer Abbildung konfiguriert ist, MEs gemäß deren Ort auf
der Abbildung anzeigt. Der Ort der MEs wird von einer Orts
datei abgeleitet, die den Zustand der Abbildungs-"Ansicht"
umfaßt. Da "Ansichten" einen Zustand haben, kann dieser Zu
stand verwendet werden, um Informationen, die aus Interak
tionen zwischen dem Benutzer und der Ansicht resultieren, zu
speichern.
Eine "Datenbank" ist ein Objekt, das MEs annimmt, Duplika
te handhabt und MEs für eine spätere Verfügbarkeit spei
chert. Eine "Datenbank" kann ferner von einer besonderen
ME oder allen MES gelöscht werden.
Die "Datenbank"-Abstraktion ermöglicht, daß andere Architek
turabstraktionen (wie beispielsweise "Explorer") mit vielen
Typen von "Datenbanken" zusammenwirken, ohne den spezifi
schen Typ der "Datenbank" zu kennen. Eine Anwendung, die den
spezifischen Typ der "Datenbank", die verwendet wird, kennt,
ist weiterhin frei, um die volle Funktionalität jedes ver
wendeten zugrundeliegenden "Datenbank"-Verwaltungssystems zu
verwenden. Das Ziel der "Datenbank"-Abstraktion besteht da
rin, ein Objekt zu liefern, mit dem "Explorer" zusammenwir
ken können und das eine Kommunikation mit dem Speichermecha
nismus der Anwendung ermöglicht.
Bei einigen Anwendungen kann das einfache Besitzen einer Da
tei, die eine Liste der MEs enthält, akzeptabel sein. Eine
dateibasierte "Datenbank" kann durch ein Implementieren der
Schnittstelle, die für die "Datenbank"-Abstraktion spezifi
ziert ist, erzeugt werden ("Hinzufügen", "Entfernen Einer",
"Entfernen Aller"), so daß Informationen, die sich auf MEs
beziehen, in einer Datei aufgezeichnet werden. Wenn zu der
"Datenbank" eine ME hinzugefügt wird, kann eine Zeile zu der
Datei mit den Informationen, die durch die Anwendungen benö
tigt werden, sowie mit Informationen, die erforderlich sind,
um die ME eindeutig zu identifizieren, hinzugefügt werden
(um "Entfernen-Einer"- und "Handhabungs"-Duplikationen zu
unterstützen).
Bei einigen Anwendungen kann die Flexibilität, die durch ei
ne objektorientierte "Datenbank" geliefert wird, attraktiv
sein. Eine solche "Datenbank" kann ähnlich zu der implemen
tiert werden, die für eine dateibasierte "Datenbank" imple
mentiert ist (lediglich am Anfang einer objektorientierten
"Datenbank").
Bei einigen Anwendungen, die ein Datenbankverhalten benöti
gen, kann es attraktiv sein, eine relationale "Datenbank" zu
verwenden. Eine solche "Datenbank" kann ähnlich zu der im
plementiert werden, die für eine dateibasierte "Datenbank"
implementiert ist (lediglich am Anfang einer relationalen
"Datenbank").
Bezugnehmend auf Fig. 5 wird ein System zum Implementieren
der Erfindung dargestellt. Ein Client-Computer 10 umfaßt ei
ne Zentral-Verarbeitungs-Einheit (CPU) 12, ein Netzverbin
dungsmodul 14 und einen Speicher 16, der ein PSM-Objekt 18
hält. Das PSM-Objekt 18 umfaßt den notwendigen Code, um die
verschiedenen Objekte zu verwenden, die oben beschrieben
wurden, um eine Mehrzahl von Peripheriegeräten zu verwalten,
auf die durch ein Netz 20 zugegriffen werden kann.
Jedes der Peripheriegeräte 22 und 24 umfaßt ein "Verwal
tungsschnittstellenanbieter-Objekt" 26, das wiederum einen
Zugriff auf ein "Besitzt-Schnittstellen-Verfahren" 28,
"Schnittstellen-Auflisten-Verfahren" 30 und ein "Schnitt
stellen-Erhalten-Verfahren" 32 ermöglicht. Jedes Peripherie
gerät umfaßt ferner ein oder mehrere eingebettete ME-Objek
te, wobei jedes einen Bezug auf eine oder mehrere MI(s) er
möglicht, die eine Wiedergewinnung von Informationen bezüg
lich einer jeweiligen Peripheriegerätrolle ermöglichen. Es
sei in Erinnerung gerufen, daß jede MI ein Objekt ist, das
mindestens eine Funktion umfaßt, deren Ausführung die Wie
dergewinnung von Informationen bezüglich einer Rolle, die
durch das jeweilige Peripheriegerät durchgeführt wird, er
möglicht.
Hierin anschließend wird angenommen, daß alle Objekte be
reits in den Speicher geladen sind und für eine Verwendung
bereit sind. Jedoch liegt es im Schutzbereich dieser Erfin
dung, solche Objekte auf einem oder mehreren Datenspeicher
geräten zu liefern, wie beispielsweise einer Magnetplatte
29, wobei der Inhalt dieser auf einer Bedarfsbasis in den
Speicher geladen werden kann.
Der Speicher 16 umfaßt ferner ein oder mehrere "Explorer"-
Objekte 34, von denen jedes ein Verfahren zum Erhalten von
Bezügen auf ME-Objekte enthält; "Ansicht"-Objekte 36, die
das Betrachten von ausgewählten MEs, Zuständen und Konfigu
rationen ermöglichen (wie oben beschrieben ist); "Opera
tions"-Objekte 38, die bezüglich einer Ansammlung von MEs
unter Verwendung von MIs wirksam sind (wie oben beschrieben
ist); und ein "Datenbank"-Objekt 40 (wie oben beschrieben
ist).
Um die "Operation" des PSM-Verfahrens 18 besser zu verste
hen, wird auf die Fig. 6 und 7 Bezug genommen, die ein logi
sches Flußdiagramm des Verfahrens der Erfindung umfassen,
das eine Anwendung darstellt, die für eine Nachrüstung der
Firmware der Netzdrucker verantwortlich ist. Die Anwendung
führt die folgenden Aktivitäten durch:
- 1. Lokalisieren aller verfügbaren Drucker auf dem Netz.
- 2. Anzeigen einer Liste von Druckern, deren Firmware nachgerüstet werden kann, was durch ein Druckermodell organisiert wird.
- 3. Ermöglichen, daß der Benutzer einen oder mehrere Drucker von der Liste von Druckern auswählt.
- 4. Nachrüsten der Firmware auf jedem der ausgewählten Drucker.
Drucker enthalten Software, die verwendet wird, um Druckjobs
zu verarbeiten, die Firmware genannt wird (da sich dieselbe
in dem ROM oder einem anderen halbpermanenten Speicher, wie
beispielsweise einem Flash-Speicher befindet). Es ist manch
mal wünschenswert, die Druckerfirmware wie die Software auf
einem PC zu aktualisieren, um Defekte zu reparieren oder
neue Merkmale hinzuzufügen. Es ist wünschenswert, daß die
Verwalter eine Möglichkeit besitzen, die Firmware aller
Drucker des gleichen Modells zu aktualisieren, und nicht je
den Drucker als eine einzelne Handlung manuell zu aktuali
sieren.
- 1. Die Anwendung "Aktualisiere-Firmware" startet (Schritt 100, Fig. 6). An diesem Punkt hat die Anwendung keine MEs.
- 2. Die Anwendung lokalisiert MEs unter Verwendung von ei nem oder mehreren "Explorern". Die Anwendung besitzt eine Liste von bekannten "Explorern", die beim Hochfahren aufge baut wird. Diese Liste kann auf mehrere Arten aufgebaut wer den, wobei jedoch der Einfachheit halber angenommen wird, daß die Liste durch ein Lesen einer Datei erhalten wird. Man nehme ferner an, daß sich jeder "Explorer" in einer getrenn ten, dynamisch verbundenen Bibliothek (DLL; DLL = Dynamic Linked Library) befindet und die Liste den Ort in dem Datei system von DLLs identifiziert, die den ausführbaren Code für jedes "Explorer"-Objekt enthalten. Man nehme ferner an, daß die Liste von "Explorern" lediglich einen Eintrag hat. Die Anwendung liest die Liste, lädt die DLL (unter Verwendung von Betriebssystemaufrufen) und ruft eine exportierte Funk tion der DLL auf, um einen Fall des "Explorer"-Objekts zu spezialisieren (Schritt 102).
- 3. Nun hat die Anwendung ein "Explorer"-Objekt. Der näch
ste Schritt besteht darin, das "Explorer"-Objekt zu verwen
den, um eine Liste von MEs zu erhalten, was ein Aufrufen des
"Explorer"-Objekts erfordert. Das Verfahren des "Explorer-
"-Objekts gibt eine Datenstruktur, wie beispielsweise ein
Array, das eine Liste von entdeckten MEs liefert, zurück.
Die folgende abstrakte Basisklasse in C++ demonstriert eine
mögliche Schnittstelle für einen "Explorer" (und insbesonde
re die Schnittstelle, die bei diesem Beispiel verwendet
wird):
- 4. Die obige abstrakte Basisklasse liefert die Schnitt stelle eines "Explorers", beschreibt jedoch nicht die Imple mentierung. Da sehr viele Implementierungen existieren kön nen, wird der Einfachheit halber angenommen, daß der "Explo rer" einen Bezug auf eine Textdatei enthält, die eine Liste von MEs, die in Drucker eingebettet sind, enthält. (Jede dieser MEs wurde erzeugt, als der Drucker eingeschaltet wur de.) Jedes der ME-Objekte von der Textdatei wird zu der auf rufenden Anwendung zurück geleitet.
- 5. Nach dem Aufrufen des Erforschungsverfahrens auf dem
"Explorer"-Objekt hat die Anwendung nun eine Ansammlung von
MEs in einem Array. Der nächste Schritt besteht darin, sol
che MEs anzuzeigen, die eine MI "Fern-Firmware-Aktualisie
rung" liefern (Schritt 104). Um dies zu erreichen, muß die
Anwendung bestimmen, ob jede ME die MI "Fern-Firmware-Aktua
lisierung" liefert oder nicht. Dies wird durch ein Aufrufen
eines Verfahrens "Besitzt-Schnittstelle" 28 bezüglich jeder
der MEs erreicht. Zum Beispiel kann die Schnittstelle einer
MI durch die folgende abstrakte Basisklasse von C++ darge
stellt werden:
- 6. Wenn "Besitzt-Schnittstelle" aufgerufen wird, muß jede ME "wahr" oder "falsch" zurückgeben (Schritt 106). Die Ant wort, die jede ME liefert, wird durch ein Konsultieren einer internen Tabelle bestimmt, die jeden der MI-Namen auflistet, die durch die ME unterstützt werden. Die Funktion "Besitzt- Schnittstelle" vergleicht einfach den gelieferten MI-Namen mit jedem der MI-Namen, die in der Tabelle enthalten sind. Wenn keine Übereinstimmung gefunden wurde, gibt "Besitzt- Schnittstelle" ein "falsch" zurück. Falls eine Übereinstim mung gefunden wurde, gibt "Besitzt-Schnittstelle" ein "wahr" zurück. Obwohl die obige Beschreibung MEs als eine Tabelle mit Verwaltungsschnittstellennamen aufweisend darstellt, ist dies nicht notwendigerweise die Art, auf die alle MEs imple mentiert werden.
- 7. Sobald jede der MEs abgefragt wurde, um zu bestimmen,
ob dieselbe die Verwaltungsschnittstelle "Fern-Firmware-
Nachrüstung" unterstützt, besteht der nächste Schritt darin,
solche MEs anzuzeigen, die diese Schnittstelle unterstützen.
Die Anwendung könnte direkt Informationen über diese MEs an
zeigen, wobei es jedoch flexibler ist, diese MEs unter Ver
wendung eines "Ansicht"-Objekts anzuzeigen. Ein "Ansicht"-
Objekt ist wiederverwendbar und kann bei anderen Anwendungen
als der Anwendung, die gegenwärtig erörtert wird, verwendet
werden. Ein "Ansicht"-Objekt erfordert eine oder mehrere be
sondere MEs, um zu funktionieren. In diesem Fall wird das
-"Ansicht"-Objekt die MI "Fern-Firmware-Nachrüstung" benöti
gen.
Die Verwaltungsschnittstelle "Fern-Firmware-Nachrüstung" kann durch die folgende abstrakte Basisklasse dargestellt werden:
Obwohl bei einer tatsächlichen Implementierung die Funktion "Drucker-Modell" ein Teil einer anderen allgemeineren MI sein würde, ist dieselbe in der MI "Fern-Firmware-Nachrü stung" enthalten, um dieses Beispiel zu vereinfachen. Die MI "Fern-Firmware-Nachrüstung" enthält alle Funktionen, die er forderlich sind, um dieses Beispiel zu vollenden. Vor einem Anzeigen der MEs, die die MI "Fern-Firmware-Nachrüstung" un terstützen, ist es notwendig, ein "Ansicht"-Objekt zu spe zialisieren (Schritt 108). - 8. Das Spezialisieren eines Ansicht-Objekts wird (bei die sem Beispiel) durch ein Laden einer DLL in den Speicher un ter Verwendung von Betriebssystem-APIs und ein Aufrufen ei nes Verfahrens, um das "Ansicht"-Objekt zu erzeugen, er reicht.
- 9. Sobald das "Ansicht"-Objekt erzeugt ist, kann dasselbe
verwendet werden, um die MEs anzuzeigen. Eine "Ansicht" kann
als die folgende Schnittstelle, die als eine abstrakte Ba
sisklasse von C++ definiert ist, aufweisend aufgefaßt wer
den:
Um eine Ansammlung von MEs anzuzeigen, wird das Anzeigever fahren mit einem Array von ME-Zeigern aufgerufen. Anspre chend hierauf führt das "Ansicht"-Objekt folgende Schritte aus:- - Verifizieren, daß jede ME, die in dem ME-List-Array ge liefert wird, die MI "Fern-Firmware-Nachrüstung" durch ein Aufrufen des Verfahrens "Besitzt-Schnittstelle" be züglich jeder ME unterstützt. Ansprechend darauf wird, wie vorher beschrieben wurde, jede ME eine interne Da tenstruktur konsultieren, um zu bestimmen, ob die ge lieferte MI unterstützt wird. Wenn eine ME, die die MI "Fern-Firmware-Nachrüstung" nicht unterstützt, in dem ME List-Array existiert, tritt ein Fehler auf.
- - Erhalten der tatsächlichen MI "Fern-Firmware-Nachrü stung" von jeder ME (Schritt 108). Dies wird durch ein Aufrufen der Funktion "Erhalte-Verwaltungsschnittstel le" bezüglich jeder ME mit dem Namen der erwünschten MI erreicht, der in diesem Fall "Fern-Firmware-Nachrü stung" ist. Jede MI ist als ein Zeiger auf eine MI- Klasse dargestellt. Man erinnere sich, daß sich die tatsächlichen MEs entfernt in Druckern befinden. Dies bedeutet, daß die Implementierungen der Funktionen, die die MIs bilden, sich ebenfalls entfernt in dem Drucker befinden. Obwohl eine Client-Software, wie beispiels weise das "Ansicht"-Objekt, mit lokalen Schnittstellen (z. B. "Fern-Firmware-Nachrüstung") zusammenwirken, ver wenden diese lokalen Schnittstellen eingerichtete Kom munikationsverfahren, um Parameter und Verfahren von den tatsächlichen Implementierungen, die sich in dem Drucker befinden, zusammenszustellen. Sobald diese er halten werden, werden die MIs typmäßig als MIs "Fern- Firmware-Nachrüstung" eingeteilt und in einer Tabelle gespeichert. Diese Tabelle enthält einen lokalen Zeiger auf die ME, einen lokalen Zeiger auf die MI "Fern-Firm ware-Nachrüstung" für die entsprechende ME, eine Ver sionsnummer (die unten erörtert wird) und ein Modell (das unten erörtert wird).
- - Erhalten der Versionsnummer jeder ME durch ein Aufrufen des Verfahrens "Firmware-Version", das durch die MI "Fern-Firmware-Nachrüstung" geliefert wird (jede ME hat ihre eigene unabhängige Implementierung dieser MI). Der Wert, der erhalten wird, wird in der Tabelle gespei chert, die verwendet wird, um Informationen für jede ME zu speichern (wie beispielsweise Schnittstellenzeiger).
- - Erhalten des Druckermodells jeder ME durch ein Aufrufen der Funktion "Drucker-Modell", die durch die MI "Fern- Firmware-Nachrüstung" geliefert wird (jede ME weist ih re eigene unabhängige Implementierung dieser MI auf). Der Wert, der erhalten wird, wird in der Tabelle ge speichert, die verwendet wird, um Informationen für je de ME zu speichern (wie beispielsweise Schnittstellen zeiger).
- 10. Da die Tabelle, die verwendet wird, um Informationen
für jede ME zu speichern, nun bevölkert ist, kann die Tabel
le durch das Druckermodell und die Firmwareversion sortiert
werden. Ein Sortieren kann durch jede von mehreren einge
richteten Einrichtungen erreicht werden. Das "Ansicht"-Ob
jekt kann dann ein Fenster öffnen und die sortierte Liste
der ME-Informationen anzeigen. In dieser Liste kann dasselbe
spezifisch das Druckermodell und die Firmwareversion zeigen.
Wenn das "Ansicht"-Fenster angeklickt wird, bestimmt das
"Ansicht"-Objekt, welcher ME-Eintrag in der Tabelle ange
klickt wurde und führt zwei Dinge aus. Erstens hebt das "An
sicht"-Objekt diesen Eintrag in dem Fenster hervor. Zweitens
modifiziert das Ansichtobjekt ein Feld in der ME-Tabelle, um
anzuzeigen, daß das Feld ausgewählt ist.
Wie oben angezeigt ist, wurde die Tabelle, die verwendet wird, um die MEs innerhalb des "Ansicht"-Objekts zu verfol gen, derart beschrieben, daß dieselbe Felder für einen loka len Bezug auf die ME, einen lokalen Bezug auf eine MI "Fern-Firmware-Nachrüstung", einen Modellnamen und eine Firmwareversionsnummer, aufweist. Diese Tabelle wird erwei tert, um ein neues boolsches Feld zu umfassen, das anzeigt, ob ein neuer besonderer Eintrag durch die Benutzerschnitt stelle ausgewählt wurde. - 11. Sobald der Benutzer die erwünschten MEs für eine Nach
rüstung ausgewählt hat (d. h. Drucker) (Schritt 110), kann
der Benutzer durch eine Benutzerschnittstelle, die durch die
Anwendung geliefert wird, wie beispielsweise ein Menüsymbol,
anzeigen, daß eine Firmwarenachrüstung durchgeführt werden
soll. Dies kann durch ein Herunterziehen eines Menüs, das
"Operationen" genannt wird, und Auswählen von "Nachrüsten
ferner Firmware" erreicht werden. "Operationen" sind Hand
lungen, die bezüglich einer Ansammlung von MEs durchgeführt
werden. Bevor "Operationen" verwendet werden können, müssen
jedoch zwei Dinge geschehen. Erstens müssen dieselben spe
zialisiert werden. Zweitens müssen dieselben konfiguriert
werden. Die folgende abstrakte Basisklasse von C++ liefert
eine mögliche Schnittstelle für "Operationen":
- 12. Das Erzeugen einer "Operation" kann auf mehrere Arten erfolgen, d. h. ähnlich zu der Art, auf die "Ansichten" und "Explorer" erzeugt werden. Um den Sachverhalt zu vereinfa chen, wird die "Operation" durch ein Laden einer DLL in ei nen Speicher unter Verwendung von Betriebssystemaufrufen und Aufrufen einer Funktion, die durch diese DLL exportiert wird, um die Operation zu spezialisieren, erzeugt.
- 13. Sobald die "Operation" erzeugt ist, muß diese konfigu riert werden. Dies wird durch ein Aufrufen des "Konfigurie ren"-Verfahrens, das durch das "Operation"-Objekt geliefert wird, erreicht. Dieses Verfahren zeigt einen Konfigurations dialog an, der dem Benutzer ermöglicht, das "Operation"-Ob jekt zu konfigurieren. Die Benutzerschnittstelle enthält einen Texteditierblock mit einer Beschriftung in dessen Nä he, die anzeigt, daß der Texteditierblock den Ziel-URL (URL = Unified Resources Locator = Einheitliche-Betriebsmittel- Lokalisierer) enthält, in dem Druckerfirmware, die nachge rüstet werden soll, gespeichert ist. Der Benutzer gibt eine Zeichenfolge ein, die einen gültigen URL dorthin liefert, wo die Druckerfirmware angeordnet ist. Sobald der Benutzer den URL eingegeben hat, ist das "Operation"-Objekt konfiguriert und betriebsbereit.
- 14. Als erstes muß die Anwendung die Liste von ausgewählten MEs erhalten, so daß dieselbe diese MEs zu dem "Operation"- Objekt leiten kann (Schritt 112). Um dies zu tun, ruft die Anwendung das Verfahren "Erhalte-Ausgewählte-MEs" von dem "Ansicht"-Objekt auf. Dieses Verfahren durchläuft die Tabel le der MEs und plaziert jede ME, die ausgewählt ist (was aus dem ausgewählten Feld in der ME-Tabelle bestimmt wird), in einem Array. Dieses Array wird dann zu der Anwendung zurück gegeben. Da die Anwendung nun die ausgewählten MEs in einem Array hat, kann dieselbe das Verfahren des "Operation"-Ob jekts aufrufen.
- 15. Das Verfahren führt folgende Teilschritte aus (Schritt
114):
- - Verifizieren, daß jede der MEs, die zu demselben gelei tet wird, eine MI "Fern-Firmware-Nachrüstung" besitzt, durch ein Aufrufen der Funktion "Besitzt-Schnittstelle" jeder ME.
- - Erhalten eines lokalen Zeigers auf die MI "Fern-Firm ware-Nachrüstung" durch ein Aufrufen des Verfahrens "Erhalte-Schnittstelle" für jede ME. Dies wird durch ein Leiten des MI-Namens der MI "Fern-Firmware-Nachrü stung" zu dem Verfahren "Erhalte-Schnittstelle" er reicht. Nach dem Verifizieren, daß alle gelieferten MEs die MI "Fern-Firmware-Nachrüstung" liefern, wird jede ME einzeln verarbeitet, bevor zu der nächsten ME ge sprungen wird. Mit anderen Worten heißt das, daß der nächste Schritt abgeschlossen und dann das Verarbeiten der ME begonnen wird.
- - Aufrufen des Verfahrens "Nachrüstung-Firmware" nach ei nem Erhalten der MI "Fern-Firmware-Nachrüstung". Das Verfahren "Nachrüstung-Firmware" wird als ein Teil der MI "Fern-Firmware-Nachrüstung" geliefert. Dieses Ver fahren nimmt eine Zeichenfolge an, die den URL be schreibt, an dem die Firmware angeordnet ist.
- 16. Wie oben angemerkt wurde, werden sowohl MEs als auch MIs durch lokale Proxy-Objekte dargestellt (d. h. die ab strakten Basisklassen, die bei diesem Beispiel verwendet werden). Diese Klassen liefern ein vorderes Ende für ein Kommunikationsprotokoll. Die tatsächliche Implementierung des Verfahrens "Nachrüstung-Firmware" ist in jedem Drucker angeordnet (man erinnere sich, daß jeder Drucker eine ME, die in denselben eingebettet ist, enthält). Wenn das Verfah ren "Nachrüstung-Firmware" aufgerufen wird, führt die Imple mentierung in jedem Drucker die erforderlichen Handlungen durch, um die Firmware von dem Server, der durch den URL spezifiziert ist, herunterzuladen (Schritt 116). Sobald das Firmware-Bild heruntergeladen wurde, wird der Drucker das Firmware-Bild durch ein Überprüfen der Gültigkeit der Prüf summe verifizieren (oder durch andere Techniken, die geeig net sind) und das Firmware-Bild in einen halbpermanenten Speicher schreiben. Schließlich wird der Drucker sich selbst neu einstellen (Warmneustart), um mit der neuen Firmware zu laufen. Sobald jede ME verarbeitet wurde und alle Firmware- Bilder nachgerüstet wurden, wird die Anwendung beendet.
Claims (15)
1. System zum Ermöglichen, daß ein Verwaltungscomputer (10)
Einheiten (22, 24) eines Peripheriesystems verwaltet,
wobei jede verwaltete Einheit einen oder mehrere Dienste
für einen Computer liefert, der der Verwaltungscomputer
(10) sein kann oder nicht, und ferner ein Verwaltungs
schnittstellenanbieter-Objekt speichert, das ermöglicht,
daß Verfahren bezüglich Schnittstellenobjekten durchge
führt werden, wobei jeder Dienst eine zugeordnete Ver
waltete-Entität-Schnittstelle (ME-Schnittstelle) (33)
aufweist, die einen oder mehrere Bezüge auf eine oder
mehrere Verwaltungsschnittstellen (MIs) umfaßt, wobei
jede MI ein oder mehrere Verfahren aufweist, um zumin
dest (i) Informationen bezüglich eines oder mehrerer
Merkmale des Dienstes, der durch die ME (33) dargestellt
wird und durch eine verwaltete Einheit (22, 24) durchge
führt wird, zu liefern, oder (ii) zu bewirken, daß die
verwaltete Einheit (22, 24) eine Funktion durchführt,
wobei der Computer (10) folgende Merkmale aufweist:
eine Eingabe/Ausgabe-Einrichtung (14) zum Ermöglichen von Kommunikationen mit jeder der verwalteten Ein heiten (22, 24);
einen Speicher (16) zum Speichern eines Explorer-Ob jekts (34); und
eine Verarbeitungseinrichtung (12), die auf eine Be nutzerabfrage bezüglich eines Verwaltete-Einheit- Diensts anspricht, um (i) das Explorer-Objekt (34) aufzurufen, um eine ME (33), die dem Verwaltete-Ein heit-Dienst entspricht, zu bestimmen, und (ii) ein Verfahren des Schnittstellenanbieter-Objekts (26) auf zurufen, um ein MI-Objekt wiederzugewinnen, das der ME (33) zugeordnet ist, die einen Zugriff auf Informatio nen, die sich auf die verwaltete Einheit (22, 24) be ziehen, ermöglicht, oder die bewirkt, daß die verwal tete Einheit (22, 24) fallabhängig eine Funktion durchführt, wobei sich die Informationen oder die Funktion auf die Benutzerabfrage beziehen.
eine Eingabe/Ausgabe-Einrichtung (14) zum Ermöglichen von Kommunikationen mit jeder der verwalteten Ein heiten (22, 24);
einen Speicher (16) zum Speichern eines Explorer-Ob jekts (34); und
eine Verarbeitungseinrichtung (12), die auf eine Be nutzerabfrage bezüglich eines Verwaltete-Einheit- Diensts anspricht, um (i) das Explorer-Objekt (34) aufzurufen, um eine ME (33), die dem Verwaltete-Ein heit-Dienst entspricht, zu bestimmen, und (ii) ein Verfahren des Schnittstellenanbieter-Objekts (26) auf zurufen, um ein MI-Objekt wiederzugewinnen, das der ME (33) zugeordnet ist, die einen Zugriff auf Informatio nen, die sich auf die verwaltete Einheit (22, 24) be ziehen, ermöglicht, oder die bewirkt, daß die verwal tete Einheit (22, 24) fallabhängig eine Funktion durchführt, wobei sich die Informationen oder die Funktion auf die Benutzerabfrage beziehen.
2. System gemäß Anspruch 1, bei dem der Speicher (16) fer
ner ein Ansicht-Objekt (36) umfaßt und der Prozessor
(12) ein Verfahren aufruft, das dem Ansicht-Objekt (36)
zugeordnet ist, um MEs (33) anzuzeigen, wobei mindestens
eine der MEs (33) dem Verwaltete-Einheit-Dienst ent
spricht, wodurch ermöglicht wird, daß ein Benutzer vor
dem Aufrufen einer Funktion des Schnittstellenanbieter-
Objekts (26) eine oder mehrere der MEs (33) auswählt.
3. System gemäß Anspruch 1 oder 2, bei dem der Speicher
(16) ferner ein Ansicht-Objekt (36) umfaßt und der Pro
zessor (12) ein Verfahren aufruft, das dem Ansicht-Ob
jekt (36) zugeordnet ist, um einen Zustand einer Gruppe
von MEs anzuzeigen.
4. System gemäß einem der Ansprüche 1 bis 3, bei dem das
Verwaltungsschnittstellenanbieter-Objekt (26) folgende
Merkmale umfaßt:
ein Verfahren (28) zum Bestimmen, ob eine ME (33) ein zugeordnetes MI-Objekt aufweist, das einem abgefragten Merkmal entspricht;
ein Verfahren (32) zum Wiedergewinnen des zugeordneten MI-Objekts; und
ein Verfahren zum Auflisten von MI-Objekten, die einer ME zugeordnet sind;
wobei der Prozessor (12) mindestens eines der Verfahren verwendet, um das MI-Objekt, das der ME zugeordnet ist, wiederzugewinnen.
ein Verfahren (28) zum Bestimmen, ob eine ME (33) ein zugeordnetes MI-Objekt aufweist, das einem abgefragten Merkmal entspricht;
ein Verfahren (32) zum Wiedergewinnen des zugeordneten MI-Objekts; und
ein Verfahren zum Auflisten von MI-Objekten, die einer ME zugeordnet sind;
wobei der Prozessor (12) mindestens eines der Verfahren verwendet, um das MI-Objekt, das der ME zugeordnet ist, wiederzugewinnen.
5. System gemäß einem der Ansprüche 1 bis 4, bei dem jede
verwaltete Einheit (22, 24), die einen besonderen Dienst
umfaßt, den Dienst mit einer im wesentlichen identischen
ME-Schnittstelle zeigt.
6. System gemäß Anspruch 5, bei dem jede verwaltete Einheit
(22, 24), die ein besonderes Merkmal umfaßt, das Merkmal
mit einem im wesentlichen identischen MI-Objekt zeigt.
7. System gemäß Anspruch 6, bei dem der Prozessor (12) das
Schnittstellenanbieter-Verfahren bei der Verwaltung al
ler Peripherieeinheiten, die ME- und MI-Objekte zeigen,
einsetzt.
8. System gemäß einem der Ansprüche 1 bis 7, bei dem minde
stens eine der verwalteten Einheiten (22, 24) mit dem
Computer (10) über ein Netz (20) verbunden ist.
9. Speichermedium (29) zum Steuern eines Verwaltungscompu
ters (10), um Einheiten eines Peripheriesystems zu ver
walten, wobei jede verwaltete Einheit (22, 24) einen
oder mehrere Dienste für einen Computer liefert, der der
Verwaltungscomputer (10) sein kann oder nicht, und fer
ner ein Verwaltungsschnittstellenanbieter-Objekt spei
chert, das ermöglicht, daß Verfahren bezüglich Schnitt
stellenobjekten durchgeführt werden, wobei jeder Dienst
eine zugeordnete Verwaltete-Entität-Schnittstelle (ME-
Schnittstelle) aufweist, die einen oder mehrere Bezüge
auf eine oder mehrere Verwaltungsschnittstellen (MIs)
umfaßt, wobei jede MI ein oder mehrere Verfahren auf
weist, um zumindest (i) Informationen bezüglich eines
oder mehrerer Merkmale des Dienstes, der durch die ME
(33) dargestellt wird und durch eine verwaltete Einheit
(22, 24) durchgeführt wird, zu liefern, oder (ii) zu be
wirken, daß die verwaltete Einheit (22, 24) eine Funk
tion durchführt, wobei der Verwaltungscomputer (14) eine
Eingabe/Ausgabe-Einrichtung (14) zum Ermöglichen von
Kommunikationen mit jeder der verwalteten Einheiten (22,
24) und einen Speicher (16) zum Speichern eines Explo
rer-Objekts (34) aufweist, wobei das Speichermedium (29)
folgende Merkmale aufweist:
- a) eine Einrichtung (29) zum Steuern des Verwaltungscom puters (10), um auf eine Benutzerabfrage bezüglich eines Verwaltete-Einheit-Diensts anzusprechen, um das Explorer-Objekt (34) aufzurufen, um eine ME (33), die dem Verwaltete-Einheit-Dienst entspricht, zu bestim men; und
- b) eine Einrichtung (29) zum Steuern der verwalteten Einheit (22, 24), um ein Verfahren des Schnittstel lenanbieter-Objekts (26) aufzurufen, um ein MI-Objekt wiederzugewinnen, das der ME (33) zugeordnet ist, die einen Zugriff auf Informationen, die sich auf die verwaltete Einheit (22, 24) beziehen, ermöglicht oder bewirkt, daß die verwaltete Einheit (22, 24) fallab hängig eine Funktion durchführt, wobei sich die In formationen oder die Funktion auf die Benutzerabfrage beziehen.
10. Speichermedium (29) gemäß Anspruch 9, bei dem der Spei
cher (16) ferner ein Ansicht-Objekt (36) umfaßt und die
Einrichtung b) den Verwaltungscomputer (10) steuert, um
ein Verfahren aufzurufen, das dem Ansicht-Objekt (36)
zugeordnet ist, um MEs anzuzeigen, wobei mindestens eine
der MEs dem Verwaltete-Einheit-Dienst entspricht, wo
durch ermöglicht wird, daß ein Benutzer eine oder mehre
re der MEs vor dem Aufrufen einer Funktion des Schnitt
stellenanbieter-Objekts auswählt.
11. Speichermedium (29) gemäß Anspruch 9 oder 10, bei dem
der Speicher (16) ferner ein Ansicht-Objekt (36) umfaßt
und die Einrichtung b) den Verwaltungsprozessor (10)
steuert, um ein Verfahren, das dem Ansicht-Objekt (36)
zugeordnet ist, aufzurufen, um einen Zustand einer Grup
pe von MEs anzuzeigen.
12. Speichermedium (29) gemäß einem der Ansprüche 9 bis 11,
bei dem das Schnittstellenanbieter-Objekt (26) folgende
Merkmale umfaßt:
ein Verfahren (28) zum Bestimmen, ob eine ME (33) ein zugeordnetes MI-Objekt aufweist, das einem abgefragten Merkmal entspricht;
ein Verfahren (32) zum Wiedergewinnen des zugeordneten MI-Objekts; und
ein Verfahren (30) zum Auflisten von MI-Objekten, die einer ME (33) zugeordnet sind;
wobei die Einrichtung b) die verwaltete Einheit (22, 24) steuert, um mindestens eines der Verfahren zu verwenden, um das MI-Objekt, das der ME (33) zugeordnet ist, wie derzugewinnen.
ein Verfahren (28) zum Bestimmen, ob eine ME (33) ein zugeordnetes MI-Objekt aufweist, das einem abgefragten Merkmal entspricht;
ein Verfahren (32) zum Wiedergewinnen des zugeordneten MI-Objekts; und
ein Verfahren (30) zum Auflisten von MI-Objekten, die einer ME (33) zugeordnet sind;
wobei die Einrichtung b) die verwaltete Einheit (22, 24) steuert, um mindestens eines der Verfahren zu verwenden, um das MI-Objekt, das der ME (33) zugeordnet ist, wie derzugewinnen.
13. Speichermedium (29) gemäß einem der Ansprüche 9 bis 12,
bei dem jede verwaltete Einheit (22, 24), die einen be
sonderen Dienst umfaßt, den Dienst mit einer im wesent
lichen identischen ME-Datenstruktur zeigt.
14. Speichermedium (29) gemäß Anspruch 13, bei dem jede ver
waltete Einheit (22, 24), die ein besonderes Merkmal um
faßt, das Merkmal mit einem im wesentlichen identischen
MI-Objekt und enthaltenen Verfahren zeigt.
15. Speichermedium (29) gemäß Anspruch 14, bei dem der Pro
zessor das Schnittstellenanbieter-Verfahren bei der Ver
waltung aller Peripherieeinheiten, die ME- und MI-Objek
te zeigen, einsetzt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US29859099A | 1999-04-23 | 1999-04-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10006416A1 true DE10006416A1 (de) | 2000-11-02 |
Family
ID=23151175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10006416A Withdrawn DE10006416A1 (de) | 1999-04-23 | 2000-02-14 | System und Verfahren für eine Peripheriesystemverwaltung unter Verwendung von Mehr-Objekt-Schnittstellen |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2000311129A (de) |
DE (1) | DE10006416A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7565209B2 (en) | 2004-07-02 | 2009-07-21 | Panasonic Corporation | Device control apparatus |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7417754B2 (en) | 2001-09-05 | 2008-08-26 | Hewlett-Packard Development Company, L.P. | Wireless printing interface kit and method |
US7565398B2 (en) | 2002-06-27 | 2009-07-21 | International Business Machines Corporation | Procedure for dynamic reconfiguration of resources of logical partitions |
JP4023508B2 (ja) | 2006-03-28 | 2007-12-19 | 松下電工株式会社 | ネットワークシステム |
-
2000
- 2000-02-14 DE DE10006416A patent/DE10006416A1/de not_active Withdrawn
- 2000-03-22 JP JP2000079686A patent/JP2000311129A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7565209B2 (en) | 2004-07-02 | 2009-07-21 | Panasonic Corporation | Device control apparatus |
Also Published As
Publication number | Publication date |
---|---|
JP2000311129A (ja) | 2000-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60131683T2 (de) | Verfahren und system zur verwaltung von mehreren netzwerk-betriebsmitteln | |
DE60009489T2 (de) | Vorrichtung und verfahren zum verwalten der verteilung von inhalten zu einem gerät | |
DE69709959T2 (de) | Verwendung von polymorphischen dateipaketen zur aktualisierung von softwarekomponenten | |
DE69832354T2 (de) | Netzwerkverwaltungsrahmenwerk | |
DE60126016T2 (de) | Serverseitige Kontrollobjekte zur Verarbeitung von kundenseitigen Benutzerschnittstellenelementen | |
DE19940210B4 (de) | Verfahren zum Herstellen eines Computersystems und zum Modifizieren einer grafischen Benutzeroberfläche, die von einem Betriebssystem kontrolliert wird | |
DE69817158T2 (de) | Benutzerschnittstellen-Mechanismus zur Manipulierung von Kontexten in Computerverwaltungsapplikationen | |
DE69131745T2 (de) | Verfahren und Gerät zum Verschaffen einer Kundenschnittstelle zu einem objektorientierten Aufruf eines Anwendungsprogramms | |
DE69636887T2 (de) | System und Verfahren,um verschiedenen Anbietern von Namen zu ermöglichen,sich dynamisch einer Namensföderation anzuschliessen | |
DE69829442T2 (de) | System und Verfahren für transparenten, globalen Zugang zu physikalischen Geräten in einem Rechnersystem | |
US7496890B2 (en) | Generation of configuration instructions using an abstraction technique | |
DE19926115B4 (de) | Transaktionshandhabung in einer Konfigurationsdatenbank | |
DE69712560T2 (de) | System zur Konfiguration von vorkonfigurierten Programmen auf vernetzten offenen Systemen in einer verteilten Umgebung und Verfahren zur Durchführung dieses Systems | |
DE69637436T2 (de) | Objektorientiertes Kommunikationssystem mit Unterstützung für mehrere entfernte Maschinentypen | |
DE69735348T2 (de) | Skalierbare und erweiterbare Systemverwaltungsarchitektur mit datenlosen Endpunkten | |
DE69131245T2 (de) | Verfahren und Gerät zum Verschaffen von dynamischen Aufrufen von Anwendungsprogrammen in einer verteilten heterogenen Umgebung | |
DE60003457T2 (de) | Verfahren und system zur konfiguration von komponenten, ausgebbar in einem netzwerk | |
DE69838139T2 (de) | Verfahren und system zur schaffung von datenbankanwendungssoftware,die minimales programmieren benötigen | |
DE69131122T2 (de) | Graphische Konfiguration eines Datenverarbeitungsnetzwerkes | |
CN100484031C (zh) | 一种可扩展的网络管理系统和方法 | |
DE112005001033T5 (de) | Verfahren und Vorrichtung für den Zugriff auf Prozesssteuerdaten | |
DE112010004160T5 (de) | Portieren virtueller Abbilder zwischen Plattformen | |
DE112011105186T5 (de) | Graphdatenbanken zum Speichern mehrdimensionaler Modelle von Software-Angeboten | |
DE10045133C2 (de) | Wiederverwendbares computerimplementiertes Auftrags-Editier und Liefer-Verfahren | |
DE19954268A1 (de) | Verfahren und System zur Verbesserung des Workflow-Durchsatzes in Workflow-Anwendungssystemen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8127 | New person/name/address of the applicant |
Owner name: HEWLETT-PACKARD CO. (N.D.GES.D.STAATES DELAWARE), |
|
8127 | New person/name/address of the applicant |
Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE |
|
8130 | Withdrawal |