PatentDe  


Dokumentenidentifikation DE10203409A1 07.08.2003
Titel Netzwerkbasierte Peripheriegeräteauswahl und -Steuerung
Anmelder WINCOR NIXDORF International GmbH, 33106 Paderborn, DE
Erfinder Ettler, Heinrich, 33154 Paderborn, DE;
Miksic, Miran, 33104 Paderborn, DE
DE-Anmeldedatum 28.01.2002
DE-Aktenzeichen 10203409
Offenlegungstag 07.08.2003
Veröffentlichungstag im Patentblatt 07.08.2003
IPC-Hauptklasse G06F 15/173
Zusammenfassung Computersystem, in dem ein Anwendungsprogramm in einem Anwendungsserver auf Peripheriegeräte über ein Netzwerk zugreift. Für die Peripheriegeräte werden von einem Gerätestarter gemäß einer Konfigurationsliste Gerätesteuerprozesse gestartet und melden ihre Betriebsbereitschaft bei einem Verzeichnisserver an, wobei Netzwerkadresse, Interface und Attribute in einer Datenbank hinterlegt werden. Will das Anwendungsprogramm eine Ein- oder Ausgabe auf einem Peripheriegerät durchführen, so bestimmt es über den Verzeichnisserver einen durch Attribute und Interface bestimmten Gerätesteuerprozess und ruft diesen zur Durchführung der Ein- oder Ausgabe über das Netzwerk auf.

Beschreibung[de]

Die Erfindung betrifft die Steuerung von Peripheriegeräten über ein Netzwerk bei Arbeitsplätzen insbesondere im Bankenbereich.

Mit der Einführung von DV-Arbeitsplätzen in Banken wurde zunächst eine zentrale Lösung verwendet, bei der in einem "host" genannten Zentralrechner die komplette Steuerung der Anwendung erfolgt. Am Arbeitsplatz sind nur isolierte Geräte mit geringer Verarbeitungsleistung wie Bildschirm, Tastatur und Drucker vorhanden, die über einen Multiplex-Kanal von der Anwendung im Zentralrechner angesprochen werden. Im Zentralrechner ist die Zuordnung der Geräte zueinander in einer Datenbank gespeichert. Änderungen an der Konfiguration müssen in der Datenbank ein- bzw. ausgetragen werden. Inaktive Geräte sind genauso problematisch wie vorübergehenden Konfigurationsänderungen. Die Benutzung eines Geräts durch zwei oder mehr Arbeitsplätze hingegen ist problemlos, da der Zugriff im Zentralrechner koordiniert werden kann. Die Verbindung vom Zentralrechner zum Peripheriegerät ist feststehend.

Durch die Fortschritte der Rechnertechnologie konnten die Arbeitsplätze mit immer leistungsfähigeren Mikroprozessoren ausgestattet werden, so daß ein immer größerer Teil der Steuerung durch einen Arbeitsplatzrechner übernommen werden kann. Insbesondere werden die Peripheriegeräte direkt an den Arbeitsplatz angeschlossen und stehen dann in der Regel dem Arbeitsplatz exklusiv zur Verfügung. Problematisch ist bei dieser Lösung das Konfigurationsmanagement und das Laden bzw. Aktualisieren der Arbeitsplatzrechner. Mehreren Arbeitsplätzen gemeinsame Geräte erfordern einen erheblichen Aufwand, um die Zugriffe zu synchronisieren.

Im folgenden wird eine Lösung beschrieben, bei der die Steuerung der Anwendung zentral erfolgt und von dort auf die benötigten Peripheriegeräte einfach und flexibel zugegriffen werden kann.

Es handelt sich dabei um ein Computersystem, in dem ein Anwendungsprogramm in einem Anwendungsserver auf Peripheriegeräte über ein Netzwerk zugreift. Für die Peripheriegeräte werden von einem Gerätestarter gemäß einer Konfigurationsliste Gerätesteuerprozesse gestartet und melden ihre Betriebsbereitschaft bei einem Verzeichnissserver an, wobei Netzwerkadresse, Interface und Attribute in einer Datenbank hinterlegt werden. Will das Anwendungsprogramm eine Ein- oder Ausgabe auf einem Peripheriegerät durchführen, so bestimmt es über den Verzeichnissserver einen durch Attribute und Interface bestimmten Gerätesteuerprozess und ruft diesen zur Durchführung der Ein- oder Ausgabe über das Netzwerk auf.

Die Erfindung wird an Hand eines Beispiels beschrieben. Die dafür verwendete Konfiguration ist in Fig. 1 schematisch dargestellt.

Vorhanden sind ein Anwendungsserver 10, ein Verzeichnisserver 20 und eine Gerätesteuerung 30. Die Gerätesteuerung 30 ist ein beliebiges Computersystem mit einem Zugang zu dem Netzwerk 99, an das Peripheriegeräte 40 angeschlossen sind. Es kann sich um einen üblichen Arbeitsplatz, beispielsweise einen Personal Computer, handeln, der noch weitere Funktionen erfüllen kann. In diesem Fall handelt es sich um an einen Arbeitsplatz angeschlossene Geräte. Es ist gleichermaßen sinnvoll, gemeinsam benutzte Peripheriegeräte an eigene Rechner anzuschließen, wenn die Arbeitsplätze nicht ständig angeschaltet sein sollen. Die von der Erfindung verwendete Technologie erlaubt es, daß ein Peripheriegerät an ein beliebtes Client-System angeschlossen werden und jederzeit mit geringem Aufwand umkonfiguriert werden kann. Daher wird im folgenden der generische Begriff "Gerätesteuerung" für alle Rechner verwendet, an die ein Peripheriegerät angeschlossen ist und die gemäß der vorliegenden Erfindung benutzt werden, unbeschadet davon, ob der Rechner weitere Dienste und Funktionen bereitstellt.

Die genannten Rechner Anwendungsserver 10, Verzeichnisserver 20 und Gerätesteuerung 30 sind durch ein Netzwerk 99, bevorzugt über IP-Protokolle, untereinander verbunden.

Die Gerätesteuerung 30 enthält einen Gerätestarter 32, der auf eine vorbestimmte Konfigurationsliste 38 zugreift. In dieser Liste sind die angeschlossenen Geräte 40 zusammen mit den im folgenden benötigten Angaben enthalten. Die Konfigurationsliste 38 kann als einfache Textdatei ausgebildet sein oder aus einer Anzahl von Einträgen in anderen Konfigurationsdatenbanken, z. B. der Windows Registry, bestehen.

Für jeden nicht gesperrten Eintrag in der Konfigurationsliste 38 wird nunmehr ein dort spezifizierter Gerätesteuerprozeß 34 durch einen Gerätestarter 32 erzeugt. Der Gerätesteuerprozeß 34 bekommt die notwendigen Parameter direkt oder über einen Verweis auf den Eintrag in der Konfigurationsliste 38. Die notwendigen Parameter enthalten insbesondere Adresse und Eigenschaften des zugehörigen Geräts 40.

Bevorzugt sind der Gerätestarter 32 und die Gerätesteuerprozesse 34 als JAVA-Programme ausgeführt, damit die nachfolgenden Schritte mittels der von der Firma Sun Microsystems entwickelten, auf JAVA basierenden, JINI-Technologie durchgeführt werden können. Ob die Gerätesteuerprozesse 34 als Threads im Kontext des Gerätestarters oder als Prozesse mit eigener virtueller JAVA-Maschine ausgeführt werden, ist hier unerheblich und, sofern nicht global vorgegeben, in der Konfigurationsliste 38 mit angegeben.

Jeder gestartete Gerätesteuerprozeß 34 meldet sich nunmehr über eine Anmeldenachricht 36 als JINI-Service bei einem Verzeichnisserver 20 an. Dieser enthält eine Datenbank 22, in der der Gerätesteuerprozeß 34 einen suchbaren Eintrag hinterläßt. Der genannte Eintrag umfaßt die Netzwerkadresse und ein serialisiertes Interface für den Aufruf des Gerätesteuerprozesses 34 mittels RMI sowie Attribute, die bei der nachfolgenden Suche nach einem speziellen Gerät verwendet werden. Die Attribute entstammen der Konfigurationsliste 38. Soweit nicht bereits über das serialisierte Interface ausreichend bestimmt, werden ferner Attribute über die Funktion des Interface mitgegeben, die bei der Codierung des Gerätesteuerprozesses 34 gegeben und fest codiert sind.

Nunmehr sei angenommen, daß ein auf dem Anwendungsserver 10 laufendes Anwendungsprogramm 12 eine Ein- oder Ausgabe auf einem speziellen Peripheriegerät wie einem Kontoauszugsdrucker, einem Sparbuch-Drucker oder einem Kartenleser durchzuführen hat. Es liegt also ein Ein-/Ausgabeauftrag für ein Peripheriegerät vor.

Durch den durchzuführenden Ein-/Ausgabeauftrag ist bereits das Interface bestimmt. Dessen Beschreibung wird in der JINI- Technologie für die Ermittlung eines passenden Gerätesteuerprozesses mit verwendet. Weiterhin können Attribute angegeben werden, um aus der Menge der überhaupt möglichen ein oder mehrere passende Geräte herauszufinden. Dazu gehören einerseits spezielle Funktionen, die sich nicht im Interface widerspiegeln. In der Regel wird auch die örtliche Lage, z. B. durch eine Raumnummer oder andere Koordinate, angegeben. Zwar wird es häufig sinnvoll sein, ein eindeutige Gerätenummer in die Attribute aufzunehmen, beispielsweise für Diagnosezwecke; diese wird jedoch in der Regel nicht zur Suche in der Datenbank 22 des Verzeichnisservers 20 verwendet.

Damit wird vermieden, daß in den Anwendungsprogrammen die Gerätnummer bzw. Geräteadresse codiert sein muß; es wird keine unmittelbare Identifikation eines bestimmten Gerätes benötigt. Vielmehr wird eine Anfrage 14 an den Verzeichnisserver 20 geschickt, die eine Codierung des Interfaces sowie die benötigten Attribute enthält. Sind mehrere passende Einträge gefunden worden, so wählt das Anwendungsprogramm, ggf. über einen Benutzerdialog, einen der Einträge aus und fordert die Aufrufinformation an, die als Antwort 16 zurückgegeben wird. Im Falle der Verwendung von JINI ist dies die JINI-Variante eines Objekts, mit dem eine "remote method invoation", RMI, möglich ist. Dieses Objekt hat das gesuchte Interface, wird de-serialisiert und dann mit dem Interface aufgerufen. Das Interface verwendet einen RMI-Aufruf 18, um die mitgelieferten Parameter an den Gerätesteuerprozeß 34 weiterzureichen, der seinerseits das bezogene Gerät 40 entsprechend steuert.

In einer Anwendung der Erfindung verwendet das Anwendungsprogramm 12 einen Bildschirm 60 mit Tastatur 62, indem letztere auf einem Arbeitsplatzrecher realisiert sind und über das Netzwerk 99 mit dem Anwendungsprogramm kommunizieren. Bevorzugt wird hierzu ein Anzeigeprogramm ("browser") und die Markierungssprache HTML verwendet. Dieser Arbeitsplatzrechner kann völlig getrennt von der Gerätesteuerung sein, aber genausogut mit einem passenden Multi-Tasking- Betriebssystem für ein oder mehrere Geräte 40 eine Gerätesteuerung 30 sein. Für das Anwendungsprogramm 12 ist dies aber ohne Bedeutung, da sich der Gerätesteuerprozeß 34 bei dem Verzeichnisserver 20 anmeldet und die Auswahl über die dort in der Datenbank 22 gespeicherten Attribute erfolgt.

In vielen Fällen wird das Anwendungsprogramm beim Start der Anwendung die örtliche Lage des Rechners ermitteln, auf dem der "browser" ausgeführt wird, und diese bei der Aufsuche des Geräteprozesses in der Datenbank 22 berücksichtigen. Hierzu ist es sinnvoll, über eine Metrik-Funktion den Abstand zweier solcher Angaben bestimmen zu können, um entweder immer das nächstliegende (betriebsbereite) auszuwählen oder zuerst in einer Auswahlliste auszuweisen. Die Ermittlung der örtlichen Lage kann über die Netzwerkadresse erfolgen.

Die Erfindung zeigt besondere Vorteile, wenn für die Peripheriegeräte eine standardisierte Schnittstelle vorliegt, wie es im Bankenbereich mit J/XFS der Fall ist. Der Gerätesteuerprozeß 34 wird dann durch Aktivierung eines Hüllprogramms ("wrapper") für jede Variante einer J/XFS-Schnittstelle nur einmal programmiert werden. Neue Geräte bekommen vom Gerätehersteller einen Treiber für J/XFS mitgeliefert. Die weiteren Parameter sind in der Konfigurationsliste 38 enthalten und brauchen daher in dem Hüllprogramm für den Gerätesteuerprozeß 34 nicht individuell programmiert zu werden.

Die Erfindung wurde an Hand eines Anwendungsservers, einer Gerätesteuerung und eines Verzeichnisservers beschrieben. Die Verwendung mehrerer Gerätesteuerungen ist ersichtlich ohne weiteres möglich. Weiterhin können der Anwendungsserver und der Verzeichnisserver auch von einem einzigen Server bereitgestellt werden. Alternativ können mehrere Anwendungsserver einen gemeinsamen Verzeichnisserver voraussetzen, der auch auf einem der Anwendungsserver untergebracht sein kann. Da JINI eine Methode zum Aufsuchen von Verzeichnisservern enthält, können davon auch mehrere vorhanden sein, sogar bei einem einzigen Anwendungsserver. Die Erfindung umfaßt alle diese Varianten.


Anspruch[de]
  1. 1. Computersystem mit einem Anwendungsserver (10), einer Gerätesteuerung (30) mit angeschlossenen Peripheriegeräten (40) und einem Verzeichnisserver (20), die über ein Netzwerk (99) verbunden sind, mit den Merkmalen:
    1. - Die Gerätesteuerung (30) umfaßt einen Gerätestarter (32), der gemäß einer vorgegebenen Konfigurationsliste (38) für jedes darin aufgeführte Gerät (40) einen Gerätesteuerprozess (34) startet.
    2. - Jeder Gerätesteuerprozess (34) meldet (36) für das von ihm angesteuerte Gerät (40) einen Gerätedienst über das Netzwerk (99) bei dem Verzeichnisserver (20) an, welcher Daten zum Interface und weitere Attribute in eine Datenbank (22) einträgt.
    3. - Ein Anwendungssprogramm (12) des Anwendungsservers (10), dem eine Ein-Ausgabe-Anforderung für ein Peripheriegerät (40) vorliegt,

      bestimmt (14) über das Netzwerk (99) mittels des Verzeichnisservers (20) einen passenden Gerätedienst,

      ruft (16) dessen im Verzeichnisserver (20) gespeicherte (22) Parameter ab und

      sendet (18) über das Netzwerk (99) mittels der abgerufenen Parameter die Ein-Ausgabe-Anforderung an den ermittelten Gerätesteuerprozeß (34).
    4. - Der Gerätssteuerprozeß (34) führt die Ein-Ausgabe- Anforderung für das Gerät (40) durch.
  2. 2. Computersystem nach Anspruch 1, wobei die Konfigurationsliste Eintragungen enthält, die als Attribute in die Datenbank (22) eingetragen werden.
  3. 3. Computersystem nach Anspruch 1 oder 2, wobei der Anwendungsserver (10) über das Netzwerk (99) mit einem Arbeitsplatz (60, 62) verbunden ist, auf dem ein Anzeigeprogramm für eine Markierungssprache abläuft, welche die Dialogkomponente des Anwendungsprogramms darstellt.
  4. 4. Computersystem nach Anspruch 3, wobei der Arbeitsplatz (60, 62) zusätzlich eine Gerätesteuerung (30) umfaßt.
  5. 5. Computersystem nach Anspruch 3 oder 4, wobei die Attribute die örtliche Lage umfassen, das Anwendungsprogramm (12) die örtiche Lage des Arbeitsplatzes bestimmt und beides bei der Abfrage mittels des Verzeichnisservers (20) berücksichtigt wird.
  6. 6. Computersystem nach einem der vorherigen Ansprüche, wobei der Gerätesteuerprozess 34 durch ein Hüllprogramm für ein mittels einer Standardschnittstelle wie J/XFS steuerbares Gerät (40) bestimmt ist.






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com