DE69326421T2 - Verfahren und Vorrichtung zur Gewinnung und Steuerung des Zustandes eines Peripheregerätes in einem Netz - Google Patents
Verfahren und Vorrichtung zur Gewinnung und Steuerung des Zustandes eines Peripheregerätes in einem NetzInfo
- Publication number
- DE69326421T2 DE69326421T2 DE69326421T DE69326421T DE69326421T2 DE 69326421 T2 DE69326421 T2 DE 69326421T2 DE 69326421 T DE69326421 T DE 69326421T DE 69326421 T DE69326421 T DE 69326421T DE 69326421 T2 DE69326421 T2 DE 69326421T2
- Authority
- DE
- Germany
- Prior art keywords
- printer
- neb
- network
- lan
- status
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/324—Display of status information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/24—Negotiation of communication capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/084—Configuration by using pre-existing information, e.g. using templates or copying from other elements
- H04L41/0843—Configuration by using pre-existing information, e.g. using templates or copying from other elements based on generic templates
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Computer And Data Communications (AREA)
- Debugging And Monitoring (AREA)
Description
- Die vorliegende Erfindung bezieht sich im allgemeinen auf eine Schaltplatine, die mit einem Peripheriegerät eines lokalen Bereichsnetzwerks (z. B. einem Drucker) verbunden ist und die es dem Peripheriegerät gestattet, unter Ausschluß der Notwendigkeit, einen Personal Computer zur Verwaltung des Peripheriegeräts abzustellen, ein intelligenter interaktiver Teil des Netzwerks zu sein. Genauer bezieht sich die vorliegende Erfindung auf ein Verfahren und eine Vorrichtung zur Gewinnung und Steuerung des Zustands eines Peripheriegerätes in einem Netz von einem entfernten Ort wie der Konsole eines Administrators aus, die mit der Schaltplatine kommuniziert.
- Lokale Bereichsnetzwerke ("LANs") sind dafür bekannt, daß sie eine Vielzahl von Personal Computern mit Peripheriegeräten wie Druckern, Kopierern usw. zur Verbesserung von Kommunikation und Teilhabe an Betriebsmitteln verbinden. Bisher waren mit einem lokalen Bereichsnetzwerk verbundene Peripheriegeräte wie Drucker ziemlich unintelligent, insofern als sie nur Information vom LAN entgegennahmen und diese Information als Hardcopy druckten. Darüberhinaus verlangten diese Drucker gewöhnlich einen externen Personal Computer ("PC") zur wirkungsvollen Verwaltung des Datenflußes zum Drucker, d. h. als "Server" für den Drucker. Das erforderte fast immer, daß der externe PC nur der Aufgabe als Druckerserver gewidmet war.
- Neuerdings erschien eine Anzahl von Produkten, die angeblich die Notwendigkeit eines so gewidmeten PC durch den Einbau von Hardware und Software in eine Schaltplatine ausschalten, die zur Durchführung begrenzter Serverfunktionen mit dem Peripheriegerät verbunden sein kann. Z. B. stellt ASP Computer Products, Inc. ein als "JetLAN/P" bekanntes Gerät zur Verfügung, das als selbständiger Druckerserver für Novell Netzwerke dient. Das JetLAN/P® Gerät ist mit einem LAN unter Verwendung eines 10Base-2 dünnen Koaxialkabels oder einem 10Base-T Twisted-Pair-Kabel verbunden. Das JetLAN/P® ist jedoch mit dem Drucker nur durch den parallelen Anschluß des Druckers verbunden. So ist, während Druckinformation zum Drucker gesandt werden kann, die Menge an Druckerstatusinformation, die vom Drucker zurückgegeben werden kann, streng begrenzt. Z. B. kann ein solches Gerät den "außer Betrieb" oder den "kein Papier" Status vom Drucker erhalten aber wenig anderes. Ein solches Gerät trägt sehr wenig dazu bei, den Drucker zu einem wahrhaft intelligenten, verantwortlichen Teil des Netzwerks zu machen.
- Andere bekannte Geräte zum Verbinden eines Druckers mit einem LAN beinhalten den Hewlett-Packard Jet Direct® C2071A/B und C2059A, den Extended Systems EtherFlex®, den Intel NetPort® und Netport II®, den Castelle LANPress® und JetPress® und den MiLAN FastPort®. All diese Geräte leiden jedoch insofern unter den selben Nachteilen wie der ASP JetLAN, als sie dem Drucker nicht erlauben, eine genügende Datenmenge zum LAN zu übertragen, die es dem Drucker ermöglicht, ein wirkungsvoller und intelligenter Teil des Netzwerks zu sein.
- Die vorliegende Erfindung spricht die vorstehend aufgezählten Nachteile dadurch an, daß sie Struktur und Funktion auf einer Schaltplatine zur Verfügung stellt, die gekoppelt an ein Peripheriegerät, diesem ermöglicht, ein verantwortlicher, intelligenter Teil eines Netzwerks zu sein.
- In einem Aspekt stellt die vorliegende Erfindung in Übereinstimmung mit Anspruch 1 ein Verfahren zur Gewinnung von Zustandsinformation von einer interaktiven Netzwerkplatine zur Verfügung. In einem weiteren Aspekt stellt die vorliegende Erfindung in Übereinstimmung mit Anspruch 17 ein Verfahren zur Fernsteuerung mindestens einer manuell wählbaren Funktion eines Druckers in einem Netz zur Verfügung.
- In einem weiteren Aspekt stellt die vorliegende Erfindung in Übereinstimmung mit Anspruch 25 ein lokales Bereichsnetzwerk zur Verfügung. Bevorzugte Eigenschaften werden in den abhängigen Ansprüchen definiert.
- Im offenbarten Ausführungsbeispiel wird ein Verfahren und ein Gerät zur Gewinnung von Zustandsinformation einer interaktiven Netzwerkplatine und zu ihrer Steuerung zur Verfügung gestellt, wobei die interaktive Netzwerkplatine über eine periphere Schnittstelle mit einem Peripheriegerät und mit einem lokalen Bereichsnetzwerk über eine LAN Schnittstelle verbunden werden kann, in der eine LAN Nachfrage zum Liefern von Zustandsinformation von der Konsole eines Administrators ausgegeben und an die interaktive Netzwerkplatine gerichtet wird. Die Zustandsinformation wird von der Konsole des Administrators entgegengenommen und angezeigt, wobei sie geändert werden kann und der geänderte Zustand wird zur interaktiven Netzwerkplatine zurückgesendet, um dort eingegliedert zu werden.
- Ein Ausführungsbeispiel der vorliegenden Erfindung liefert darüberhinaus zur Änderung des Zustandes einer interaktiven Netzwerkplatine oder zur Änderung des Zustandes eines Peripheriegeräts, mit der interaktiven Netzwerkplatine über eine periphere Schnittstelle verbunden, in welcher auf dem lokalen Bereichsnetzwerk, gerichtet an die interaktive Netzwerkplatine eine Nachfrage nach Abgabe von Zustandsinformation der interaktiven Netzwerkplatine herausgegeben wird. Wird nach Zustandsinformation über das Peripheriegerät gefragt, befragt die interaktive Netzwerkplatine das Peripheriegerät über die periphere Schnittstelle nach dem Zustand. Die nachgefragte Zustandsinformation wird von der interaktiven Netzwerkplatine gesendet und zum Anzeigen empfangen. Daraufhin wird der angezeigte Zustand geändert und der geänderte Zustand wird auf dem lokalen Bereichsnetzwerk zurück zur interaktiven Netzwerkplatine gesendet. Betrifft der geänderte Zustand die interaktive Netzwerkplatine, ändert diese ihren Zustand in, Übereinstimmung mit dem neuen Zustand; richtet sich aber der geänderte Zustand an das Peripheriegerät, sendet die interaktive Netzwerkplatine den geänderten Zustand über die periphere Schnittstelle zum Peripheriegerät, worauf das Peripheriegerät seinen Zustand entsprechend ändert.
- Durch diese Anordnung ist es zum Beispiel möglich, den Zustand eines Druckers im Netz von ferne zu steuern, genauso wie ein Betreiber am selben Ort wie der Drucker den Zustand des Druckers durch Manipulation von Steuerfunktionstasten auf dem Drucker selbst ändern könnte.
- Die vorstehend erwähnten Vorteile und Merkmale der vorliegenden Erfindung werden leichter aus der nachstehenden detaillierten Beschreibung exemplarischer Ausführungsformen unter Bezugnahme der Zeichnungen ersichtlich, in welchen.
- Fig. 1 ein Blockschaltbild eines lokalen Netzwerkes (LAN) gemäß der vorliegenden Erfindung ist;
- Fig. 2 ein Blockschaltbild mehrerer miteinander verbundener lokaler Netzwerke (LAN's) ist;
- Fig. 3 ein Blockschaltbild ist, welches die erfindungsgemäße Netzwerkerweiterungskarte zwischen das lokale Netzwerk und den Drucker geschaltet darstellt;
- Fig. 4 ein Blockschaltbild des erfindungsgemäßen Netzwerkerweiterungskarte ist;
- Fig. 5A, 5B und 5C ein Flußdiagramm auf höchster Ebene umfassen, welches die Grundfunktionen der erfindungsgemäßen Netzwerkerweiterungskarte darstellt;
- Fig. 6 eine Darstellung ist, welche die Ablauffolge darstellt, in welcher die Softwaremodule von dem ROM in das RAM der Netzwerkerweiterungskarte geladen werden;
- Fig. 7 ein Blockschaltbild ist, welches die Hardware- und Softwareschnittstellen zwischen dem LAN und der Netzwerkerweiterungskarte darstellt;
- Fig. 8 ein Flußdiagramm ist, welches darstellt, wie die EPROM-Firmware konfiguriert ist, um die Netzwerkerweiterungskarte in einen Betriebsmodus zu versetzen;
- Fig. 9 eine Zeichnung ist, welche den physikalischen Aufbau im Ethernet verwendeter unterschiedlicher Rahmenpakete darstellt;
- Fig. 10 ein Flußdiagramm ist, welches den Betriebsablauf eines PRESCAN-Softwaremoduls darstellt;
- Fig. 11 eine Zeichnung ist, welche darstellt, daß das PRESCAN-Modul mit anderen Softwareprotokollen verwendet werden kann;
- Fig. 12 eine Zeichnung zur Erläuterung des Softwareaufbaus des Programms SAPSERVER ist;
- Fig. 13 ein Flußdiagramm ist, das den Betriebsablauf des Programms SAPSERVER darstellt;
- Fig. 14 ein Flußdiagramm ist, das den Betrieb eines Programms CPINIT darstellt;
- Fig. 15 ein Flußdiagramm ist, das den Betrieb eines Programms CPCONSOL darstellt;
- Fig. 16A und 16B ein Flußdiagramm umfassen, das den Betrieb eines Programms CPSOCKET darstellt;
- Fig. 17A und 17B ein Flußdiagramm umfassen, das das automatische Aufzeichnen von statistisch Daten von Peripheriegeräten darstellt;
- Fig. 18 ein Flußdiagramm ist, welches darstellt, wie eine Multitasking-Verarbeitung durchgeführt wird;
- Fig. 19 ein Flußdiagramm ist, welches darstellt, wie der Drucker in eine sichere Vorgabekonfiguration zu versetzen ist;
- Fig. 20 ein Flußdiagramm ist, welches das Herunterladen ausführbarer Dateien aus dem lokalen Netzwerk zu der Netzwerkerweiterungskarte darstellt;
- Fig. 21 ein Flußdiagramm ist, welches das Laden unabhängig ausführbarer Module in das EPROM der Netzwerkerweiterungskarte darstellt;
- Fig. 22 ein Blockschaltbild ist, das die Ladeschutzschaltung für das EPROM der Netzwerkerweiterungskarte darstellt;
- Fig. 23 ein Flußdiagramm ist, das den Betriebsablauf der Schaltung von Fig. 22 darstellt;
- Fig. 24 ein Flußdiagramm ist, das den Betriebsablauf des ferngesteuerten Ladens der Firmware in dem EPROM der Netzwerkerweiterungskarte darstellt;
- Fig. 25 ein Blockschaltbild ist, das eine Hardwarekonfiguration für den Test der Netzwerkerweiterungskarte darstellt; und
- Fig. 26A und 26B ein Flußdiagramm umfassen, das ein Verfahren zum Testen der Netzwerkerweiterungskarte unter Anwendung der Testkonfiguration von Fig. 25 darstellt.
- Die Ausführungsformen versuchen im allgemeinen Hardware- und Softwarelösungen bereitzustellen, um ein Netzwerkperipheriegerät, wie z. B. einen Drucker, zu einem interaktiven Netzwerkmitglied zu machen, das nicht nur in der Lage ist, Daten aus dem Netzwerk zu empfangen und zu verarbeiten, sondern auch signifikante Mengen an Daten, wie z. B. eine detaillierte Statusinformation, Betriebsparameter und sogar Daten, die in das Peripheriegerät mittels anderer Modalitäten, wie z. B. durch Abtastung, Faksimileempfang, und so weiter eingegeben werden, an das Netzwerk zu senden. Durch eine Integration derartiger Hardware und Software in das Peripheriegerät, ist es möglich, die Notwendigkeit einem Personalcomputer für das Peripheriegerät als ein Peripherieserver abzustellen zu erübrigen.
- Fig. 1 ist ein Blockschaltbild, das die vorliegende Erfindung eingebaut in eine Netzwerkerweiterungskarte, ("NEB" - Network Expansion Board) 2 darstellt, die mit einem Drucker 4 verbunden ist, welcher eine (später noch zu diskutierende) offene Architektur aufweist. Die NEB 2 ist mit dem LAN-Bus 6 über eine LAN-Schnittstelle 8 beispielsweise über Ethernetschnittstellen 10Base-2, 10Base-T oder 10Base-5, entsprechend über einen Koaxialverbinder, einen RJ45-Verbinder, oder einen DB15-Verbinder (AUI) verbunden. Ferner können mit dem LAN-Bus 6 solche Netzwerkmitglieder, wie z. B. ein PC 10, PC 12, PC 14 (welcher in diesem Falle als der Netzwerkverwalter wirkt, wenn sich der Netzwerkverwalter auf diesem PC eingeloggt hat) und ein Drucker 16 (mit integrierter QSERVER-Funktionalität, welche ebenfalls nachstehend zu diskutieren ist) verbunden sein. Weitere LAN-Mitglieder können den PC 18 (der als nachstehend zu diskutierender Druckserver dient) mit angeschlossenem Drucker 20, ein PC 22 (der als ein nachstehend zu diskutierender RPRINTER dient) mit angeschlossenem Drucker 24, und ein Drucker 26 sein, welcher mit dem LAN-Bus 6 über ein in dem vorstehenden Hintergrund der Erfindung diskutierten NetPort-Gerät 28 verbunden ist. Ein Dateiserver 30 ist mit dem LAN 6 verbunden, und dient als "Bibliothek" für in dem LAN zu übertragende und verarbeitende Dateien. An den Dateiserver 30 können Drucker 32 und 34 angeschlossenen sein.
- Detaillierter betrachtet kann das in Fig. 1 dargestellte Netzwerk jede Netzwerksoftware, wie z. B. eine Novell- oder Unix-Software, verwenden, um die Kommunikation zwischen den verschiedenen Netzwerkelementen auszuführen. Die vorliegenden Ausführungsformen werden bezüglich eines LAN's beschrieben, das eine (später in Kapitel 3a detaillierter zu diskutierende) NetWare®-Software von Novell verwendet, obwohl auch jede andere Software verwendet werden kann. Eine detaillierte Beschreibung dieses Softwarepaketes kann in den Veröffentlichungen "NetWare® User's Guide" und dem "NetWare®-Supervisor's Guide von M&T Books, Copyright 1990, die hierin durch Bezugszeichen beinhaltet sind, gefunden werden. Siehe auch "NetWare® Print Server" von Novell, Ausgabe März 1991, Novell Part No. 100-000892-001. Kurz gesagt, arbeitet der Dateiserver 30 als Dateimanager für den Empfang speichern, der das Empfangen, Speichern, den Warteschlangenaufbau, die Zwischen speicherung und das Senden von Datendateien zwischen den LAN- Mitgliedern durchführt. Beispielsweise können jeweils bei den PC's 10 und 12 erzeugte Datendateien dem Dateiserver 30 zugeführt werden, welcher diese Datendateien anfordern und dann die angeforderten Datendateien an einem Drucker 24 auf einem Befehl aus dem Druckserver in PC 18 übertragen kann. Der Dateiserver 30 kann ein Speicherelement mit hoher Kapazität, wie z. B. ein 10GB Festplatten-Subsystem enthalten, oder damit verbunden sein. Ferner können die Drucker 32 und 34 mit dem Dateiserver 30 verbunden sein, um falls gewünscht zusätzliche Druckstationen, bereitzustellen.
- Obwohl die Personal-Computer-Ausstattung in Fig. 1 dargestellt ist, kann auch eine andere Personal-Computer-Ausstattung mit enthalten sein, wie sie für die ausgeführte Netzwerksoftware geeignet ist. Beispielsweise können Unix-Workstations jedenfalls in den Netzwerken enthalten sein, wenn eine Unix-Software verwendet wird, und diese Workstation' s können unter geeigneten Umständen in Verbindung mit den dargestellten PC's verwendet werden.
- Die PC's 10 und PC 12 können jeweils aus einem Standard- Workstation-PC bestehen, der Datendateien erzeugen, diese in das LAN übertragen, Dateien von dem LAN empfangen und derartige Dateien bei der Workstation anzeigen und/oder verarbeiten kann. Die PC's 10 und 12 können jedoch nicht die Steuerung über LAN-Peripheriegeräte ausüben (sofern nicht der Netzwerkverwalter auf diesen PC eingeloggt ist).
- Ein PC, welcher eine eingeschränkte Steuerung über LAN- Peripheriegeräte ausüben kann, ist der PC 22, welcher ein integriertes RPRINTER-Programm enthält. Das RPRINTER-Programm ist ein MS-DOS Terminate and Stay Resident ("TSR") Programm, welches auf einer Workstation läuft, um es Benutzern zu ermöglichen, sich den mit der Workstation verbundenen Drucker 24 zu teilen. RPRINTER ist ein relativ unintelligentes Programm, das nicht die Fähigkeit besitzt, Druckerwarteschlangen für die Ausführung zu durchsuchen. RPRINTER erhält seine Arbeit von einem (später noch zu diskutierenden) PSERVER, der irgendwo im Netzwerk läuft. Da sie mit dem angeschlossenen Drucker über den Druckerparallelport kommunizieren, sind die RPRINTER-Programme nur in der Lage, eine begrenzte Statusinformation zu erhalten, und diese Statusinformation an den verantwortlichen PSERVER über das LAN 6 zurückzugeben. Von einem Steuerungsstandpunkt aus gesehen, erlaubt RPRINTER das Beenden eines Druckauftrags bzw. Druckjobs und etwas mehr. Einige Drucker enthalten RPRINTER-Merkmale, indem sie interne oder externe Schaltungskarten anbieten, welche dieselben eingeschränkten Merkmale wie das RPRINTER-TSR-Programm aufweisen, das in einem Personal Computer läuft.
- Eine weitere Netzwerkeinheit, welche eine eingeschränkte Steuerung über LAN-Peripheriegeräte ermöglicht, ist ein Drucker 16 mit eingebauter Schaltungskarte 36 mit einem integriertem QSERVER-Programm. Hier läuft das QSERVER-Programm innerhalb eines HP-Laser-Jet III® 51 Druckers und hat die Fähigkeit, die Druckwarteschlangen des Dateiservers 30 nach auswählbaren Druckdateien zu durchsuchen. Es können weder die Suchwarteschlangen des QSERVER's dynamisch verändert werden, noch reagiert der QSERVER auf irgendeine Form einer Statusabfrage. Der Vorteil des QSERVER's ist seine Fähigkeit, autonom nach Arbeit zu suchen. Der QSERVER erfordert keinen irgendwo im System arbeitenden PSERVER für eine Versorgung mit Arbeit. Da der QSERVER keinen entsprechenden PSERVER hat, und selbst keinerlei Status- und Steuermöglichkeiten besitzt, bietet er sogar noch weniger Steuerungsmöglichkeiten als der RPRINTER. Ein QSERVER unterscheidet sich von einem PSERVER dahingehend, daß er extrem eingeschränkte Meldungsmerkmale aufweist, und keine Schlagzeile zum Beginn jedes Druckjobs drucken kann.
- Ein weiteres Netzwerkelement mit einer QSERVER-Fähigkeit ist der Drucker 26, welcher mit dem LAN 6 über ein externes NetPort-Gerät 28 verbunden ist.
- Weitere Peripheriegeräte-Serverprogramme können zur Bedienung verschiedener Peripheriegeräte, wie z. B. Scanner, Kopier-, Faksimilegeräte und so weiter ausgeführt werden, und Server können auch auf der Basis eines Netzwerksoftware- Protokolls, wie z. B. eines Unix-kompatiblen Line-Printer- Remote-Server ("LPR") vorgesehen werden.
- Ein LAN-Mitglied, das eine signifikante Steuerung von LAN-Peripheriegeräten ausführen kann, ist der PC 18 mit einem darin integriertem PSERVER-Programm. PSERVER hat die Fähigkeit, mehrere benutzerdefinierte Druckwarteschlangen zu bedienen, eine dynamische Modifikation der Suchwarteschlange auszuführen, und definierte Meldungsprozeduren für Ausnahme- (Fehler)-Zustände und Status- und Steuermöglichkeiten bereitzustellen. PSERVER wird in mehreren Formen bereitgestellt. PSERVER. EXE ist ein Programm, das speziell auf einer Workstation läuft, und sowohl lokale als auch abgesetzte Drucker steuert. Die lokalen Drucker können sowohl mit seriellen als auch parallelen Ports verbunden sein, und die abgesetzten Drucker sind Drucker, die irgendwo im System arbeiten. Zwei andere Formen des PSERVER-Programms sind das PSERVER.VAP und das PSERVER.NLM. Diese sind PSERVER-Versionen, die auf dem Dateiserver 30 selbst laufen. Die .VAP-Version ist für Netware® 286 und die .NLM-Version ist für Netware® 386. Obwohl das PSERVER wesentlich mehr Fähigkeiten als das RPRINTER und QSERVER bietet, besteht eines seiner Nachteile darin, daß die .EXE-Version einen speziellen Personalcomputer erfordert.
- Ein spezieller Personalcomputer, der unter PSERVER.EXE läuft, kann bis zu 16 lokale/abgesetzte Drucker steuern, und kann Druckinformation aus vielen Dateiserverwarteschlangen anfordern. Es gibt jedoch einige Nachteile, wenn man sich auf PSERVER zur Steuerung von Netzwerkdruckdienste verläßt. Der erste Nachteil besteht darin, daß mehrere Druckerströme durch einen einzigen Netzwerkknoten und Personalcomputer-Prozessor hindurch geführt werden müssen. Dieses kann zu einem Flaschenhals werden. Der zweite Nachteil ist der, daß die Drucker für ein höchst effizienten Betrieb mit dem Computer lokal verbunden sein sollten, wie z. B. der Drucker 20. Dieses kann für Benutzer unbequem sein, da es eine Verteilung der Drucker um den Personalcomputer 18 herum erfordert. Der dritte Nachteil besteht darin, daß dann, wenn die gesteuerten Drucker abgesetzt sind, wie in dem Falle des Druckers 24, welcher von RPRINTER bedient wird, dann die Druckdaten die Reise von dem Dateiserver 30 zu dem PSERVER-PC 18 zurücklegen, und dann zu dem Drucker, auf dem RPRINTER läuft, zurückübertragen zu werden. Dieses ist ineffizient.
- Der vierte Nachteil ist die eingeschränkte Druckerstatus- und Steuerinformationsmenge, die über den PSERVER angeboten wird. Es wurde bereits festgestellt, daß RPRINTER nicht mehr als rudimentäre Statusmeldungen, wie z. B. "out of paper" und "off line" erlaubt. PSERVER selbst bietet für lokale und abgesetzte angeschlossene Drucker nicht mehr als dieses, da es unter Berücksichtigung der Einschränkungen der Parallelports von Personalcomputern entworfen wurde. Das PSERVER-Programm berücksichtigt den eigenen Status und die eigene Steuerung.
- Die in dem Drucker 4 eingebaute Netzwerkerweiterungskarte 2 bietet viele Vorteile und eine verbesserte Flexibilität gegenüber den vorstehend diskutierten Netzwerkperipherie- Steuereinheiten. Insbesondere bietet die NEB integrierte Steuerung eine RPRINTER-; PSERVER- und LPR-(Line Printer Remote)-Funktionalität (durch die nachstehend in Kapitel 3d zu diskutierenden CR-PRINTER-, CPSERVER- und CLPR-Programme. Es gibt ein (nachstehend in Kapitel 4h zu diskutierendes) Initialisierungsprogramm mit dem Namen CPINIT, welches dem PC 14 des Netzwerkverwalters eine vollständige Steuerung über die Konfiguration von NEB-Merkmalen erlaubt. Aufgrund seiner integrierten Natur und der offenen Architektur von Drucker 4 besitzt die NEB die Fähigkeit, dem Netzwerk eine große Vielfalt von Status- und Steuermerkmalen anzubieten. D. h., umfangreiche Mengen an Statusinformation können von dem Drucker 4 dem LAN 6 zur Verfügung gestellt werden, und ein großer Menge an Steuerinformation kann von dem LAN 6 dem Drucker 4 zur Verfügung gestellt werden, um beispielsweise die Druckerfrontplattenfunktionen von dem PC 14 aus durchzuführen.
- Um auf die erweiterte in dem NEB verfügbare Informationsmenge zuzugreifen, ist ein CPCONSOL genanntes Programm in dem PC 14 des Netzwerkverwalters resident vorhanden, und erlaubt es dem Netzwerkverwalter, die gesamte Druckerinformation zu betrachten, welche von dem Drucker 4 über die NEB 2 exportiert wird. Die Druckerinformation ist sogar dann verfügbar, wenn die RPRINTER-Funktionskonfiguration (CRPRINTER) der NEB 2 ausgewählt ist. Die PSERVER-Funktionskonfiguration (CPSERVER) der NEB 2 steuert den Drucker 4, welcher die Karte enthält. Diese Option enthält sowohl alle standardmäßigen PSERVER-Warteschlangensuchnöglichkeiten, als auch die Meldungs- und Statusmerkmale. Alle von diesen Merkmalen können von einer abgesetzten Workstation aus dynamisch gesteuert werden. Die NEB-Umgebung und ihre Fähigkeit erweiterte Status- und Steuerinformation aus dem Drucker zu exportieren, macht die Kombination der NEB 2 und des Druckers 4 leistungsfähiger als die derzeit verfügbaren standardmäßigen RPRINTER, QSERVER-, oder PSERVER-Druckverfahren.
- Das (nachstehend im Kapitel 41 detaillierter zu diskutierende) Programm CPCONSOL, das im PC 14 des Netzwerkverwalters vorgesehen ist, kann eine Schnittstelle mit der NEB 2 (und anderen Netzwerkelementen) bilden, um solche Funktionen auszuführen, wie z. B. Darstellen der aktuellen Information für ein selektiertes Netzwerkelement (Schnittstelleninformation, Steuerinformation, Zeichensatzinformation, Layoutinformation, Information bezüglich Qualität und gemeinsamer Umgebung, Duplexinformation und gemischte Information). CPCONSOL kann auch den sicheren (Vorgabe)-Zustand eines Netzwerkelementes einstellen oder modifizieren. CPCONSOL kann auch Anwendungen der NEB 2, wie z. B. CPSERVER oder das (nachstehend zu diskutierende im allgemeinen den vorstehend diskutierten PSERVER- und RPRINTER-Softwarepakten ähnliche CRPRINTER aktivieren oder deaktivieren. Ferner ermöglicht CPCONSOL dem PC 14 die Darstellung einer Aufzeichnungsdatei, Löschung der Aufzeichnungsdatei oder das Schreiben der Aufzeichnungsdatei in einen Speicher, wie z. B. auf eine lokale oder auf eine Dateisystem- Festplatte. CPCONSOL kann auch solche Druckerbezogene Information auf dem PC 14, wie z. B. die Anzahl der Jobs, die Anzahl der Seiten pro Job, die Anzahl der Seiten pro Minute, die Zeit pro Job, die Anzahl der Gesamtseiten pro Tag, die Anzahl der Gesamtjobs pro Tag und die Anzahl der Tage anzeigen. Das CPCONSOL-Programm ist auch in der Lage, solche Netzwerkbezogene Information, wie z. B. einen Medien bezogene und nicht Medien ezogene Information, darzustellen, oder solche statistische Netzwerkdaten zu löschen.
- Das (nachstehend in Kapitel 4h detaillierter zu diskutierende) CPINIT-Programm, das im PC 14 des Netzwerkverwalters resident vorliegt, kann Anwendungsinformationsdruckdienste, wie z. B. CPSERVER und CRPRINTER, einrichten und diese Anwendungen konfigurieren. CPINIT ist auch in der Lage, Geräteinformation, wie z. B. Zeit/Datum/Zeitzone, Puffergröße, Festplattengröße, Aufzeichnungsflag, Aufzeichnungsgrenze und ein Flag für eine sichere (Vorgabe)-Umgebung zu setzen oder darzustellen. CPINIT kann auch Vorgabedienstvorspanne wiederherstellen, die NEB zurücksetzen, die NEB 2 neu hochfahren bzw. booten, einen Zeichensatzladevorgang befehlen, einen Emulations-Herunterladevorgang befehlen, einen Fehler beim NEB- Energieeinschalt-Selbsttest ("POST" - power on self test) darstellen, die Firmware-Ebene der NEB 2 darstellen, die aktuelle Aufzeichnungsdateigröße darstellen, und so weiter.
- Indem die NEB 2 mit PSERVER- und RPRINTER-Fähigkeiten versehen wird, erreicht die vorliegende Erfindung mit einer einzigen Schaltungsplatte eine verbesserte Funktionalität für den Drucker 4 in Bezug auf das LAN 6. Daher ist der Drucker 4 ein echter "Netzwerk"-Drucker und nicht bloß ein mit dem Netzwerk verbundener Drucker.
- Obwohl die vorliegende Erfindung eindeutige Vorteile in dem LAN 6 bietet, werden diese Vorteile auch realisiert, wenn das LAN 6 mit einem oder mehreren weiteren LAN's in einem großflächigen Netzwerk ("WAN" - wide area network) verbunden ist. Fig. 2 stellt ein derartiges WAN dar, welches ein erstes LAN 41 mit einem Server S1 40, PC's 42, 44 und 46 und einen Drucker 48 enthält. Der Server S1 40 ist mit einem Backbone (Hintergrundnetz) 50 über einen Bus 52 verbunden. Der Backbone 50 ist nicht mehr als eine elektrische Verbindung zwischen mehreren Bussen. Ferner ist mit dem WAN ein zweites LAN 61 mit einem Server S2 60, PCs 62, 64 und 66 und ein Drucker 68 verbunden. Der Server S2 60 ist mit dem Backbone 50 über einen Bus 54 verbunden.
- Das WAN kann auch ein abgesetztes LAN 71 mit einem Server S3 70, PCs 72, 74 und 76 und einem Drucker 78 aufweisen. Da das LAN 71 vom Rest des Systems abgesetzt ist, ist es mit dem Backbone 50 über einen Bus 56, einen Transponder (welcher einen Modem enthalten kann) 58 und eine Kommunikationsleitung 59 verbunden.
- In einem derartigen WAN werde angenommen, daß der PC 42 ein den Einsatz des Druckers 78 anfordernder PSERVER ist. Wenn der Drucker 78 mit einer erfindungsgemäßen NEB ausgestattet ist, kann eine direkte Kommunikationsverbindung zwischen dem PC 42 und dem Drucker 78 aufgebaut werden, wodurch Jobinformation an den Drucker 798 gesendet, und Status- und Steuerinformation von dem Drucker 78 zu dem LAN 41 gesendet werden können. Somit erreicht die erfindungsgemäße NEB ihre verbesserte Funktionalität auch dann, wenn sie in einem mit einem WAN verbundenen Peripheriegerät eingebaut ist.
- Fig. 3 ist ein Blockschaltbild, das die Verbindung der erfindungsgemäßen NEB 2 mit dem Drucker 4 und dem LAN 6 darstellt. Die NEB 2 ist direkt mit dem LAN 6 über eine LAN- Schnittstelle 101 verbunden, und auch mit dem Drucker über eine bidirektionale Schnittstelle, hier eine Small Computer System Interface ("SCSI") 100, verbunden. Die SCSI-Schnittstelle 100 ist mit einem SCSI-Bus 102 des Druckers 4 verbunden.
- Die NEB kann auch weitere SCSI-Geräte, wie z. B. andere Drucker (PRINTER's) oder andere Peripheriegeräte bedienen, die an dem SCSI-Bus unter Anwendung eines standardmäßigen SCSI-Verbindungsprotokolls aufgereiht sind. Ferner kann die NEB dazu verwendet werden, weitere Peripheriegeräte über das LAN selbst zu betreiben.
- Der Drucker 4 ist bevorzugt ein Drucker mit offener Architektur, der einen SCSI-Bus 102 und SCSI-Schnittstellen 104 und 106 enthält. Der Drucker 4 enthält auch einen Prozessor 108, wie z. B. einen REDUCED INSTRUCTION SET COMPUTER ("RISC"), welcher mit einem RAM-Speicher 110 und mit einem Druckwerk 112 in Verbindung steht, welches tatsächlich den Druckmechanismus betreibt. Der RISC-Prozessor kommuniziert auch mit einem NVRAM 111 zur Speicherung von Information, welche zwischen Energieversorgungszyklen aufrecht erhalten werden muß, wie z. B. benutzerdefinierte Information, und mit einem ROM 113, aus welchem der RISC-Prozessor 108 die Druckersteuerung ausführt. Der Drucker 4 kann auch eine Festplatte 114 enthalten, welche große Datenmengen in nicht- flüchtiger Weise erhalten kann. Der Drucker 4 weist auch eine Frontplattenanzeige 116 und eine Tastatur 115 zur Eingabe von Steuerbefehlen in den Drucker auf.
- Bevorzugt weist der Drucker 4 eine offene Architektur auf, welche Vorteile aus der bidirektionalen Natur des SCSI- Schnittstelle 100 zieht, um eine große Menge an Status- (und anderer) Information aus dem Drucker 4 an das LAN 6 über die NEB zu liefern, und um auch eine Feinsteuerung des Druckers von einer abgesetzten Stelle aus zu ermöglichen. Beispielsweise erlaubt eine derartige offene Architektur, wenn sie mit der bidirektionalen SCSI-Schnittstelle verwendet wird, den größten Teil oder die gesamte Information auf der Frontplattenanzeige 116 des Druckers 4 zu einer fernen Stelle zu exportieren, und ermöglicht es ferner, daß der größte Teil oder alle Steuerfunktionen der Frontplattentastatur 115 des Druckers von einer abgesetzten Stelle aus betätigt werden.
- Kurz gesagt weist der Drucker 4 mit offener Architektur vier Hauptsubsysteme auf: Kommunikation; Job Pipe (Jobreihenfolge); Seitenlayout- und Rasterfunktionen; und Systemdienste. Das Kommunikationssubsystem handhabt die verschiedenen Kommunikationselemente und initialisiert den Start einer Jobanwendung. Wenn der Drucker beginnt, Daten zu empfangen, sendet das Kommunikationssubsystem den ersten Teil der ankommenden Daten zur Überprüfung an jeden Emulator. Der erste Emulator, der die Daten verwalten kann, wird zu dem Job Pipe Treiber. Das System baut dann eine Jobreihenfolge auf, um die Daten (die in das eine Ende der Reihenfolge hinein fließen, und Seitenbilder, die aus dem anderen Ende herausfließen) zu verarbeiten. Diese Job Pipe weist viele Segmente auf, wovon einer der Jobreihenfolgentreiber ist.
- Das Job Pipe Subsystem weist einen Reihenfolgentreiberabschnitt (die Anwendung für einen Emulator) und Eingangs- und Ausgangsabschnitte auf. Die Eingangs- und Ausgangsreihenfolgeabschnitte weisen mindestens zwei weitere Abschnitte auf: für den Eingang, Quellen- und Quellenfilterabschnitte; und für den Ausgang ein Ausgangsfilter und eine Datensenke. Der Eingangsabschnitt des Kommunikationssubsystems liefert die Eingangsdaten, welche mit Informationen aus einem Dateisystem ergänzt sein können. Der Leitungstreiber verarbeitet Eingangs- und zusätzliche Daten. Er erzeugt auch Abbildungsbefehle und Seitenlayoutinformation, die er zu dem Ausgangsabschnitt sendet. Der Reihenfolgentreiber kann diese Information auf der Druckerfestplatte (falls vorhanden) speichern. Der Ausgabeabschnitt sendet diese Daten an das Seitenlayout- und Rastersubsystem.
- Das Seitenlayout- und Rastersubsystem übernimmt die Bild- und Seitenlayoutinformation und wandelt sie in ein Rasterbild für das Druckwerk 112 um. Dieser Abschnitt arbeitet vollständig getrennt von Job Pipe.
- Das Systemdienste-Subsystem stellt einen Dateisystemzugriff, einen Konsolenzugriff, Zeichensatzdienste, Grundsystemdienste und Bilderzeugungsdienste bereit. Daher nutzt ein Drucker 4 mit einer solchen offenen Architektur den vollen Nutzen der intelligenten interaktiven NEB 2, um eine gesteigerte Funktionalität für den Drucker 4 und das gesamte Netzwerk bereitzustellen.
- Fig. 4 ist ein Blockschaltbild der NEB 2, welche deren Hauptkomponenten darstellt. Die NEB 2 ist mit dem LAN 6 über Netzwerkverbinder 202, 203 und 204 verbunden. Bevorzugt ist der Verbinder 202 ein RJ45, der eine 10Base-T Verbindung aufnehmen kann. Der Verbinder 203 kann einen DB15-Verbinder für die Aufnahme einer 10Base-5 Verbindung aufweisen, während der Verbinder 204 ein einfacher Koaxialverbinder sein kann, welcher eine 10Base-2 Verbindung aufnehmen kann. Alle Verbinder 202, 203 und 204 sind mit einer Netzwerksteuerung 206 (bevorzugt einem Ethernet Network Controller) verbunden. Der Verbinder 204 ist jedoch zuerst über einen Transceiver 208 verbunden.
- Die Energie wird dem NEB 2 von einer +5 V Spannungsversorgungsquelle im Drucker 4 über den Druckererweiterungsanschluß 226 zugeführt. Die +5 V Spannungsversorgung wird auch den Spannungswandlern 210 und 212 zugeführt. Der Spannungswandler 210 liefert eine Spannung von -9 V an den Transceiver 208, während der Spannungswandler 212 eine 12 V Spannung zum "Übernehmen" (Laden; welches nachstehend im Kapitel 4q zu diskutieren ist) an das EPROM 222 liefert. Ferner ist die Netzwerksteuerung 206 mit einem statischem RAM 214 mit 8 KB verbunden.
- Das Herz der NEB ist ein Mikroprozessor 216, bevorzugt ein NEC V53. Der Mikroprozessor 216 ist mit einem seriellen Port 218 verbunden, welcher derzeit zum Testen verwendet wird. Ferner sind mit dem Mikroprozessor 216 ein dynamisches 512KB RAM 220 ein dynamisches 256KB-Flash-EPROM 222, eine SCSI-Steuerung 224 (die der SCSI-Schnittstelle 100 von Fig. 3 entspricht), ein Druckererweiterungsport 226, eine Diagnose/Fehler-LED 240, ein nicht-flüchtiges RAM 228 mit 256 Bit, ein Steuerregister 230 und ein PROM 232 verbunden, welches die Media Access Control ("MAC")-Adresse steuert, welche der eindeutige Name für jede EtherNet-Karte ist.
- Die Architektur der NEB 2 stellt einen Vorteil dahingehend dar, daß sie einmalige Unterstützungsmerkmale für die Verwaltung und Handhabung großer Netzwerke mit vielen Bereichen aufweist. Diese Unterstützungsmerkmale umfassen beispielsweise eine Druckersteuerung und Statusüberwachung von einer abgesetzten Stelle des Netzwerkes (d. h., vom Büro des Netzwerkverwalters) aus, eine automatische Handhabung der Druckerkonfiguration nach jedem Druckvorgang, um eine garantierte Anfangsumgebung für den nächsten Benutzer bereitzustellen, und Aufzeichnungen von statistischen Daten der Druckerbenutzung, auf die über das Netzwerk zugegriffen werden kann, um die Druckerarbeitsbelastung zu charakterisieren und um den Ersatz von Tonerpatronen zu planen. Ein Schlüsselparameter in der NEB Auslegung ist die Fähigkeit, auf den Druckersteuerstatus von der NEB 2 aus über eine bidirektionale Schnittstelle, hier die SCSI-Schnittstelle 100, zuzugreifen. Dieses ermöglicht es die Druckerkonsoleninformation zu dem NEB oder zu einem externen Netzwerk für die Programmierung vieler nützlicher Druckunterstützungsfunktionen zu exportieren.
- Die nachstehende Tabelle 1 stellt eine Beschreibung der Funktionen, Implementation und betriebliche Anmerkungen bezüglich der Haupt-Hardwareelemente der NEB 2 bereit. Tabelle 1
- Bevorzugt ist die NEB 2 im Inneren des Druckers 4 in einem Erweiterungs- oder Optionsschlitz eingebaut. Die NEB 2 ist somit ein integrierter Netzwerkknoten mit den vorstehend beschriebenen Verarbeitungs- und Datenspeicherungsmerkmalen.
- Der Mikroprozessor 216 implementiert eine Datenverknüpfungsschicht eines Sende- und Empfangsvorgangs von Netzwerkpaketen. Der Netzwerkdatenübertragungs-Overhead wird durch die Verwendung eines speziellen statischen RAM-Paketpuffers 214 der direkt von der Netzwerksteuerung 206 verarbeitet wird, minimiert. Der Mikroprozessor 216 greift auf Blöcke von SRAM-Paketdaten und Netzwerkmeldungen über die Netzwerksteuerung 206 zu, und verschiebt diese in den großen DRAM-Speicher 220.
- Blöcke von Druckbilddaten und Steuerinformation werden von dem Mikroprozessor 216 zur Übertragung an den Drucker 4 über die SCSI-Schnittstelle 224 unter Verwendung des SCSI- Übertragungsprotokolls des Druckererweiterungsports assembliert. In gleicher Weise wird die Druckerstatusinformation von dem Drucker 4 zurück zu dem NEB 2 im SCSI-Blockformat übertragen. Die SCSI-Steuerung 224 arbeitet gleichzeitig mit der Netzwerksteuerung 206 für einen erhöhten Datendurchsatz und somit für die Gesamtleistung der NEB.
- Der Mikroprozessor 216 ist bevorzugt ein NEC V53 Chip, welcher ein schneller hochintegrierter Mikroprozessor mit einem 16-Bit Intel-kompatiblen Prozessor, der direkten Speicherzugriff ("DMA"), Interrupts, Zeitgeber und eine DRAM- Auffrischsteuerung unterstützt. Die Datenbusstruktur auf der NEB 2 ist mit einer Breite von 16-Bit implementiert, um den Vorteil der dynamischen 8-Bit/16-Bit Busgrößenzuordnung während der I/O-Übertragungen (Eingabe/Ausgabe-Übertragungen) des Mikroprozessors zu nutzen. Die Steuerfirmware und die Druckanwendungssoftware für den Mikroprozessor 216 sind in der NEB 2 im EPROM 222 gespeichert. Nachdem Einschalt- Selbsttest wird der Firmwarecode selektiv in das leistungsfähigere DRAM 220 zur tatsächlichen Ausführung verschoben. Die Netzwerk- und Druckerkonfigurationsparameter werden in das NVRAM 228 geschrieben, wenn der Drucker zum erstenmal in dem Netzwerk installiert wird. Somit ermöglicht das NVRAM 280 der NEB-Software die Installationsparameter nach einem Ein/Ausschaltzyklus der Energieversorgung wieder zurückzugewinnen.
- Software für das LAN umfaßt eine Kombination von Netzwerksoftware und von NEB-spezifischer Software, wie z. B. eine NEB integrierte Software und Software, die auf dem PC des Netzwerkverwalters resident vorliegt.
- In der vorliegenden Erfindung wird Netware® Netzwerksoftware verwendet, um die Interaktionen zwischen Knoten eines Netzwerkes so handzuhaben, daß sich die Auftraggeber- oder sogenannte Client-Workstationen Dienste von Serverknoten, wie z. B. Festplattendateiservern, Datenbankservern, Druckservern und so weiter teilen und erhalten können. NetWare® selbst ist eine Kombination von Softwaremodulen, die auf diesen Serverknoten und auf jedem Workstation-Knoten laufen. Mindestens ein Dateiserver kann in einem Novell-Netzwerk vorgesehen sein. Netware® läuft als das Betriebssystem für den PC des Dateiservers, um die grundlegenden Netzwerkkerndienste und Hilfsprogramme bereitzustellen. Dateiserver können mit mehr als einem LAN durch Verwendung von bis zu vier Netzwerkschnittstellenkarten (bevorzugt Ethernet oder Token Ring Verbindungen) verbunden sein. In diesen Konfigurationen werden "Brückungs"- oder "Backbone"-Dienste zwischen mehreren LAN's gemäß Darstellung in Fig. 2 in der Weise bereitgestellt, daß Ressourcen, einschließlich Drucker, von einem LAN zum nächsten "zwischen den Netzwerken" verteilt werden können.
- Auf Workstationen läuft Netware® in Verbindung mit dem Workstation-Betriebssystem (DOS oder OS/2) als eine Netware- "Shell" einer Steuersoftware. Diese Shell hat die Auswirkung, einer Erweiterung der Dienste des Workstation-Betriebssystems auf das Netzwerk, um die Netzwerkressourcen für die Workstation lokal erscheinen zu lassen.
- Die Novell PSERVER-Software hat die Aufgabe, eine Gruppe von Druckern (bis zu 16) zu steuern, um Druckanforderungen aus Netzwerkkonten zu bedienen. Anforderungen sind in einer Form von Druckwarteschlangen aufgebaut, die in dem Dateiserver des Netzwerks unter Verwendung von Netzwerkwarteschlangen-Handhabungsdiensten gespeichert werden. Die Warteschlangeneinträge enthalten eine Liste zu druckender Dateien. Die Dateien enthalten zu druckende Daten, wie z. B. Tabulatoren, Blattvorschübe und andere Befehle der Druckerbeschreibungssprache ("PDL" - Printer Description Language). Einige Warteschlangen können durch nur einen PSERVER bedient werden.
- Standard-Novellserver sind in verschiedenen Versionen abhängig von dem Typ des Netzwerkknotens, auf dem sie ausgeführt werden, erhältlich. Druckserverprogramme können innerhalb des Dateiservers selbst resident vorliegen. Eine Version einer Druckserver-Software kann auch auf einen einzeln stehenden DOS-Stationsknoten geladen werden, um diesen Knoten zu einem speziellen Druckserver zu machen.
- Indem der NEB 2 der vorliegenden Erfindung die Druckserverfunktionalität (CPSERVER) verliehen wird, bieten die NEB und der angeschlossene Drucker alle Druckdienste eines stan dardmäßigen Novell-Druckservers ohne die Notwendigkeit eines angeschlossenen PC's.
- Die Drucker selbst werden entweder als "lokale" oder "abgesetzte" Drucker betrachtet. Ein lokaler Drucker ist einer, der physikalisch mit dem Druckserverknoten verbunden ist. In dem Falle der NEB 2 ist der lokale Drucker derjenige, in welcher die NEB- Karte untergebracht ist. Ein abgesetzter Drucker wird von RPRINTER-Programmen betrieben, die in den PC's laufen, mit denen sie verbunden sind. RPRINTER-Programme empfangen Druckdaten von PRINTSERVERN, die irgendwo in dem LAN laufen. Der NEB 2 der vorliegenden Erfindung kann mit der RPRINTER-Funktionalität (CRPRINTER) versehen werden, um ihren Drucker als abgesetzter Drucker des Netzwerks anzubieten. In diesem Modus ist sie vollständig mit Standardversionen von Novell Druckservern kompatibel.
- Die Novell Netware® bietet eine Anzahl von Druckhilfsprogrammen zum Konfigurieren und Steuern eines Dateiservers oder von auf einer Workstation basierenden Druckservern und deren angeschlossenen Drucker. Das Programm PCONSOLE von Novell ist ein menügesteuertes Hilfsprogramm, welches es einem Benutzer (dem Druckerkonsolenbediener) erlaubt, einen neuen Druckserver zu schaffen, bis zu sechzehn lokale oder abgesetzte Druckerports zu konfigurieren, Druckwarteschlangen zu generieren, Druckwarteschlangen Druckern zuzuweisen, und Drucker- und Serveroperationen zu starten/stoppen.
- Die NEB 2 ist mit Softwaremodulen gebündelt, welche den vollen Bereich der von Netware® angebotenen Druckdienste implementieren. Dieses umfaßt externe Netware®-kompatible Module, die auf Workstationknoten des Netzwerkes zusätzlich zu internen Netware®-kompatiblen Modulen, die auf der NEB 2 innerhalb des Druckers laufen, ausgeführt werden. Die spezifischen Netware®-kompatiblen Programme, die zur Anwendung mit der NEB 2 (wie z. B. die speziell angepaßten nachstehend zu diskutierenden CPSERVER- und CRPRINTER-Programme) sind mit, denselben allgemeinen Betriebsschnittstellen wie Standard druckmodule von Novell ausgestattet, so daß sie Novell-Benutzern und Netzwerkverwaltungspersonal bekannt sind. Die speziell angepaßten Versionen enthalten funktionale Erweiterungen, welche von der offenen Architektur des Druckers 4 Gebrauch machen, um die Druckdiensthandhabung im gesamten Netzwerk zu verbessern.
- Die Tabelle 2 stellt die Funktionen, Implementationen und betrieblichen Anmerkungen der für die NEB entwickelten speziell angepaßten Software dar. Tabelle 2
- Die für die NEB 2 entwickelte Software umfaßt in die NEB integrierte Software und Software, die in dem PC 14 des Netzwerkverwalters geladen wird. Die NEB integrierte Software erzeugt sowohl den Netware®-kompatiblen Knoten und Netware®- kompatible Druckdienste direkt innerhalb des Druckers 4 ohne den Overhead eines Workstation-PC und dessen DOS-Betriebssystem. Die NEB ntegrierte Software umfaßt mehrere Anwendungsmodule (CPSERVER, CRPRINTER, usw.), Echtzeit-Dienstmcidu- Dienstmodule, Netzwerkprotokollstacks und ein MONITOR- Programm, welches die Anwendungsumschaltung, Prozeßerweiterung, Geräte-Semaphoren ausführt, und die Pufferpoolverwaltung verteilt. Die Funktionalität des NEB wird von den Typen der Anwendungsmodule und der Anzahl von Protokollstacks im Netzwerk gelagerter Kommunikationssoftware, die in die NEB 2 hinein konfiguriert sind, bestimmt. Die Wechselwirkung zwischen dem Drucker 4 und dem Netzwerk wird von dem MONITOR- Programm koordiniert, welches auf Echtzeitereignisse reagiert, während es die NEB-Verarbeitungszeit jedem Anwendungsmodul auf einer Multitaskingbasis zuweist.
- Die NEB-Software funktioniert in zwei Schichten: einer "run-time"- oder Echtzeitschicht; und in einer "soft-time"- oder Anwendungsschicht. Die "run-time"-Schicht besteht aus Komponenten der NEB-Software, die auf Mikroprozessorinterrupts reagieren. Diese Schicht bedient Elemente, wie z. B. einen Zeitgeber, in einer Warteschlange aufgereihte Datenübertragungsanforderungen aus dem SCSI-Anschluß oder LAN-Daten über die Protokollstackroutine und den (nachstehend in Kapitel 4j zu diskutierenden Kommunikationsmechanismus).
- Die "soft-time"-Schicht wird von dem nachstehend im Abschnitt 41 zu diskutierendem MONITOR-Programm festgelegt und gesteuert, welches die Steuerung des NEB-Mikroprozessors 216 übernimmt, nachdem alle Echtzeitereignisse bedient wurden. Ein nicht präemptiver (kooperativer Multitasking-) Lösungsansatz wird verwendet, um den Prozessor zwischen den verschiedenen Anwendungsmodulen zu verteilen, welche so geladen sind, daß kein Anwendungsmodul andere Module durch Belegung des Mikroprozessors verdrängen kann.
- Das NEB-EPROM 222 enthält bis zu 256 KB Anwendungsmodulprogramme und NEB-Initialisierungscode. Beim Einschalten der Energieversorgung oder während einer programmierten Rücksetzung führt die NEB 2 einen POST ausgehend von dem EPROM 222 aus, bevor es seinen EPROM-Code selektiv zu dem NEB-DRAM 220 überträgt. Wenn der POST erfolgreich ist, lädt die NEB 2 ih ren Protokollstack und Anwendungsmodule in das DRAM und beginnt mit der Ausführung seiner Anwendungsmodule.
- In ihrer Grundkonfiguration enthält die NEB 2 NetWare®- kompatible Anwendungsmodule, die zwei integrierte Versionen von zwei Konfigurationen umfassen: das spezifisch angepaßte "CRPRINTER" (Customized Remote Printer); und das spezifisch angepaßte "CPSERVER" (Customized Print Server). Bevorzugt arbeitet die NEB nur in einer dieser Konfigurationen pro Zeitpunkt. Ferner erfordern diese Module, daß ein Netzwerkprotokollstack geladen wird und innerhalb des NEB funktioniert.
- Nach der Konfiguration mit der RPRINTER-Funktionalität betreibt die NEB ihren Drucker als einen Slave für einen externen Druckserver, der ein CRPRINTER-Modul verwendet. In dieser Konfiguration exportiert die NEB an das LAN nur eine eingeschränkte Druckerstatusinformation in Emulation von dem, was ein standardmäßiger Novell-Druckserver von einem standardmäßigen Novell RPRINTER erwartet. Die erweiterte Statusinformation bezüglich des Druckers bleibt jedoch verfügbar, wenn das (vorstehend diskutierte) CPCONSOL-Hilfsprogramm im dem PC 14 des Netzwerkverwalters ausgeführt wird.
- Wie vorstehend erwähnt, enthält die NEB 2 integriert die Softwareprogramme CPSERVER und CRPRINTER, welches es der NEB ermöglichen, entweder mit der PSERVER- oder RPRINTER-Funktionalität im Netzwerk zu arbeiten. Die speziell angepaßte NEB- integrierte Software, welche die Übertragung des Peripheriegerätestatus und der Steuerinformation über das LAN erlaubt ist (das nachstehend in Kapitel 4j zu diskutierende) CPSOCKET-Programm. CPSOCKET läuft auf der NEB und überwacht das LAN hinsichtlich sowohl zu der NEB 2 als auch zu dem angeschlossenen Drucker 4 addressierter Kommunikation. Ferner kommuniziert CPSOCKET mit CPINIT und CPCONSOL, wenn diese laufen. CPSOCKET führt eine Tabelle von Vorgabeeinstellungen für die Geräteumgebung, lädt die Grundkonfiguration (Zeichensätze und Emulationen) beim Einschalten herunter, liefert Geräteinformation, Statistiken und Aufzeichnungsinformation für CPCONSOL-Anzeigen und stellt die Fähigkeiten zum Rücksetzen, Neu-Booten und Herunterladen zur Verfügung. CPSOCKET ist auch für die Konfiguration der NEB 2 verantwortlich. Ferner konfiguriert und aktiviert CPSOCKET Anwendungen auf der NEB auf Anforderung von CPINIT. CPSOCKET stellt auch sicher, daß die korrekten Protokollstacks für jede konfigurierte Anwendung verfügbar sind. CPSOCKET verwaltet die Einstellungen der NEB 2 und der Druckervariablen auf Anforderung sowohl von CPINIT als auch von CPCONSOL. Schließlich stellt die Herunterladefähigkeit (z. B. vom PC 14 des Netzwerkverwalters) einen Kontakt zu CPSOCKET her, um jedes Firmware-Herunterladen, wie z. B. das Ladendes EPROM's 222 durchzuführen, das erforderlich ist.
- Nach der Initialisierung geben Programme, wie z. B. CPINIT und CPCONSOL ein Dienstankündigungsprotokoll ("SAP" - Service Advertising Protocol) auf das LAN aus, das nach allen Netzwerkgeräten sucht, welche die speziell angepaßte Software der NEB 2 aufweisen. CPSOCKET empfängt dieses Rundsendesignal und reagiert darauf. CPINIT oder CPCONSOL baut dann eine spezielle Verbindung mit CPSOCKET unter Verbindung einer speziell angepaßten Client-Prozeßadresse auf. CPSOCKET führt dann mehrere Abhörungen aus und erzeugt Client-Diensttransaktionen, wie z. B. die NEB-Steuerung, Geräteinformation, Grundkonfigurationsinformation, Anwendungsinformation, Statistiken und Aufzeichnungen. Beispielsweise kann CPINIT anfordern, daß eine Anwendung konfiguriert wird, und CPCONSOL kann anfordern, daß eine bereits konfigurierte Anwendung aktiviert oder deaktiviert wird. CPSOCKET stellt sicher, daß die geeignete Option (Protokollstack) verfügbar und für eine Anwendung konfiguriert ist, bevor es eine Konfiguration der Anwendung selbst erlaubt. Innerhalb der NEB ist das CPSOCKET-Betriebsmodul immer aktiviert.
- Zusätzliche Druckdienstanwendungen können nach Laden weiterer Anwendungsmodule in die NEB, wie z. B. von UNIX-Druckdiensten und der zugeordnete Protokollimplementation genutzt werden.
- Um die Funktionalität der NEB 2 weiter zu verbessern, ist eine speziell angepaßte Software auch für den PC 14 des Netzwerkverwalters vorgesehen. Beispielsweise sieht ein speziell angepaßtes Hilfsprogramm PCONSOLE ("CPCONSOL", das nachstehend detaillierter in Kapitel 4e zu diskutieren ist) Erweiterungen zu dem PCONSOLE-Druckerhilfsprogramm von Novell vor, um einen Zugriff auf die leistungsfähigen Steuer- und Überwachungsmerkmale des Druckers 4 mit der offenen Architektur zu ermöglichen. Beispielsweise sind die nachstehenden Informationen typische Status- und Steuerinformationen die dem Netzwerk vom Drucker durch die Verwendung von CPCONSOL zur Verfügung stehen: (A) Status und Steuerinformation, wie z. B. Online/Offline, keine Antwort, Zeit/Datum/Zeitzone, Sprache, Offsets, Fehlersprunganweisungen, Zeitgeber, Sunmerfreigabe, Toner aus, Papiermagazin voll, Papierzähler, Zählstand seit letztem Service, Papiermagazin leer, Papierstau; (B) Zeichensatzinformation, wie z. B. primärer, sekundärer, Graphiksatz, Skalierung, Rotation, Elite; (C) Layoutinformation, wie z. B. Seitenausrichtung, Zeilenraster, Zeichenraster; (D) Information über Qualität und gemeinsame Umgebung, wie z. B. Anzahl von Kopien, Überlagerung, Jobende, Befehlsmodus Papiervorgabegröße, aktuelle Papiergröße; und (E) Konfigurationsinformation, wie z. B. Schnittstellenpuffergröße, Zuführungsauswahl, Doppeldruck, Seitenstapelreihenfolge und so weiter.
- Ferner enthalten Konfigurationsdaten für den Drucker, der für das Netzwerk durch die Verwendung von CPCONSOL zugänglich ist: (A) Netzwerkgruppeninformation, wie z. B. Protokolltyp, Knotennamen, Dateiservernamen, Leitwegführung, den POST- Fehlercode, die Ebene der NEB-Firmware, MAC-Adresse, Servermodus; und (B) Druckergruppeninformation, wie z. B. eine sichere (Vorgabe-) Umgebung, Zeichensatz, Festplatte vorhanden, Festplattengröße, Initialisierungsumgebung, Aufzeichnung Ein/Aus, Aufzeichnungsdateiengröße, konfiguriert/unkonfiguriert und Netzwerkname. Zusätzlich können Aufzeichnungen über den Druckjobfluß, Druckwerknutzung und das Netzwerkverhalten mit aufgezeichnet werden. Zu Beispielen einer solchen Nutzung und von statistischen Aufzeichnungseinträgen zählen: (A) Netzwerkgruppeninformation, wie z. B. Empfangsstatistiken, Sendestatistiken, und nicht auf Medien bezogene Information; (B) Jobeintragsinformation, wie z. B. Datum/Zeit/Zeitzone, log in (Benutzername), Auftragsname, Seiten, Kopienanzahl und Druckstatus; (C) Initialisierungseintragsinformation; (D) Fehlerzustand-Eintragsinformation; (E) Löscheinträgeinformation; und (F) Druckergruppeninformation, wie z. B. die Anzahl der Aufträge, Seitenpro Auftrag, Seiten/Minute, Zeit/Auftrag, Gesamtzeiten/Tag, Gesamtaufträge/Tag, Anzahl/Tage und Gesamtrücksetzungen.
- CPCONSOL ist ein menügesteuertes unter DOS ausführbares Programm, dessen Funktion darin besteht, Erweiterungen zu dem PCONSOLE-Druckerhilfsprogramm von Novell bereitzustellen. Die CPCONSOL-Erweiterung erlaubt einen Zugriff auf die zusätzlichen Steuer- und Überwachungsmerkmale des Druckers 4 mit der offenen Architektur. Diese Merkmale verbessern die Druckdienstverwaltung im gesamten Netzwerk, indem dem PC 14 des Netzwerkverwalters ermöglicht wird, den Drucker von einem abgesetzten Ort aus zu steuern und warten. Zusammengefaßt ist CPCONSOL das Hilfsprogramm, welches die Druckersteuermerkmale zu dem Netzwerkverwalter exportiert, die Rekonfiguration der sicheren (Vorgabe-) Umgebung ermöglicht, und es dem Netzwerkverwalter erlaubt, den Netzwerk- und Druckerstatus, Jobstatistiken und eine Aufzeichnung der zuvor ausgeführten Jobs und Fehlerbedingungen zu betrachten. CPCONSOL sammelt die erforderliche Information, indem es mit dem im NEB integrierten Softwareprogrammodul CPSOCKET kommuniziert.
- Ein weiteres speziell angepaßtes Softwareprogramm, das in dem PC 14 des Netzwerkverwalters resident vorliegt, ist (das nachstehend in Kapitel 4h zu diskutierende) speziell angepaßte Peripheriegeräte-Initialisierungsprogramm "CPINIT" (Customized Peripheral Initializer); welches ebenfalls ein menügesteuertes unter DOS ausführbares Programm ist. Die Funktion des Programms besteht darin, den mit dem NEB 2 verbundenen Drucker 4 zu konfigurieren, zu rekonfigurieren und zu initialisieren.
- Das CPINIT-Modul konfiguriert die NEB so, daß sie als ein Druckserver mit nur einem angeschlossenem Drucker arbeitet, und spezifiziert dessen primären Dateiserver, wodurch die NEB festlegt, welche Warteschlangen zu bedienen sind. CPINIT ist das Programm, das alle in gleicher Weise speziell angepaßten Geräte in den LAN (beispielsweise weitere in andere Drucker mit offener Architektur eingebaute NEB's) überwacht. CPINIT führt diese Aufgabe aus, indem es über das Netzwerk mit anderen NEB's kommuniziert, die innerhalb von Peripheriegeräten mit offener Architektur resident vorliegen. CPINIT wird dazu verwendet, jede NEB mit der geeigneten Grundkonfigurationsinformation zu konfigurieren, um beispielsweise die NEB als CPSERVER oder CRPRINTER zu konfigurieren. Die Basiskonfigurationsinformation umfaßt NEB- Umgebungseinstellungen (einschließlich welche Druckserveranwendungen aktiv sind), sowie Geräteumgebungsoptionen (z. B. eine Liste von Zeichensätzen und Emulationen zum Herunterladen zum Zeitpunkt der Druckerinitialisierung), und Gerätvorgabeeinstellungen (wie z. B. die interne Gerätezeit/Datum/Zeitzone, Puffergröße, Festplatten- und Aufzeichnungsinformationen und Druckername). Das CPINIT- Programm zeigt auch Statusinformation über die NEB (wie z. B. die in die NEB geladene Firmwareebene an und meldet verborgene POST-Fehler).
- Das CPINIT-Programm sucht das gesamte Netzwerk ab, um zu sehen, ob andere speziell angepaßte Geräte im LAN verfügbar sind. Die mit solchen anderen speziell angepaßten Geräten verbundenen NEB's antworten mit ihren Identifikationsnummern, ihrem Gerätetyp und ihrem Konfigurationsstatus. CPINIT erstellt eine Liste dieser NEB's und Geräte, die dem Netzwerkverwalter präsentiert wird, um deren Konfiguration und Rekonfiguration zu ermöglichen.
- Ein DOWNLOADER-Programm kann ebenfalls in den PC 14 des Netzwerkverwalters geladen werden, um ausführbare Dateien in die NEB über das gesamte Netzwerk (was nachstehend detaillierter in Kapitel 4n zu diskutieren ist) zu laden.
- Ein weiteres speziell angepaßtes Programm, welches auf dem PC 14 des Netzwerkverwalters laufen kann ist CPFLASH, welches dazu verwendet werden kann, ferngesteuert neue Firmware in das EPROM 222 zu laden, wie es nachstehend in Kapitel 4q detaillierter diskutiert wird.
- Zuerst erfolgt eine Übersichtsdiskussion hinsichtlich des NEB-Aufbaus und der Funktionen unter Bezugnahme auf das Flußdiagramm von Fig. 5A, 5B und 5C. Anschließend werden detailliertere Beschreibungen verschiedener Aspekte der NEB Hardware und Software unter Bezugnahme auf die Kapitel 4a bis 4q gegeben.
- Die vorliegende Erfindung nutzt den Vorteil der bidirektionalen Natur der Kommunikation zwischen dem Drucker und der NEB, und die Fähigkeit der NEB Information auf einer Multitaskingbasis zu verarbeiten. D. h., der bidirektionale SCSI- Bus kann große Mengen Daten sowohl zu dem als auch von dem Drucker übertragen, was es ermöglicht, daß die NEB große Mengen spezifischer Statusdaten von dem Drucker oder sogar Dateneingaben von einem Peripheriegerät (wie z. B. Bildeingangsdaten von einem Scanner) empfängt. Der Mikroprozessor der NEB bearbeitet die Information auf einer Multitaskingbasis (sequentiell, aber verteilt), indem er effektiv von dem Netzwerk empfangene Information und von dem Druck empfangene Information parallel verarbeitet. Diese Multitaskingverarbeitung stellt sicher, daß die NEB sowohl auf das Netzwerk als auch auf den Drucker nahezu auf Echtzeitbasis reagiert.
- Fig. 5A, 5B und 5C enthalten ein Flußdiagramm auf höchster Ebene, das eine gedankliche Ablauffolge von Ereignissen darstellt, welche auftreten können, wenn die NEB und ihre zugeordnete Software in einem Drucker installiert ist, der mit einem lokalen Netzwerk verbunden ist. Insgesamt gibt der Drucker Druckinformation zurück und ist mit der NEB über eine bidirektionale SCSI-Schnittstelle verbunden. Der Drucker kann auch einen Parallelport und/oder einen Seriellport für die Aufnahme von Druckinformation aus anderen Quellen aufweisen. Die NEB ist mit dem Drucker über die bidirektionale SCSI- Schnittstelle verbunden, wobei die Karte Druckerinformation aus dem lokalen Netzwerk erhält. Die Karte sendet Druckjobs und Druckerstatusabfragen an den Drucker über die SCSI- Schnittstelle, empfängt den Druckerstatus von dem Drucker über die SCSI-Schnittstelle und meldet den Druckerstatus über das Netzwerk.
- Wenn die NEB mit einem Datenerzeugungsgerät, wie z. B. einem Scanner verbunden ist, ist die Karte über die bidirektionale SCSI-Schnittstelle mit dem Scanner verbunden, und mit dem Netzwerk über die LAN-Schnittstelle verbunden. Die Karte empfängt die Statusanforderungsinformation aus dem Netzwerk und leitet diese Information über die bidirektionale Schnittstelle an den Scanner weiter. Die Karte empfängt auch die von dem Scanner erzeugten Daten über die bidirektionale Schnittstelle und führt diese Daten über die LAN-Schnittstelle an das Netzwerk weiter.
- Bei der Darstellung einer Ablauffolge von Ereignissen, welche auftreten kann, wenn die NEB in einem Drucker eingebaut ist, beginnt Fig. 5A damit, wenn Energie an die NEB im Schritt S1 angelegt wird. Im Schritt S2 führt die NEB einen Energieeinschalt-Selbsttest ("POST") vom EPROM 220 ausgehend durch. Im Schritt S3 geht der Prozeß, wenn der POST erfolgreich abgeschlossen wird, zum Schritt S5 über, wo der Betriebscode des NEB-EPROM's 222 den Netzwerk- und Druckerkonfigurationscode aus dem NVRAM 228 ausliest. Wenn der POST im Schritt S3 nicht erfolgreich abgeschlossen wird, wird eine Fehleranzeige im Schritt S4 aufgezeichnet, und diese Information kann über die LAN-Schnittstelle an das Netzwerk übertragen werden. Ein Fehler/Diagnose-LED-Licht auf der NEB oder im Drucker kann ebenfalls aktiviert werden.
- Nach dem Auslesen des Netzwerk- und Konfigurationscodes aus dem NVRAM 228 geht die Prozedur zum Schritt S6 über, wo der Betriebscode des NEB-EPROM's selektierte Konfigurationsmodule, Protokollstacks, Haushaltsmodule, und so weiter (z. B. das Multitaskingmodul MONITOR-, CPSOCKET, CPSERVER und so weiter) aus dem EPROM 222 ausliest, und die selektierten Module in das DRAM 220 lädt. Im Schritt S6 wird eine Konfiguration (in Abhängigkeit von der durch CPINIT gesetzten Konfiguration) selektiert, welche einen Betriebsmodus (z. B. CPSERVER oder CRPRINTER des interaktiven Netzwerkkarte definiert. Wie es nachstehend in dem Kapitel 4d noch detaillierter erläutert wird, wird ein binärer Konfigurationscode über das LAN gesendet und in dem NVRAM 228 gespeichert. Nach dem Hochbooten der NEB wird der Konfigurationscode aus dem NVRAM unter Verwendung der ROM-residenten Energieeinschaltprozeßschritte gelesen. Unter Verwendung der ROM-residenten Prozeßschritte werden ROM-residente, ausführbare Module abhängig von dem aus dem NVRAM gelesenen Konfigurationscode selektiert. Die Module werden in einer bitweisen Entsprechung zu den binären Digits des Konfigurationscodes im NVRAM selektiert. Die selektierten Module werden dann in das DRAM gespeichert, und die Ausführungssteuerung für die Module dem DRAM übergeben, worauf dann die selektierten Module ausgeführt werden. Auf die Weise können mehrere Konfigurationen definiert und selektiv verändert werden.
- Im Schritt S7 wird der EtherNet-Rahmentyp der auf dem LAN übertragenen Informationspakete ermittelt (wie es nachstehend detaillierter im Kapitel 4e beschrieben wird). D. h., EtherNet unterstützt vier unterschiedliche Rahmentypen: EtherNet 802.3; EtherNet II; Ethernet 802.2; und EtherNet SNAP. Um den EtherNet-Rahmentyp zu ermitteln, ermittelt ein Vorscanprozeß ("PRESCAN") (aus beliebigen LAN-Sendedaten) welcher Rahmentyp in dem LAN resident ist und konfiguriert den geeigneten NEBresidenten Protokollstack für diese Daten. Der Vorscanprozeß streicht Datenbytes von einem empfangenen LAN-Paket weg, bis die Bytes, welche den Rahmentyp angeben, erreicht werden. Kurz gesagt, verleiht der Schritt S7 dem NEB die Fähigkeit, LAN-Pakete mit unterschiedlichen Rahmentypen zu verarbeiten, indem: von dem LAN ein Datenrahmen empfangen wird, der Rahmen zur Ermittlung des Rahmens vorgescant, und in der NEB der identifizierte Rahmen unter Verwendung eines geeigneten Verarbeitungsprogramms verarbeitet wird. Die Vorscanoperation enthält die Unterschritte des Abschneidens einer vorbestimmten Anzahl von Bytes vom Kopf des Rahmens, der Verarbeitung des beschnittenen Rahmens, um einen Identifikationscode zu identifizieren, der den Rahmentyp angibt, und der Übertragung des identifizierten Rahmens an das Verarbeitungsprogramm.
- Im Schritt S8 findet ein Zeitgebermodul, welches im Schritt S6 heruntergeladen wurde, den nächstgelegenen LAN- Server und fordert die aktuelle Zeit an. Nach dem Empfang der aktuellen Zeit geht der Prozeß zu dem Schritt S9 über, wo ermittelt wird, ob Mitternacht ist, d. h., ob die zurückgemeldete Zeit ein neues Datum anzeigt.
- Die Schritte S9 bis S12 umfassen eine sogenannte "Autologging"-Funktion (automatische Aufzeichnungsfunktion), welche in dem NEB von dem CPSOCKET-Programm ausgeführt wird, um automatisch und systematisch Statusinformation aus dem Drucker dem LAN zur Verfügung zu stellen (Die automatische Aufzeichnungsfunktion wird nachstehend in Kapitel 4k noch detaillierter erläutert). Wenn im Schritt S9 Mitternacht noch nicht erreicht worden ist, geht die Prozedur zu dem Schritt S13 über. Sobald jedoch Mitternacht erreicht wird, überträgt der Mikroprozessor 216 der NEB eine Anforderung an den Drucker über den SCSI-Bus, so daß der Drucker den aktuellen Status an die NEB zurückgibt. Beispielsweise kann der Drucker die kumulierte Anzahl gedruckter Seiten an die NEB zurückgeben. Im Schritt S11 berechnet der Mikroprozessor 216 der NEB statistische Daten des Druckers, wie z. B. Seiten pro Job oder Seiten pro Tag, da die NEB die Anzahl von an den Drucker gesendeten Jobs und das Datum verfolgt hatte. Im Schritt S12 werden die statistischen Daten des Druckers zu einem nicht- flüchtigen Speicher, wie z. B. der Festplatte 114 eines Druckers oder einem NVRAM 111, oder zu dem NVRAM 228 der NEB übertragen. Alternativ können die Schritte S10, S11, S12 vor dem Schritt S9 durchgeführt werden, so daß statistischen Daten jede Minute gespeichert werden.
- Unter Zusammenfassung der Schritte S9 bis S12 umfaßt ein Verfahren zur Aufzeichnung von statistischen Systemdaten eines Druckers, der über eine bidirektionale Schnittstelle mit einer interaktiven Netzwerkkarte zur LAN-Kommunikation verbunden ist, die Schritte der Zählung der gedruckten Seitenanzahl im Drucker und der Zählung der Anzahl der gedruckten Jobs auf der Karte. Der Drucker wird täglich über die bidirektionale Schnittstelle nach der Anzahl gedruckter Seiten abgefragt, und die Karte berechnet dann täglich statische Daten unter Verwendung der Anzahl der Seiten, der Anzahl von Jobs und anderer Statusinformation. Die täglichen statistischen Daten werden dann gespeichert, und es kann auf diese unter Anwendung von CPCONSOL von dem PC 14 des Netzwerkverwalters aus zugegriffen werden und diese an abgesetzter Stelle angezeigt werden. Ein zusätzliches Merkmal der "Autologging"-Funktion besteht darin, daß unterschiedliche Ebenen von statistischen Daten aufgezeichnet werden können. Beispielsweise kann auf einer Grundebene nur die Anzahl Seiten pro Job aufgezeichnet werden. Auf höheren Ebenen kann die Anzahl von Seiten pro Job plus eine Aufzeichnung von Fehlerzuständen aufgezeichnet werden; oder die Start- und Endzeiten des Jobs können zusätzlich zu den Fehlerzuständen und er Anzahl der Seiten pro Job aufgezeichnet werden. Die Aufzeichnungsebene wird von CPINIT vorgegeben.
- In Fig. 5B kündigt im Schritt S13 das (nachstehend im Kapitel 4g detaillierter zu diskutierende) SAPSERVER-Programm die NEB sowohl mit PSERVER- und CPSOCKET-Identitäten an. Somit kann die NEB und der angeschlossene Drucker in ihren Doppelrollen als PSERVER und speziell angepaßte Einheit (CPSOCKET; d. h., ähnlich wie andere LAN-Peripheriegeräte mit einem darin eingebauten NEB) funktionieren. SAPSERVER ist ein NEB-residentes TSR-Programm, welche es ermöglicht, daß mehr als ein Server gleichzeitig auf demselben Knoten Netzwerkdienste anbietet. Somit kündigen sowohl CPSOCKET als auch CPSERVER ihre Dienste über SAPSERVER an, und antworten auf Anfragen von anderen Netzwerkanwendungen. Da jede EtherNet- Karte nur eine SAPSOCKET-Nummer aufweisen kann, funktioniert SAPSERVER so, daß es beide NEB-Identitäten ohne Konfusion dem LAN anbietet.
- Zusammengefaßt ist der Schritt S13 ein Verfahren zur Identifikation nur einer interaktiven Netzwerkkarte als zwei Netzwerkservern (z. B. CPSERVER und CPSOCKET), das die Schritte der Übertragung eines Signals zu dem Netzwerk in einem vorbestimmten Zeitintervall, das anzeigt, daß die Karte ein erster Typ einer Netzwerkeinheit ist, wobei das Signal ein für die Karte eindeutiges Identifikationssignal enthält; und dann der Übertragung eines zweiten Signals zu dem Netzwerk zu einem vorbestimmten Zeitintervall beinhaltet, um anzuzeigen daß die Karte ein zweiter Typ einer Netzwerkeinheit ist, wobei das zweite Signal ebenfalls dasselbe eindeutige Identifikationssignal enthält. Sobald ein Signal aus dem Netzwerk empfangen wird, welches anfordert, daß die Karten Funktionen von einer der Netzwerkeinheiten durchführt, wird eine direkte Kommunikation zwischen der Karte (welche als die angeforderte Netzwerkeinheit arbeitet) und der Netzwerkeinheit aufgebaut, welche die Anforderung erzeugte. Wenn die direkte Kommunikation aufgebaut ist, verwendet die NEB ein neues eindeutiges Identifikationssignal.
- Im Schritt S14 werden sowohl die LAN- als auch die SCSI- Schnittstellen auf Daten hin geprüft, die auf das (nachstehend im Kapitel 4j detaillierter zu diskutierende) CPSOCKET gerichtet sind. Die SCSI-Schnittstelle weist typischerweise Druckerstatusdaten auf, welche dem LAN als Antwort auf eine zuvor empfangene Statusanforderung zuzuführen sind. CPSOCKET ist das NEB-residente TSR-Programm, das auf solche Verbindungsanforderungen reagiert, ein Laden von Daten anfordert, oder Dienste von abgesetzten Hilfsprogrammen anfordert. CPSOCKET sammelt nach Bedarf Informationen aus der NEB oder dem Drucker, überwacht Schreibanforderungen in die Aufzeichnungsdatei, überwacht die Anforderungen von Anwendungen nach dem Gerätestatus und führt die Jobstatistiken wie vorstehend diskutiert.
- Kurz zusammengefaßt ist das CPSOCKET-Programm ein Verfahren zum Betrieb einer interaktiven Netzwerkkarte als Schnittstelle zwischen dem Netzwerk und dem Peripheriegerät, das die Schritte einer Übertragung eines Programms von Karten-ROM zum Karten-RAM zur Ausführung aus dem RAM; und der Überwachung einer Karten/Netzwerkschnittstelle mittels des Programms beinhaltet, um eine an das Peripheriegerät gerichtete Netzwerkkommunikation zu detektieren. Das Programm befiehlt dann dem Peripheriegerät eine Funktion als Antwort auf die Netzwerkkommunikation auszuführen, und überwacht eine bidirektionale Peripheriegereäteschnittstelle der Karte, um eine Statusinformation des Peripheriegerätes zu detektieren und zu speichern. Zum Schluß gibt das Programm die Statusinfomation des Peripheriegerätes über die Netzwerkschnittstelle als Antwort auf eine weitere Netzwerkkommunikation auf das Netzwerk aus.
- In Fig. 5B bezeichnen die Schritt S15 und S17 Funktionen der "run-time"-Schicht und S20 stellt eine "soft-time"- Anwendungsschicht dar. Zuerst bestimmt der Schritt S15, ob Daten über das LAN empfangen werden. Wenn LAN-Daten empfangen werden, geht der Prozeß zu dem Schritt S16 über, und der (nachstehend im Kapitel 4f detaillierter zu diskutierende) Software-Protokolltyp wird bestimmt. Beispielsweise können die über das LAN empfangene EtherNet-Daten als eines der nachstehenden Protokolle vorliegen: z. B. Netware® über SPX/IPX; UNIX über TCP/IP; oder Mac Systems 7 über AppleTalk. Grundsätzlich kann der Softwareprotokolltyp anhand des im dem vorstehenden Schritt S7 erfaßten Rahmenpakets bestimmt werden.
- Wenn CPSOCKET ermittelt, daß im Schritt S15 keine LAN- Daten empfangen werden, ermittelt Schritt S17, ob SCSI-Daten empfangen werden, und wenn SCSI-Daten empfangen werden, werden sie von dem Drucker im Schritt S18 eingegeben und dann im Schritt S19 in dem DRAM 220 gespeichert.
- Nach der Speicherung von Druckerdaten im Schritt S19, oder wenn keine SCSI-Daten im Schritt S17 empfangen werden, geht der Prozeß zu dem Schritt S20 über, in welchem "soft- time"-Aufgaben auf einer Multitaskingbasis gesteuert von einem (nachstehend im Kapitel 41 detaillierter zu diskutierenden) als "MONITOR" bezeichneten Multitasking-Softwareprogramm, durchgeführt werden. Der Schritt S20 ist daher ein "Hintergrund"-Prozeß, welcher gleichzeitig während des gesamten in Fig. 5A, 5B und 5c dargestellten Flußdiagramms abläuft. D. h., daß jedesmal, wenn "soft-timeT1-Aufgaben ausgeführt werden, der Mikroprozessor 216 eine zeitlich verteilte, parallele, nicht-präemptive Verarbeitung der "soft-time"- Aufgaben durchführt.
- Insbesondere ist MONITOR ein im Schritt S6 aus dem EPROM 222 in das DRAM 220 hinuntergeladenes Softwaremodul. MONITOR ist ein nicht präemptiver Multitaskingmonitor, welcher die Prozessornutzung zwischen den mehreren Anwendungsaufgaben, welche zur Zeit aktiv sind, verteilt. Die nicht-präemptive Natur des Monitors erfordert, daß jede Anwendungsaufgabe periodisch die Steuerung abtritt, so daß andere Aufgaben die Gelegenheit zur Ausführung erhalten. Der Abtretungssteuermechanismus ist mittels eines Softwareinterrupts implementiert, so daß die Steuerung an MONITOR übergeben wird. Bei einem Interrupt speichert MONITOR den Status der aktuellen Aufgabe, stellt den Status einer weiteren aktiven Aufgabe wieder her, und nimmt die Ausführung der neuen Aufgabe auf (oder beginnt diese). Die Aufgabe, welche ursprünglich die Steuerung abgab, erhält schließlich wieder die Steuerung an dem Interruptpunkt, d. h., mit ihrem wiederhergestellten Kontext zu gleichen Bedingungen wie beim Abtreten der Steuerung.
- Zusammengefaßt umfaßt der Schritt S20 den Schritt der Überwachung mehrerer Anwendungsaufgaben in einer interaktiven Multitasking-Netzwerkkarte, um die Prozessorressourcen zu verteilen. Ein Speicher speichert eine erste Anwendungsaufgabe, welche einen Dateiserver für den Erhalt eine Netzwerkschnittstelle auffüllen kann, um eine Warteschlange zu druc kender Dateien zu erzielen, und welche die Druckdateien an einen mit der Karte über eine Schnittstelle verbundenen Drucker weiterleitet. Der Speicher speichert auch eine zweite Anwendungsaufgabe, welche ferner abgesetzte Statusanfragen über eine LAN-Schnittstelle empfangen, den Drucker über eine bidirektionale Schnittstelle abfragen, um einen Druckerstatus und eine Antwort auf die empfangene Statusanfrage zu erhalten, und die Statusinformation über die LAN-Schnittstelle an die Statusabfrageeinheit liefern kann. Die ersten und zweiten Anwendungsaufgaben enthalten jeweils einen Abtretungsbefehl, welches die aktuell ausgeführt werdenden Anwendungsaufgabe veranlaßt, periodisch die Steuerung an MONITOR abzugeben. MONITOR speichert den Status der abtretenden Aufgabe, stellt den Status der nicht-abtretenden Aufgabe wieder her, und nimmt die Ausführung der nicht-abtretenden Aufgabe auf.
- In Fig. 5C ermittelt der Schritt S21 unter der Voraussetzung, daß Daten über das LAN im Schritt S15 empfangen wurden, ob die empfangenen Daten für einen Druckjob gedacht sind oder nicht. Wenn sie für einen Druckjob gedacht sind, arbeitet der Mikroprozessor 216 als der LAN-Dateiserver für eine aktive Druckdatei und überträgt im Schritt S22 Druckjobblöcke zu dem DRAM 220.
- Im Schritt S23 assembliert der Mikroprozessor 216 die Blöcke der Bilddaten und Steuerinformation und sendet die Blöcke über die SCSI-Schnittstelle an den Drucker. In diesem Schritt fügt der Mikroprozessor 216 dem über das LAN empfangene Datenstrom effektiv "Jobanfang"- und "Jobende"-Anzeigen hinzu. Er macht dieses, indem er den XP-(Daten)-Kanal zu Beginn eines Druckjobs öffnet, und den XP-Kanal am Ende eines Druckjobs schließt. Im Schritt S24 wartet der Prozeß bis der Druckjob abgeschlossen ist. Sobald der Druckjob abgeschlossen ist, versetzt der Schritt S25 den Drucker unzweifelhaft in eine Vorgabeumgebung. Es ist auch möglich, die Vorgabekonfiguration vor (oder während) des Druckjobs einzustellen. D. h., die NEB stellt selbst sicher, daß der angeschlossene Drucker in eine Vorgabeumgebung versetzt wird, welche beispielsweise Vorgabezeichensätze, Papierablagen, Prüfvorgänge, Stapelvorgänge und so weiter spezifiziert um sicherzustellen, daß der nächste Druckjob mit dem Drucker in einer bekannten (nachstehend im Kapitel 4m detaillierter zu diskutierenden) Konfiguration gestartet wird.
- Der Schritt S25 kann als Garantie für eine sichere Umgebung für den Drucker betrachtet werden, indem er sicherstellt, daß die Druckereinstellungen (z. B. Hochformatmodus, Duplexbetrieb usw.) zwischen logischen Druckjobs zurückgegeben werden. Während beispielsweise Netware® von Novell die Möglichkeit enthält, jeden Job mit Drucker-Escape-Sequenzen zum Zurücksetzen der Druckumgebung vorab festzulegen, liegen solche Escape-Sequenzen resident in einer Datenbank in dem Netzwerkdateiserver vor, und der fragliche Druckjob muß nicht aus diesen Dateiserver stammen. Um eine garantiert sichere Umgebung sicher zustellen, speichert die NEB die erforderlichen Konfigurationsparameter und ist für die Rücksetzung der Druckerumgebung zwischen den Druckaufgaben verantwortlich.
- Zusammengefaßt enthält ein Verfahren zur Bereitstellung einer Vorgabekonfiguration für einen LAN-Drucker mit einer damit verbundenen interaktiven Netzwerkkarte den Schritt des Empfangs einer Vorgabekonfiguration über eine LAN-Schnittstelle auf der interaktiven Netzwerkkarte. Die Vorgabekonfiguration kann in dem NVRAM 228 in der NEB oder in einem NVRAM oder einer Festplatte in dem Drucker über die bidirektionale Schnittstelle zwischen der Karte und dem Drucker gespeichert werden. Dann wird die Vorgabekonfiguration aus dem NVRAM in dem Drucker in das DRAM 220 auf der Karte über die bidirektionale Schnittstelle hinuntergeladen. Wenn die Karte Druckinformation über die LAN-Schnittstelle empfängt, und die Druckinformation an den Drucker über die bidirektionale Schnittstelle liefert, detektiert die Karte ein Ende des Druckjobs. Als Antwort auf diese Detektion wird die Vorgabekonfiguration an den Drucker gesendet, wodurch der Drucker in seine Vorgabekonfiguration versetzt wird.
- Zusätzlich können mehrere Vorgabekonfiguration gespeichert werden, und eine geeignete Vorgabekonfiguration ferngesteuert von einer weiteren LAN-Einheit selektiert werden. Beispielsweise kann ein Verfahren zum Einstellen einer von mehreren Vorgabekonfigurationen den Schritt der Detektion des Ursprungs eines Druckjobs und der Identifikation der Quelle des Jobs auf der Karte enthalten. Anschließend wird eine geeignete Vorgabekonfiguration aus den gespeicherten Konfigurationen selektiert, und die selektierte Vorgabekonfiguration an den Drucker zu Beginn oder am Ende des Druckjobs gesendet.
- In Fig. 5C bestimmt dann der Schritt S26, wenn im Schritt S21 ermittelt wird, daß kein Druckjob erforderlich ist, ob eine den Status des angeschlossenen Druckers anfordernde Statusanforderung über das LAN erfolgte. Wenn festgestellt wird, daß eine Statusanforderung empfangen wurde, stellt der Schritt S27 den Typ der Statusanforderung fest. Beispielsweise kann ein Druckerstatus, wie z. B. Fehlercodes, die Anzahl gedruckter Seiten, der Tonerstatus und so weiter angefordert werden.
- Im Schritt S28 holt der Mikroprozessor 216 die angeforderten Statusdaten aus dem DRAM 220, assembliert die Statusdaten und sendet sie über die (nachstehend im Kapitel 41 detaillierter zu diskutierende) LAN-Schnittstelle zu dem LAN. Somit kann im Schritt S28 mehr als nur eine einfache "Ein/- Aus"-Information zu dem LAN übertragen werden, um so dem LAN den detaillierten Status des Druckers zu melden. In einer breiten Anwendung umfaßt der Schritt S28 den Export des Druckerfrontplattenstatus über das LAN und den Import von Frontplattensteuerbefehlen aus dem LAN. D. h., der Netzwerkverwalter an dem PC 14 kann eine Anzeige, welche die gesamte in der Druckerfrontplattenanzeige 116 enthaltene Information anzeigt, anfordern und erhalten. Der Netzwerkverwalter kann dann unterschiedliche Druckerfrontplattenfunktionen auf seinem/ihrem PC aktivieren, und solche Funktionen werden dann zu dem Drucker übertragen, wo die selektierte Steuerung ausgeführt wird.
- Zusammengefaßt weist im Schritt S28 ein Verfahren zum ferngesteuerten Steuern einer von Hand ausführbaren Funktion eines über eine interaktive Netzwerkkarte mit einer LAN- Schnittstelle für eine LAN-Kommunikation im Netzwerk eingebundenen Druckers den Schritt der Ausgabe eines Befehls an einem abgesetzten Ort an die Karte auf, welcher die Karte veranlaßt, die Druckerstatusinformation über die Karte an den abgesetzten Ort mittels der LAN-Schnittstelle zu übertragen. An dem abgesetzten Ort kann ein Druckerstatus angezeigt werden, und ein zweiter Befehl kann an dem abgesetzten Ort an die Karte über die LAN-Schnittstelle gegeben werden, um die Karte zu veranlassen, eine von Hand ausführbare Funktion durchzuführen.
- Wenn die empfangenen LAN-Daten weder ein Druckjob noch eine Statusanforderung sind, wird im Schritt S29 festgestellt, daß die empfangenen Daten ein Herunterladevorgang sein können, d. h., eine Übertragung von Daten in die NEB zum Aktualisieren der ROM- oder RAM-Anwendungen. Beispielsweise kann ein Herunterladevorgang genutzt werden, um eine einer vorübergehende Diagnose auf der NEB ablaufen zu lassen.
- Zuerst werden im (nachstehend im Kapitel 4n detaillierter zu diskutierenden) Schritt S30 die Daten aus dem LAN in das DRAM 220 hinuntergeladen. D. h., das Hinunterladen ist ein Prozeß, durch welchen Daten in einem Netzwerkknoten geladen und dann bearbeitet oder ausgeführt werden können. Beispielsweise kann alles von Patch- bzw. Reparaturcode bis zu Herstellungstestroutinen und Firmwareaktualisierungen für das EPROM hinuntergeladen werden. Auch Anwendungsmodule können in dem LAN-Dateiserver gespeichert und dann jeden Morgen in die NEB hinuntergeladen werden.
- Zusammengefaßt umfaßt das Hinunterladen von Daten aus dem LAN in das DRAM ein Verfahren zum Ändern eines Betriebsmodus einer interaktiven Netzwerkkarte mit einer LAN-Schnittstelle, einschließlich des Schrittes der Aktivierung eines LAN-Kommunikationsprogramms zur Ausführung aus dem DRAM heraus, wobei das Kommunikationsprogramm Druckinformation auf dem LAN zu einem Peripheriedrucker leitet. Ausführbare Instruktionen, welche dem geänderten Betriebsmodus entsprechen, werden dann über die LAN-Schnittstelle in das DRAM hinuntergeladen. Der Karte wird dann über die LAN-Schnittstelle befohlen, mit der Ausführung des geänderten Betriebsmodus zu beginnen.
- Im Schritt S31 wird ermittelt, ob die heruntergeladene Information für das EPROM 222 oder das DRAM 220 bestimmt ist. Wenn die Information für das EPROM bestimmt ist, wird eine ROM-Abbildung in einem (nachstehend im Kapitel 40 detaillierter zu diskutierenden) Schritt S32 assembliert. Beispielsweise ergibt das Hinunterladen einer EPROM-Firmware von einer entfernten Stelle eine einzigartige Flexibilität. Insbesondere können ein Hinunterladen von Testroutinen auf der Karte und eine Änderung der EPROM-Konfigurationsfirmware von einem abgesetzten Ort aus nach der Installation der Karte in dem Drucker ausgeführt werden.
- Der Schritt S32 ist der Prozeß, welcher die binäre Abbildungsdatei aufbaut, welche in das EPROM 222 zu programmieren ist. Die für das EPROM bestimmten Daten werden zuerst in das DRAM 220 hinuntergeladen, wo ein Hilfsprogramm eine Konfigurationsdatei liest, welche die Namen der in der ROM-Abbildung zu plazierenden Module enthält. Dann wird eine vollständige binäre Abbildungsdatei erstellt, welche alle spezifizierten Module enthält. Ein Vorspann geht jedem Modul in der Abbildung voraus, wobei der Vorspann das Modul identifiziert, dessen Attribute beschreibt, und auf den nachfolgenden Vorspann zeigt, um die Lokalisierung der Module während des Ladevorgangs zu unterstützen. Das letzte in das EPROM geladene Modul ist der EPROM-residente Code. Er wird an dem Ende der ROM- Abbildung plaziert, so daß sich der Energieeinschalt-Initialisierungscode an der vom Mikroprozessor 216 erwarteten Stelle befindet.
- Zusammengefaßt umfaßt der Schritt S32 einen Prozeß für die Formatierung einer binären Abbildungsdatei, welche ausführbare Codemodule zur Speicherung in dem EPROM enthält. Zuerst wird eine Konfigurationsdatei gelesen, welche die Code module spezifiziert, welch die binäre Abbildung erzeugen. Anschließend wird ein Vorspann für jedes in der Konfigurationsdatei spezifizierte Modul erzeugt, wobei der Vorspann eine Identifikation des Moduls, eine Definition der Attribute des Moduls und einen Zeiger auf einen Vorspann für ein nachfolgendes Modul enthält. Die binäre Abbildungsdatei wird dann die spezifizierten Module und deren zugeordneten Vorspanne enthaltend erstellt. Zum Schluß wird ein Modul eines ROM- residenten Codes an die binäre Abbildung angehängt, wobei der ROM-residente Code die Steuerung beim Einschalten der Energie erhält, den POST bereitstellt, zumindest einige der Module aus der binären Abbildungsdatei in das DRAM 220 lädt, und I/O-Grunddienste der Karte bereitstellt.
- Bevor neue Daten in das EPROM 222 geschrieben werden, ist es zuerst erforderlich, eindeutig sicherzustellen, daß ein Schreibvorgang tatsächlich beabsichtigt ist. Offensichtlich können alle unbeabsichtigten Einschreibvorgänge in das EPROM 222 die NEB unbrauchbar machen. Bevor daher Information in das EPROM 222 "übertragen" werden kann, tritt eine festgelegte Ablauffolge von Ereignissen im Schritt S33 auf, um (wie es nachstehend im Kapitel 4p detaillierter zu diskutieren ist) auf das EPROM zuzugreifen. In der vorliegenden Ausführungform werden, solange nicht zwei Datenbits an zwei getrennten I/O- Orten verändert werden, die für das Beschreiben des EPROM's erforderlichen +12 Volt nicht erzeugt.
- Kurz zusammengefaßt umfaßt ein Verfahren zur Sicherstellung, daß ein EPROM nicht versehentlich beschrieben wird, ein Verfahren zur Durchführung eines Übertragungsvorgangs in ein EPROM auf einer interaktiven Netzwerkkarte mit einem Verarbeitungseinheit und einem Speicher, das den Schritt eines I/O-Schreibsignals an die Verarbeitungseinheit enthält. Dann erzeugt die Verarbeitungseinheit eine erste Adresse in dem Speicher, um ein erstes Bit zu veranlassen, einen ersten vorbestimmten Status als Antwort auf das I/O-Signal anzunehmen. Eine Energieversorgungseinheit wird dann veranlaßt +12 Volt an einen Transistor als Antwort darauf zu liefern, daß das erste Bit in den vorbestimmten Status versetzt ist. Dann wird ein I/O-Signal an die Verarbeitungseinheit gesendet, welche eine zweite Adresse in dem Speicher erzeugt, um das zweite Bit zu veranlassen, als Antwort auf das I/O-Empfangssignal einen vorbestimmten Status anzunehmen. Dann wird der Transistor als Antwort darauf, daß das zweite Bit in dem vorbestimmten Status, der ein Fließen der +12 Volt an den Spannungsabschluß des EPROM's bewirkt, eingeschaltet, was das Stattfinden eines Schreibprogramms ermöglicht.
- Bevor die neue ROM-Abbildung tatsächlich in dem EPROM 222 gespeichert wird, muß in dem Schritt S34 der neuen ROM-Abbildung eine Prüfsumme gebildet werden, und mit einem Prüfsummenwert verglichen werden, der nach dem Empfang der ROM- Abbildung gesendet wird. Vor dem Löschen des EPROM's 222 müssen aufzubewahrende Daten und Module, wie z. B. die MAC- Adresse, in das DRAM 220 innerhalb der neuen ROM-Abbildung geladen werden.
- Nach der Feststellung, daß die ROM-Abbildung verifiziert ist und nach der Speicherung aller erforderlichen Daten in der im DRAM 220 gespeicherten neuen ROM-Abbildung, ist es erforderlich, das EPROM 222 frei zu machen zu löschen, um sicherzustellen, daß keine Korrumpierung von Daten beim Laden der neuen ROM-Abbildung erfolgt. Demzufolge kann im Schritt S35 das EPROM 222 mehrere Male gelöscht werden, bevor die neue ROM-Abbildung darin gespeichert wird.
- Nach dem Löschen des EPROM 222 im Schritt S35 wird die neue ROM-Abbildung in dem (nachstehend im Kapitel 4q detaillierter zu diskutierenden) Schritt S36 in das EPROM 222 "übertragen".
- Zusammengefaßt betrifft der Schritt S36 ein Verfahren, zum Fernverändern programmierbarer Firmware auf einer interaktiven Netzwerkkarte mit einer LAN-Schnittstelle, einschließlich des Schrittes einer Aktivierung eines LAN- Kommunikationsprogramms zur Ausführung aus dem DRAM auf der Karte, wobei das Kommunikationsprogramm Druckinformation in dem LAN einem Peripheriedrucker zuführt. Eine ROM- Firmwareabbildung wird dann über die LAN-Schnittstelle auf das DRAM auf die Karte hinuntergeladen. Anschließend wird dann das Hinunterladen der ROM-Abbildung auf die Zielkarte und die Integrität der ROM-Abbildung bestätigt. Der Karte wird dann befohlen, elektronisch das EPROM zu löschen, und dann wird das die neue ROM-Abbildung in das EPROM übertragen. Zusätzlich kann ein "Übertragungsabschluß"-Signal zu dem LAN nach dem Übertragungsvorgang gesendet werden, wenn dieses gewünscht ist.
- Wenn die Information in das EPROM 222 übertragen ist, wird die NEB dann aus der neuen ROM-Firmwareabbildung im EPROM 222 im Schritt S37 neu gebootet, worauf dann der Prozeß zum Schritt S1 zurückkehrt.
- Im Schritt SC wird dann, wenn der Schritt S31 feststellt, daß RAM-Information gerade heruntergeladen wird, eine derartige Information zuerst im DRAM 220 mittels des Schritts S38 assembliert. Anschließend führt der Schritt S39 das RAM- Programm aus, und der Schritt kehrt zum Schritt S31 zurück, wobei SAPSERVER, die PSERVER und die CPSOCKET-Einheiten anspricht.
- Diese Diskussion beendet die Übersicht über die NEB- Strukturen und Funktionen, wenn die NEB in einem Drucker eines LAN-Netzwerkes eingebaut ist. Eine detailliertere Beschreibung des Betriebs verschiedener Aspekte der NEB-Hardware und -Software erfolgt nun.
- Unmittelbar nach dem Einschalten der Energieversorgung führt die NEB 2 einen Einschaltselbsttest (POST) durch, worauf dann die NEB die Betriebssoftware aus dem EPROM 222 zur Ausführung in das DRAM 220 lädt.
- Insbesondere greift der Mikroprozessor 216 unmittelbar nach dem Einschalten der Energieversorgung auf die im EPROM 222 befindlichen POST-Programmodule zu. Der Mikroprozessor 216 führt POST direkt aus dem EPROM 222 heraus aus, um die Funktionsfähigkeit des Mikroprozessors, die Integrität des im EPROM 222 gespeicherten Programms (beispielsweise mittels einer Prüfsummenverifikation) die Betriebsfähigkeit des DRAM's 220 (beispielsweise durch Lese/Schreibzyklen), die Betriebsfähigkeit der SCSI 224, der Datenintegrität des NVRAM 228 und den Betrieb eines Steuerregisters 230 zu testen. POST kann auch einen Vergleich der im PROM 232 gespeicherten MAC-Adresse mit einer in das EPROM 222 heruntergeladenen MAC-Adresse beinhalten.
- POST enthält ferner Betriebsprüfungen der Netzwerkbezogenen Hardware. Insbesondere kann POST Betriebstests für das SRAM 214 (beispielsweise mittels Lese/Schreibzyklen) sowie einen Test der Netzwerkaktivität enthalten, um den Betrieb der Netzwerksteuerung 206 zu verifizieren.
- Der Betrieb weiterer Hardware in der NEB 2 kann direkt durch weitere POST-Testabläufe festgestellt werden. In einigen Fällen, wo es für den Mikroprozessor nicht möglich ist, den Betrieb von Hardware direkt zu testen, wie z. B. in dem Falle der Verbinder 202, 203 und 204, kann ein einwandfreier Betrieb dieser Hardware durch Ergebniscodes impliziert werden, die aus dem direkten Testablauf erhalten werden.
- Nach dem Abschluß von POST sendet der Mikroprozessor 216 einen Prüfsummencode auf den seriellen Port 218, und tritt dann in ein Fenster eines Ruhebetriebs ein, (z. B. in ein Fenster einer Sekunde), während welchem der Mikroprozessor 216 Befehle (beispielsweise zum Testen - siehe nachstehendes Kapitel 5) über den seriellen Port 218 empfangen kann. Der POST-Prüfsummencode kann von einem mit dem seriellen Port 218 verbundenen Gerät erhalten werden, um das Ergebnis von POST zu ermitteln. Beispielsweise kann ein fehlerfreier Zustand durch einen POST-Prüfsummencode von "0000H" dargestellt werden, während ein POST-Prüfsummencode, der einen Fehler anzeigt, durch einen Hexadezimalwert ungleich Null angezeigt werden, welcher den Bereich des Fehlers angibt. Im Falle eines Fehlers kann der Mikroprozessor 216 auf eine LED 240 (Leuchtdiode) auf der NEB 2 aufleuchten lassen, um einem Benutzer zu signalisieren, daß ein Fehler detektiert wurde. Insbesondere leuchtet die LED 240 während des Energieeinschaltvorganges, und wird nur ausgeschaltet, wenn POST erfolgreich war.
- Nach einem erfolgreichen Abschluß von POST und in dem Falle, daß keine Befehle über den seriellen Port 218 während des eine Sekunde langen Aktivitäts-Ruhefensters empfangen werden, beginnt der Mikroprozessor 216 mit dem Laden von in dem EPROM 222 gespeicherten Softwaremodulen in das DRAM 220. Der Mikroprozessor 216 führt diese Softwaremodule nicht direkt aus dem EPROM 222 heraus aus, sondern lädt diese Module in das DRAM 220, um sie aus dem DRAM 220 heraus auszuführen. Durch diese Anordnung ist es möglich, die spezifischen Module, die aus dem EPROM 222 zur Ausführung aus dem DRAM 220 heraus ausgelesen werden, zu selektieren, um somit eine flexible Konfiguration der NEB 2 (siehe das nachstehende Kapitel 4d) zu ermöglichen. Beispielsweise kann der Mikroprozessor 216 gemäß einem in NVRAM 228 gespeicherten Konfigurationsbefehl selektive Module aus dem EPROM 222 zum Laden in das DRAM 220 und zum Ausführen aus dem DRAM heraus holen.
- Fig. 6 stellt eine Ablauffolge dar, mittels welcher unterschiedliche Module aus dem EPROM 222 geholt und in das DRAM 220 geladen werden. Im Schritt S6001 lädt der Mikroprozessor 216 den SCSI-Treiber aus dem EPROM 222 in das DRAM 220. Der SCSI-Treiber stellt einen Betriebsablauf und eine Steuerung für die SCSI-Steuerung 224 bereit, und ermöglicht eine Schnittstelle zum Drucker 4, um so dem Drucker 4 Daten zu senden, und so auch Steuerinformation an den Drucker 4 zu senden und von diesem zu empfangen.
- Im Schritt S6002 lädt der Mikroprozessor 216 die Verbindungsunterstützungsschicht oder "LSL" - Link Support Layer aus dem EPROM 222 in das DRAM 220, und im Schritt S6003 lädt der Mikroprozessor 216 die Netzwerktreiber-Software aus dem EPROM 222 in das DRAM 220, und anschließend beginnt der Mikroprozessor 216 mit der Ausführung Verbindungsunterstützungsschicht und des Netzwerktreibers au dem DRAM 220 heraus. Die Verbindungsunterstützungsschicht und der Netzwerktreiber stellen einen gemeinsamen Zugriff auf LAN-Kommunikationen auf dem LAN-Bus 6 bereit. Insbesondere bilden gemäß Darstellung in Fig. 7 alle mit dem Netzwerk verbundenen Geräte, welche ein Gerät, wie z. B. die NEB 2, enthalten, eine Schnittstelle mit dem LAN-Bus 6 über eine elektrische Schnittstelle 301, wie z. B. die in der NEB 2 verwendete Netzwerksteuerung 206. Die elektrische Schnittstelle 301 wird von dem Netzwerktreiber 302 gesteuert, welcher wiederum LAN-Rahmendaten von der Verbindungsunterstützungsschicht-Software 304 erhält. Sowohl die Verbindungsunterstützungsschicht 304 als auch der Netzwerktreiber 302 sind verschiedenen Arten von Netzwerksoftware gemeinsam. Insbesondere stellen, wie es ferner in Fig. 7 dargestellt ist, Netzwerk-Anwendungsprogramme, wie z. B. diejenigen, die in der NetWare®-Software von Novell bereitgestellt werden (gemäß Darstellung durch ein Pfeil A) mittels der Verbindungsunterstützungsschicht und dem Netzwerktreiber eine Schnittstelle über ein Zwischennetzwerk-Paketaustauschprogramm, oder "IPX" 305, und ein Folgepaketaustauschprogramm, oder "SPX" 306, her. Andererseits stellen von AT&T bereitgestellte Netzwerk-Anwendungsprogramme von UNIX, das (gemäß Darstellung bei dem Pfeil B) eine Schnittstelle zu der LSL über das "IP"-Modul 315 und "TCP"-Modul 316 her.
- In der NEB 2 wird normalerweise nur ein Typ von Netzwerk- Anwendungsprogrammen zu einem Zeitpunkt ausgeführt, (obwohl ein Multiprotokollbetrieb wie nachstehend im Kapitel 4f diskutiert, möglich ist). Die Erläuterung hier erfolgt für Net- Ware®-Netzwerk-Anwendungsprogramme, obwohl auch UNIX-Netzwerk-Anwendungsprogramme ausgeführt werden können.
- Im Schritt S6004 lädt der Mikroprozessor 216 ein Programm PRESCAN aus dem EPROM 222 und speichert es in dem DRAM 220, und beginnt dann mit der Ausführung des Programms PRESCAN aus dem DRAM 220 heraus. Die Software PRESCAN stellt eine Schnittstelle zu der Verbindungsunterstützungsschicht her, um den Rahmentyp zu ermitteln, der gerade auf dem LAN-Bus 6 übertragen wird. Insbesondere gibt es gemäß vorstehender Beschreibung 4 unterschiedliche Rahmentypen auf einem LAN-Bus eines Ethernet-Netzwerks: Ethernet 802.3, Ethernet II, Ethernet 802.2 und Ethernet SNAP. Wie nachstehend detaillierter in Kapitel 4e beschrieben, überwacht das Softwaremodul PRESCAN Netzwerk-Kommunikationen auf dem LAN-Bus 6, um den Rahmenpakettyp zu ermitteln. Der Rahmenpakettyp, wird sobald er durch PRESCAN ermittelt wurde, an einer vorbestimmten gemeinsamen Stelle im DRAM 220 zur Nutzung durch andere Netzwerk-Kommunikationsmodule in der NEB gespeichert. Nach der Ermittlung des Rahmenpakettyps meldet PRESCAN dem Mikroprozessor 216, daß seine Aufgaben abgeschlossen sind, und erlaubt dem Mikroprozessor 216 den von dem Programm PRESCAN belegten Speicher mit einem anderen Programmodul zu überschreiben.
- Im Schritt S6005 holt der Mikroprozessor 216 die IPX- und SPX-Programmodule aus dem EPROM 222 und speichert sie im DRAM 220 und beginnt darauf mit der Ausführung der IPX- und SPX- Module aus dem DRAM 220 heraus. Sowohl IPX als auch SPX verwenden den von dem Modul PRESCAN ermittelten Rahmenpakettyp.
- Im Schritt S2006 holt der Mikroprozessor 216 das Programmodul CNETX aus dem EPROM 222 und lädt dieses Modul in das, DRAM 220 und beginnt dann mit der Ausführung aus dem DRAM 220 heraus. CNETX verleiht dem NEB eine lokalisierte DOS-ähnliche Funktionalität.
- Im Schritt S6007 lädt der Mikroprozessor 216 das Programmodul SAPSERVER aus dem EPROM 222 in das DRAM 220 und beginnt mit der Ausführung des Moduls SAPSERVER aus dem vom DRAM 220 heraus. Wie es detaillierter nachstehend im Kapitel 4g beschrieben wird, ist SAPSERVER ein Programmodul, welche es ermöglicht, zwei Netzwerk-Servereinheiten, wie z. B. CPSOCKET und CPSERVER, gleichzeitig von dem einzigen, dem NEB zugewiesenen Knoten aus anzukündigen, obwohl herkömmliche Netzwerk- Anwendungsprogramme, wie z. B. die von NetWare® bereitgestellten, das Ankündigen nur einer einzigen Netzwerkservereinheit von jedem Netzwerkknoten aus erlauben.
- Im Schritt S6008 holt der Mikroprozessor 216 den nicht präemptiven Multitasking-MONITOR (siehe nachstehendes Kapitel 41) aus dem EPROM 222 und speichert ihn in dem DRAM 220 und beginnt mit der Ausführung des Multitasking MONITOR aus dem DRAM 220 heraus.
- Im Schritt S6009 holt der Mikroprozessor 216 das Serversoftwaremodul CPSOCKET aus dem EPROM 222 und speichert es in dem DRAM 220 und beginnt mit der Ausführung des Servers CPSOCKET aus dem DRAM 220 heraus. Wie es nachstehend vollständig im Kapitel 4j beschrieben werden wird, initialisiert CPSOCKET eine Anfrage an SAPSERVER, um zugunsten von CPSOCKET anzukündigen, und der SAPSERVER beginnt SAP-Ankündigungen auf dem LAN-Bus 6 zu machen.
- Im Schritt S6010 holt der Mikroprozessor 216 Druckanwendungsserver, wie z. B. den CPSERVER oder CRPRINTER aus dem EPROM 222 und lädt die Anwendungsserver in das DRAM 220. In dem Falle des CPSERVER beginnt der Mikroprozessor 216 mit der Ausführung des geladenen Druckanwendungsservers aus dem DRAM 220 heraus, welcher wiederum den SAPSERVER auffordert, SAP- Ankündigungen zugunsten des Druckservers zu machen. Wie es nachstehend vollständiger im Kapitel 4g beschrieben wird, verschachtelt der SAPSERVER Ankündigungen für den CPSOCKET- Server und für den Druckserver und wirkt dadurch als eine SAP-Ersatzeinheit, sowohl für den CPSOCKET-Server als auch für den Druckserver.
- Gemäß den breiten Aspekten der vorliegenden Erfindung wird ein Peripheriegerät, wie z. B. ein Drucker, mit einem LAN unter Verwendung einer interaktiven Netzwerkkarte mit darin integrierten Softwareprogrammen verbunden. Bevorzugt ist die Verbindung zwischen dem Drucker und der NEB eine SCSI- Schnittstelle, so daß große Mengen von Druckdaten und Statusdaten bidirektional zwischen der NEB und dem Drucker transportiert werden. Das EPROM 222 speichert mehrere Softwaremodule für die betriebliche Konfiguration der NEB in der PSERVER- oder RPRINTER- oder LPR-Funktionskonfiguration. Das EPROM 222 speichert auch eine Anzahl von Statussteuerungs- Softwaremodulen zum Exportieren von Statusinformation aus dem Drucker über das LAN, und zum Importieren von Steuerinformation aus dem LAN an den Drucker. Die EPROM-residente Firmware wird beim Einschalten der Energieversorgung (wie es vorstehend in Kapitel 4a diskutiert wurde) in das DRAM 220 hinuntergeladen, wodurch das Multitaskingprogramm MONITOR "soft- time"-Aufgaben ausführt, bis "run-time"-Interrupts entweder von der LAN- oder der SCSI-Schnittstelle empfangen werden.
- Das NVRAM 228 speichert ein Konfigurationswort, welches spezifiziert, welche im EPROM 222 gespeicherten Module in das DRAM 220 hinuntergeladen werden sollten, um die NEB entweder mit einer PSERVER- oder RPRINTER-Funktionalität zu konfigurieren. Der Mikroprozessor 216 führt die Programm aus dem DRAM 220 heraus aus, was es ermöglicht, Druckjobs von dem LAN zu empfangen und zu dem Drucker zum Drucken zu senden, und es erlaubt, den Druckerstatus über das LAN als Antwort auf eine Statusanforderung zurückzusenden.
- Die spezifischen Details des Aufbaus und der Funktionen für den Anschluß des Peripheriegerätes an das lokale Netzwerk werden vorstehend unter Bezugnahme auf die Fig. 4, 5A, 5B und 5C und in den nachfolgenden Kapiteln beschrieben.
- Die Bereitstellung einer bidirektionalen SCSI-Schnittstelle zwischen der NEB 2 und dem Drucker erlaubt die Extraktion einer großen Menge Statusinformation aus dem Drucker, wobei trotzdem noch die Druckdaten an den Drucker geliefert werden. Ferner kann durch Nutzung der bidirektionalen SCSI- Schnittstelle der Drucker auf von einer abgesetzten Stelle über das LAN ausgegebene Steuerbefehle reagieren. Beispielsweise kann der Netzwerkverwalter von seinem/ihrem PC 14 aus einen Steuerbefehl erteilen, der erfordert, daß ein spezifischer Druckjob mehrere Male mit hoher Bilddichte gedruckt, und dann gestapelt wird. Solche Steuerbefehle werden über das LAN 6 zu dem NEB 2 gesendet, und die NEB 2 überträgt diese Steuerbefehle über den SCSI-Bus 102 an den Drucker. Gleichzeitig werden die aktuellen Druckdaten von einem Dateiserver 30 an die NEB 2 übertragen, wo die Druckdaten in Blöcke verpackt und über den SCSI-Bus 102 an den Drucker übertragen werden. Bevorzugt zeigt die NEB den "Druckjobanfang" durch die Öffnung des XP-Datenkanals zu dem Drucker an. In ähnlicher Weise zeigt die NEB 2 das "Druckjobende" durch Schließen des XP-Datenkanals zu dem Drucker an. Daher kann die NEB 2 dem Drucker solche Anzeigen liefern.
- Die Verwendung der bidirektionalen SCSI-Schnittstelle in der NEB 2 erlaubt auch die Verbindung anderer Typen von Peripheriegeräten mit dem LAN. Beispielsweise ist es möglich, da die SCSI-Schnittstelle große Datenmengen von dem Peripheriegerät an das LAN übertragen kann, die NEB mit einer Datenerzeugungseinrichtung, wie z. B. einen Scanner (z. B. wenn der Drucker 4 ein Gerät für eine optischen Zeichenerkennung ("OCR") oder ein Faksimilegerät ist, zu verbinden. Somit können von dem Bilderzeugungsgerät erzeugte Daten über die SCSI- Schnittstelle zu der NEB übertragen werden, und dann auf das LAN zum Speichern oder Lesen durch irgend eine LAN-Einheit weitergegeben werden. Wie bei einem Drucker können auch große Mengen detaillierter Steuer/Status-Information ebenfalls an die bzw. von der Bilderzeugungseinrichtung geliefert werden.
- Die detaillierten Aufbau- und Funktionsmerkmale der bidirektionalen SCSI-Schnittstelle auf der NEB werden vorstehend unter Bezugnahme auf Fig. 4, 5A, 5B und 5C und in den nachstehenden Kapiteln beschrieben.
- Wie vorstehend unter Bezugnahme auf Fig. 5A beschrieben, lädt der Schritt S6 selektierte Softwareprogramme aus dem EPROM 222 zur Ausführung in das DRAM 220 (siehe auch Fig. 6 und Kapitel 4a). Das EPROM 222 wird mit Firmwaremodulen beliefert, welche es ermöglichen, daß die NEB entweder mit einer RPRINTER- oder PSERVER-Funktionalität konfiguriert wird. Daher wird die Funktionalität des NEB 2 davon bestimmt, wel ches von den gespeicherten Programmen aus dem EPROM 222 gemäß dem in dem NVRAM 228 gespeicherten Konfigurationscode in das DRAM 220 geladen wird.
- Die Firmware der NEB 2 wird zu Beginn konfiguriert und kann anschließend neu konfiguriert werden indem man CPINIT auf dem PC 14 des Netzwerkverwalters ablaufen läßt (siehe nachstehendes Kapitel 4h). Jedoch aktiviert die NEB 2 sogar in einem nicht konfigurierten Zustand selbst diejenigen Softwaremodule, die zur Ausführung einer Grundkommunikation mit dem LAN erforderlich sind. Unter Verwendung von CPINIT kann der Netzwerkverwalter ferngesteuert die aktuelle Konfiguration der NEB ermitteln oder er/sie kann die Konfiguration nach Wunsch verändern. Da die Konfigurationsinformation im EPROM 222 auf der NEB-Karte gespeichert ist, bleibt die Konfigurationsinformation über Energieversorgungszyklen hinweg erhalten.
- Der Prozeß mittels welchem die Softwareprogramme für eine spezifische Konfiguration aus dem EPROM 222 in das DRAM 220 hinuntergeladen werden, wird nachstehend unter Bezugnahme auf Fig. 8 beschrieben.
- Nach dem Versorgen der Karte mit Energie im Schritt S1 geht der Prozeß zu dem Schritt S8001 über, wo der Mikroprozessor 216 auf EPROM-residenten Code in dem EPROM 222 zugreift, um einen Konfigurationscode (typischerweise ein Wort) aus dem NYRAM 228 auszulesen. Der Konfigurationscode spezifiziert Module, welche der NEB entweder eine PSERVER- oder RPRINTER-Funktionalität verleihen können. Obwohl die vorliegenden Ausführungsform nur RPRINTER- oder PSERVER-Funktionalitätskonfigurationen enthält, können auch andere Konfigurationen genutzt werden, wenn beispielsweise die NEB 2 in einer anderen LAN-Einheit, wie z. B. in einen Scanner oder in ein Faksimilegerät, eingebaut ist.
- Nach dem Auslesen des Konfigurationscodes aus dem NVRAM's 228 erzeugt der Mikroprozessor 216 im Schritt S8002 eine Konfigurationsmaske deren Bitmuster dem gelesenen Konfigurationscode entspricht. Im Schritt S8003 vergleicht ein im EPROM 222 resident vorhandenes Ladermodul die Konfigurationsmaske mit den mehreren in dem EPROM 222 gespeicherten Firmwaremodulen.
- Im Detail beginnt im Schritt S8004 ein Prozeß, wodurch die EPROM-residenten Softwaremodule in einer bitweisen Entsprechung zu den binären Digits des aus dem NVRAM 228 gelesenen Konfigurationscodes ausgewählt werden. Wenn im Schritt S8004 festgestellt wird, daß das momentan überprüfte Bit des Bitmusters mit einem gespeicherten Modul übereinstimmt, wird dieses Modul (im Schritt S8005) zum Hinunterladen in das DRAM 220 ausgewählt, und der Prozeß springt im Schritt S8006 zu dem nächsten Bit. In ähnlicher Weise springt der Prozeß im Schritt S8006 zu dem nächsten Bit, wenn im Schritt S8004 festgestellt wird, daß ein Bit des Bitmusters nicht mit dem gespeicherten Modul übereinstimmt.
- Im Schritt S8007 wird ermittelt, ob das im Schritt S8004 getestete Bit das letzte Bit des Bitmusters der Konfigurationsmaske ist. Wenn das getestete Bit nicht das letzte Bit ist, springt der Prozeß zu dem Schritt S8004 zurück, wo das nächste Bit des Bitmusters bezüglich des nächsten gespeicherten Moduls getestet wird. Wenn das letzte Bit des Bitmusters der Konfigurationsmaske getestet ist, werden die selektierten Softwaremodule aus dem EPROM 222 im Schritt S8008 in das DRAM 220 hinuntergeladen.
- In der vorliegenden Ausführungsform werden die Softwaremodule in der nachstehenden Reihenfolge geladen: SCSI- Treiber; Verbindungsunterstützungsschicht (Link Support Layer); Netzwerktreiber; PRESCAN; IPX/SPX; CNETX; SAPSERVER; MONITOR; CPSOCKET; und Druckanwendungen (z. B. CPSERVER CRPRINTER) (siehe Fig. 6).
- Nachdem alle Softwaremodule, welche den im NVRAM 228 gespeichertem Konfigurationscodes entsprechen, in das DRAM 220 hinuntergeladen wurden, gibt die Laderfunktion die Programmausführungssteuerung im Schritt S8009 an das Multitaskingprogramm MONITOR ab.
- Wie vorstehend diskutiert, kann der im NVRAM 228 gespeicherte Konfigurationscode unter Verwendung von CPINIT ferngesteuert verändert werden. Dieses erlaubt eine größere Flexibilität zur Durchführung kleinerer Modifikationen an CPSERVER oder CRPRINTER oder wenn vollständig neue Konfigurationen eingestellt werden sollen. Daher wird im Schritt S8010 eine neue Konfiguration über das LAN 6 empfangen und im Schritt S8011 in das NVRAM 228 geladen. Bevorzugt wird der alte Konfigurationscode gelöscht oder mit dem neuen Konfigurationscode überschrieben. Dann bootet sich die NEB selbst neu, und kehrt zum Schritt S1 zurück.
- In jedem lokalen Netzwerk werden Daten zwischen Netzwerkgeräten in Paketen oder Rahmen übertragen. Aber sogar im Zusammenhang einer gemeinsamen Netzwerk-Architektur, wie z. B. Ethernet, kann mehr als ein Rahmen unterstützt werden. Somit ist es auch dann, wenn bekannt ist, daß eine Ethernet-Architektur verwendet wird, nicht möglich, die Anordnung von Daten innerhalb jedes physikalischen Informationsrahmens oder Informationspaketes auf dem Ethernetbus zu ermitteln. Insbesondere unterstützt Ethernet wie vorstehend beschrieben, vier Anordnungen von Daten oder Formate wie folgt: Ethernet 802.3, Ethernet II, Ethernet 802.2 und Ethernet SNAP.
- In herkömmlichen Netzwerkgeräten, welche ein von Hand einstellbare Bedienerschnittstelle aufweisen, ist es möglich, dem Netzwerkgerät den im Ethernet verwendeten spezifischen Rahmen anzuzeigen. Im Zusammenhang mit der NEB 2, für welche ein Bedienerzugriff nur über die Netzwerkschnittstelle (oder über den seriellen Port 218 in einer Testkonfiguration) vorgesehen ist, ist es nicht möglich, den Rahmenpakettyp einzustellen, ohne zuerst den Betreiber einen Zugriff auf das lokale Netzwerk zu erlauben, was natürlich die Kenntnis des, Rahmenpakettyps erfordert.
- Das Softwaremodul PRESCAN ermöglicht es dem NEB 2 automatisch den derzeit für die LAN-Kommunikation auf dem LAN-Bus benutzten Rahmenpakettyp zu ermitteln, indem die gesendeten Kommunikationssignale auf dem LAN-Bus überwacht werden, bis das geeignete Rahmenpaket erkannt wird. PRESCAN führt diese Bestimmung auf der Basis erkennbarer Komponenten durch, die allen vier im Ethernet verwendeten Rahmenpakettypen gemeinsam sind.
- Fig. 9 stellt detaillierter den Aufbau unterschiedlicher im Ethernet verwendeter Rahmenpakete dar. Gemäß Darstellung in Fig. 9 enthält ein über den LAN-Bus übertragener physikalischer Rahmen 411 einen 6-Byte-Abschnitt 412 zum Speichern der MAC-Adresse des Ziels und einen 6-Byte-Abschnitt 413 zum Speichern der MAC-Adresse der Quelle. Diese 12 Bytes bilden die ersten 12 Bytes von LAN-Datenpaketen, unabhängig von dem für die LAN-Kommunikation verwendeten Rahmentyp. Ein Datenabschnitt 414 folgt diesen 12 Bytes. Der Datenabschnitt besteht aus einer variablen Anzahl von Bytes, welche von den unterschiedlichen Rahmenpakettypen nicht für dieselben Zwecke verwendet werden, und welche nicht dieselbe Anzahl von Bytes für die unterschiedlichen Rahmenpakettypen aufweisen.
- Nach dem nicht festgelegten Bereich 414 enthält das LAN- Kommunikationspaket einen IPX-Vorspann 415, dessen ersten zwei Bytes immer den (hexadezimalen) Wert "FFFF" aufweisen. Der Rest des Paketes 416 folgt dem IPX-Vorspann und weist die Daten und andere Befehle auf, welche jeden unterschiedlichen Typ eines LAN-Kommunikationspaketes kennzeichnen.
- PRESCAN arbeitet so, daß es die LAN-Kommunikation hinsichtlich jedes unterschiedlichen Pakettyps überwacht, bis der gemeinsame Bereich (wie z. B. ein IPX-Vorspann 415) in einem dieser Pakettypen erkannt wird. PRESCAN speichert dann diesen Pakettyp zur Verwendung durch andere Netzwerkkommunikationsprogramme.
- Fig. 10 ist ein detailliertes Flußdiagramm zur Darstellung des Betriebsablaufs des Moduls PRESCAN. Im Schritt S1001 holt der Mikroprozessor 216 das Modul PRESCAN aus dem EPROM 222 und lädt es in das DRAM 220 und beginnt darauf mit der Ausführung des Moduls PRESCAN. Das Modul PRESCAN wird auch dann vor den Modulen SPX und IPX ausgeführt, wenn der Mikroprozessor 216 diese späteren Module aus dem EPROM 222 holt, und diese in das DRAM 220 lädt, bevor die in Fig. 10 dargestellte Betriebsablauffolge vollständig ist. Insbesondere hängt ein korrekter Betriebsablauf der Programmodule SPX und IPX von der Identifikation des Rahmenpakettyps durch PRESCAN ab, weshalb die Ausführung von SPX und IPX unterlassen wird, bis PRESCAN den korrekten Rahmenpakettyp ermittelt hat.
- Im Schritt S1002 bindet sich PRESCAN gleichzeitig über LSL an alle vier Rahmenpakettypen, nämlich Ethernet 802.3, Ethernet II und Ethernet 802.2 und Ethernet SNAP. Das heißt, PRESCAN konfiguriert LSL so, daß die LSL für jedes Paket einer LAN-Kommunikation eine Datengruppe erzeugt, die jedem der vier Rahmenpakettypen entspricht. Danach wird PRESCAN inaktiv und wartet auf eine Reaktivierung durch ein Interrupt aus dem Netzwerktreiber.
- Im Schritt S1003 überwacht der Netzwerktreiber die Kommunikation auf dem LAN-Bus auf einen Sendeverkehr. Sendeverkehr bedeutet, daß die Ziel-MAC-Adresse 412 unspezifiziert ist oder dieser eine globale Spezifikation von (hexadezimal) "FFFFFFFFFFFF" gegeben ist. Der Netzwerktreiber fährt mit der Überwachung der Kommunikation auf dem LAN-Bus nach Sendeverkehr fort (Schritt S1004) fort, bis Sendeverkehr empfangen wird, worauf der Ablauf zum Schritt S1005 übergeht. Im Schritt S1005 werden die MAC-Adressenfelder 412 und 413 von dem empfangenen Datenpaket entfernt, und der Rest des Datenpaketes an die LSL übergeben. Im Schritt S1006 interpretiert die LSL das Rahmenpaket in Abhängigkeit von jedem Rahmenpakettyp und liefert jedem Rahmenpakettyp entsprechend eine Datengruppe. Im Schritt S1007 reaktiviert der Netzwerktreiber das Modul PRESCAN, welches ermittelt, welche von der LSL bereitgestellte Datengruppe die richtigen ersten zwei Bytes eines IPX-Vorspanns, nämlich (hexadezimal) "FFFF" enthält. Das heißt, wegen des variablen Datenbereichs 414 (des jedem der unterschiedlichen Pakettypen (Fig. 9) entsprechenden variablen Datenbereichs 414) erkennt die LSL korrekt den IPX- Vorspann 415 nur eines von den Rahmenpakettypen. Im Schritt S1007 sucht PRESCAN nach dem IPX-Vorspann und abhängig davon, mit welchem der vier Datengruppen es von der LSL beliefert wird, ist es in der Lage einen Rahmenpakettyp zu bestimmen, der im Moment auf dem LAN-Bus verwendet wird.
- Im Schritt S1008 speichert PRESCAN den entsprechenden Rahmenpakettyp in einen gemeinsamen Bereich in dem DRAM 220 so daß der Rahmenpakettyp von anderen Netzwerkanwendungsprogrammen, wie z. B. SPX und IPX, verwendet werden kann. Anschließend gibt PRESCAN im Schritt S1009 seinen eigenen Speicherbereich im DRAM 220 frei, so daß der Mikroprozessor 216 diesen Bereich nach Wunsch mit anderen Softwaremodulen überschreiben kann.
- In einem Multiprotokollbetrieb führen zwei unterschiedliche Betriebssysteme LAN-Kommunikationen über nur einen lokalen Netzwerkbus aus, verwenden aber entsprechend unterschiedliche Betriebsprotokolle. Beispielsweise kommuniziert ein Novell-kompatibles Betriebssystem über einen LAN-Bus unter Verwendung eines SPX/IPX-Betriebsprotokolls, während ein UNIX- kompatibles Betriebsystem unter Verwendung eines TCP/IP- Betriebsprotokolls über den LAN-Bus kommuniziert. Weitere Betriebssysteme, wie z. B. das von Apple Corp. gelieferte Apple- Talk®-Betriebssystem, verwenden entsprechend andere Betriebsprotokolle zur LAN-Kommunikation über nur einen Netzwerkbus in einer Multiprotokollnetzwerkumgebung.
- Üblicherweise ist die NEB 2 so konfiguriert, daß es nur mit einem Netzwerkbetriebssystem kommuniziert, kann aber auch so konfiguriert werden, daß es in einer Multiprotokollnetzwerkumgebung, wie z. B. in einer kombinierten Novell/UNIX- Multiprotokollumgebung arbeitet. In dieser Konfiguration enthält die NEB 2 einen Novellkompatiblen Peripheriegeräteserver, wie z. B. den vorstehend erwähnten CPSERVER, welcher Job warteschlangen in einem Dateiserver in einem Novell-Betriebssystem überprüft, sowie einen UNIX-kompatiblen Peripheriegeräteserver, wie z. B. den vorstehend erwähnten CLPR (Custom Line Printer Remote), welcher gleichzeitig mit von dem CPSERVER ausgeführten Prüfungen ebenfalls Prüfungen hinsichtlich Jobwarteschlangen in einem Dateiserver für ein UNIX- Betriebssystem ausführt. Beide Server, hier CPSERVER und CLPR bedienen gemeinsame Peripheriegeräteressourcen, hier nur ein Peripheriegerät, wie z. B. ein Drucker, und zur Vermeidung eines Streits um die Steuerung gemeinsamer Ressourcen sind beide Server in der Lage, die Steuerung des Peripheriegeräte unter Ausschluß anderer Server zu übernehmen, um anderen Servern zu signalisieren, daß die Steuerung übernommen wurde, und die Steuerung des Peripheriegerätes abzugeben, wenn die Jobwarteschlange geleert ist. Jedem Server ist es ferner möglich, mit anderen Servern zu prüfen, um festzustellen, ob andere Server eine anhängige Anforderung zur Benutzung des Peripheriegerätes aufweisen. Im Falle, daß eine anhängige Anforderung vorliegt, kann der Server die Steuerung des Peripheriegerätes am Ende eines aktuellen Jobs auch dann abgeben, wenn sich noch restliche Jobs in der Warteschlange befinden, um so die abwechselnde Nutzung des Peripheriegerätes durch jeden Server zu ermöglichen.
- Fig. 11 stellt die NEB 2 in einer Konfiguration für einen Multiprotokoll-Netzwerkbetrieb dar. Fig. 11 stellt eine kombinierte Novell/UNIX-Multiprotokollumgebung dar, wobei es aber selbstverständlich sein dürfte, daß andere Betriebsprotokolle die in Fig. 11 dargestellten ersetzten oder in Kombination damit verwendet werden können. In Fig. 11 ist die NEB 2 mit einem LAN-Bus 6 über eine elektrische Schnittstelle 321, einem Netzwerktreiber 322 und eine Verbindungsunterstützungsschicht ("LSL") 324 verbunden, so wie es vorstehend in Fig. 7 dargestellt ist. Novell-spezifische Betriebsprotokolle sind mit Bezugszeichen 325, 326 und 327 bezeichnet. Insbesondere sind 325 und 326 ein SPX/IPX-Betriebsprotokollstack (oder Turm) mittels welchem Novell-kompatible Anwendungsprogramme mit dem LAN-Bus über die LSL kommunizieren. Novell kompatible Anwendungsprogramme, einschließlich eines Novellkompatiblen Servers, wie z. B. dem CPSERVER, sind bei 327 dargestellt. Die Novell-kompatible Software betreibt den Drucker 4 über den bidirektionalen SCSI-Bus 102 gemäß vorstehender Beschreibung.
- UNIX-kompatible Betriebsprotokolle sind bei den Bezugszeichen 335, 336 und 337 dargestellt. Insbesondere umfassen 335 und 336 einen TCP/IP-Betriebsprotokollstack (oder Turm), mittels welchem UNIX-kompatible Anwendungsprogramme mit dem LAN-Bus über die LSL kommunizieren. UNIX-kompatible Netzwerk- Anwendungsprogramme, einschließlich eines UNIX-kompatiblen Druckerservers, wie z. B. dem CLPR, sind bei 337 dargestellt. Der Druckerserver CLPR betreibt den Drucker 4 über den SCSI- Bus 2 wie vorstehend beschrieben.
- Das Modul PRESCAN 339 bildet eine Schnittstelle mit der LSL 324, um den auf dem LAN-Bus 6 für jedes Betriebssystem übertragenen Rahmenpakettyp zu ermitteln. Detaillierter beschrieben kann jedes Betriebssystem, wie das UNIX-Betriebssystem und das Novell-Betriebssystem auf dem LAN-Bus 6 in einer Vielfalt von Rahmenpakettypen kommunizieren. Wenn der LAN-Bus 6 ein Ethernet-LAN-Bus ist, kann ein UNIX-Betriebssystem über das Ethernet mittels einem von drei Rahmenpakettypen, nämlich Ethernet 802.2, Ethernet II, Ethernet SNAP kommunizieren. In ähnlicher Weise kann ein Novell-Betriebssystem, wenn der LAN-Bus 6 ein Ethernetbus ist, mittels einem von vier Rahmenpakettypen Ethernet 802.2, Ethernet 802.3 Ethernet II, Ethernet SNAP kommunizieren. Es ist sowohl für das Novell-Betriebssystem als auch für das UNIX-Betriebssystem möglich, denselben Rahmenpakettyp zu verwenden; es sind die Betriebssystemprotokolle (SPX/IPX für Novell und TCP/IP für UNIX) welche bestimmen, welches der Betriebssysteme in einer Multiprotokollumgebung gerade auf dem LAN kommuniziert.
- In der in Fig. 11 dargestellten Multiprotokollumgebung bestimmt das Modul PRESCAN 339 den von jedem Betriebssystem verwendeten Rahmenpakettyp, indem die in Fig. 10 dargestell ten Schritte für jedes der Betriebssystemprotokolle (siehe vorstehendes Kapitel 4e) wiederholt werden. Wenn beispielsweise ein Novell-kompatibles und ein UNIX-kompatibles System die Multiprotokollumgebung bilden, bindet sich PRESCAN gleichzeitig über die LSL an alle vier Rahmenpakettypen für einen SPX/IPX-Protokollturm, um so den Rahmenpakettyp abhängig von der von der LSL zurückgegebenen Datengruppe, welche den korrekten IPX-Vorspann aufweist, zu bestimmen. Dann bindet sich PRESCAN gleichzeitig über die LSL an alle drei Rahmenpakettypen mit einem TCP/IP-Protokollturm. PRESCAN bestimmt den von dem UNIX-kompatiblen Betriebssystem verwendeten Rahmenpakettyp abhängig von der Datengruppe mit dem korrekten TCP/IP-Vorspann.
- Detaillierter beschrieben, wird zur adaptiven und automatischen Bestimmung, welcher von mehreren vorbestimmten Rahmenpakettypen derzeit für LAN-Kommunikationen in einer Multiprotokollnetzwerkumgebung verwendet wird, das Programmodul PRESCAN 339 aus dem EPROM 222 in das DRAM 220 hinuntergeladen, wo der Mikroprozessor 216 das Modul PRESCAN ausführt. Um den Rahmenpakettyp für das erste Betriebssystem zu ermitteln, konfiguriert PRESCAN zuerst die LSL, um sich gleichzeitig an mehrere Rahmenpakettypen, die einem ersten Betriebssystemprotokoll, wie z. B. dem SPX/IPX-Betriebsprotokoll für Novellkompatible Betriebssystem entsprechen, zu binden. Der Netzwerktreiber 322 überwacht den LAN-Kommunikationsbus, um den Sendeverkehr für das erste Betriebssystem zu erfassen. Als Antwort auf die Erfassung eines derartigen Sendeverkehrs liefert die LSL mehrere Datengruppen für den erfaßten Sendeverkehr, wobei jede Datengruppe einem anderen der mehreren Rahmenpakettypen entspricht. Das Modul PRESCAN-339 wird noch einmal aktiviert, um jede Datengruppe vorab auf das Vorhandensein eines vorbestimmten Vorspanns, wie z. B. des SPX/IPX- Vorspanns abzuscannen, und speichert den Rahmenpakettyp, welcher der Datengruppe mit dem vorbestimmten Vorspann für die Anwendung durch den ersten Betriebsprotokollturm entspricht.
- Um den für das zweite Betriebssystem, wie z. B. ein UNIX- Betriebssystem, verwendeten Rahmenpakettyp zu bestimmen, konfiguriert PRESCAN die LSL so, daß sie sich gleichzeitig an mehrere Rahmenpakettypen, die dem zweiten Betriebssystemprotokoll, wie z. B. TCP/IP für ein UNIX-Betriebssystem entsprechen, bindet. Der Netzwerktreiber überwacht den LAN-Kommunikationsbus, um Sendeverkehr für das zweite Betriebssystem zu erfassen, und liefert mehrere dem erfaßten Sendeverkehr entsprechende Datengruppen, wobei jede Datengruppe einem anderen Rahmenpakettyp entspricht. Das Modul PRESCAN scannt jede Datengruppe auf das Vorhandensein eines vorbestimmten Vorspanns, wie z. B. des TCP/IP-Vorspanns für UNIX im voraus ab, und speichert den Rahmenpakettyp, welcher der Datengruppe mit dem vorbestimmten Vorspann entspricht.
- Sobald die Kenntnis über die von jedem Betriebssystem in der Multiprotokollumgebung verwendeten Rahmenpakettyps vorliegt, können sowohl das Novell-kompatible Netzwerkanwendungsprogramm 327, wie z. B. CPSERVER, als auch das UNIX- kompatible Anwendungsprogramm 337, wie z. B. CLPR, auf dem LAN-Bus 6 kommunizieren. Die zwei Anwendungsprogramme 327 und 337 kommunizieren auch untereinander, wie es schematisch durch eine Signalisierungsleitung 340 dargestellt ist. Unter Verwendung der Signalisierungsleitung 340, welche als ein im DRAM gespeichertes Steuerregister implementiert sein kann, auf welches gemeinsam von den Programmen 327 und 337 zugegriffen wird, können die Programme 327 und 337 miteinander kommunizieren, um so zu signalisieren, daß eine von diesen die exklusive Steuerung des Druckers 4 übernommen hat, oder zu signalisieren, daß eine von ihnen eine anhängige Nutzungsanforderung für den Drucker 4 hat, wie es hierin nachstehend noch detaillierter beschrieben wird.
- Im Betrieb prüft ein erster Server, wie z. B. der CPSERVER seine Betriebssystemwarteschlange und empfängt, wenn eine Druckinformation in der Jobwarteschlange vorhanden ist, die Druckinformation von seinem Betriebssystem. Gleichzeitig mit den Jobwarteschlangenprüfungen durch den ersten Server prüft der zweite Server, wie z. B. der CLPR, die Warteschlange seines Betriebssystems und empfängt, wenn eine Druckinformation in der Jobwarteschlange vorliegt, die Jobinformation von dem Betriebssystem. Wenn einer der Server genügend Information empfangen hat, um die Nutzung des Druckerperipheriegerätes anzufordern, übernimmt er die exklusive Steuerung des Druckers und signalisiert den anderen Servern über die Signalisierungsleitung 340, daß er die ausschließliche Steuerung des Druckers übernommen hat. Dieses vermeidet Streitprobleme, wenn andere Server unabsichtlich versuchen, Druckjobs in den Drucker 4 einzubringen.
- Der erste Server behält die exklusive Steuerung über den Drucker 4 bis seine Jobwarteschlange geleert ist. Wenn seine Jobwarteschlange geleert ist, gibt der erste Server die Steuerung des Druckers 4 ab, worauf dieser dann von jedem der anderen Server genutzt werden kann.
- Alternativ kann der erste Server, obwohl die Druckwarteschlange des ersten Servers noch nicht leer ist, wenn der erste Server das Ende eines Druckjobs erreicht, andere Server über die Signalisierungsleitung 340 abfragen, um zu ermitteln, ob die anderen Server anhängige Nutzungsanforderungen für den Drucker 4 aufweisen. Wenn andere Server anhängige Anforderungen aufweisen, kann der erste Server kurzzeitig die Steuerung des Druckers abgeben, um somit die abwechselnde Nutzung des Peripheriegerätes durch jeden Server zu ermöglichen. In diesem Falle signalisiert der erste Server, wenn er die Steuerung über den Drucker abgibt, daß er ebenfalls eine anhängige Nutzungsanforderung für den Drucker aufweist.
- Wie vorstehend erwähnt, erlaubt NetWare® nur einem Netzwerkserver von jedem Nicht-Dateiserver-Netzwerkknoten seine Dienste auf dem LAN-Bus anzukündigen. In der durch den nicht- präemptiven MONITOR aufgebauten Multitaskingumgebung stellt die NEB 2 jedoch mehr als nur einen Netzwerkserver bereite Insbesondere stellt die NEB 2 sowohl die Dienste des Druckservers (CPSERVER, CRPRINTER oder CLPR) als auch die Dienste des Prozeßadressenservers (CPSOCKET) bereit. Das SAPSERVER- Programmmodul erlaubt beiden Netzwerkservern ihre Dienste von nur einem Netzwerkknoten, hier von dem NEB aus, in einem LAN- Kommunikationssystem anzukündigen, welches normalerweise nur die Ankündigung eines Netzwerkservers von jedem Knoten aus unterstützt. SAPSERVER erreicht dieses, indem es als Ersatzserver (oder Sap'ing-Einheit) von der NEB aus wirkt, welche in verschachtelter Weise die Dienste jedes seiner Clientserver, hier CPSOCKET und CPSERVER anbietet.
- SAPSERVER hört das Netzwerk nach ausgesendeten SAP-Anforderungen ab, die an einen ihrer Clients gerichtet ist, und antwortet mit dem Servertyp seines Client, dem Servernamen, und einer Kommunikationspozeßadressennummer, mittels welcher der Client eine direkte LAN-Kommunikationen aufbauen kann.
- Fig. 12 ist eine Ansicht zur Erläuterung der Softwarestruktur von SAPSERVER, und Fig. 13 ist ein Flußdiagramm zur Erläuterung des Betriebsablaufs von SAPSERVER.
- Gemäß Darstellung in Fig. 12 ist SAPSERVER in der Softwarehierarchie auf der Anwendungsebene von Software positioniert, so daß er direkt mit den SPX- und IPX-Netzwerkebenen der Software kommunizieren kann. SAPSERVER arbeitet als eine Ersatz-SAP'ing-Einheit für jeden seiner Clients, welche im Falle der NEB 2 aus dem Prozeßadressenserverprogramm, CPSOCKET und dem Druckserverprogramm CPSERVER gemäß Zuweisung durch die Konfiguration der Karte besteht. SAPSERVER kann auch zur Bedienung anderer Clients konfiguriert werden, wie es schematisch bei "CLIENT N" dargestellt ist.
- Gemäß Darstellung in Fig. 13 beginnt der Mikroprozessor 216 nachdem er das Programmodul SAPSERVER aus dem EPROM 222 geholt und dieses im DRAM 220 gespeichert hat, mit dem Betrieb des Programms SAPSERVER und konfiguriert es so, daß es auf SAP-eigene Aussendungen für die SAP-eigene Prozeßadresse (Schritt S1301) hört. Im Schritt S1302 gibt das Programm CPSOCKET, nachdem der Mikroprozessor 216 das Modul CPSOCKET aus dem EPROM 222 geholt und zur Ausführung in dem DRAM 220 gespeichert hat, eine Anforderung an SAPSERVER aus, um Dienste von CPSOCKET anzukündigen. Gemäß einem standardmäßigen SAP-Protokoll beginnt SAPSERVER mit periodischen Ankündigungen für CPSOCKET (Schritt S 1303) beispielsweise in Intervallen von einer Minuten.
- Im Schritt S1304 gibt CPSERVER, nachdem der Mikroprozessor 216 das Modul CPSERVER aus dem EPROM 222 geholt und es zur Ausführung in dem DRAM 220 gespeichert hat, eine Anforderung an SAPSERVER aus, damit SAPSERVER Dienste von CPSERVER über das Netzwerk ankündigt. SAPSERVER beginnt mit periodischen SAP-Ankündigungen für die Dienste von SAPSERVER und fährt auch mit der Ankündigung der Dienste für CPSOCKET fort. Gemäß Darstellung im Schritt S1305 sind die Ankündigungen verschachtelt.
- Der Schritt S1306 ermittelt, ob eine gesendete Anforderung bei dem SAP-eigenen Prozeßadresse (z. B. bei der Prozeßadressennummer 453) empfangen wurde. Bis eine gesendete Anforderung bei der eigenen Prozeßadresse empfangen wird, setzt SAPSERVER einfach die verschachtelte Ankündigung für die Dienste von CPSERVER und CPSOCKET fort. Wenn jedoch eine ausgesendete Anforderung an der eigenen Prozeßadresse empfangen wird, bestimmt SAPSERVER dann im Schritt S1307, ob die ausgesendete Anforderung für die Dienste eines ihrer Clients, hier für die Dienste von CPSOCKET oder CPSERVER, bestimmt ist. Wenn die gesendete Anforderung nichts für einen der Clients von SAPSERVER bestimmt ist, kehrt der Ablauf einfach zum Schritt S1305 zurück, wo SAPSERVER fortfährt, in verschachtelter Weise Ankündigungen für seine Clients zu machen. Anderenfalls geht der Ablauf, wenn die ausgesendete Anforderung für einen der Clients von SAPSERVER ist, zu dem Schritt S1308 über.
- Im Schritt S1308 antwortet der SAPSERVER mit einem IPX- Paket auf der eigenen Prozeßadressennummer 453. Das IPX-Paket enthält den Servertyp ihres Clients, den Servernamen und eine Kommunikationspozeßadressennummer. Das IPX-Paket bezeichnet auch eine Kommunikationsprozeßadresse, über welche der sendend Anforderer eine direkte Kommunikation mit dem Client aufbauen kann. Anschließend kehrt SAPSERVER zu dem Schritt S1305 zurück, um damit fortzufahren in verschachtelter Weise für jeden seiner Clients Ankündigungen zu machen.
- Im Schritt S1309 baut der sendende Anforderer eine direkte SPX-Verbindung mit dem in der ausgesendeten Anforderung angegebenen Client über die im Schritt S1308 angegebene Kommunikationsprozeßadresse auf. In der vorliegenden Konfiguration, in welcher Dienste des Druckservers CPSERVER angefordert werden, ist die Prozeßadressennummer 8060. Andererseits ist die Prozeßadressennummer, wenn Anforderungen für Dienste des CPSOCKET-Servers erfolgen, 83B4 für Kommunikation und 83B5 für Verbindung. Eine direkte Kommunikation läuft dann gemäß nachstehender, vollständigerer Beschreibung ab.
- Fig. 14 ist ein Flußdiagramm, welches darstellt, wie ein Netzwerkverwalter CPINIT von dem PC 14 aus benutzen kann, um sowohl die NEB 2 als auch den Drucker 4, in welchem die NEB eingebaut ist, zu initialisieren und konfigurieren und später zum rekonfigurieren.
- Im Schritt S1401 verwendet das Hilfsprogramm CPINIT ein Dienstankündigungsprotokoll (SAP) in dem Netzwerk, um zu ermitteln, welche Druckergeräte zur Antwort auf Anfragen von CPINIT zur Verfügung stehen. Auf jeder von den NEB-Karten antwortet CPSOCKET mit dem Servertyp, Servernamen und einer eindeutigen Prozeßadressennummer mittels welcher auf jede NEB direkt zugegriffen werden kann, und mit einer Anzeige, ob die NEB eine Konfiguration benötigt oder nicht.
- Im Schritt S1402 erstellt CPINIT eine Liste aller NEB's und deren zugeordneter Geräte, und stellt diese in einer Menüform dar, so daß sie von dem Systemverwalter ausgewählt werden können. Nach der Auswahl fordert CPINIT die aktuelle Konfiguration der gewählten NEB (Schritt S1403) an. Insbeson dere sendet CPINIT eine Anfrage über die LAN-Schnittstelle an die gewählte NEB. In der NEB empfängt CPSOCKET die Anforderung für die Konfigurationsinformation aus der LAN-Schnittstelle. CPSOCKET sammelt die erforderliche Konfigurationsinformation und sendet sie über die LAN-Schnittstelle an CPINIT im PC 14 des Systemverwalters (Schritt S1404). Im Schritt S1405 stellt CPINIT ein Menü der aktuellen Konfiguration der gewählten NEB dar.
- In den Schritten S1406 bis S1408 spezifiziert der Systemverwalter eine gewünschte Konfiguration für die ausgewählte Karte. Insbesondere wird die Konfiguration auf dem PC 14 des Systemverwalters mittels einer Benutzerschnittstelle, wie z. B. einer Menüdarstellung, spezifiziert. Die nachstehenden Konfigurationsparameter werden von dem Betreiber zum Einstellen der Konfigurationsinformation gewählt: (1) Aufzeichnungsinformation (Schritt S1406), (2) NEB-Name (Schritt S1407) und (3) Anwendungstyp (wie z. B. CPSERVER) (Schritt S1408).
- Unter Aufzeichnungsinformation spezifiziert der Systemverwalter eine von 4 unterschiedlichen Aufzeichnungsebenen "KEINE", in welcher die Aufzeichnung deaktiviert ist; "AUTO", in welcher statistische Grunddaten der Druckerbenutzung einmal am Tag aufgezeichnet werden; "FEHLER", in welcher statistische Grunddaten der Druckerbenutzung und Fehlerereignisse bei ihrem Auftreten aufgezeichnet werden; und "JOB", in welcher statistische Grunddaten der Druckerbenutzung, Fehlerereignisse und Information über Job-Start/Ende jeweils bei ihrem Auftreten aufgezeichnet werden. Nach der Auswahl der Aufzeichnungspräferenz muß der Systemverwalter auch die maximale Aufzeichnungsgröße einstellen (außer, wenn "KEINE" gewählt ist), um so dem Drucker zu ermöglichen, diesen Platzbedarf auf seiner Festplatte (oder in seinem NVRAN 111 für den Fall, daß es keine Druckerfestplatte oder kein NVRAM 228 in der NEB gibt) zum Speichern der Aufzeichnungsinformation zu reservieren.
- Unter NEB-Namensinformation Schritt S1407 kann der Systemverwalter der NEB einen alphanumerischen Namen, wie z. B. einen beschreibenden Namen wie "Laserdrucker im 2. Stock" zuordnen. Der beschreibende Name wird von der NEB in ihrem NVRAM gespeichert, und von der NEB und anderen Netzwerkgeräten zur Unterstützung bei der Identifikation verwendet.
- Unter Auswahl des Anwendungstyps (Schritt S1408) wählt der Systemverwalter aus, ob die NEB als ein CPSERVER oder ein CRPRINTER konfiguriert wird. Wenn CPSERVER gewählt wird, ist es erforderlich, den Namen des der NEB zugeordneten Druckservers, ein Paßwort, eine Anwendungspuffergröße, einen Warteschlangendienstmodus, Formnummern, die Druckernummer des Druckers, in welchem die NEB eingebaut ist, den (die) Namen der von der NEB bedienten Druckwarteschlange(n) und den Namen des primären Dateiservers anzugeben. Wenn CRPRINTER gewählt wird, muß der Systemverwalter den Namen des Druckservers, über welchen die NEB ihre Druckinformation erhält, die Druckernummer des Druckers, in welche die NEB eingebaut ist, den (die) Namen der von der NEB bedienten Druckwarteschlange(n) und den Namen des primären Dateiservers anzugeben.
- Im Schritt S1409 sendet CPINIT die neue Konfiguration über das LAN-Netzwerk an die NEB. In der gewählten NEB empfängt CPSOCKET die neue Konfigurationsinformation und speichert diese in dem NVRAM 228 (Schritt S1410).
- Für den Abschluß der Konfiguration der NEB sollte die NEB neu gebootet werden. Der Systemverwalter gibt über CPINIT einen Befehl, welcher wiederum einen Befehl zum Neu-Booten über das LAN an die gewählte NEB sendet (Schritt S1411). In der NEB empfängt CPSOCKET den Befehl zum Neu-Booten, und bootet die NEB in der neuen Konfiguration (Schritt S1412).
- CPCONSOL ist ein von dem PC 14 des Systemverwalters ausgeführtes Hilfsprogramm, mittels welchem die NEB für eine maximale Steuerung und Effizienz des Netzwerkdruckers verwendet werden kann. Unter Verwendung von CPCONSOL ist es möglich, aus der Ferne Routine- und vorliegende Wartungsparameter zu verfolgen. Beispielsweise kann festgestellt werden, wenn zu wenig Toner vorhanden ist, wenn der Papierschacht leer ist, wenn eine Seite einen Stau bewirkt oder wenn der Drucker überhaupt nicht reagiert. CPCONSOL kann auch die Gesamtanzahl gedruckter Seiten verfolgen, um sowohl eine Routine- oder präventive Wartung als auch einen eventuellen Druckerersatz zu planen.
- Das Hilfsprogramm CPCONSOL gibt dem Systemverwalter Zugriff auf statistische Daten des Druckerbetriebs sowie der Effizienz der Netzwerkkommunikation. CPCONSOL kann die Gesamtanzahl gedruckter Seiten, sowie die mittlere Seitenrate pro Minute, mittlere Seitenrate pro Tag und andere statistische Daten ermitteln, die eine Überwachung der Betriebseffizienz des Druckers ermöglichen.
- Die statistischen Daten des Netzwerks erlauben eine Messung der Effizienz der Kommunikation in dem Netzwerk der Häufigkeit von Sende- und Empfangsfehlern sowie von Wiederholungsversuchen, Überlauf- und Unterlauffehlern.
- Wenn mehrere Drucker installiert sind, kann CPCONSOL die Nutzung jedes Druckers sowohl hinsichtlich der Gesamtjobs als auch der Gesamtseiten ferngesteuert verfolgen. Dieses ermöglicht eine Jobverfolgung, wie z. B. für eine direkte Abrechnung nach Abteilungen für Posten, wie z. B. Papierverbrauchskosten.
- Durch die permanente Überwachung kann CPCONSOL zur Ermittlung beitragen, ob Netzwerkdrucker zu ersetzen sowie für einen besseren Wirkungsgrad hinzuzufügen sind, sowie zur Vorausplanung eines Ersatzes beitragen.
- CPCONSOL kann auch Vorgabe-(sichere)-Umgebungsparameter einstellen, welche sicherstellen, daß der Drucker vor jedem Druckjob in derselben Weise konfiguriert wird (siehe nachstehendes Kapitel 4m). Der Benutzer kann natürlich dieses Konfiguration innerhalb des Druckjobs selbst verändern.
- Fig. 15 ist ein detailliertes Flußdiagramm, das den Betriebsablauf von CPCONSOL darstellt. Wie CPINIT sendet CPCONSOL zuerst eine Anfrage zur Identifikation aller mit dem LAN verbundenen NEB's über das LAN aus (Schritt S1501). In den NEB's antwortet CPSOCKET mit den eindeutigen Netzwerkidentifikatoren und der der NEB zugewiesenen Prozeßadressennummer (Schritt S1502). CPCONSOL sammelt diese Antwortdaten für alle NEB's und stellt eine Liste aller Antworten der NEB's dem Verwalter dar (Schritt S1503). Der Verwalter wählt eine der NEB's, worauf CPCONSOL eine direkte Netzwerkkommunikation mit der ausgewählten NEB mittels LAN-Sendungen zu den Netzwerkidentifikations- und Prozeßadressennummern aufbaut.
- Sobald eine direkte LAN-Kommunikation zu der gewählten NEB hergestellt ist, arbeitet CPCONSOL mittels einer Benutzerschnittstelle, wie z. B. einer Menüanzeige (Schritt S1504) Das Menü unterteilt die Funktionen von CPCONSOL in fünf Gruppen: Umgebung, Netzwerkaufzeichnung, Aufzeichnung, Anwendungssteuerung und Druckerstatus. Diese Funktionsgruppen werden in den nachfolgenden Kapiteln detailliert dargestellt.
- Die Auswahl von Umgebung erlaubt CPCONSOL die Darstellung der aktuellen Umgebung des ausgewählten Druckers (Schritt S1506), und die Modifikation und Speicherung der neuen Umgebung (Schritt S1507). Die Umgebung wird in vier Gruppen unterteilt: Gemeinsame Umgebung, Schnittstelle, Steuerung und Qualität.
- Nach der Wahl von "Gemeinsamer Umgebung" initialisiert CPCONSOL eine LAN-Anfrage an die gewählte NEB nach den Einstellungen für den Emulationsmodus, Einzugsweg, und die Gesamtanzahl der Seiten. CPSOCKET in der ausgewählten NEB empfängt die LAN-Anfrage, erhält die gewünschte Information von ihrem angeschlossenem Drucker über die bidirektionale SCSI- Schnittstelle und sendet die Information über die LAN- Schnittstelle zu CPCONSOL im PC 14 des Verwalters. Dort zeigt CPCONSOL eine Liste an, welche den Emulationsmodus, den Einzugsweg und die Gesamtseitenanzahl anzeigt.
- Nach der Wahl des Menüpunktes "Schnittstelle" initialisiert CPCONSOL eine LAN-Anfrage an die ausgewählte NEB für eine Schnittstelleninformation. Wenn die NEB antwortet, bewirkt CPCONSOL, daß die Schnittstellenliste diejenige Schnittstelle anzeigt, die aktuell für den ausgewählten Drucker eingestellt ist.
- Die Auswahl des Menüpunktes "Steuerung" bewirkt in ähnlicher Weise, daß CPCONSOL eine LAN-Anfrage an die ausgewählte NEB initialisiert, welche wiederum ihren Drucker über den bidirektionalen SCSI-Bus nach den Druckereinstellungen abfragt. Die Druckereinstellungen werden über die LAN-Schnittstelle zu CPCONSOL zurückgesendet, welches die aktuellen Einstellungen des Druckers gemäß Tabelle 3 darstellt.
- Steuerinformation Beschreibung
- Kontrast Druckerkontrasteinstellung
- Zeitsperre Dieses ist die Einstellung der im Drucker eingestellten Job- Zeitsperre
- Meldung Sprache in welcher Meldungen dargestellt werden.
- Kopie Anzahl der Kopie jeder Druckseite
- Versatz X Der Versatz, wenn überhaupt vorhanden, in der horizontalen Richtung von der oberen linken Ecke der Seite in Millimetern.
- Versatz Y Der Versatz, wenn überhaupt vorhanden, in der vertikalen Richtung von der oberen linken Ecke der Seite in Millimetern.
- Fehlerüberspringen Zeigt an, ob der Drucker für automatisches oder manuelles Fehlerüberspringen eingestellt ist
- Summer Ein- oder Ausschalten des Druckersurnmers.
- Tonervorrat gering Wenn der Tonervorrat gering ist, wird eine Warnung ausgegeben.
- 28-Fehler Die Detektion eines Speicher- voll-Fehlers kann ein- oder ausgeschaltet werden.
- Papier Im Drucker verfügbare Papiergrößen
- Derzeitiges Papier Papierkassette die derzeit im Drucker gewählt ist.
- Nach der Wahl des Menüpunktes "Qualität" zeigt CPCONSOL nach Anfrage und Empfang von Information aus der gewählten NEB über die LAN-Schnittstelle die Einstellungen für den Selektionsmodus, Feinauflösung, Speichernutzung und niedrigen Auflösungsmodus an.
- Die Auswahl von "Netzwerk" ermöglicht CPCONSOL die Darstellung der berechneten statistischen Daten über die Leistung des Netzwerkdruckers im Netzwerk (Schritt S1509) und die Modifikation und Speicherung der neuen Netzwerkgruppe (Schritt S1510). Diese werden in Medien-abhängige und Medien- unabhängige bezogene statistische Sende- und Empfangsdaten aufgeteilt. CPCONSOL kann auch alle statistischen Daten löschen.
- Wenn der Systemverwalter "Netzwerkgruppe" auswählt, initialisiert CPCONSOL eine Anfrage über die LAN-Schnittstelle an die ausgewählte NEB. In der NEB antwortet CPSOCKET auf die Anfrage und erhält die erforderliche Leistungsinformation. Die Information wird von CPSOCKET gesammelt und über die LAN- Schnittstelle an CPCONSOL im PC 14 des Verwalters zurückgesendet. Im PC 14 des Verwalters stellt CPCONSOL die Medien- abhängige und Medien-unabhängige Sende- und Empfangsinformation dar.
- Die Medien-abhängigen statistischen Sende- und Empfangsdaten sind in Tabelle 4 und Tabelle 5 zusammengefaßt.
- Medien-abhängige Empfangsstatistik Beschreibung
- CRC Gesamtanzahl der Fehler einer zyklischen Redundanzprüfung, detektiert von LBP-Remote
- Vermißte Rahmen Anzahl vermißter Rahmen aufgrund Platzmangel im Empfangspuffer, oder wenn sich die Steuerung im Monitormodus befindet
- Ausrichtungsfehler Zeigt an, daß das ankommende Paket nicht an einer Bytegrenze endete
- Empfang gesperrt Steuerung war im Monitormodus
- Verzögerung Wird gesetzt, wenn interne Trägererfassungs- oder Kollisionssignale in dem Codierer/Decodieren erzeugt werden.
- Datenverlust Pufferraumüberlauf während des Empfangs von Daten aus dem Netzwerk
- Überlauf Der Puffer reagierte nicht schnell genug, um aus dem Netzwerk fließende Daten zu halten.
- Medien-abhängige Sendestatistik Beschreibung
- Kollisionen Gesamtsumme von Paketkollisionen
- Herzschlag Anzahl der Fehlschläge des Sendeempfängers ein Kollisionssignal nach der Übertragung eines Paketes zu senden, bei dem dieses Bit gesetzt ist
- Aufruf außerhalb des Fensters Eingestellt für die Anzahl von Kollisionen, die nach der Schlitzzeit auftraten
- Unterlauf Der Puffer reagierte nicht schnell genug, um in das Netzwerk fließende Daten zu halten.
- Die Medien-unabhängigen statistischen Daten stellen statistische Netzwerkdaten dar, die nicht auf die Übertragungsmedien bezogen sind. Solche statistischen Daten sind eine gu te Zusammenfassung der Gesamtaktivität des Druckers im Netzwerk und sind in Tabelle 6 zusammengefaßt.
- Medien-unabhängige Parameter Beschreibung
- Abbruch Rx-Rahmen Allgemeine Empfangsprobleme
- Gesamt Rx-Rahmen Gesamtanzahl der empfangenen Rahmen
- Rx zu groß Empfangsrahmen größer als erwartet
- Rx zu klein Empfangsrahmen kleiner als erwartet
- Abbruch Tx-Rahmen Allgemeine Sendeprobleme
- Gesamt Tx-Rahmen Gesamtanzahl der gesendeten Rahmen
- Die Auswahl von "Aufzeichnungsgruppe" erlaubt CPCONSOL die Darstellung des Satzes Jobbezogener statistischer Daten, die die NEB berechnet (Schritt S1512) und die Modifikation und Speicherung der neuen Aufzeichnungsgruppe (Schritt 51513). Die dargestellten Daten umfassen Jobmittelwerte, Seitenmittelwerte und Leistungsdaten. CPCONSOL kann mit diesem Menü auch die Gesamtsummen auf Null setzen. Zusätzlich zu den statistischen Daten kann die NEB eine Aufzeichnung für jeden Druckjob erzeugen, die Aufzeichnung auf die Festplatte einer Workstation schreiben, oder die Aufzeichnungsdatei gemäß Konfiguration durch CPINIT löschen.
- Wenn der Systemverwalter die Option "Aufzeichnungsgruppe" wählt, richtet CPCONSOL eine LAN-Anfrage nach der Aufzeichnungsdatei über die LAN-Schnittstelle an die ausgewählte NEB. In der NEB empfängt CPSOCKET die Anfrage, und da CPSOCKET die Aufzeichnungsdatei in dem Drucker speichert, fordert sie die Aufzeichnungsdatei aus dem Drucker über die bidirektionale SCSI-Schnittstelle an. Die NEB empfängt die Aufzeichnungsdatei, unabhängig davon, wo sie gespeichert ist (wie z. B. auf dessen Festplatte 114) und liefert die Datei über die bidirektionale SCSI-Schnittstelle an CPSOCKET. CPSOCKET gibt dann die Aufzeichnungsdatei über die LAN-Schnittstelle für den Empfang durch CPCONSOL an das Netzwerk weiter.
- Die Aufzeichnungsdatei enthält Werte für die statistischen Daten, welche in drei Kategorien unterteilt sind. "Täglich", "Kumuliert" und "Gemittelt". "Täglich" stellt die Werte für den aktuellen Tag dar. "Kumuliert" stellt die Gesamtsummen für alle Tage seit der letzten Zurücksetzung dar, oder seit dem Einschalten eines Druckers ohne Festplatte. "Gemittelt" sind die kumulierten Gesamtwerte dividiert durch die Anzahl der Tage seit der letzten Zurücksetzung. Für jede der drei Kategorien hält die NEB die Gesamtsummen für die nachstehenden Werte bereit (sofern nicht CPINIT den Aufzeichnungsebene auf "KEINE" gesetzt hat): Tage (Anzahl der Tage seit dem Befehl einer Zurücksetzung oder seit einem Einschaltvorgang), gedruckte Seiten, verarbeitete Druckjobs, Auszeit und Druckzeit.
- CPCONSOL holt auch die gespeicherte Aufzeichnungsdatei zur Betrachtung und zum Ausdrucken auf den Bildschirm. Die Aufzeichnungsdatei liegt in umgekehrter chronologischer Reihenfolge vor, und enthält die nachstehenden Aufzeichnungstypen. Der genaue Inhalt der Aufzeichnungsdatei variiert in Abhängigkeit von der von CPINIT eingestellten Aufzeichnungsebene, gemäß Zusammenfassung in Tabelle 7.
- Typ Daten Beschreibung
- STD < Tage> < Seiten> < Jobs> < Auszeit> < Druck> Tägliche Statistik
- STC < Tage> < Seiten> < Jobs> < Auszeit> < Druck> Kumulierte Statistik
- STA < Tage> < Seiten> < Jobs> < Auszeit> < Druck> Gemittelte Statistik
- SOJ < Anwendung> < Benutzer> < Job> < Dateiserver> Start des < Warteschlange> < Form> Jobs
- INI < NEB-Typ> < ROM/MAC-Adresse> < Druckername> Initialisierungsaufzeichnung
- POW < NEB-Typ> < ROM/MAC-Adresse> < Druckername> Einschaltaufzeichnung
- RBT < NEB-Typ> < ROM/MAC-Adresse> < Druckername> Neu-Boot- Aufzeichnung
- WAR < Anwendung> < Warnung> Warnung
- EOJ < Anwendung> < Benutzer> < Job> < Disposition> Jobende
- ERR < Anwendung> < Fehler > Fehler
- Die Anwendungssteuerung erlaubt CPCONSOL die momentane Konfiguration der NEB innerhalb des Netzwerkes (entweder als CPSERVER oder CRPRINTER) (Schritt S1515) zu betrachten und diese Anwendung zu aktivieren/deaktivieren oder zu modifizieren und speichern (Schritt S1516). Der Zugriff auf die ausgewählte NEB wird durch die LAN-Schnittstelle bereitgestellt, welche auf die Anfrage von CPCONSOL antwortet, indem sie einen Ergebniscode in die LAN-Schnittstelle eingibt.
- Dieses Menü erlaubt CPCONSOL den aktuellen Status des mit der NEB verbundenen Druckers darzustellen (Schritt S1518) und den neuen Druckerstatus zu modifizieren und zu speichern (Schritt S1519). CPCONSOL richtet eine Statusanfrage über die LAN-Schnittstelle an die ausgewählte NEB. In der ausgewählten NEB empfängt CPSOCKET die Statusanforderung und sendet eine Anfrage für die benötigte Statusanforderung über die bidirektionale SCSI-Schnittstelle an den Drucker. CPSOCKET empfängt die Statusinformation aus dem Drucker über die bidirektionale Schnittstelle und führt die Information zu CPCONSOL zurück, wo sie auf dem PC 14 des Systemverwalters angezeigt wird. Es gibt 29 mögliche Statuszustände, wobei "NORMAL" der häufigste gemäß Zusammenfassung in Tabelle 8 ist.
- Status Bedeutung
- NORMAL Ein-Zustand, druckbereit, oder gerade druckend
- OFFLINE Aus-Zustand, nicht druckbereit
- ENGINETEST Druckwerktest detektiert
- MAINTRUNNUNG Wartungsprogramm läuft
- PAPEROUT Papierschacht ist leer
- PRINTEROPEN Die Druckeroberseite ist offen
- PAPERJAMx Papierstau an der Stelle "x"
- NOEPCART Keine EP-Patrone vorhanden
- TONERLOW Tonerpatrone ist fast leer
- ULFEED U-L Einzug
- LOADx Ihr Papier wird geladen
- LOADnn Lade Papier "nn"
- FEEDx Papiertransport [x 0 Meldung]
- FEEDnn Papiertransport "nn"
- OCx CaPSL-Ausgabeanforderung
- SETUPPER Auf oberen Schacht einstellen
- TRAYFULL Papierausgabekorb voll
- PAGEFULL Die Seite ist voll
- LINEERROR22 22 Zeilenfehler (siehe Druckerhandbuch)
- LINEERROR40 40 Zeilenfehler (siehe Druckerhandbuch)
- DLMEMORYFULL Herunterladespeicher voll
- WKMEMORYFULL Arbeitsspeicher voll
- JOBREJECT Job wurde zurückgewiesen
- PRINTCHECK Drucktestfehler
- OPTREMOVAL Optionsentfernung
- FONTFULL Zeichensatzkonfiguration voll
- WARMINGUP Drucker in Aufwärmphase
- SERVICE CALL Service-Anforderung notwendig
- TRANSIENT Ein vorübergehender, nicht identifizierter Fehler ist aufgetreten
- CPSOCKET ist ein Anwendungsprogramm, welches aus dem DRAM 220 auf der NEB 2 heraus in der von dem nicht-präemptiven MONITOR bereitgestellten Multitasking-soft-time-Umgebung läuft. CPSOCKET veranlaßt SAPSERVER, die ausgesendete Prozeßadresse der NEB in dem LAN auf Aussendungen für Client- Programme, wie z. B. CPINIT, CPCONSOL und DOWNLOADER, zu überwachen.
- CPSOCKET ist für die interne Konfiguration der NEB, wie z. B. eine Konfiguration als ein PSERVER oder RPRINTER, verantwortlich. Konfigurationen werden auf Anforderungen von CPINIT gemäß vorstehender Beschreibung eingestellt, es ist jedoch CPSOCKET, daß diese Konfigurationsbefehle empfängt und das NVRAM 228 verändert.
- CPSOCKET führt auch eine Tabelle von Vorgabeeinstellungen für die Geräteumgebung (d. h., eine garantierte sichere Umgebung, siehe nachstehendes Kapitel 4m), lädt die Basiskonfigurationsinformation für den Drucker und für die NEB (z. B. Zeichensätze und Emulationen) beim Einschalten des Gerätes (siehe vorstehendes Kapitel 4d) herunter, liefert die Gerätestatusinformation, statistische Daten, und Aufzeichnungsinformation als Antwort auf CPCONSOL-Anforderungen und stellt die Fähigkeiten zum Zurücksetzen, Neu-Booten und Herunterladen der Firmware zur Verfügung.
- Fig. 16A und 16B umfassen ein detailliertes Flußdiagramm, das den Betriebsablauf des Programms CPSOCKET darstellt. Im Schritt S1601 überträgt der Mikroprozessor 216 nach einem erfolgreichen Einschaltselbsttest (POST) das Programmodul CPSOCKET aus dessen Speicherorten im EPROM 222 in geeignete Speicherorte im DRAM 220. Während der Übertragung konfiguriert der Mikroprozessor 216 das Programm CPSOCKET gemäß der im NVRAM 228 gespeicherten Konfigurationsinformation für das Programm CPSOCKET. Somit ist es beispielsweise möglich, selektiv bestimmte Abschnitte des Programmoduls CPSOCKET abhängig von gewünschten Komplexitätspegeln zu aktivieren, wobei die gewünschten Komplexitätspegel im NVRAM 228 gespeichert sind.
- Im Schritt S1602 beginnt die NEB mit der Ausführung von CPSOCKET aus dem DRAM 220 heraus. CPSOCKET wird in einer Multitasking-soft-time-Umgebung durch das nicht-präemptive Modul MONITOR ausgeführt, welcher eine nicht-präemptive Ausführung anderer Anwendungsprogramme, wie z. B. CPSERVER, erlaubt, ohne nur einem Anwendungsprogramm die Steuerung des Mikroprozessors unter Ausschluß anderer Anwendungsprogramme übernehmen zu lassen.
- Im Schritt S1603 meldet CPSOCKET seine Existenz über die LAN-Schnittstelle mittels Dienstankündigungsprotokollmeldungen (SAPSERVER) welche eine eigene Prozeßadressennummer erhalten, (siehe vorstehendes Kapitel 4g). Da weitere Server in der im Schritt S1602 aufgebauten Multitaskingumgebung arbeiten, und da die Netzwerk®-kompatible Software nur einen Nicht-Dateiserver erlaubt, Ankündigungen von nur einem Softwareknoten, wie z. B. der NEB, zu machen, sendet CPSOCKET seine SAP-Ankündigungen über das Programm SAPSERVER. Wie es vollständiger im Kapitel 4g beschrieben ist, erlaubt das Programm SAPSERVER zwei Netzwerkservern von nur einem Netzwerkknoten aus zu senden, auch wenn das Netzwerk nur einen Server für jeden Netzwerkknoten zuläßt.
- Im Schritt S1604 empfängt CPSOCKET eine gesendete Anforderung von einem Client, beispielsweise CPINIT oder CPCONSOL an der eigenen Prozeßadresse 453. CPSOCKET antwortet dem Client (Schritt S1605) mit einem IPX-Paket auf derselben Prozeßadresse.
- In Schritt S1606 baut der Client eine direkte SPX-Kommunikation mit CPSOCKET über eine Prozeßadressennummer auf, die CPSOCKET vorab zugewiesen ist, hier die Prozeßadressennummer 83B4 zur Kommunikation oder 83B5 für die Verbindung. In Übereinstimmung mit dieser direkten Verbindung empfängt und interpretiert CPSOCKET Client-Anforderungen und/oder Befehle die über die LAN-Schnittstelle empfangen werden, überwacht den Status des Druckers über die bidirektionale SCSI-Schnittstelle empfängt und sendet Statusbefehle und/oder Anfragen an den Drucker über die bidirektionale SCSI-Schnittstelle, rekonfiguriert die NEB und die NEB-Konfigurationsparameter, und sendet die angeforderte Information über die LAN-Schnittstelle an den Client. Diese Schritte werden nachstehend vollständiger in Verbindung mit den Schritten S1607 bis S1620 von Fig. 16A und Fig. 16B beschrieben.
- Detaillierter beschrieben, geht der Ablauf im Schritt S1607, wenn CPSOCKET ermittelt, daß ein Konfigurationsbefehl empfangen wurde, zu dem Schritt S1608 über, in welchem die Konfigurationsbefehle ausgeführt und das Ergebnis über das LAN dem Client zur Verfügung gestellt wird. Die Konfigurationsbefehle sind in Tabelle 9 aufgelistet und erstrecken sich im allgemeinen auf die Konfiguration der NEB-Karte entweder als ein CPSERVER oder als ein CRPRINTER in Abhängigkeit von den von dem Programm CPINTT initiierten Konfigurationsbefehlen. Tabelle 9: Konfigurationsbefehle
- Wenn im Schritt S1609 CPSOCKET festgestellt wird, daß ein Geräteinformationsbefehl empfangen wurde, geht der Ablauf zu dem Schritt S1610 über, in welchem diese Geräteinformationsbefehle ausgeführt und die Ergebnisse der LAN-Schnittstelle zur Verfügung gestellt werden. Im allgemeinen erstreckt sich die Geräteinformation auf die Schnittstellen-, Steuerstatus-, Zeichensatz- und Umgebungseinstellungen des mit der NEB 2 verbundenen Druckers 4. Die Geräteinformationsbefehle im Schritt S1610 erlauben das Lesen der Druckergeräteinformation, Setzen der Druckergeräteinformation, Lesen von Vorgabeeinstellungen für diese Information und Zurücksetzen der Vor gabeeinstellungen auf gewünschte Werte. Die Geräteinformationsbefehle sind detailliert in Tabelle 10 aufgeführt. Tabelle 10: Geräteinformationsbefehle
- Wenn im Schritt S1611 CPSOCKET feststellt, daß ein Konfigurationsparameterbefehl empfangen wurde, geht der Ablauf zum Schritt S1612 über, in welchem CPSOCKET den empfangenen Befehl ausführt, und das Ergebnis dem Client über das LAN zur Verfügung stellt. Gemäß Darstellung in Tabelle 11 erstrecken sich Konfigurationsparameterbefehle im allgemeinen auf in der NEB gespeicherte Werte, welche Zeit, Datum, sichere Druckerumgebungsinformation, Aufzeichnungsoptionen, Aufzeichnungsdateigröße und so weiter betreffen. Tabelle 11: Konfigurationsparameterbefehle
- Wenn im Schritt S1613 CPSOCKET feststellt, daß ein NEB- Anwendungsprogramm empfangen wurde, geht der Ablauf zum Schritt S1614 über, in welchem CPSOCKET Information über das derzeitige Anwendungsprogramm, nämlich RPRINTER, PSERVER oder LPR (UNIX) liefert. Die Anwendungsprogramminformation enthält im allgemeinen den Servernamen, die Dateiserverwarteschlange, die Geräteidentifikation und so weiter, wie in Tabelle 12 detailliert beschrieben: Tabelle 12: Anwendungsprogramminformation
- Wenn im Schritt S1615 (Fig. 16B) CPSOCKET feststellt, daß ein Befehl für statistische Daten der NEB bzw. Druckers gegeben wurde, geht der Ablauf zum Schritt S1616 über, in welchem CPSOCKET den Drucker über die bidirektionale SCSI-Schnittstelle abfragt, um die benötigten statistischen Daten des Drucker zu erhalten. Die statistischen Daten entsprechen sowohl dem vorstehend in Verbindung CPCONSOL beschriebenen Netzwerkgruppenanzeigen, als auch den statistischen Daten des Druckjobs, wie z. B. der Gesamtanzahl gedruckter Seiten, der Gesamtanzahl von Jobs, der gesamten Aus-Zeit und so weiter Die statistischen Daten des Jobs entsprechen der vorstehend in Verbindung mit dem Programm CPCONSOL beschriebenen Aufzeichnungsgruppe. Spezifische Beispiele der bei den Befehlen für statistische Daten der NEB bzw. des Druckers ausgeführten Befehle sind in Tabelle 13 dargestellt. Tabelle 13: Befehle für statistische Daten
- Wenn im Schritt S1617 CPSOCKET feststellt, daß ein Aufzeichnungskommando empfangen wurde, geht der Ablauf zum Schritt S1618 über, in welchem CPSOCKET die Aufzeichnungsdatei aus der Druckerfestplatte 114 über die bidirektionale SCSI-Schnittstelle erhält und die Aufzeichnungsdatei über die LAN-Schnittstelle dem Client sendet. Die Aufzeichnungsbefehle sind in Tabelle 14 zusammengefaßt. Tabelle 14: Aufzeichnungsbefehle
- Wenn im Schritt S1619 CPSOCKET feststellt, daß ein Herunterladebefehl von der LAN-Schnittstelle empfangen wurde, geht der Ablauf zu dem Schritt S1620 über, in welchem CPSOCKET die Herunterladeanforderung ausführt, indem sie beispielsweise ein herunterladbaren Code empfängt, und diesen an spezifizierten Stellen im DRAM 220 speichert, wobei sie Prüfsummendaten für den herunterladbaren Code erzeugt, und den herunterladbaren Code in das EPROM 222 überträgt. Einige der wichtigeren Herunterladebefehle sind in Tabelle 15 zusammengefaßt. Tabelle 15: Herunterladebefehle
- Wie vorstehend unter Bezugnahme auf Fig. 5A beschrieben, umfassen die Schritte S9 bis S12 eine automatische Aufzeichnungsfunktion in welcher statistische Daten von Peripheriegeräten (z. B. die Anzahl pro Tag gedruckter Seiten) und Fehlereignisse automatisch für ein späteres Zurückholen aufgezeichnet (gespeichert) werden; und wobei die Aufzeichnungsebene (statistische Auflösung) von dem Netzwerkverwalter verändert werden kann. Im allgemeinen kann der Netzwerkverwalter eine Aufzeichnungsebene wählen, und dann die statistischen Daten des Druckers und Fehlerereignisse jederzeit aus der Aufzeichnungsdatei herausholen. Der Anteil des Netzwerkverwalters an derartigen Funktionen wurde vorstehend im Kapitel 41 beschrieben, und es kann Bezug auf die Diskussion und die darin ausgeführten Tabellen, insbesondere Tabelle 7, genommen werden, welche den Inhalt der Aufzeichnungsdatei abhängig von der von CPINIT eingestellten Aufzeichnungsebene anzeigt.
- Im Hintergrund führen einige LAN-Peripheriegeräte ihre eigenen Statistiken, wobei aber die NEB 2 die Fähigkeit besitzt, den derzeitigen Status und tägliche statistische Daten des Drucker 4 jeden Tag um Mitternacht aufzuzeichnen. Dieses entlastet den Netzwerkverwalter davon, sich daran zu erinnern, dieses täglich auszuführen. Die Status- und statistischen Daten können in der Druckerfestplatte 114, dem Drucker- NVRAM 111, in dem NEB-DRAM 220 oder in dem NEB-NVRAM 228 gespeichert werden. Die Stelle der gespeicherten Aufzeichnungsdatei kann von dem Netzwerkverwalter, abhängig von der verbleibenden Speicherkapazität jeder dieser Speicher und den statistischen Daten, die durch den von dem Netzwerkverwalter gewählten Aufzeichnungsebene erforderlich sind, gewählt werden. Beispielsweise kann der Netzwerkverwalter, wenn der Drucker eine Festplatte aufweist, die ziemlich detaillierte "JOB"-Aufzeichnungsebene wählen, so daß umfangreiche statistische Daten aufbewahrt werden können. Andererseits kann der Netzwerkverwalter, wenn der Drucker keine Festplatte aufweist, die weniger detaillierten "FEHLER"-Aufzeichnungsebene wählen, so daß weniger Speicherraum benötigt wird. Wenn die Aufzeichnungsdatei gefüllt ist, bewegen sich neue Fehlerdaten lediglich im Speicher im Kreis, indem alte Fehlerdaten durch neue Fehlerdaten ersetzt werden.
- Die NEB speichert automatisch jede Nacht statistische Daten des Druckers, wie z. B. gedruckte Seiten, gedruckte Jobs, "Aus"-Zeit und Druckzeit für den Zugriff des Systemverwalters zu einem späteren Zeitpunkt. Die statistische Daten können dazu verwendet werden, den Ersatz von Druckerverbrauchsmaterialien, wie z. B. des Toners, vorwegzunehmen, und das Benutzerverhalten, wie z. B. das Ausschalten des Druckers für längere Zeitperioden überwachen.
- Im allgemeinen wird die Aufzeichnungsfunktion durch die Druckersteuerkarte erzielt, welche immer die Zeit kennt. Wenn eine Drucker/Steuerungs-Karte zum ersten Mal eingeschaltet wird, findet die Karte den nächstgelegenen Server und fragt die Zeit ab. Die Karte setzt dieses jede Minute fort. Wenn sich der Wochentag verändert, fordert die Karte automatisch den Drucker auf, seinen Seitenzählerstand zu melden. Die Karte berechnet dann die statistischen Daten des Tages und spei chert diese entweder auf der Druckerfestplatte oder auf dem NVRAM der Karte. Diese statistischen Daten werden gespeichert und stehen dem externen Netzwerkprogramm CPCONSOL zur Verfügung, das sie auf einem Bildschirm anzeigen oder in einer externen Datei sichern kann.
- Gemäß vorstehender Beschreibung in Kapitel 41 kann der Netzwerkverwalter 4 Aufzeichnungsebenen wählen: "KEINE"; "AUTO"; "FEHLER"; und "JOB". In der Ebene "KEINE" werden keine Aufzeichnungen statistischer Daten durchgeführt (obwohl sie trotzdem jede Minute berechnet und zeitweise in dem NEB- DRAM 220 zwischengespeichert werden). In der "AUTO"-Ebene werden statistische Tagesdaten für die Druckermerkmale, wie z. B. Drucktage, Seiten, Jobs, Auszeit und Druckzeit, aufbewahrt. Die Anzahl kumulierter gedruckter Seiten wird von dem Drucker ermittelt, während die anderen statistischen Daten werden von der NEB ermittelt werden.
- Die "FEHLER"-Aufzeichnungsebene bewahrt die vorstehend diskutierten statistischen Tagesdaten und auch die Fehlerzustände in dem Drucker auf, und auch Fehler, die in einer Anwendung (d. h., in CPSERVER). Die NEB fragt den Drucker jede Minute nach derartigen Fehlerzuständen ab. Solche Druckerfehlerzustände können umfassen: Aus-Zeit; Papiermangel; Drucker-ist-offen; Papierstau; keine Tonerpatrone; zu wenig Toner; Druckerzuführungs- und Ladefehler; Ablage-ist-voll; Zeilenfehler; Druckjob zurückgewiesen; Zeichensatz ist voll; Serviceanforderung; und so weiter. Anwendungsfehler können umfassen: Dateiserver ausgeschaltet; primärer Dateiserver nicht verfügbar; CPSERVER läuft anderswo; IPX nicht eingebaut und so weiter.
- Die "JOB"-Aufzeichnungsebene bewahrt die vorgenannten statistischen Tagesdaten und Fehlerzustände und auch die Job- Start- und Job-Ende-Information auf, welche von der NEB bestimmt werden. Natürlich kann die Anzahl und Art von Aufzeichnungsebenen und die in jeder Aufzeichnungsebene aufbewahrten Daten gemäß dem spezifischen Peripheriegerät und dem spezifischen LAN, in welchem die NEB eingebaut ist, variiert werden.
- Fig. 17A und Fig. 17B umfassen ein Flußdiagramm, das den gesamten Betriebsablauf der automatischen Aufzeichnungsfunktion innerhalb der NEB darstellt. Es kann auch Bezug auf die vorstehend erwähnte Fig. 5A und Tabelle 7 genommen werden. Im Schritt S1 wird die Energieversorgung an die NEB angelegt, und im Schritt S8 findet das Zeitgebermodul den nächstgelegenen Server und fordert die Zeit an. Im Schritt S1701 wird festgestellt, ob der Aufzeichnungspegel "KEINE" gewählt ist. Wenn der Aufzeichnungspegel "KEINE" gewählt wurde, springt der Ablauf zu dem Ende des Flußdiagramms, wo ein Rücksprung zu dem Gesamtflußdiagramm von Fig. 5A, 5B und 5C erfolgt.
- Wenn der Aufzeichnungspegel "KEINE" im Schritt S1701 nicht gewählt wurde, stellt der Schritt S1702 fest, ob die Aufzeichnungsebene "AUTO" gewählt wurde. Wenn die Aufzeichnungsebene "AUTO" gewählt wurde, geht der Ablauf zum Schritt S9 über, wo Mitternacht abgewartet wird. Wenn jedoch die Aufzeichnungsebene "AUTO" nicht gewählt wurde, ermittelt der Schritt 1703, ob die Aufzeichnungsebene "FEHLER" gewählt wurde. Wenn die Aufzeichnungsebene "FEHLER" gewählt wurde, springt der Ablauf zu dem Schritt S1706, wo eine Zeitsperre von einer Minute abgewartet wird. Wenn jedoch die Aufzeichnungsebene "FEHLER" nicht gewählt wurde, wird in Schritt S1704 festgestellt, daß die Aufzeichnungsebene "JOB" gewählt wurde. In diesem Falle speichert der Schritt S1705 den Job- Start- und Job-Ende-Zeitpunkt in der Aufzeichnungsdatei. Im Schritt S1706 wird eine Zeitsperre von einer Minute abgewartet, worauf der Schritt S1707 den Drucker nach Fehlerereignissen abfragt, und solche Ereignisse in der Aufzeichnungsdatei sichert. Somit fragt die Karte, wenn entweder die Aufzeichnungsebene "FEHLER oder "JOB" gewählt wurde, den Drucker jede Minute nach Fehlerereignissen ab, und speichert solche Fehlerereignisse in der Aufzeichnungsdatei.
- Der Schritt S9 wartet Mitternacht ab, worauf die NEB den Drucker im Schritt S10 (Fig. 15B) nach seinen statistischen Tagesdaten abfragt. Wenn Mitternacht im Schritt S9 nicht erreicht wurde, kehrt die Prozedur zu dem Schritt S1702 zurück, wo festgestellt wird, welche Aufzeichnungsebene gewählt wurde.
- Im Schritt S11 werden die statistischen Tagesdaten des Druckers unter Verwendung der im Schritt 10 erhaltenen statistischen Daten des Druckers berechnet. Anschließend werden im Schritt S12 die statistischen Tagesdaten und die Fehlerereignisse in der Festplatte 114 des Druckers und/oder in dem NVRAM 111 des Druckers, und/oder in dem NYRAM 228 der NEB gespeichert. Man beachte hier, daß der Netzwerkverwalter die Speicherung statistischer Aufzeichnungsdaten und Fehlerereignisse in jeder Kombination von Speichern wählen kann, was dem LAN eine weitere Flexibilität verleiht.
- Die vorstehend diskutierten Aufzeichnungsfunktionen sind ziemlich erheblich, um den Drucker zu einem interaktiven reagierenden Element des LAN's zu machen, da die SCSI-Verbindung zwischen der NEB und dem Drucker große Mengen spezifischer Daten aus dem Drucker extrahieren kann.
- Wie vorstehend kurz unter Bezugnahme auf Schritt S20 von Fig. 5B beschrieben, speichert das NEB-EPROM 222 ein Programm MONITOR, welches ein Mechanismus ist, welcher einen Multitasking-Betrieb in der "run-time"-Umgebung unterstützt, während es gleichzeitig einen synchronen Betrieb in einer "debug"-Umgebung ermöglicht. MONITOR erlaubt die Ausführung aktuell aufgerufener Aufgaben auf einer nicht-präemptiven Basis, während die NEB "real-time"-Interrupts entweder über die LAN- (für CPSERVER oder CPSOCKET) oder über die SCSI-Schnittstelle (z. B. wenn Statusinformation aus dem Drucker an die NEB als Antwort auf eine zuvor aus dem LAN empfangene Statusanfrage geliefert wird), abwartet. Somit erlaubt MONITOR die gleichzeitige Abwicklung aller zur Zeit ausgeführten Aufgaben durch eine verteilte Nutzung des Mikroprozessors 216. Natürlich sind alle "soft-time"-Anwendungen einschließlich MONITOR selbst durch "real-time"-Ereignisse unterbrechbar.
- Fig. 18 ist ein theoretisches Flußdiagramm einer Ablauffolge von Ereignissen, welche nacheinander auftreten können, um den Multitasking-Betrieb in der NEB darzustellen. Im Schritt S1 wird die Energieversorgung an die NEB angelegt und das Programm MONITOR im Schritt S1801 aus dem EPROM 222 in das DRAM 220 hinuntergeladen. Beispielsweise werden die nachstehenden Module zusammen mit MONITOR heruntergeladen: SCSI- Treiber; Verbindungsunterstützungsschicht (LSL); Netzwerktreiber; PRESCAN; IPX/SPX; speziell angepaßtes NETX; SAPSERVER; CPSOCKET und Druckanwendungen (siehe Fig. 6).
- Wenn im Schritt S1802 Druckdaten von dem Dateiserver 30 empfangen werden, beginnt CPSERVER mit der Verarbeitung der empfangenen Jobdaten zur Vorbereitung der Übertragung auf den Drucker 4. Die Verarbeitung einer derartigen Druckinformation befindet sich nun in der "soft-time"-Umgebung, und der Schritt S1803 stellt fest, ob ein Abtretungsinterrupt von dem die Druckdaten verarbeitenden Programm empfangen wurde. Wenn ein Abtretungsinterrupt im Schritt S1803 angekommen ist, wird die Ausführung des zur Zeit arbeitenden Moduls gestoppt und die Steuerung im Schritt S1804 an MONITOR zurückgegeben. MONITOR speichert den Status der unterbrochenen Aufgabe im DRAM 220. Wenn jedoch kein Abtretungsinterrupt im Schritt S1803 angekommen ist, geht der Ablauf zum Schritt S1805 über, wo festgestellt wird, ob das derzeit arbeitende Modul sein Ende erreicht hat. Wenn das Ende im Schritt S1805 nicht erreicht worden ist, wartet das Programm bis ein anderer Abtretungsinterrupt im Schritt S1803 ankommt.
- Wenn das derzeit ausgeführte Modul im Schritt S1804 gestoppt wurde, oder das derzeit ausgeführte Modul sein Ende im Schritt S1805 erreicht hat, wird im Schritt S1806 bestimmt, ob Daten empfangen wurden, welche die Ausführung eines weiteren Softwaremoduls erfordern, z. B. wenn Daten über die SCSI- Schnittstelle als Antwort auf eine zuvor getätigte Anforderung nach dem Druckerstatus empfangen werden. Wenn im Schritt S1806 ermittelt wird, daß derartige Daten empfangen wurden, beginnt der Schritt S1807 mit der Ausführung eines anderen Anwendungsmoduls unter Verwendung der neu empfangener Daten.
- Im Schritt S1808 wird ermittelt, ob ein Abtretungsinterrupt in dem zweiten Anwendungsmodul angekommen ist. Wenn ein derartiger Interrupt angekommen ist, beendet die zweite Anwendung ihre Ausführung, und gibt die Steuerung an MONITOR ab, welches im DRAM 220 den Status des gerade unterbrochenen zweiten Moduls im Schritt S1809 speichert. Wenn jedoch der Abtretungsinterrupt in dem zweiten Modul nicht im Schritt S1808 angekommen ist, wird im Schritt S1810 festgestellt, ob das zweite Modul sein Ende erreicht hat. Wenn das Ende nicht erreicht wurde, wartet das Programm lediglich den Abtretungsinterrupt im Schritt S1808 ab. Wenn festgestellt wird, daß das Ende des zweiten Moduls im Schritt S1810 erreicht wurde, ermittelt der Schritt S1811, ob das Ende des ersten Moduls erreicht wurde. Wenn das Ende des ersten Moduls nicht erreicht wurde, aber das Ende des zweiten Moduls erreicht wurde, kehrt der Ablauf zu einem Wartevorgang auf einen Abtretungsinterrupt in dem ersten Anwendungsmodul im Schritt S1803 zurück. Wenn sowohl das erste als auch das zweite Modul ihr Ende im Schritt S1811 erreicht haben, kehrt die Steuerung auf wieder zu dem Programm MONITOR zurück, um weitere neu empfangene "soft-time"-Aufgaben auszuführen.
- Nachdem das zweite Anwendungsmodul die Ausführung wegen des Ankommens eines Abtretungsinterrupt darin gestoppt hat, wird die Steuerung an MONITOR übergeben, welches nach Speicherung des Status des unterbrochenen Moduls im DRAM 220 (Schritt S1809) wieder mit der Ausführung des ersten Moduls im Schritt S1812 beginnt und mit der Ausführung des ersten Moduls fortfährt, bis ein weiterer Abtretungsinterrupt des ersten Moduls im Schritt S1803 erreicht wird.
- Somit erlaubt die nicht-präemptive Multitaskingzuordnung der Mikroprozessorressourcen eine parallele Verarbeitung von Aufgaben nahezu auf einer "real-time"-Basis.
- Wie vorstehend unter Bezugnahme auf Schritt S25 in Fig. 5C diskutiert, stellt die NEB sicher, daß der Drucker am Beginn oder Ende eines Druckjobs in eine bekannte Vorgabekonfiguration versetzt wird. Die NEB erledigt dieses, indem sie in den nicht-flüchtigen Speicher des Druckers (entweder in die Festplatte 114 oder das NVRAM 111) einen Vorgabekonfigurationscode hinunterlädt, welcher die Vorgabeumgebung (z. B. einen Hochformatmodus, eine 10-Punkt-Schriftgröße, einen Roman- Zeichensatz usw.) anzeigt, in welcher der Drucker am Abschluß eines Druckjobs belassen werden sollte. Nach dem Empfang eines Druckdatenstroms aus dem LAN empfängt die NEB den Konfigurationscode aus dem nicht-flüchtigen Speicher, fügt den Konfigurationscode an einen Block von Druckdaten als eine Escape-Sequenz an und lädt dann den Druckjobblock mit der angefügten Escape-Sequenz in den Drucker hinunter. Der Drucker führt dann einen Druckvorgang aus, und (auf der Basis des Escape-Sequenz) wird der Drucker in der gewünschten Vorgabekonfiguration belassen.
- Die NetWare®-Software von Novell enthält die Möglichkeit einen Netzwerkdrucker nach jedem Druckjob auf eine Vorgabeumgebung zurückzusetzen. Sie erledigt dieses, indem der Dateiserver 30 etwas installiert, was einen simulierten Druckjob am Beginn des Druckjobs selbst ergibt. Die genauen Drucker- Escape-Sequenzen die erforderlich sind, um die speziellen Druckervorgabekonfiguration einzustellen, liegen jedoch innerhalb einer Datenbank in dem Netzwerk, und nicht innerhalb des Druckers selbst. Daher kann dann, wenn UNIX in dem LAN betrieben werden soll, oder wenn ein Problem innerhalb des Dateiservers selbst vorliegt, der Drucker nicht in einen Vorgabezustand versetzt werden, was sicherstellt, daß der nächste Druckjob mit dem Drucker in einer bekannten Konfiguration gedruckt wird.
- Ein Verfahren, um eine Druckervorgabeumgebung unter Verwendung der NEB zu garantieren, arbeitet auf dem Unterschied, daß die Druckerrücksetz-Statuskonfiguration und die erforder lichen Escape-Sequenz-Instruktionen innerhalb des Druckers selbst resident vorliegen, und der Drucker selbst dafür verantwortlich ist, seine eigene Umgebung innerhalb von Druckjobs zurückzusetzen. Somit steht das Druckerrücksetzmerkmal unabhängig von jedem Gerät außerhalb des Druckers zur Verfügung. Ferner kann die anfängliche Vorgabekonfiguration geladen und anschließend von einer abgesetzten Stelle aus über das LAN durch die serielle oder parallele Schnittstelle der NEB modifiziert werden.
- Der Konfigurationscode kann, wie vorstehend in Kapitel 41 diskutiert, über das Programm CPCONSOL an die NEB gesendet werden.
- Es kann vorteilhaft sein, mehrere Vorgabekonfigurationscodes in dem nicht-flüchtigen Speicher des Druckers zu speichern, um dem Netzwerkverwalter eine große Flexibilität für die Druckernutzung in dem LAN zu ermöglichen. Beispielsweise können von einer technischen Abteilung empfangene Druckjobs erfordern, daß die Druckervorgabe ein Hochformatmodus ist, während vom Rechnungswesen empfange Druckjobs erfordern können, daß der Drucker in einem Breitformatmodus belassen wird. Somit kann durch Sicherstellung einer bekannten Vorgabeumgebung jede Quelle von einer Anzahl von LAN-Quellen den Drucker für ihre spezifischen Jobs verwenden.
- Fig. 19 stellt ein detaillierteres Flußdiagramm zur Einstellung der Druckervorgabekonfiguration dar. Im Schritt S1 wird die Energieversorgung an die NEB angelegt, und im Schritt S22 greift die NEB auf den LAN-Dateiserver für aktive Druckwarteschlangen zu und lädt Druckdaten in das DRAM 220 herunter.
- Wenn der nicht-flüchtige Speicher des Druckers mehr als einen Vorgabekonfigurationscode speichert, kann es erforderlich sein, welcher Datentyp von dem LAN übertragen wird, um festzustellen, in welcher Vorgabekonfiguration der Drucker belassen werden sollte. Daher bestimmt der Schritt S1901 die LAN-Quelle des Druckjobs, und der Schritt S1902 holt den ge eigneten Vorgabekonfigurationscode aus dem Drucker, welcher der bestimmten LAN-Quelle entspricht.
- Im Schritt S1903 assembliert die NEB Blöcke von Bilddaten, und legt einen Druckjobanfang und einen Druckjobende für jeden Druckjob fest. Im Schritt S1904 fügt der Mikroprozessor 216 der NEB an einen Druckjob eine Escape-Sequenz an, welche dem empfangenen Konfigurationscode entspricht. Bevorzugt wird die Escape-Sequenz dem Anfang des Druckjobs hinzugefügt, kann aber auch dem Ende des Druckjobs, oder sowohl dem Anfang und dem Ende des Druckjobs hinzugefügt werden. Dann wird im Schritt S1905 der Druckjob mit der angefügten Escape-Sequenz an den Drucker übertragen, und der Drucker führt dann den Druck den empfangenen Druckjob entsprechend aus. Wenn ein Druckjob nach dem Schritt S24 abgeschlossen ist, versetzt sich der Drucker selbst im Schritt S25 in eine Vorgabeumgebung, welche dem im Schritt S1902 empfangenen Konfigurationscode entspricht. Daher verbleibt der Drucker in einer Vorgabeumgebung, welche sicherstellt, daß der nächste Druckjob mit dem Drucker in einer bekannten Konfiguration beginnt.
- Somit wurde eine robuste und effiziente Hardware- und Software-Lösung gefunden, um sicherzustellen, daß der Drucker selbst eine Vorgabekonfiguration speichert, und dafür verantwortlich ist, sich selbst in eine Vorgabekonfiguration am Ende jedes Druckjobs zu versetzten.
- Das Herunterladen ausführbarer Dateien aus dem LAN in das DRAM 220 wird nun detaillierter unter Bezugnahme auf das Flußdiagramm in Fig. 20 und in Bezug auf die vorstehende Diskussion des Schrittes S30 in Fig. 5C beschrieben.
- Die NEB wird vor dem Versand mit einer Anfangskonfiguration versehen. Die NEB kann jedoch anschließend rekonfiguriert werden, indem aktualisierte ausführbare Dateien über das LAN von dem PC 14 des Netzwerkverwalters an die NEB 2 gesendet werden. Ferner kann der Netzwerkverwalter die in dem DRAM 220 der NEB gespeicherten ausführbaren Dateien nach Wunsch ferngesteuert verändern.
- Das Verfahren, mittels welchem ausführbare Dateien im DRAM 220 verändert werden können, wird unter Bezugnahme auf Fig. 20 im Detail diskutiert.
- Nachdem die Karte im Schritt S1 mit Energie versorgt wurde, geht der Ablauf zum Schritt S2001 über, in welchem der Netzwerkverwalter ein Programm DOWNLOADER aktiviert, um über das LAN eine Anforderung für die Identifikation aller NEB- Geräte mit einer speziellen Konfiguration auszusenden, worauf der Ablauf zum Schritt S2002 übergeht.
- Im Schritt S2002 bestimmt das Programm DOWNLOAD, ob irgendwelche ausgewählten NEB's geantwortet haben. Wenn im Schritt S2002 festgestellt wird, daß keine ausgewählten NEB's geantwortet haben, kehrt der Ablauf zum Schritt S2001 zurück, in welchem das Programm DOWNLOAD die Anforderung mit neuer Auswahlinformation wiederholt aussendet, und dann der Ablauf zum Schritt S2002 übergeht.
- Wenn im Schritt S2002 ein ausgewähltes NEB antwortet, geht der Ablauf zum Schritt S2003 über.
- Im Schritt S2003 antwortet das Programm SAPSERVER mit den eindeutigen Netzwerkidentifikatoren und den jeden NEB (siehe vorstehendes Kapitel 4g) zugewiesenen eindeutigen Prozeßadressennummern. Diese Ortsinformation wird gesammelt, der Netzwerkverwalter wählt eine spezifische NEB zum Hinunterladen einer ausführbaren Datei und die Kommunikation mit der ausgewählten NEB wird aufgebaut.
- Nach der Auswahl der Ziel-NEB lädt der Netzwerkverwalter neue Betriebsdateien und ein spezielles Paket, das einen Prüfsummenwert enthält, über das LAN im Schritt S2004 in das DRAM 220 hinunter, worauf der Ablauf zum Schritt S2005 übergeht.
- Im Schritt S2005 führt der Mikroprozessor 216 ein Prüfsummenoperation an den neu geladenen Betriebsdateien aus, und vergleicht den Prüfsummenwert mit einem in dem speziellen Pa ket gesendeten Prüfsummenwert, welcher nach dem Speichern der Betriebsdateien im DRAM 220 gespeichert wird.
- Wenn der Prüfsummenwert nicht gleich dem Prüfsummenwert in dem speziellen Paket ist, geht der Ablauf zum Schritt S2006 über, bei welchem der Mikroprozessor 216 dem Netzwerkverwalter meldet, daß der Prüfsummenwert für die neuen Betriebsdateien nicht korrekt ist, und an welchen Punkt der Mikroprozessor 216 die Dateien aus dem DRAM 220 löschen kann.
- Wenn im Schritt S2006 der Prüfsummenwert verifiziert wird, geht der Ablauf zum Schritt S2007 über, bei welchem die ausführbare Dateien von dem Mikroprozessor 216 ausgeführt werden.
- Somit kann der Netzwerkverwalter den Betrieb der NEB 2 verändern, indem er aus der Ferne neue zu speichernde, und aus dem DRAM 220 heraus auszuführende Betriebsdateien sendet.
- Gemäß vorstehender Beschreibung in Fig. 5C unter Bezugnahme auf Schritt S32 werden, wenn eine binäre ROM-Abbildung in das EPROM 222 geladen werden soll, mehrere unabhängig ausführbare Module assembliert, geordnet, und für eine Übertragung in das EPROM 222 vorbereitet. Die Assemblierung und Anordnung der Module wird derzeit auf einem DOS-PC ausgeführt, kann aber in der NEB selbst ausgeführt werden. Ein Vorteil der Assemblierung der unabhängig ausführbaren Module in einem PC ist der, daß die Module in einer DOS-Umgebung erstellt und/oder modifiziert werden können.
- Die NEB-Firmware weist eine Anzahl separat verknüpfter Module auf, wovon eines einen permanent ROM-residenten Code enthält, welcher die Steuerung beim Anlegen der Energie erhält und den Selbsttest, das Laden weiterer Module in das DRAM 220 und I/O-Grunddienste bereitstellt. Die anderen im EPROM 222 vorliegenden Module müssen vor der Ausführung in das DRAM 220 kopiert werden. Es gibt zwei Typen derartiger Module, wovon der erste Programme umfaßt, welche im wesentlichen Treiber sind, welche die Steuerung beim Laden erhalten, initialisieren, und dann resident zurückbleibend beendet werden. Der zweite Typ derartiger Module sind Anwendungsprogramme, wovon jedes einen spezifischen Satz von Funktionen ausführt.
- In Fig. 21 wird die NEB im Schritt S1 mit Energie versorgt. Im Schritt S2101 liest ein in dem PC resident vorhandenes Hilfsprogramm aus dessen RAM eine Konfigurationsdatei aus, welche die Namen aller in der ROM-Abbildung zu plazierenden Module enthält. Die Konfigurationsdatei wird dazu verwendet, im Schritt S2102 diejenigen Module aus dem RAM auszuwählen, welche in das EPROM 222 übertragen werden sollen.
- Im Schritt S2103 schreibt der Hilfsprogrammschreiber einen Vorspann für das erste Modul, wobei der Vorspann dieses Modul identifiziert, die Modulattribute beschreibt, und einen Zeiger erhält, welcher auf das unmittelbar nachfolgende Modul zeigt. Dieser Zeiger hilft bei der Ordnung der Module in einer spezifischen Reihenfolge vor dem Ladevorgang. Im Schritt S2104 wird ermittelt, ob das durch die Konfigurationsdatei identifizierte letzte Modul ausgewählt wurde. Wenn das letzte Modul nicht ausgewählt wurde, kehrt der Ablauf zu dem Schritt S2103 zurück, wo der Vorspann für das nächste Modul geschrieben wird.
- Wenn das letzte Modul im Schritt S2104 ausgewählt wurde, fügt das Hilfsprogramm den ROM-residenten Code an das Ende des Bildprogramms (im Schritt S2105) an, so daß beim Anlegen der Energieversorgung der Initialisierungscode an der von dem Mikroprozessor 216 erwarteten Adresse resident vorliegt.
- Wenn die binäre ROM-Abbildung auf diese Weise erstellt ist, kann die Abbildung in einen Abschnitt des Speicherbereiches des NEB-DRAM's 220 hinuntergeladen werden, und dann in das EPROM 222 übertragen werden, wie es detaillierter in nachstehendem Kapitel 4q und unter Bezugnahme auf die detaillierte Diskussion von Fig. 5C, Schritt S36 diskutiert wird.
- Fig. 22 ist ein Blockschaltbild, das den funktionalen Aufbau, der auf der NEB vorhandenen EPROM-Übertragungsschutzschaltung darstellt. Die EPROM-Übertragungsschutzschaltung umfaßt den mit einem Datenbus 250 und einem Adressenbus 251 verbundenen Mikroprozessor 216. Ferner ist das DRAM 220 mit dem Datenbus 250 und dem Adressenbus 251 verbunden. Das DRAM 220 ist in der Lage, eine von einem abgesetzten LAN-Gerät heruntergeladene ROM-Firmwareabbildung in einen Abschnitt seines Speicherbereiches zu laden (siehe vorstehendes Kapitel 40), und Anwendungsprozeß schritte in einem weiteren Abschnitt seines Speicherbereiches zu speichern. Ferner sind mit dem Datenbus 250 und dem Adressenbus 251 das EPROM 222, ein Zwischenspeicher 252 und einer PAL 253 (Programmable Array Logic) verbunden. Ein D-Flip-Flop 254 ist mit dem Zwischenspeicher 252 und dem PAL 253 verbunden. Während des Betriebes empfängt das Flip-Flop 244 als sein Takteingangssignal ein Ausgangssignal aus der PAL 253 und als sein Dateneingangssignal ein Ausgangssignal aus dem Zwischenspeicher 252. Der Zwischenspeicher 252 und die PAL 253 sind ebenfalls mit einem Gleichspannungswandler 212 verbunden, und der Gleichspannungswandler 212 ist mit einem Transistorschalter 255 verbunden. Das Flip-Flop 254 ist auch mit dem Transistorschalter 255 verbunden, um das erforderliche Eingangssignal zum Öffnen/Schließen des Schalters 255 bereitzustellen.
- Der Betrieb der EPROM-Übertragungsschutzschaltung wird nun detaillierter unter Bezugnahme auf Fig. 22 erläutert. Nach dem Einschalten ist das Ausgangssignal des Zwischenspeichers 252 auf L-Pegel, und das Flip-Flop 254 ist zurückgesetzt. Auf diese Weise liegt das Ausgangssignal PROG1 aus dem Zwischenspeicher 252 auf L-Pegel und die Spannung aus dem Gleichspannungswandler 212 wird so geleitet, daß sie Strom nach Masse führt. Beim Einschalten wird das Flip-Flop 254 so zurückgesetzt, daß dessen Ausgangssignal auf L-Pegel liegt, und dadurch der Transistorschalter 255 geöffnet wird.
- Wenn sich der Transistorschalter 255 in einem offenen Zustand befindet, wird der Vpp-Anschlußstift des EPROM's 222 auf 0V gehalten, was verhindert, daß Daten akzeptiert oder ein Ladevorgang ausgeführt wird. Das heißt, für das Auftreten eines Übertragungsvorganges im EPROM 222 muß der Vpp-Anschlußstift einen Pegel von mindestens +11,4 Volt erreichen, was ein von den Spezifikationen des EPROM-Herstellers vorgegebenes Erfordernis ist. Um diesen Spannungspegel zu erreichen, sind jedoch die nachstehenden zwei Programmierungsschritte erforderlich.
- Erstens empfängt der Mikroprozessor 216, wenn ein neues ROM-Firmwarepaket im DRAM 220 empfangen wird, einen Befehl, zur Übertragung in das EPROM 222, indem ein I/O-Schreibvorgang an die Adresse 360H mit dem Datenbit 7 auf H-Pegel (8OH) erzeugt wird. Auf diese Weise kann der Gleichspannungswandler 212 zuerst eingeschaltet werden.
- Gemäß Darstellung in Tabelle 16 und 17 entspricht die Adresse 360H dem Steuerregister 230 welches zur Steuerung von Lese/Schreib-Vorgängen in das NVRAM 228 verwendet wird. Gemäß Darstellung in nachstehender Tabelle 17 entspricht die Adresse, wenn 360H mit dem Bit 7 auf H/L-Pegel gesendet wird, einen Betrieb des Gleichspannungswandlers 212.
- I/O-Auswahl Adresse
- LAN-CHIP 300 - 30F HEX (R/W)
- DMA-Datenzwischenspeicherung 310-317 HEX /R/W)
- LAN-CHIP Softwarerücksetzung 318 - 31F HEX (R)
- SCSI-CHIP Register 320 - 32B HEX (R/W)
- Statusregister 330 HEX (R)
- Steuerregister 360 HEX (R/W)
- NMILCK 200 HEX (X)
- LAN-Adressen 340 -35F HEX(R)ROM
- R = Lesen; W = Schreiben Tabelle 17
- Nach Ausgabe der Adresse 360H erzeugt der Mikroprozessor 216 einen I/O-Schreibbefehl und sendet ein Schreibauswahlsignal an die PAL 253. Die PAL 253 detektiert eine gültige Adresse decodiert diese, und aktiviert den Zwischenspeicher 252. Wenn das Bit 7 in der Adresse H-Pegel aufweist, wird das Ausgangssignal PROG1 auf H-Pegel gesetzt und von dem Zwischenspeicher 252 an den Gleichspannungswandler 212 ausgegeben. Wenn das Signal PROG1 am Gleichspannungswandler 212 empfangen wird, steuert es den Gleichspannungswandler so, daß er +12 V erzeugt. Die +12 V aus dem Gleichspannungswandler 212 werden an den Transistorschalter 255 gesendet, und verbleiben an dessen Emitter bis der Transistorschalter 255 geschlossen wird.
- Bevor jedoch die +12 Volt den Transistorschalter 255 passieren dürfen, muß der zweite Schritt ausgeführt werden. Das heißt, der Mikroprozessor 216 gibt einen I/O-Lesebefehl aus, und gibt eine Adresse 366H aus, welche einer PAL-Adresse entspricht. Wenn der Mikroprozessor 216 sowohl den Befehl als auch die Adresse erzeugt, decodiert die PAL 253 die Adresse und erzeugt ein Signal PROG2. Wenn das Signal PROG2 H-Pegel aufweist, stellt es einen Takteingangssignal zu dem Flip-Flop 254 bereit.
- Nach dem Empfang des Takteingangssignals übernimmt das Flip-Flop 254 das Signal PROG1 aus dem Zwischenspeicher 252 und erzeugt dann ein Signal TRANSON an seinem Ausgang. Das Signal TRANSON wird an den Transistorschalter 255 ausgegeben, was den Schalter schließt und den Passieren der +12 Volt von dessen Emitter zu dessen Kollektor erlaubt. Zu diesem Zeitpunkt werden +12 Volt von dem Kollektor des Transistorschalters 255 zu dem Vpp-Anschlußstift des EPROM's 222 gesendet.
- Wenn +12 Volt an den Vpp-Anschlußstift des EPROM's 222 anliegen, sendet der Mikroprozessor 216 ein EPROM-Auswahlsignal. Um zu verhindern, daß die neue Firmwareabbildung korrumpiert wird, muß das EPROM 222 zuerst frei gemacht und gelöscht werden. Dann wird die in dem DRAM 220 gespeicherte neue ROM-Firmwareabbildung in dem EPROM 222 gespeichert. Sobald die neue ROM-Firmwareabbildung im EPROM 222 gespeichert ist, kann die NEB von der neuen ROM-Firmwareabbildung aus, neu gebootet werden.
- Der Betriebsablauf der EPROM-Schutzschaltung wird nun unter Bezugnahme auf Fig. 22 und das Flußdiagramm von Fig. 23 erläutert.
- Im Schritt S2301 wird eine ROM-Firmwareabbildung von der NEB 2 über das LAN empfangen und in das DRAM 220 geladen. Der Mikroprozessor 216 empfängt einen Befehl zum Übertragen in das EPROM 222 im Schritt S2302. Im Schritt S2303 sendet der Mikroprozessor 216 einen I/O Schreibbefehl an die PAL 253 und gibt eine Adresse 360H mit dem Bit 7 auf H-Pegel aus. Der Ablauf geht zu dem Schritt S2304 über, in welchem das Bit 7 mit H-Pegel den Zwischenspeicher 252 aktiviert, so daß dieser das Signal PROG1 ausgibt. Das Signal PROG1 schaltet den Gleichspannungswandler 212 ein, und +12 Volt werden an den Transistorschalter 255 ausgegeben. Im Schritt S2305 sendet der Mikroprozessor 216 sowohl einen I/O-Lesebefehl als auch eine Adresse 366, welche eine PAL-Adresse ist, an die PAL 253. Als Antwort darauf gibt die PAL 253 das Signal PROG2 zum Takten des Flip-Flops 254 aus, was es ermöglicht, daß das Signal PROG1 als dessen Dateneingangssignal eingegeben wird. Das Flip-Flop 254 gibt das Signal TRANSON an den Transistorschalter 255 aus, was es ermöglicht, daß +12 Volt von dem Kollektor des Transistorschalters 255 zu dem Vpp-Anschlußstift des EPROM's 222 geführt werden. Im Schritt S2306 macht der Mikroprozessor das EPROM 222 frei und löscht es dann. Im Schritt S2307 ermittelt der Mikroprozessor 216, ob das EPROM 222 vollständig gelöscht wurde. Wenn das EPROM 222 nicht vollständig gelöscht wurde, kehrt der Ablauf zum Schritt S2307 zurück.
- Nachdem der Mikroprozessor 216 ermittelt hat, daß das EPROM 222 vollständig gelöscht wurde, wird im Schritt S2308 die ROM-Firmwareabbildung aus dem DRAM 220 in das EPROM 222 hinuntergeladen. Sobald die ROM-Firmwareabbildung erfolgreich geladen ist, schreibt der Mikroprozessor 216 im Schritt S2309 die Adresse 360H mit dem Bit 7 auf L-Pegel. Das Signal PROG1 aus dem Zwischenspeicher 252 geht auf L-Pegel und der Gleichspannungswandler 212 ermöglicht, daß der Spannungspegel Strom nach Masse liefert.
- Im Schritt S2310 sendet der Mikroprozessor 216 an die PAL 253 einen I/O-Lesebefehl und eine Adresse 366H, welche es erlaubt, daß das Signal PROG2 auf L-Pegel geht und dadurch das Flip-Flop taktet, welcher ein Signal TRANSON mit L-Pegel ausgibt, welches den Transistorschalter 255 öffnet.
- Somit werden in den Schritten 2309 und S2310 die +12 Volt von dem Vpp-Anschlußstift des EPROM 222 entfernt, und der Übertragungsvorgang beendet. Nach dem Übertragungsvorgang stellt der Mikroprozessor 216 fest, ob im Schritt S2311 ein Befehl zum Neu-Booten empfangen wurde. Wenn der Befehl zum Neu-Booten empfangen wurde, wird die NEB 2 im Schritt S2312 von der neuen Firmwareabbildung neu gebootet. Wenn jedoch kein Befehl zum Neu-Booten empfangen wurde, endet hier der Ablauf.
- Das Verfahren zum Fernverändern von Firmware im EPROM 222 wird nun detaillierter und unter Bezugnahme auf das in Fig. 24 dargestellte Flußdiagramm, Schritt S36 von Fig. 5C und das vorstehende Kapitel 41 diskutiert. Vor der Auslieferung einer NEB an einen Kunden wird die NEB mit der minimalen Anzahl ausführbarer Dateien konfiguriert, welche der NEB ein Ausführen der erforderlichen Funktionen ermöglichen. Die NEB kann jedoch anschließend von dem Kunden rekonfiguriert werden. Das heißt, ein Netzwerkverwalter kann Daten von einem abgesetzten LAN-Gerät herunterladen, die Daten alles von einem Reparaturcode, einer Herstellungstestroutine bis zu in das EPROM hinunterladbaren gesamten Firmwareaktualisierungen enthalten können.
- Detaillierter beschrieben, kann die NEB 2 durch Senden ausführbarer Dateien über das LAN aus dem PC 14 des Netzwerkverwalters zu der NEB 2 rekonfiguriert werden. Der Netzwerkverwalter kann die ROM-Firmwareabbildung im EPROM 222 beliebig fernverändern.
- Im Schritt S2401 aktiviert der Netzwerkverwalter ein Programm CPFLASH, das eine MAC-Adresse als einen Befehlszeilenparameter verwendet, um eine spezifische NEB auszuwählen. CPFLASH befiehlt eine SAP-Sendeanforderung, welche von einem auf der NEB laufenden SAPSERVER beantwortet wird. Im Schritt S2402 wartet CPFLASH auf eine Antwort aus der ausgewählten NEB. Wenn in diesem Falle die ausgewählte NEB nicht in etwa 15 Sekunden antwortet, kehrt der Ablauf zum Schritt S2401 zurück, und die Meldung wird zurückgesendet. In dem Falle, bei dem der ausgewählte Server antwortet, geht jedoch der Ablauf zum Schritt S2403 über.
- Im Schritt S2403 wird die Adresse und der Ort der ausgewählten NEB empfangen, die Kommunikation mit der NEB mit der übereinstimmenden MAC-Adresse aufgebaut und eine neue ROM- Firmwareabbildung über das LAN in das DRAM 220 hinuntergeladen.
- Im Schritt S2404 wird die Gültigkeit der ROM-Firmwareabbildung vor dem Übergang zu dem nächsten Schritt geprüft. Die Gültigkeit der ROM-Firmwareabbildung wird gegen eine Abbildungsprüfsumme verifiziert, welche in einem speziellen Paket bei dem Hinunterladevorgang im Schritt S2403 gesendet wird. Wenn der Prüfsummenwert nicht mit dem mit der ROM- Abbildung hinuntergeladenen Prüfsumme übereinstimmt, wird dem Bediener im Schritt S2405 ein Fehler gemeldet, und die ROM- Firmwareabbildung im DRAM 220 gelöscht.
- Wenn der Prüfsummenwert gültig ist, geht der Ablauf zu dem Schritt S2406 über, bei dem der Mikroprozessor 216 alle Daten holt, welche aufbewahrt werden sollen, wie z. B. die MAC-Adresse, und speichert die Daten innerhalb geeigneter Stellen, in der in DRAM 220 gespeicherten neuen Firmwareabbildung. Auf diese Weise kann die NEB, wenn die neue ROM- Firmwareabbildung fehlerhaft ist, immer noch funktionieren, da vorbestimmte Anteile wichtiger ROM-Firmware erhalten werden. Sobald die wichtigen Anteile der ROM-Firmware gesichert sind, geht der Ablauf zum Schritt S2407 über, wo das DRAM 220 so gesteuert wird, daß es falls erforderlich mehrere Male gelöscht wird. Nach der Löschung des EPROM 222 im Schritt S2408 wird die neue Abbildung in das neue EPROM 222 geladen.
- Nach dem Übertragungsvorgang stellt der Mikroprozessor 216 fest, ob im Schritt S2409 ein Befehl zum Neu-Booten empfangen wurde. Wenn der Befehl zum Neu-Booten empfangen wurde, wird die NEB 2 im Schritt S2410 neu gebootet. Wenn jedoch kein Befehl zum Neu-Booten empfangen wurde, endet der Ablauf hier.
- Im Schritt S2404 kann die Gültigkeit der ROM-Firmwareabbildung ebenfalls durch Vergleich neu empfangener Firmwaredaten mit zuvor im EPROM 222 gespeicherten Daten verifiziert werden. Beispielsweise können, wenn das EPROM 222 zuvor durch das PROM 232 gespeicherte Hardwareindikatoren speichert (z. B. das Kartenherstellungsdatum, die Kartenprüfnummer, den Herstellungsort und so weiter; die nachstehend im Kapitel 5 detaillierter zu diskutierend sind), solche Indikatoren mit denselben Indikatoren in der neu empfangenen ROM-Firmwareabbildung verglichen werden. Dieser Vergleich kann zusätzlich oder anstelle des vorstehend diskutierten Prüfsummenvergleichs ausgeführt werden.
- Es ist anzumerken, daß eine neue MAC-Adresse ebenfalls zum gleichen Zeitpunkt, an dem eine ROM-Firmwareabbildung übertragen wird, in das EPROM 222 übertragen werden kann. Es ist jedoch vorzuziehen, nur eine MAC-Adresse vor der Auslieferung nach Abschluß des NEB-Tests in das EPROM zu übertragen. Dieses Merkmal wird detaillierter unter Bezugnahme auf das nachstehende Kapitel 5 diskutiert.
- Die NEB kann vor dem Einbau in den Drucker getestet werden, um die Integrität ihrer Hardware- und Softwarekomponenten sicherzustellen. Fig. 25 stellt eine Testkonfiguration dar, welche zum Test der NEB 2 verwendet werden kann. In Fig. 25 ist die NEB 2 mit einem PC1 300 über ein an dem seriellen Port 218 der NEB angeschlossenes Kabel verbunden. Ein Drucker 304 kann mit dem PC1 300 verbunden sein, um die Testergebnisse auszudrucken.
- Die NEB 2 ist mit einem Testtreiber PC2 306 über einen SCSI-Bus 308 und Ethernet-LAN-Verbindungen 310 und 312 verbunden. Der PC2 306 enthält eine SCSI-Karte 314 und eine Netzwerksteuerkarte 316, so daß er einen Drucker und LAN- einheiten (wie z. B. den PC 14 des Netzwerkverwalters) simulieren kann. Der PC2 arbeitetet als ein Transponder, welcher Kommunikationssignale von der NEB 2 empfängt und an diese zurückgibt, wie sie von den Testprogrammen befohlen werden, die von dem PC1 300 über den seriellen Port 218 in die NEB eingegeben werden.
- Nach dem Anlegen der Energieversorgung an die NEB 2 führt diese den Einschalt-Selbsttest aus. Während die NEB 2 jeden Testvorgang in dem POST ausführt, empfängt der PC1 300 Prüfergebnisse über das serielle Kabel 302.
- Sobald festgestellt wird, daß die NEB den POST zufriedenstellend abgeschlossen hat, geht die NEB in einen Status "Bereit zum Herunterladen" über. In diesem Zustand wartet die NEB 2 in einem periodischen Intervall von etwa 1 Sekunde auf weitere Eingabeinstruktionen von irgend einem der Eingabeports.
- Während sich die NEB in dem "Herunterladestatus" befindet, lädt der PC1 300 über den seriellen Port 2218 Testpro gramme in die NEB. Sobald die NEB 2 die Ausführung jedes Testprogramms abgeschlossen hat, sendet sie jedes Testergebnis zur Verifikation an den PC1 300 zurück. Wenn der nächste Testpunkt nicht innerhalb einer Zeitsperrenperiode (beispielsweise 1 Sekunde) empfangen wird, wird festgestellt, daß ein Fehler während des NEB-Testprogramms aufgetreten ist, und es wird ein Fehlersignal von dem PC1 300 ausgegeben. Das Fehlersignal kann auf einer Anzeige am PC1 300 angezeigt, oder auf dem Drucker 304 ausgedruckt werden.
- Andererseits schreibt der PC1 300, wenn der nächste von dem PC1 300 empfangene Prüfpunkt nicht verifiziert wird, das Testprogramm (durch Hinzufügen weiterer detaillierterer Testmodule) abhängig von dem empfangenen Ergebnis um. Auf diese Weise kann der PC1 300 das Problem lokalisieren, und die Fehler im NEB 2 beseitigen.
- Einige Testprogramme können erfordern, daß die NEB 2 mit dem PC2 306 entweder über den SCSI-Bus 308 oder eine der LAN- Verbindungen 310, 312 kommuniziert. Beispielsweise kann die NEB 2, abhängig von dem Testprogramm, Daten aus dem PC2 über die LAN-Verbindung 310 anfordern. Der PC2 306 ist so konfiguriert, daß er geeignete Antworten auf jede Kommunikation aus der NEB zurückgibt, und dadurch den Drucker und die anderen LAN-Mitglieder emuliert. Wenn die korrekte Kommunikation aus dem PC2 306 zurückgegeben wird, zeigt die NEB 2 einen erfolgreichen Test an, indem sie einen weiteren Prüfpunkt an dem PC1 300 über den seriellen Port 218 liefert.
- Eine detailliertere Diskussion des Verfahrens zum Testen der NEB 2 wird nachstehend unter Bezugnahme auf die in Fig. 26A und 26B und gemäß der in Fig. 25 dargestellten Testkonfigurationen gegeben.
- Wenn Energie zum ersten Mal an die NEB 2 angelegt wird, führt die NEB 2 das Programm POST aus dem EPROM 222 heraus, im Schritt S2601 aus. Das Programm POST enthält individuelle Programme zum Testen des Komponentenbetriebs und der Softwareprogrammierung. Nach der Ausführung eines individuellen Programms innerhalb POST wird im Schritt S2602 ein Testpunkt zur Verifizierung an den PC1 300 gesendet. Wenn kein Testpunkt nach einer vorbestimmten Periode nach der Ausführung eines individuellen Programms gesendet wird, oder ein zurückgegebener Prüfpunkt nicht korrekt ist, wird vom PC1 300 im Schritt S2603 ein Fehlersignal ausgesendet. Wenn jedoch alle Prüfpunkte korrekt und innerhalb der Zeitrahmen empfangen werden, geht der Ablauf zu dem Schritt S2604 über, bei dem der PC1 300 das Senden von Testprogrammen zu der NEB vorbereitet.
- Im Schritt S2605 ist das Programm POST abgeschlossen, und die NEB 2 wartet auf Instruktionen von einem beliebigen Port, bevorzugt von dem seriellen Port. Die Warteperiode kann etwa ein Fenster von einer Sekunde sein, innerhalb welchem der PC1 300 mit den vorbereiteten Testprogrammen antworten sollte. Im Schritt S2606 geht der Ablauf, wenn der PC1 300 nicht durch Senden eines Testprogramms an die NEB 2 innerhalb des Zeitfensters antwortet, zu dem Schritt S2607 über, wo die NEB in ihren normalen Betriebsmodus eintritt.
- Wenn der von dem PC1 300 im Schritt eingestellte Testinstruktionssatz im Schritt S2606 empfangen wird, wird der Instruktionssatz, welcher weitere Testprogramme enthält, (im Schritt S2608) in der NEB 2 im DRAM 220 gespeichert. Im Schritt S2609 aktiviert der PC1 300 den Instruktionssatz, und die NEB 2 führt jedes Testprogramm innerhalb des Instruktionssatzes aus.
- Der Instruktionssatz des Testprogrammes kann in zufälliger Reihenfolge Testprogramme enthalten, welche es erfordern, daß die NEB 2 den PC2 306 als ein LAN-Peripheriegerät konfiguriert, oder welche es erfordern, daß die NEB 2 den PC2 306 als ein SCSI-Peripheriegerät konfiguriert. In jedem Falle antwortet der PC2 306 nach seiner Konfiguration auf jede Kommunikation aus der NEB 2, indem er üblicherweise lediglich die von der NEB gesendeten Datenblöcke zurücksendet.
- Kurz dargestellt, konfiguriert die NEB 2 im Schritt S2610 (Fig. 26B) den PC2 306 als ein LAN-Peripheriegerät, und der PC2 306 antwortet durch Senden einer Antwort an die NEB 2, welche effektiv einen LAN-Schleifentest durchführt, indem sie die Daten, welche sie empfangen hat, zurückgibt. Die NEB 2 kommuniziert mit dem PC2 und empfängt simulierte Druckjobergebnisse. Im Schritt S2611 wird das Ergebnis jedes Blockjobs an den PC1 300 gesendet. Der PC1 300 stellt fest, ob das Testergebnis korrekt ist. Im Schritt S2611 sendet der PC1 300, wenn durch den PC1 300 festgestellt wird, daß das Testergebnis nicht korrekt ist, ein umgeschriebenes Verzweigungstestprogramm (Schritt S2612) abhängig von dem im Schritt S2611 empfangenen Testergebnis. Wenn jedoch kein weiteres Verzweigungstestprogramm existiert, stoppt der PC1 300 im Schritt S2612 den LAN-Testvorgang und gibt ein Fehlersignal aus.
- Somit wird im Schritt S2611 die NEB 2 im Hinblick auf die LAN-Kommunikation getestet. Unter der Annahme, daß die NEB 2 jeden LAN-Kommunikationstest erfolgreich passiert, geht der Ablauf zu dem Schritt S2613 über, bei welchem der PC2 306 als ein SCSI-Peripheriegerät konfiguriert wird, und SCSI-Schleifentests ausführt, indem er Daten zurückgibt, welche er empfangen hat. Im Schritt S2614 werden die Ergebnisse der Tests an den PC1 300 gesendet, und wenn die Tests nicht korrekt sind, sendet der PC1 300 in ähnlicher Weise im Schritt S2615 ein Verzweigungstest in Abhängigkeit von dem Testergebnis. Natürlich stoppt der PC1 300 dann, wenn kein weiterer Verzweigungstest für einen weiteren Test der Peripheriekommunikation existiert, den Test und gibt ein Fehlersignal aus.
- Unter der Annahme, daß die NEB jeden SCSI-Kommunikationstest im Schritt S2614 erfolgreich passiert, geht dann der Ablauf zu dem Schritt S2616 über, bei welchem die NEB 2 weitere Instruktionen von dem PC1 300 anfordert. Wen der PC1 300 mit weiteren Instruktionen antwortet, kehrt der Ablauf zu dem Schritt S2605 zurück, beendet aber, wenn aber kein weiterer Test erforderlich ist, den NEB-Test.
- Zusammengefaßt umfaßt ein Verfahren zum Testen einer interaktiven Netzwerkkarte mit einer LAN-Schnittstelle und einer Testschnittstelle die Schritte des Anlegens von Energie an die Karte und des Lesens des Ergebnisses eines Einschalt- Selbsttests (POST), welcher außerhalb des Karten-ROM's mittels der Test-Schnittstelle ausgeführt wurde, und das Hinunterladen eines Testprogramms in das RAM der Karte über die Test-Schnittstelle. Das Testprogramm wird dann zur Ausführung außerhalb des RAM's der Karte aktiviert. Der Karte kann dann befohlen werden, ein Peripheriegerät (entweder über die LAN- oder SCSI-Schnittstelle) als einen LAN-Treiber oder eine SCSI-Peripheriegerät zu konfigurieren. Die Karte tritt dann mit dem LAN-Treiber oder dem SCSI-Peripheriegerät gemäß dem Testprogramm in Wechselwirkung. Die Ergebnisse des Testprogramms werden dann über die Testschnittstelle an einen Testcomputer ausgegeben, welcher diese Testergebnisse empfängt. Wenn bestimmte Testergebnisse fehlerhaft sind, können zusätzliche Testprogramme gemäß dem Typ des Fehlers geschrieben werden. Die neu geschriebenen Testprogramme sind dann in der Lage, eine Fehlerdetektion und Diagnose durchzuführen, und diese zusätzlichen Testprogramme können dann von dem PC1 in das RAM der Karte hinuntergeladen werden.
- Sobald alle Tests erfolgreich abgeschlossen sind, kann es (in der Fabriktestumgebung) günstig sein, die Betriebsfirmware in das EPROM 222 zu übertragen. Insbesondere der letzte Schritt eines Testprogramms kann dazu genutzt werden, um die erforderliche Firmwareabbildung vor der Auslieferung (siehe vorstehendes Kapitel 4q) in das NEB-EPROM 222 zu laden. Die in das EPROM 222 übertragene Firmware kann auch eine eindeutige MAC-Adresse für die NEB 2 enthalten.
- In der Vergangenheit wurden MAC-Adressen in die Leiterplatten unter Verwendung spezieller PROM-Chips, wie z. B. ein PROM 232 integriert. Es hat sich jedoch herausgestellt, daß dann, wenn die MAC-Adresse in das EPROM übertragen wird, der PROM-Chip nicht erforderlich ist, da die MAC-Adresse immer noch in einer nicht-flüchtigen Weise gespeichert werden kann. (Natürlich könnte gemäß Diskussion in Kapitel 4q die MAC- Adresse auch ferngesteuert in das EPROM zum gleichen Zeitpunkt übertragen werden, an dem die RAM-Firmwareabbildung, nach einer Verbindung der NEB 2 mit dem LAN aktualisiert wird.)
- Im Schritt S2617 von Fig. 26B ist der NEB-Test abgeschlossen, und jede Karte kann mit ihrer eigenen individuellen Identifikationsnummer, allgemein als MAC-Adresse bezeichnet, gekennzeichnet werden. Somit wird im Schritt S2617 festgestellt, ob eine ROM-Firmwareabbildung zu speichern ist. Wenn keine Abbildung zu speichern ist, endet der Test. Wenn jedoch eine Abbildung zu speichern ist, geht der Ablauf zum Schritt S2618 über, wo die ROM-Abbildung (mit der MAC- Adresse) in das EPROM 222 geladen wird. Im Schritt S2618 kann es auch erwünscht sein, andere normalerweise im PROM 232 gespeicherte Daten, wie z. B. die Kartenprüfnummer, Datum der Herstellung, Name des Testers und so weiter zusammen mit der MAC-Adresse hinunterzuladen.
- Es wurden zwei mögliche Szenarien zur Übertragung der ROM-Firmware und MAC-Adresse in das EPROM 222 betrachtet. Im ersten Falle wurde die NEB mit einem ausgeklügelten Satz von Diagnosewerkzeugen zur Verwendung bei Herstellungstest vorgeladen. Dieser Lösungsweg begrenzt den notwendigen Zeitaufwand für das Hinunterladen der spezifischen Tests, da sie bereits in der Firmware vorhanden sind. In diesem Falle wird nach einem erfolgreichen Abschluß der Tests die endgültige Produktionsversion der Firmware in die Karte geladen, und zusammen mit MAC-Adresse und weiterer Hardwarebezogener Information, wie z. B. Kartenprüfung, Herstellungsdatum und Tester (Schritt S2618), in das EPROM übertragen. In dem zweiten Falle wird die Karte mit der endgültigen Produktionsversion der Firmware gebaut. In diesem Falle wird der kartenspezifische Informationsbereich leer gelassen, und nur dieser Bereich nach einem erfolgreichen Testablauf im Schritt S2618 geladen und übertragen.
- Zusammengefaßt beinhaltet ein Verfahren, um nach der Ausführung eines Tests programmierbare Firmware in eine interaktive Netzwerkkarte mit einer LAN-Schnittstelle zu laden, den Schritt des Hinunterladens einer (die MAC-Adresse enthalten den) ROM-Firmwareabbildung in das DRAM 220 über die LAN- Schnittstelle. Die Integrität der ROM-Abbildung wird dann bestätigt und der Karte befohlen, das EPROM elektronisch zu löschen. In das EPROM wird dann die ROM-Abbildung übertragen, welche die MAC-Adresse enthält, und dann die Karte aus dem EPROM heraus neu gebootet.
- Somit ist das, was vorstehend im Detail beschrieben wurde, eine interaktive Netzwerkkarte mit einem Aufbau und einer Funktion zum Verbinden eines Peripheriegerätes mit einem LAN in der Weise, daß das Peripheriegerät ein antwortendes interaktives Element des LAN ist.
- Obwohl die vorliegende Erfindung im Hinblick darauf beschrieben wurde, was als deren bevorzugte Ausführungsformen zu betrachten ist, dürfte es selbstverständlich sein, daß die vorliegende Erfindung nicht auf die offenbarte Ausführungsformen beschränkt ist. Die vorliegende Erfindung soll im Gegenteil verschiedene Modifikationen und äquivalente Anordnungen, die innerhalb des Schutzumfanges der beigefügten Ansprüche enthalten sind abdecken. Unter dem Schutzumfang der nachstehenden Ansprüche ist die breiteste Interpretation zu verstehen, so daß alle derartigen Modifikationen und äquivalenten Aufbauten und Funktionen mit umfaßt sind.
Claims (25)
1. Verfahren zur Gewinnung von Zustandsinformation von
einer interaktiven Netzwerkplatine (2), die über eine externe
Schnittstelle (100) mit einem vernetzten Peripheriegerät (4)
zur Abtastung und/oder zum Drucken von Bildern verbunden ist
und über eine lokale Bereichsnetzwerk - (LAN) Schnittstelle
(101) mit einem LAN (6) verbunden ist, wobei die interaktive
Netzwerkplatine einen Programmspeicher (220, 222), der ein
peripheres Serverprogramm speichert und zur Ausführung des
peripheren Serverprogramms einen Prozessor (216) beinhaltet,
mit:
Ausführen des peripheren Serverprogramms auf der
interaktiven Netzwerkplatine (2) durch den Prozessor (216) zur
Bestimmung, ob Verbindungen auf dem LAN (6) zur interaktiven
Netzwerkplatine (2) gerichtet sind und zur Lieferung
peripherer Daten zwischen dem Peripheriegerät (4) und dem LAN (6);
gekennzeichnet durch:
Empfangen einer vom LAN (6) an die interaktive
Netzwerkplatine (2) gerichteten Anfrage, die eine Anfrage nach dem
Zustand des Peripheriegeräts (4) ist;
Beantworten der Anfrage nach dem Zustand durch Gewinnen
des abgefragten Zustands und Übertragen des so gewonnenen
Zustands zum LAN (6).
2. Verfahren nach Anspruch 1, wobei die Zustandsanfrage
zusätzlich den Zustand der interaktiven Netzwerkplatine (2)
betrifft.
3. Verfahren nach Anspruch 2, wobei die Zustandsanfrage den
Zustand des peripheren Serverprogramms betrifft.
4. Verfahren nach Anspruch 1, darüberhinaus mit den
Schritten des Abfragens des Peripheriegeräts (4) von der
interaktiven Netzwerkplatine (2) über die periphere Schnittstelle
(100) und Senden peripherer Zustandsinformation von der
interaktiven Netzwerkplatine (2) über die LAN Schnittstelle
(101).
5. Verfahren nach jedem der vorhergehenden Ansprüche,
darüberhinaus mit Verbreiten einer Anfrage nach Diensten auf
dem LAN (6) und mit Empfangen von Antworten von Servern, die
die angefragten Dienste haben, über das LAN (6).
6. Verfahren nach Anspruch 5, darüberhinaus mit Auswählen
eines der antwortenden Server.
7. Verfahren nach Anspruch 6, darüberhinaus mit Einrichten
direkter Netzwerkverbindung mit dem ausgewählten Server über
das lokale Bereichsnetzwerk (6)
8. Verfahren nach jedem der vorhergehenden Ansprüche,
darüberhinaus mit Anzeigen der zum LAN (6) übertragenen
Zustandsinformation.
9. Verfahren nach Anspruch 2, darüberhinaus mit:
Empfangen der übertragenen Zustandsinformation vom LAN
(6);
Ändern der empfangenen Zustandsinformation;
Senden der geänderten Zustandsinformation zum lokalen
Bereichsnetzwerk (6) in Richtung der interaktiven
Netzwerkplatine (2); und
Ändern des Zustands der interaktiven Netzwerkplatine
(2).
10. Verfahren nach Anspruch 4, darüberhinaus mit:
Empfangen der Zustandsinformation vom LAN (6);
Andern der empfangenen Zustandsinformation;
Senden der geänderten Zustandsinformation auf dem LAN
(6) in Richtung der interaktiven Netzwerkplatine (2);
Senden der geänderten Zustandsinformation von der
interaktiven Netzwerkplatine (2) zum Peripheriegerät (4) auf der
peripheren Schnittstelle (100); und
Ändern des Zustands des Peripheriegeräts (4).
11. Verfahren nach Anspruch 10, darüberhinaus mit Verbreiten
einer Anfrage nach Diensten auf dem LAN (6) und Empfangen von
Antworten der Server, die die angefragten Dienste haben, über
das LAN (6).
12. Verfahren nach Anspruch 11, darüberhinaus mit Auswählen
eines der antwortenden Server.
13. Verfahren nach Anspruch 12, darüberhinaus mit Einrichten
direkter Netzwerkverbindung mit dem ausgewählten Server über
das LAN (6).
14. Verfahren nach jedem der Ansprüche 10 bis 13, wobei das
Peripheriegerät (4) einen Drucker beinhaltet und wobei die
Zustandsinformation den Zustand von manuell wählbaren
Funktionen des Druckers betrifft.
15. Verfahren nach jedem der Ansprüche 9 bis 14,
darüberhinaus mit Anzeigen des geänderten Zustands auf einem Display
(116).
16. Verfahren nach Anspruch 14, darüberhinaus mit Ausgeben
eines Neuboot - Befehls zum Neubooten des Druckers (4) in
geändertem Zustand.
17. Verfahren zum Fernsteuern mindestens einer manuell
wählbaren Funktion eines Netzwerkdruckers (4) über eine
interaktive Netzwerkplatine (2), die mit dem Drucker (4) über
eine bidirektionale Druckerschnittstelle (100) und mit einem
lokalen Bereichsnetzwerk (6) über eine lokale
Bereichsnetzwerk - Schnittstelle (101) verbunden ist, mit den Schritten:
Ausgeben einer Anfrage nach dem Druckerzustand auf dem
lokalen Bereichsnetzwerk (6) in Richtung der interaktiven
Netzwerkplatine (2), um die interaktive Netzwerkplatine (2)
zu veranlassen, den Drucker (4) über die Druckerschnittstelle
(100) bezüglich des Zustands der oder jeder manuell wählbaren
Funktion zu befragen und den Zustand der oder jeder manuell
wählbaren Funktion von der interaktiven Netzwerkplatine (2)
zum lokalen Bereichsnetzwerk (6) zu übertragen;
Ausgeben eines Befehls zum Ändern des Zustands der oder
jeder manuell wählbaren Funktion, wobei der Befehl auf dem
lokalen Bereichsnetzwerk (6) in Richtung der interaktiven
Netzwerkplatine (2) ausgegeben wird, um die interaktive
Netzwerkplatine (2) zu veranlassen, den geänderten Zustand
über die Druckerschnittstelle (100) zum Drucker (4) zu
übertragen; und
Ändern des Zustands des Druckers (4) durch Ändern des
Zustands der manuell wählbaren Funktionen.
18. Verfahren nach Anspruch 17, darüberhinaus mit Anzeigen
des Zustands der manuell wählbaren Funktionen.
19. Verfahren nach Anspruch 18, wobei der Zustand in
Übereinstimmung mit der auf das lokale Bereichsnetzwerk (6)
übertragenen Zustandsinformation entfernt angezeigt wird.
20. Verfahren nach Anspruch 18, wobei der Druckerzustand auf
einem Druckerdisplay (116) angezeigt wird.
21. Verfahren nach jedem der Ansprüche 17 bis 20,
darüberhinaus mit Ausgeben eines Neuboot - Befehls zum Neubooten des
Druckers (4) in geändertem Zustand.
22. Verfahren nach jedem der Ansprüche 17 bis 21,
darüberhinaus mit Verbreiten einer Anfrage nach Diensten auf dem
lokalen Bereichsnetzwerk (6) und Empfangen von Antworten der
Server, die die angefragten Dienste haben über das lokale
Bereichsnetzwerk (6).
23. Verfahren nach Anspruch 22, darüberhinaus mit Auswählen
eines der antwortenden Server.
24. Verfahren nach Anspruch 23, darüberhinaus mit Einrichten
direkter Netzwerkverbindung mit dem ausgewählten Server über
das lokale Bereichsnetzwerk (6)
25. Lokales Bereichsnetzwerk mit:
Netzwerkbus (6);
mit dem Netzwerkbus (6) verbundenem Dateiserver, der so
eingerichtet ist, daß er eine Druckwarteschlange von einer
Vielzahl von Workstations (10, 12) speichert, die
Druckaufträge an die Druckwarteschlange senden;
mit dem Netzwerkbus (6) verbundener interaktiver
Netzwerkplatine (2), die eine bidirektionale periphere
Schnittstelle (100) und einen Prozessor (216) zum Ausführen
gespeicherter Programmverarbeitungsschritte und einen Speicher
(220) zum Speichern von Verarbeitungsschritten beinhaltet;
mit der bidirektionalen peripheren Schnittstelle (100)
der interkativen Netzwerkplatine (2) verbundenem Drucker (4);
und
mit dem Netzwerkbus (6) verbundener Workstation (14),
die einen Prozessor zur Ausführung gespeicherter
Programmverarbeitungsschritte und einen Speicher zum Speichern der
Verarbeitungsschritte enthält, wobei die
Verarbeitungsschritte die Schritte des Abfragens des Zustands des Druckers (4),
des Empfangens der Zustandsantworten, des Anzeigens des
empfangenen Zustands, des Änderns des angezeigten Zustands,
der Befehlsausgabe für den Drucker (4) zum Bewirken des
geänderten Zustands, des Abfragens des Zustands der
interaktiven Netzwerkplatine (2), des Empfangens der
Zustandsantworten, des Anzeigens des empfangenen Zustands, des Änderns des
angezeigten Zustands, der Befehlsausgabe für die interaktive
Netzwerkplatine (2) zum Bewirken des geänderten Zustands
enthalten;
wobei der Speicher (220) der interaktiven
Netzwerkplatine (2) die Verarbeitungsschritte beinhaltet, den Netzwerkbus
(6) auf Netzwerkkommunikation in Richtung der interaktiven
Netzwerkplatine (2) zu überwachen, auf Anfragen der
Workstation (14) zu antworten und von der Workstation (14)
ausgegebene Befehle zuzustellen.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/978,281 US5323393A (en) | 1992-11-18 | 1992-11-18 | Method and apparatus for obtaining and for controlling the status of a networked peripheral |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE69326421D1 DE69326421D1 (de) | 1999-10-21 |
| DE69326421T2 true DE69326421T2 (de) | 2000-03-30 |
Family
ID=25525936
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE69326421T Expired - Lifetime DE69326421T2 (de) | 1992-11-18 | 1993-10-28 | Verfahren und Vorrichtung zur Gewinnung und Steuerung des Zustandes eines Peripheregerätes in einem Netz |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5323393A (de) |
| EP (1) | EP0602787B1 (de) |
| JP (2) | JPH06214932A (de) |
| DE (1) | DE69326421T2 (de) |
Families Citing this family (220)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020004812A1 (en) * | 1997-06-26 | 2002-01-10 | Tetsuro Motoyama | Method and system for diagnosis and control of machines using connectionless modes having delivery monitoring and an alternate communication mode |
| US5438650A (en) * | 1992-04-30 | 1995-08-01 | Ricoh Company, Ltd. | Method and system to recognize encoding type in document processing language |
| JP3017605B2 (ja) | 1992-06-19 | 2000-03-13 | キヤノン株式会社 | プリンタ制御方法およびその制御システム |
| FR2696256B1 (fr) * | 1992-09-30 | 1994-11-25 | Bull Sa | Utilisation de "tubes" pour le transfert d'états entre différents systèmes distants. |
| JP3175348B2 (ja) * | 1992-11-06 | 2001-06-11 | キヤノン株式会社 | 通信装置 |
| US5530862A (en) * | 1992-11-18 | 1996-06-25 | Canon Kabushiki Kaisha | In an interactive network board, method and apparatus for loading independently executable modules in prom |
| US5784622A (en) * | 1992-11-18 | 1998-07-21 | Canon Kabushiki Kaisha | Method and apparatus for multiprotocol operation of a networked peripheral |
| DE69326669D1 (de) * | 1992-11-18 | 1999-11-11 | Canon Information Syst Inc | Verfahren und Vorrichtung zur Prüfung einer Schnittstellenkarte |
| GB9302225D0 (en) * | 1993-02-05 | 1993-03-24 | Int Computers Ltd | Data processing system |
| DE4306031C2 (de) * | 1993-02-26 | 1995-11-02 | Siemens Ag | Verfahren zum ferngesteuerten Administrieren von Kommunikationssystemen |
| DE69325509T2 (de) * | 1993-06-15 | 1999-12-23 | Hewlett-Packard Co., Palo Alto | Direktanschluss-Protokoll auf niederer Ebene für PCL-Drucker |
| JP3487559B2 (ja) * | 1993-06-29 | 2004-01-19 | キヤノン株式会社 | 複合制御装置および複合制御装置の制御方法 |
| US5566278A (en) * | 1993-08-24 | 1996-10-15 | Taligent, Inc. | Object oriented printing system |
| US5528374A (en) * | 1993-11-22 | 1996-06-18 | Eastman Kodak Company | Networked reproduction apparatus with security feature |
| US5625757A (en) * | 1993-12-24 | 1997-04-29 | Hitachi, Ltd. | Printing system |
| JP3262435B2 (ja) * | 1993-12-28 | 2002-03-04 | キヤノン株式会社 | 画像形成装置に接続される外部機器およびその制御方法 |
| DE69527948T2 (de) * | 1994-03-15 | 2003-01-02 | Digi International, Inc. | System und verfahren zur kommunikation mit einem entfernten netzwerk-apparatus |
| JPH0887390A (ja) * | 1994-09-20 | 1996-04-02 | Fujitsu Ltd | 印刷装置を有するネットワークシステム,ネットワークシステム用印刷装置,ネットワークシステム用サーバ装置およびネットワークシステム用端末装置 |
| US5604860A (en) * | 1994-10-27 | 1997-02-18 | Xerox Corporation | Feature library and stored customized control interfaces |
| US5717934A (en) * | 1994-10-28 | 1998-02-10 | Deltec Electronics Corporation | Sequential computer network shutdown system and process therefor |
| US5613096A (en) * | 1994-11-04 | 1997-03-18 | Canon Information Systems, Inc. | Network protocol sensor |
| US6061731A (en) * | 1994-12-06 | 2000-05-09 | Thunderwave, Inc. | Read only linear stream based cache system |
| US5623699A (en) * | 1994-12-06 | 1997-04-22 | Thunderwave, Inc. | Read only linear stream based cache system |
| US5550957A (en) * | 1994-12-07 | 1996-08-27 | Lexmark International, Inc. | Multiple virtual printer network interface |
| US5636333A (en) * | 1994-12-20 | 1997-06-03 | Lexmark International, Inc. | Multi-protocol network interface |
| US5640495A (en) * | 1994-12-20 | 1997-06-17 | Lexmark International, Inc. | Computer-printer interface control for bidirectional/undirectional data communications |
| US5933582A (en) * | 1995-02-24 | 1999-08-03 | Ricoh Company, Ltd. | Printing manager method and system for a copying machine in a network |
| US5699494A (en) * | 1995-02-24 | 1997-12-16 | Lexmark International, Inc. | Remote replication of printer operator panel |
| EP0733976A1 (de) * | 1995-03-23 | 1996-09-25 | Canon Kabushiki Kaisha | Chipauswahlsignalgenerator |
| US5727135A (en) * | 1995-03-23 | 1998-03-10 | Lexmark International, Inc. | Multiple printer status information indication |
| JPH08328991A (ja) * | 1995-03-30 | 1996-12-13 | Canon Inc | インタフェース装置 |
| US5905906A (en) * | 1995-03-31 | 1999-05-18 | Lexmark International, Inc. | Method and apparatus for configuring multiple printers on a network |
| US5671351A (en) * | 1995-04-13 | 1997-09-23 | Texas Instruments Incorporated | System and method for automated testing and monitoring of software applications |
| US5832298A (en) * | 1995-05-30 | 1998-11-03 | Canon Kabushiki Kaisha | Adaptive graphical user interface for a network peripheral |
| GB2301754B (en) * | 1995-06-02 | 1999-12-29 | Dsc Communications | A protocol converter for a telecommunications system |
| US5867636A (en) * | 1995-06-06 | 1999-02-02 | Apple Computer, Inc. | Client server symmetric presentation-layer connection protocol for network printing systems |
| US5754747A (en) * | 1995-06-06 | 1998-05-19 | Apple Computer, Inc. | Architecture for network printing systems |
| US5787237A (en) * | 1995-06-06 | 1998-07-28 | Apple Computer, Inc. | Uniform interface for conducting communications in a heterogeneous computing network |
| US5828864A (en) * | 1995-06-09 | 1998-10-27 | Canon Information Systems, Inc. | Network board which responds to status changes of an installed peripheral by generating a testpage |
| US5828863A (en) * | 1995-06-09 | 1998-10-27 | Canon Information Systems, Inc. | Interface device connected between a LAN and a printer for outputting formatted debug information about the printer to the printer |
| US5699493A (en) * | 1995-06-23 | 1997-12-16 | Lexmark International, Inc. | Method and apparatus for providing job accounting information to a host computer from a printer |
| US5852746A (en) * | 1995-06-26 | 1998-12-22 | Canon Kabushiki Kaisha | System for transmitting a message using status button to system administrator by using a signal comprising predetermined number of changes effected over a period |
| US6067407A (en) * | 1995-06-30 | 2000-05-23 | Canon Information Systems, Inc. | Remote diagnosis of network device over a local area network |
| US5740368A (en) * | 1995-06-30 | 1998-04-14 | Canon Kabushiki Kaisha | Method and apparatus for providing information on a managed peripheral device to plural agents |
| US5694537A (en) * | 1995-07-31 | 1997-12-02 | Canon Information Systems, Inc. | Network device which selects a time service provider |
| US5699350A (en) * | 1995-10-06 | 1997-12-16 | Canon Kabushiki Kaisha | Reconfiguration of protocol stacks and/or frame type assignments in a network interface device |
| US5664075A (en) * | 1995-10-17 | 1997-09-02 | Xerox Corporation | Print job identification and synchronization between NetWare PServer and atlas RPrinter protocol gateway |
| US5742598A (en) * | 1995-10-19 | 1998-04-21 | International Business Machines Corp. | Network for efficiently locating resources and routing service requests received from individual node connections |
| US6209048B1 (en) * | 1996-02-09 | 2001-03-27 | Ricoh Company, Ltd. | Peripheral with integrated HTTP server for remote access using URL's |
| US5720015A (en) * | 1996-04-22 | 1998-02-17 | Lexmark International, Inc. | Method and apparatus for providing remote printer resource management |
| US5873659A (en) * | 1996-04-24 | 1999-02-23 | Edwards; Steve Michael | Method and apparatus for providing a printer having internal queue job management |
| EP0979458A4 (de) * | 1996-05-14 | 2000-05-03 | Ricoh Corp Ltd | Java-drucker |
| US6246485B1 (en) | 1996-05-23 | 2001-06-12 | Lexmark International, Inc. | Printer communication system and method |
| SE521508C2 (sv) * | 1996-06-20 | 2003-11-04 | Telia Ab | Styrning och övervakning av elektriska komponenter |
| JP3559666B2 (ja) * | 1996-12-27 | 2004-09-02 | キヤノン株式会社 | 出力制御装置および出力制御方法 |
| US5937150A (en) * | 1997-02-10 | 1999-08-10 | Toshiba America Information Systems, Inc. | LCD panel controlled by two process elements |
| US5970218A (en) * | 1997-02-11 | 1999-10-19 | Toshiba America Information Systems, Inc. | Private print |
| US5862404A (en) * | 1997-02-12 | 1999-01-19 | Toshiba America Information Systems, Inc. | Network device discovery and status information distribution using independent information distribution processes |
| US6011560A (en) * | 1997-03-31 | 2000-01-04 | Stiles; Ian James | Method and system for communicating the status of a process in a computer system |
| US6314446B1 (en) | 1997-03-31 | 2001-11-06 | Stiles Inventions | Method and system for monitoring tasks in a computer system |
| US6134615A (en) | 1997-05-13 | 2000-10-17 | Micron Electronics, Inc. | System for facilitating the replacement or insertion of devices in a computer system through the use of a graphical user interface |
| US6338150B1 (en) | 1997-05-13 | 2002-01-08 | Micron Technology, Inc. | Diagnostic and managing distributed processor system |
| JP3744137B2 (ja) * | 1997-08-07 | 2006-02-08 | ブラザー工業株式会社 | ネットワークシステム、ネットワーク管理方法、インタフェース装置、インタフェース装置を動作させるためのプログラムが記録された記録媒体及び端末装置 |
| EP0924899B1 (de) * | 1997-12-16 | 2008-08-06 | LITEF GmbH | Schaltungsanordnung zum synchronen Austausch von Daten zwischen verschiedenen lokal zugeordneten Signalquellen |
| US7173721B1 (en) * | 1998-01-08 | 2007-02-06 | Fuji Xerox Co., Ltd. | Multifunction machine, server, multifunction machine/server system and program recording medium |
| JP4006807B2 (ja) * | 1998-01-19 | 2007-11-14 | ブラザー工業株式会社 | ネットワークシステム、及び端末装置 |
| JPH11203218A (ja) * | 1998-01-19 | 1999-07-30 | Brother Ind Ltd | データ通信システム、インタフェース装置、及び記憶媒体 |
| US6192414B1 (en) * | 1998-01-27 | 2001-02-20 | Moore Products Co. | Network communications system manager |
| US6295608B1 (en) * | 1998-02-17 | 2001-09-25 | Microsoft Corporation | Optimized allocation of data elements among cache lines |
| US6189069B1 (en) * | 1998-02-17 | 2001-02-13 | Microsoft Corporation | Optimized logging of data elements to a data storage device |
| US7020680B2 (en) | 1998-03-19 | 2006-03-28 | Isochron, Llc | System and method for monitoring and control of beverage dispensing equipment |
| US7167892B2 (en) | 1998-03-19 | 2007-01-23 | Isochron, Inc. | System, method and apparatus for vending machine wireless audit and cashless transaction transport |
| US8631093B2 (en) | 1998-03-19 | 2014-01-14 | Crane Merchandising Systems, Inc. | Remote data acquisition, transmission and analysis system including handheld wireless equipment |
| US7181501B2 (en) | 1998-03-19 | 2007-02-20 | Isochron, Inc. | Remote data acquisition, transmission and analysis system including handheld wireless equipment |
| US6457038B1 (en) | 1998-03-19 | 2002-09-24 | Isochron Data Corporation | Wide area network operation's center that sends and receives data from vending machines |
| US6785022B1 (en) * | 1998-04-07 | 2004-08-31 | Canon Kabushiki Kaisha | Data communication method of apparatus connected to LAN |
| EP0953946A3 (de) * | 1998-04-29 | 2004-05-06 | Ncr International Inc. | Transaktionsnetzen |
| US7545816B1 (en) * | 1998-04-29 | 2009-06-09 | Ncr Corporation | Transaction processing systems maintenance |
| US6266693B1 (en) | 1998-08-31 | 2001-07-24 | Toshiba America Information Systems Inc. | Method of controlling printer information in a network environment |
| US6636899B1 (en) * | 1998-09-24 | 2003-10-21 | Xerox Corporation | Architecture for software for remote maintenance of a machine such as a copier |
| US6256322B1 (en) * | 1998-10-02 | 2001-07-03 | Canon Kabushiki Kaisha | Bundling multiple network management packets |
| JP3266146B2 (ja) * | 1999-01-20 | 2002-03-18 | セイコーエプソン株式会社 | プリンタ及びネットワーク印刷システム |
| US6952726B1 (en) * | 1999-08-27 | 2005-10-04 | Hewlett-Packard Development Company, L.P. | Automatic job resource usage and retrieval |
| US6615297B1 (en) | 1999-12-08 | 2003-09-02 | Lexmark International, Inc. | System and method for manipulating device settings across different types of devices |
| US7532339B1 (en) | 1999-12-08 | 2009-05-12 | Lexmark International, Inc. | Self-describing device interface system |
| US6718397B1 (en) | 2000-01-05 | 2004-04-06 | Yijun Zhao | Network adapter for providing initialization and protocol translation between a microprocessor and a network interface |
| JP2001273220A (ja) * | 2000-01-18 | 2001-10-05 | Canon Inc | 情報処理装置及び方法及び記憶媒体並びにコンピュータプログラム |
| US20010041511A1 (en) * | 2000-01-19 | 2001-11-15 | Lack Craig D. | Printing of polishing pads |
| US6498611B1 (en) | 2000-01-28 | 2002-12-24 | Lexmark International, Inc. | System and method for providing a virtual operator panel for a peripheral device |
| JP3740346B2 (ja) * | 2000-02-04 | 2006-02-01 | キヤノン株式会社 | サーバ装置およびデバイス装置およびデータ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体 |
| US7180638B1 (en) | 2000-02-16 | 2007-02-20 | Ricoh Co., Ltd. | Network fax machine using a web page as a user interface |
| US20040105122A1 (en) * | 2000-03-20 | 2004-06-03 | Schaeffer Richard J. | Printer control and document management system |
| EP1191450B1 (de) * | 2000-03-27 | 2007-11-07 | Seiko Epson Corporation | System um Geräte, die mit einem Netzwerk verbunden sind, zu verwalten |
| US7013337B2 (en) | 2000-05-12 | 2006-03-14 | Isochron, Llc | Method and system for the optimal formatting, reduction and compression of DEX/UCS data |
| US7010594B2 (en) * | 2000-05-26 | 2006-03-07 | Isochron, Llc | System using environmental sensor and intelligent management and control transceiver for monitoring and controlling remote computing resources |
| US20020023086A1 (en) * | 2000-06-30 | 2002-02-21 | Ponzio, Jr. Frank J. | System and method for providing signaling quality and integrity of data content |
| US7076518B1 (en) * | 2000-10-24 | 2006-07-11 | Hewlett-Packard Development Comapny, L.P. | System and method for linking a web server in a peripheral to a network through a host |
| MXPA03004009A (es) * | 2000-11-07 | 2004-05-05 | Hewlett Packard Co | Sistemas y metodo para administracion remota de dispositivos de impresion. |
| WO2002044925A1 (en) * | 2000-11-28 | 2002-06-06 | P & S Datacom Corporation | Microprocessor-interface communication protocol |
| US7461377B2 (en) | 2001-02-22 | 2008-12-02 | Electronics For Imaging, Inc. | Method and apparatus for automatically managing capabilities in a virtual printer group |
| US7028087B2 (en) * | 2001-02-23 | 2006-04-11 | Panduit Corp. | Network documentation system with electronic modules |
| US7734715B2 (en) * | 2001-03-01 | 2010-06-08 | Ricoh Company, Ltd. | System, computer program product and method for managing documents |
| US20020124007A1 (en) * | 2001-03-02 | 2002-09-05 | Wuhan P&S Electronics Company Ltd. | Network server and database therein |
| US7552216B2 (en) | 2001-03-27 | 2009-06-23 | Lexmark International, Inc. | Method of sharing a printer |
| JP4574052B2 (ja) * | 2001-04-18 | 2010-11-04 | キヤノン株式会社 | 印刷制御装置及びその制御方法並びに印刷システム |
| US7165062B2 (en) * | 2001-04-27 | 2007-01-16 | Siemens Medical Solutions Health Services Corporation | System and user interface for accessing and processing patient record information |
| US6795829B2 (en) * | 2001-06-04 | 2004-09-21 | Hewlett-Packard Development Company, L.P. | Method for building a peripheral information database |
| US7707264B2 (en) * | 2001-06-04 | 2010-04-27 | Hewlett-Packard Development Company, L.P. | Method and system for providing technical support documents via the internet |
| US7164884B2 (en) | 2001-06-29 | 2007-01-16 | Isochron, Llc | Method and system for interfacing a machine controller and a wireless network |
| US7778600B2 (en) | 2001-06-29 | 2010-08-17 | Crane Merchandising Systems, Inc. | Apparatus and method to provide multiple wireless communication paths to and from remotely located equipment |
| US6925335B2 (en) | 2001-07-05 | 2005-08-02 | Isochron, Llc | Real-time alert mechanism for monitoring and controlling field assets via wireless and internet technologies |
| US8418065B2 (en) | 2001-07-16 | 2013-04-09 | Nuance Communications, Inc. | Method of and system for dynamically controlling during run time a multifunction peripheral (MFP) touch panel user interface (UI) from an external remote network-connected computer |
| JP4629929B2 (ja) * | 2001-08-23 | 2011-02-09 | 株式会社リコー | デジタルカメラシステム及びこの制御方法 |
| US7020702B2 (en) * | 2001-09-20 | 2006-03-28 | Lexmark International, Inc. | Method and apparatus to obtain real-time status information from a networked device |
| US20030097426A1 (en) * | 2001-11-21 | 2003-05-22 | Parry Travis J. | Imaging device configuration and upgrade |
| US7523182B2 (en) | 2001-11-27 | 2009-04-21 | Isochron, Inc. | Method and system for predicting the services needs of remote point of sale devices |
| US20050283558A1 (en) * | 2002-01-19 | 2005-12-22 | Incorporated Technologies (Holdings) Limited | Kiosk technology kit |
| US20030142344A1 (en) * | 2002-01-31 | 2003-07-31 | Jennifer Geske | System and method for electronically monitoring the content of print data |
| US6652169B2 (en) * | 2002-02-20 | 2003-11-25 | Hewlett-Packard Development Company, L.P. | Method and system for printer suggested upgrades to correct errors |
| US7197562B2 (en) * | 2002-04-05 | 2007-03-27 | Infocus Corporation | Projector device management system |
| US20040024811A1 (en) * | 2002-04-24 | 2004-02-05 | Hiroshi Kitada | System, computer program product and method for scanning and managing documents |
| US20040073934A1 (en) * | 2002-09-30 | 2004-04-15 | Sharp Laboratories Of America, Inc. | Streaming video for adaptive user instructions |
| US20040066528A1 (en) * | 2002-10-03 | 2004-04-08 | Gregory Nutt | Methods and systems for gathering device data using the internet |
| US6889264B2 (en) | 2002-10-09 | 2005-05-03 | Hewlett-Packard Development Company, L.P. | Imposing a delay for indication of a status board to provide a time for self-rectification of a service event detected from peripheral status information |
| JP4400040B2 (ja) * | 2002-12-04 | 2010-01-20 | セイコーエプソン株式会社 | デバイス管理装置 |
| JP4402370B2 (ja) * | 2003-05-14 | 2010-01-20 | キヤノン株式会社 | サービス提供装置および情報処理方法 |
| US20050050182A1 (en) * | 2003-08-26 | 2005-03-03 | Xerox Corporation | Peripheral device diagnostic method and architecture |
| JP4174411B2 (ja) * | 2003-10-30 | 2008-10-29 | キヤノン株式会社 | ジョブ管理装置、ジョブ管理方法、及びジョブ管理用プログラム |
| US20050108679A1 (en) * | 2003-11-17 | 2005-05-19 | Jensen C. T. | Method and system for managing document processing device job information |
| US20060015569A1 (en) * | 2003-12-16 | 2006-01-19 | Lexmark International, Inc. | Method and system for initiating a task and receiving task data via a TWAIN interface |
| JP4572082B2 (ja) * | 2004-03-22 | 2010-10-27 | Necシステムテクノロジー株式会社 | Nasディスクアレイ装置 |
| US20050275876A1 (en) * | 2004-06-10 | 2005-12-15 | Mclean Bruce L | Method and system for server-based management of requests such as print jobs |
| US7735143B2 (en) * | 2004-06-12 | 2010-06-08 | Toshiba Corporation | System and method for secure document processing |
| JP4697703B2 (ja) * | 2004-08-30 | 2011-06-08 | コニカミノルタビジネステクノロジーズ株式会社 | デバイス管理システム、管理情報変更プログラム、課金情報処理プログラム及び課金情報処理方法 |
| US20060069815A1 (en) * | 2004-09-29 | 2006-03-30 | Warner William T Iii | Method and system for initiating a task and receiving task data via TWAIN interface from network-attached peripheral |
| US7920101B2 (en) * | 2004-10-08 | 2011-04-05 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device display standardization |
| US8032608B2 (en) * | 2004-10-08 | 2011-10-04 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device notification access control |
| US8051140B2 (en) | 2004-10-08 | 2011-11-01 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device control |
| US7738808B2 (en) * | 2004-10-08 | 2010-06-15 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device concurrent account use with remote authorization |
| US7970813B2 (en) | 2004-10-08 | 2011-06-28 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device event notification administration and subscription |
| US7978618B2 (en) | 2004-10-08 | 2011-07-12 | Sharp Laboratories Of America, Inc. | Methods and systems for user interface customization |
| US8237946B2 (en) | 2004-10-08 | 2012-08-07 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device accounting server redundancy |
| US8115946B2 (en) | 2004-10-08 | 2012-02-14 | Sharp Laboratories Of America, Inc. | Methods and sytems for imaging device job definition |
| US8032579B2 (en) | 2004-10-08 | 2011-10-04 | Sharp Laboratories Of America, Inc. | Methods and systems for obtaining imaging device notification access control |
| US8230328B2 (en) | 2004-10-08 | 2012-07-24 | Sharp Laboratories Of America, Inc. | Methods and systems for distributing localized display elements to an imaging device |
| US7684074B2 (en) * | 2004-10-08 | 2010-03-23 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device metadata management |
| US7934217B2 (en) | 2004-10-08 | 2011-04-26 | Sharp Laboratories Of America, Inc. | Methods and systems for providing remote file structure access to an imaging device |
| US8049677B2 (en) | 2004-10-08 | 2011-11-01 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device display element localization |
| US8115944B2 (en) | 2004-10-08 | 2012-02-14 | Sharp Laboratories Of America, Inc. | Methods and systems for local configuration-based imaging device accounting |
| US8060930B2 (en) | 2004-10-08 | 2011-11-15 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential receipt and authentication |
| US8001587B2 (en) * | 2004-10-08 | 2011-08-16 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential management |
| US8120799B2 (en) | 2004-10-08 | 2012-02-21 | Sharp Laboratories Of America, Inc. | Methods and systems for accessing remote, descriptor-related data at an imaging device |
| US7966396B2 (en) * | 2004-10-08 | 2011-06-21 | Sharp Laboratories Of America, Inc. | Methods and systems for administrating imaging device event notification |
| US8006176B2 (en) | 2004-10-08 | 2011-08-23 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging-device-based form field management |
| US8115947B2 (en) | 2004-10-08 | 2012-02-14 | Sharp Laboratories Of America, Inc. | Methods and systems for providing remote, descriptor-related data to an imaging device |
| US8384925B2 (en) | 2004-10-08 | 2013-02-26 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device accounting data management |
| US8065384B2 (en) * | 2004-10-08 | 2011-11-22 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device event notification subscription |
| US8006292B2 (en) | 2004-10-08 | 2011-08-23 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential submission and consolidation |
| US8023130B2 (en) | 2004-10-08 | 2011-09-20 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device accounting data maintenance |
| US7870185B2 (en) * | 2004-10-08 | 2011-01-11 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device event notification administration |
| US8006293B2 (en) | 2004-10-08 | 2011-08-23 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential acceptance |
| US8035831B2 (en) | 2004-10-08 | 2011-10-11 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device remote form management |
| US7873718B2 (en) * | 2004-10-08 | 2011-01-18 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device accounting server recovery |
| US8060921B2 (en) * | 2004-10-08 | 2011-11-15 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential authentication and communication |
| US8156424B2 (en) | 2004-10-08 | 2012-04-10 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device dynamic document creation and organization |
| US8051125B2 (en) | 2004-10-08 | 2011-11-01 | Sharp Laboratories Of America, Inc. | Methods and systems for obtaining imaging device event notification subscription |
| US8213034B2 (en) | 2004-10-08 | 2012-07-03 | Sharp Laboratories Of America, Inc. | Methods and systems for providing remote file structure access on an imaging device |
| US7532835B2 (en) * | 2004-10-08 | 2009-05-12 | Sharp Laboratories Of America, Inc. | Methods and systems for remote configuration-based imaging device accounting |
| US8015234B2 (en) | 2004-10-08 | 2011-09-06 | Sharp Laboratories Of America, Inc. | Methods and systems for administering imaging device notification access control |
| US8001183B2 (en) | 2004-10-08 | 2011-08-16 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device related event notification |
| US7969596B2 (en) | 2004-10-08 | 2011-06-28 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device document translation |
| US7519307B2 (en) * | 2004-10-08 | 2009-04-14 | Sharp Laboratories Of America, Inc. | Methods and systems for configuration-based imaging device accounting |
| US8125666B2 (en) | 2004-10-08 | 2012-02-28 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device document management |
| US8018610B2 (en) | 2004-10-08 | 2011-09-13 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device remote application interaction |
| US8171404B2 (en) | 2004-10-08 | 2012-05-01 | Sharp Laboratories Of America, Inc. | Methods and systems for disassembly and reassembly of examination documents |
| US8115945B2 (en) | 2004-10-08 | 2012-02-14 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device job configuration management |
| US8120798B2 (en) | 2004-10-08 | 2012-02-21 | Sharp Laboratories Of America, Inc. | Methods and systems for providing access to remote, descriptor-related data at an imaging device |
| US8120797B2 (en) | 2004-10-08 | 2012-02-21 | Sharp Laboratories Of America, Inc. | Methods and systems for transmitting content to an imaging device |
| US7397362B2 (en) | 2004-10-08 | 2008-07-08 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential submission and receipt |
| US8024792B2 (en) * | 2004-10-08 | 2011-09-20 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential submission |
| US7873553B2 (en) * | 2004-10-08 | 2011-01-18 | Sharp Laboratories Of America, Inc. | Methods and systems for authorizing imaging device concurrent account use |
| US8001586B2 (en) | 2004-10-08 | 2011-08-16 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential management and authentication |
| US7826081B2 (en) | 2004-10-08 | 2010-11-02 | Sharp Laboratories Of America, Inc. | Methods and systems for receiving localized display elements at an imaging device |
| US7633644B2 (en) | 2004-10-08 | 2009-12-15 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device job management |
| US8120793B2 (en) | 2004-10-08 | 2012-02-21 | Sharp Laboratories Of America, Inc. | Methods and systems for displaying content on an imaging device |
| US8428484B2 (en) | 2005-03-04 | 2013-04-23 | Sharp Laboratories Of America, Inc. | Methods and systems for peripheral accounting |
| US20060211987A1 (en) * | 2005-03-18 | 2006-09-21 | Williams Arthur M | Vein stabilizer devices and methods of using same |
| US7821660B2 (en) * | 2005-03-30 | 2010-10-26 | Ricoh Company, Ltd. | System and method for compensating for resource unavailability in an image processing system |
| US7533155B2 (en) * | 2005-03-30 | 2009-05-12 | Ricoh Company, Ltd. | System and method for managing documents with multiple network applications |
| US20060230286A1 (en) * | 2005-03-30 | 2006-10-12 | Hiroshi Kitada | System and method for authenticating a user of an image processing system |
| JP2006293686A (ja) * | 2005-04-11 | 2006-10-26 | Toshiba Corp | 印刷管理装置、印刷管理プログラム |
| JP4659531B2 (ja) * | 2005-06-28 | 2011-03-30 | キヤノン株式会社 | ジョブ状態監視システム、ジョブ状態監視方法、プログラム及び記憶媒体 |
| US8484068B2 (en) | 2005-12-14 | 2013-07-09 | Crane Merchandising Systems, Inc. | Method and system for evaluating consumer demand for multiple products and services at remotely located equipment |
| JP2007179106A (ja) * | 2005-12-26 | 2007-07-12 | Fuji Xerox Co Ltd | 処理システム |
| JP4742873B2 (ja) * | 2006-01-14 | 2011-08-10 | コニカミノルタビジネステクノロジーズ株式会社 | 情報処理装置およびグループ決定プログラム |
| US7940408B2 (en) * | 2006-03-21 | 2011-05-10 | Ricoh Company, Ltd. | Bi-directional status and control between image capture device and backend device |
| US7997484B2 (en) | 2006-09-13 | 2011-08-16 | Crane Merchandising Systems, Inc. | Rich content management and display for use in remote field assets |
| US8345272B2 (en) | 2006-09-28 | 2013-01-01 | Sharp Laboratories Of America, Inc. | Methods and systems for third-party control of remote imaging jobs |
| TW200837629A (en) * | 2007-03-09 | 2008-09-16 | Realtek Semiconductor Corp | Network interface controller |
| JP5056097B2 (ja) * | 2007-03-22 | 2012-10-24 | 日本電気株式会社 | 装置内警報抑止機能を有する基幹伝送装置と方法 |
| JP5006683B2 (ja) * | 2007-04-11 | 2012-08-22 | キヤノン株式会社 | ネットワーク端末管理装置、方法、及び、プログラム |
| US20080291116A1 (en) * | 2007-05-25 | 2008-11-27 | Andrew Corporation | Cellular antennas and communications methods |
| US8959028B2 (en) | 2007-07-02 | 2015-02-17 | Crane Merchandising Systems, Inc. | Apparatus and method for monitoring and control of remotely located equipment |
| US8533315B2 (en) | 2007-10-25 | 2013-09-10 | Crane Merchandising Systems, Inc. | Systems and methods for monitoring performance of field assets |
| US20100332641A1 (en) * | 2007-11-09 | 2010-12-30 | Kulesh Shanmugasundaram | Passive detection of rebooting hosts in a network |
| JP5174537B2 (ja) * | 2008-05-28 | 2013-04-03 | 京セラドキュメントソリューションズ株式会社 | 画像形成装置 |
| ATE534211T1 (de) * | 2008-06-26 | 2011-12-15 | Abb Research Ltd | Konfigurierung eines intelligenten elektronischen geräts |
| US8380889B2 (en) | 2010-03-31 | 2013-02-19 | Oki Data Americas, Inc. | Distributed peripheral device management system |
| JP5742245B2 (ja) * | 2011-01-21 | 2015-07-01 | 村田機械株式会社 | 画像形成装置 |
| US8447845B1 (en) | 2011-02-10 | 2013-05-21 | Flir Systems, Inc. | Setting a network device to default settings |
| JP5691752B2 (ja) | 2011-04-01 | 2015-04-01 | セイコーエプソン株式会社 | データの書き換え方法、データ書き換え装置及び書き換えプログラム |
| US9727441B2 (en) * | 2011-08-12 | 2017-08-08 | Microsoft Technology Licensing, Llc | Generating dependency graphs for analyzing program behavior |
| CN102999448B (zh) * | 2011-09-14 | 2018-07-06 | 奇智软件(北京)有限公司 | 一种外部设备检测的处理方法及装置 |
| US9367333B2 (en) * | 2012-07-30 | 2016-06-14 | Hewlett-Packard Development Company, L.P. | Booting a printer |
| WO2014175900A1 (en) | 2013-04-26 | 2014-10-30 | Hewlett-Packard Development Company, L.P. | Authentication utilizing encoded data |
| FR3011706B1 (fr) * | 2013-10-07 | 2017-03-03 | Schneider Electric Ind Sas | Dispositif de configuration d'equipements ethernet et procede de configuration d'equipements ethernet a l'aide d'un tel dispositif |
| DE102016103144A1 (de) * | 2016-02-23 | 2017-08-24 | Vishay Semiconductor Gmbh | Optoelektronische Vorrichtung |
| WO2018048429A1 (en) | 2016-09-09 | 2018-03-15 | Hewlett-Packard Development Company, L.P. | Detection of cable connections |
| JP7631841B2 (ja) | 2021-01-28 | 2025-02-19 | ブラザー工業株式会社 | 記録装置、記録システム、及び制御方法 |
| US12524248B2 (en) * | 2024-01-30 | 2026-01-13 | Anaplan, Inc. | Application configurator using a baseline model |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4252994A (en) * | 1979-01-19 | 1981-02-24 | Trans-Lux Corporation | Automatic teletypewriter |
| US4974199A (en) * | 1984-06-28 | 1990-11-27 | Westinghouse Electric Corp. | Digital IC-microcomputer interface |
| US4742483A (en) * | 1985-05-14 | 1988-05-03 | Minolta Camera Company, Ltd. | Laser printer maintenance system |
| US4837788A (en) * | 1985-11-08 | 1989-06-06 | Ford Aerospace & Communications Corporation | Repeater for extending local area networks |
| US4818993A (en) * | 1986-02-27 | 1989-04-04 | Siemens Aktiengesellschaft | Electronic control system for controlling several remote devices |
| US5007013A (en) * | 1986-04-01 | 1991-04-09 | Westinghouse Electric Corp. | Bidirectional communication and control network with programmable microcontroller interfacing digital ICS and controlled product |
| US4805137A (en) * | 1987-01-08 | 1989-02-14 | United Technologies Corporation | Bus controller command block processing system |
| US4866664A (en) * | 1987-03-09 | 1989-09-12 | Unisys Corporation | Intercomputer communication control apparatus & method |
| JP2577746B2 (ja) * | 1987-08-24 | 1997-02-05 | 株式会社日立製作所 | 通信方法 |
| DE3823914A1 (de) * | 1988-07-14 | 1990-01-18 | Siemens Ag | Verfahren zum uebermitteln endgeraetebestimmender programmparameterdaten von einer kommunikationsanlage zu kommunikationsendgeraeten |
| JP2755622B2 (ja) * | 1988-10-24 | 1998-05-20 | 株式会社東芝 | 画像形成装置 |
| US5075875A (en) * | 1990-04-20 | 1991-12-24 | Acuprint, Inc. | Printer control system |
-
1992
- 1992-11-18 US US07/978,281 patent/US5323393A/en not_active Expired - Lifetime
-
1993
- 1993-10-28 DE DE69326421T patent/DE69326421T2/de not_active Expired - Lifetime
- 1993-10-28 EP EP93308609A patent/EP0602787B1/de not_active Expired - Lifetime
- 1993-11-18 JP JP5289108A patent/JPH06214932A/ja active Pending
-
2004
- 2004-01-13 JP JP2004006040A patent/JP4250535B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JP4250535B2 (ja) | 2009-04-08 |
| EP0602787A2 (de) | 1994-06-22 |
| EP0602787A3 (de) | 1994-11-09 |
| EP0602787B1 (de) | 1999-09-15 |
| JP2004185635A (ja) | 2004-07-02 |
| DE69326421D1 (de) | 1999-10-21 |
| US5323393A (en) | 1994-06-21 |
| JPH06214932A (ja) | 1994-08-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69326421T2 (de) | Verfahren und Vorrichtung zur Gewinnung und Steuerung des Zustandes eines Peripheregerätes in einem Netz | |
| DE69323840T2 (de) | Verfahren und Gerät zur Fernveränderung von, in einer an eine peripherale Netzeinrichtung gekoppelte Schnittstelle, gespeicherte Programme | |
| DE69331963T2 (de) | Verfahren und Gerät zur selbstanpassenden Bestimmung des Formats eines über einen LAN getragenen Datenpaketes | |
| DE69322943T2 (de) | In einer interaktiven Netzwerkleiterplatte, Verfahren und Gerät zur Registrierung statistischer Daten aus Peripheriegeräten | |
| DE69326416T2 (de) | Verfahren und Gerät zum ferngesteuerten Laden und Ausführen von Dateien in einen Speicher | |
| DE69319567T2 (de) | Verfahren und Gerät zur operationsfähigen Konfigurationsbildung einer Schnittstellenkarte | |
| DE69315964T2 (de) | Verfahren und Vorrichtung zum Speichern einer Mediumzugrifts-Steueradresse in einem fernveränderbaren Speicher | |
| DE69329818T2 (de) | Verfahren und Vorrichtung zur Schnittstellenbildung zwischen einem Peripheriegerät und einem lokalen Netzwerk | |
| DE69315961T2 (de) | Verfahren und Gerät zum Setzen eines Peripheriegerätes in eine Standardkonfiguration | |
| DE69329056T2 (de) | Verfahren und Gerät zum Laden unabhängig ausführbarer Programme in einen Festwertspeicher | |
| DE69333496T2 (de) | Verfahren, Netzwerk und Schnittstellenmodul für Verwaltung des Zugangs zu einer peripheren Einrichtung in einem Netz | |
| DE69319853T2 (de) | Verfahren und Gerät zum Betrieb einer peripheren Einrichtung in einem Netz | |
| DE69318939T2 (de) | Verfahren und Vorrichtung zur Anzeige von Diensten zweier Netzanbieter von einem einzelnen Netzknoten | |
| DE69318259T2 (de) | Verfahren und Vorrichtung zur Implementierung einer Zweiwegeschnittstelle zwischen einem lokalen Netzwerk und einem Peripheriegerät | |
| DE69322743T2 (de) | Verfahren und Vorrichtung zur Verhinderung der unabsichtlichen Löschung gespeicherter Daten | |
| US5438528A (en) | Method and apparatus for testing an interactive network board in a local area network (LAN). | |
| EP0598508B1 (de) | Verfahren und Gerät für ausführbare, unabhängige mehrtask Programme |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8364 | No opposition during term of opposition | ||
| 8327 | Change in the person/name/address of the patent owner |
Owner name: CANON KABUSHIKI KAISHA, TOKIO, JP |