DE69827747T2 - Druckersystem und Übertragungsvorrichtung um Druckersteuerungsprogramm zu übertragen - Google Patents

Druckersystem und Übertragungsvorrichtung um Druckersteuerungsprogramm zu übertragen Download PDF

Info

Publication number
DE69827747T2
DE69827747T2 DE69827747T DE69827747T DE69827747T2 DE 69827747 T2 DE69827747 T2 DE 69827747T2 DE 69827747 T DE69827747 T DE 69827747T DE 69827747 T DE69827747 T DE 69827747T DE 69827747 T2 DE69827747 T2 DE 69827747T2
Authority
DE
Germany
Prior art keywords
job
print
printer
data
print job
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69827747T
Other languages
English (en)
Other versions
DE69827747D1 (de
Inventor
Naoki Ohta-ku Tsuchitori
Junichi Ohta-ku Mori
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Application granted granted Critical
Publication of DE69827747D1 publication Critical patent/DE69827747D1/de
Publication of DE69827747T2 publication Critical patent/DE69827747T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1211Improving printing performance
    • G06F3/1212Improving printing performance achieving reduced delay between job submission and print start
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1259Print job monitoring, e.g. job status
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1274Deleting of print job
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1284Local printer device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1803Receiving particular commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1817Buffers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Record Information Processing For Printing (AREA)

Description

  • ALLGEMEINER STAND DER TECHNIK
  • Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf einen Drucker, ein Druckersystem, ein Drucksteuerverfahren und ein Speichermedium, auf dem ein Druckersteuerprogramm gespeichert wird, um einen Drucker zu steuern; und insbesondere auf einen Drucker, der empfangene Druckdaten verarbeitet, um Bilddaten zu erzeugen und um die Bilddaten aktuell auf ein Aufzeichnungsmedium zu drucken, wie auf ein Blatt Papier; auf ein Druckersystem, das ein vorbestimmtes Übertragungsmedium verwendet, um den oben beschriebenen Drucker mit einem Host zu verbinden, der Druckdaten gemäß Befehlen erzeugt, die ein Anwender abgibt; auf ein Verfahren zur Druckersteuerung für den oben beschriebenen Drucker; auf ein Speichermedium, das ein Druckersteuerprogramm zum Steuern des oben beschriebenen Druckers speichert; und auf eine Sendeeinrichtung, die ein Steuerprogramm des oben beschriebenen Druckers sendet.
  • Zum Stand der Technik
  • Ein herkömmliches Druckersystem, das aufgebaut ist aus einem Host und dem zuvor beschriebenen Drucker, ist nicht nur gefragt, es dem Drucker zu ermöglichen, Druckdaten zu drucken, die der Host erzeugt, sondern auch um Informationen zu erhalten, die den Drucker vom Host betreffen und um die Druckerumgebung einzustellen. Gegenwärtig werden viele Druckersysteme hergestellt, die diesen Anforderungen entsprechen.
  • 23 ist ein Funktionsblockdiagramm, das die Anordnung eines herkömmlichen Druckersystems darstellt, das Informationen bezüglich eines Druckers aus einem Host gewinnt und die Druckerumgebung einstellt. Beim herkömmlichen Druckersystem sind ein Host 2300 und ein Drucker 2350 miteinander über ein spezielles Übertragungsmedium 2380 verbunden.
  • Der Host 2300 enthält eine Anwendungseinheit 2301, einen Druckertreiber 2302, einen Ausgangspuffer 2303, einen I/F-Treiber (Schnittstellentreiber) 2304 und eine Diensteinheit 2305.
  • Die Anwendereinheit 2301 stellt eine Graphikanwenderschnittstelle für den Anwender bereit und erzeugt Bilddaten, die der Absicht des Anwender angepaßt sind. Der Druckertreiber 2302 übersetzt Bilddaten, die die Anwendereinheit 2301 erzeugt, in Seitenbeschreibungssprachdaten (werden nachstehend als "PDL"-Daten bezeichnet), die der Drucker 2350 drucken kann.
  • Der Ausgangspuffer 2303 wird verwendet zum zeitweiligen Speichern der PDL-Daten, die der Druckertreiber 2302 erzeugt. Der I/F-Treiber 2304 sendet die PDL-Daten an den Drucker 2350, die im Ausgangspuffer 2303 gespeichert werden, und tauscht verschiedene Arten von Informationen mit dem Drucker 2350 aus, um Informationen für den Drucker 2350 zu gewinnen oder um die Druckerumgebung einzustellen. Die Diensteinheit 2305 nimmt Informationen bezüglich des Druckers 2350 herein und sendet diese der Graphikanwenderschnittstelle oder ändert einen Druckauftrag oder eine Einstellung des Druckers 2350 gemäß einem vom Anwender abgegebenen Befehl.
  • Der Drucker 2350 verfügt über einen I/F-Treiber 2351, einen Eingangspuffer 2352, ein JCL-Analysesystem (Arbeitssteuersprachenanalysesystem) 2353, einen PDL-Übersetzer 2354, einen Zeichnungspuffer 2355, eine Zeichnungseinheit 2356, eine Druckermaschine 2357 und über eine Datenbank 2358.
  • Der I/F-Treiber 2351 empfängt PDL-Daten aus dem Host 2300 und tauscht Informationen mit dem Host aus, um eine Information bezüglich des Druckers 2350 zu erhalten oder um die Umgebung einzustellen. Der Eingangspuffer 2352 wird zum zeitweiligen Speichern von Daten verwendet, die vom I/F-Treiber 2351 empfangen werden, und dient als Pufferspeicher zum Verzögern der Verarbeitung, die in der nachfolgenden Stufe erfolgt.
  • Das JCL-Analysesystem 2353 analysiert die empfangenen Daten, und zur Zuordnung der Verarbeitung wird eine vorbestimmte JCL verwendet, um zu bestimmen, ob eine Informationsanforderung oder eine Umgebungseinstellanforderung für den Drucker 2350 empfangen worden ist, oder ob PDL-Daten empfangen wurden. Der PDL-Übersetzer 2354 übersetzt die PDL-Daten, die vom JCL-Analysesystem 2353 zugeordnet sind, und setzt die PDL-Daten um in einen adäquaten Zeichnungsgegenstand. Die Datenbank 2358 wird verwendet entweder zum Speichern von Einstellinhalten, wenn die Einstellung der Umgebung des Druckers 2350 unter Verwendung der JCL angefordert wurde, oder wird verwendet zum Bereitstellen von Informationen für das JCL-Analysesystem 2353, wenn die Informationsanforderung im JCL besteht. Bei der folgenden Stufe sendet die Datenbank 2358 darüber hinaus eine Information an den PDL-Übersetzer 2354.
  • Bis das aktuelle Drucker initialisiert ist, wird der Zeichnungspuffer 2355 für das zeitweilige Speichern des Zeichnungsgegenstands verwendet, der vom PDL-Übersetzer 2354 erzeugt wird. Als Teil des Zeichnungsprozesses ändert die Zeichnungseinheit 2356 den Zeichnungsgegenstand zeitweilig, der im Zeichnungspuffer 2355 gespeichert ist, in ein Punktrasterbild und sendet dieses an die Druckermaschine 2358. Nach Empfang des Punktrasterbildes druckt die Druckermaschine 2358 diese auf ein Aufzeichnungsmedium, wie auf Papier, unter Verwendung einer allgemein bekannten Drucktechnik.
  • Nachstehend erläutert ist die Auftragssteuersprache (JCL). Zuerst beschrieben wird das Mittel zum Senden eines Druckauftrags unter Verwendung von JCL. 24 ist eine Auflistung für einen Druckauftrag, der die Struktur für die JCL zeigt. Dieselbe Textstruktur wird für das Beispiel in 25 verwendet, welches eine JCL-Auflistung ist, die über Daten, die der Druckertreiber 2302 erzeugt, und über PDL-Daten verfügt. In den 24 und 25 zeigt <ESC> die Codeumschaltung an.
  • In 24 enthält Zeile (1) eine UEL-Eingabe (Universalausgangsspracheneingabe), die aufzeigt, daß das JCL-Analysesystem 2353 einen Analyseprozess beginnt. Zeile (2) zeigt auf, daß der Prozeß zum PDL-Übersetzer 2354 verschoben wird, genannt "LIPS", für die Übersetzung der PDL-Daten und die Qualität des Zeichnungsprozesses. Zeile (3) zeigt eine Vielzahl von Zeilen von PDL-Daten auf, die in LIPS-Form beschrieben sind. Zeile (4) zeigt auf, daß der PDL-Übersetzer 2354 angehalten wird und das Steuerprogramm zum JCL-Analysesystem 2353 verschoben wird. Bei der obigen JCL-Auflistung schaltet der Drucker 2350 passend eine Vielzahl von Druckaufträgen um, um das Drucken auszuführen.
  • Nachstehend ist eine Erläuterung für die Mittel unter Verwendung von JCL für das Erzielen von Informationen bezüglich einer Druckereinrichtung oder einem Druckauftrag oder zum Einstellen der Umgebung gegeben. In 25 gezeigt ist eine Liste von Befehlen und Informationen, die ausgetauscht werden, um die Information zu gewinnen oder die Umgebung unter Verwendung der JCL einzustellen. <ESC> zeigt die Codeumschaltung auf, und <FF> zeigt das Formzuführzeichen auf.
  • In Zeile (1) in 25 wird wie in Zeile (4) in 24 aufgezeigt, daß die Verarbeitung des PDL-Übersetzers 2354 gehalten und die Programmsteuerung zur JCL-Analysesystem 2353 verschoben wird, um einen Analyseprozeß zu initialisieren. Zeile (2) ist ein Befehl, den die Diensteinheit 2305 vom Host 2300 erzeugt, um aus dem Drucker 2350 die Anfangskopierzählung (COPIES) für die Seiten hereinzuholen, die vom Drucker 2350 zu drucken sind. Die Zeichenkette COPIES wird nur als Beispiel verwendet, und andere Informationen bezüglich des Druckers 2350 lassen sich unter Verwendung einer geeigneten Zeichenkette erzielen. Zeile (3) ist die vom Drucker 2350 zum Host 2300 gelieferte Antwort als Reaktion auf die Anforderung in Zeile (2). In diesem Falle wird "1" als Anfangswert für die Zählung der Seiten gesendet, die der Drucker 2350 drucken soll. Eine letzte Sendung vom Drucker 2350 an den Host 23500 signalisiert in Zeile (4) das Ende der Antwort auf die Anforderung in Zeile (2). Zeile (5) ist ein Befehl, den die Diensteinheit 2305 vom Host 2300 erzeugt und aufzeigt, daß der Anfangszählwert für die vom Drucker 2350 zu druckenden Seiten auf "3" zurückgesetzt ist. Mit den obigen JCL-Feststellungen kann der Host 2300 eine Information gewinnen und die Umgebung des Druckers 2350 einstellen.
  • Das zuvor beschriebene Druckersystem ist jahrelang entwickelt worden, und Anforderungen zur Gewinnung von Informationen und zur Einstellung der Umgebung werden aktuell komplizierter. Insbesondere ist die erste erforderte Funktion eine Anforderung zum Annullieren eines beliebigen Druckauftrags, der dem Drucker 2350 eingegeben wird. Und dann ist die zweite erforderte Funktion diejenige, daß die Druckdaten für den zu annullierenden Druckauftrag ungültig gemacht werden, selbst bevor sie analysiert worden sind, das heißt, daß Druckdaten für den Druckauftrag, der zu annullieren ist, ungültig erklärt werden, selbst während sie noch im Eingangspuffer gespeichert sind. Und auch die dritte Funktion erfordert, daß das Hereinholen der Information bezüglich des Druckers oder des Druckauftrags, das Einstellen der Umgebung und das Bestimmen des Druckauftrags, der zu annullieren ist, in Echtzeit ausgeführt wird. Ein herkömmliches Druckersystem kann jedoch diese drei Funktionen nicht realisieren.
  • Ein Grund dafür, daß das herkömmliche Druckersystem die erste Funktion nicht realisieren kann, ist nachstehend beschrieben. Wie aus der Struktur des Druckers 2350 offensichtlich hervorgeht, müssen Druckdaten, einschließlich PDL-Daten, übersetzt werden, bevor das JCL-Analysesystem 2353 den Druckauftrag erkennt. Die Druckdaten werden zeitweilig im Eingangspuffer 2352 gespeichert, bevor das JCL-Analysesystem 2353 diese erkennt. Sofern jene Druckdaten im Eingangspuffer 2352 gespeichert sind, werden sie aktuell nicht als Aufbauteil eines Druckauftrags identifiziert, so daß das Druckersystem die vollständige Information einer beliebigen Druckauftragseingabe zum Drucker 2350 oder die Umgebungseinstellung nicht erzielen kann, und zum Bestimmen eines Druckauftrags, der zu annullieren ist.
  • Nachstehend beschrieben ist ein Grund, warum das herkömmliche Druckersystem die zweite Funktion nicht realisieren kann. Abhängig von der Druckdatenmenge, die für einen Druckauftrag vorgesehen ist, können die Verarbeitungszustände für unterschiedliche Teile der Druckdaten für den Druckauftrag variieren, wobei ein Teil der Daten noch im Eingangspuffer 2352 gespeichert ist, während ein anderer Teil vom PDL-Übersetzer 2353 analysiert wird. In einem herkömmlichen Druckersystem werden die Druckdaten, die noch nicht vom JCL-Analysesystem 2353 oder dem PDL-Übersetzer 2354 analysiert worden sind, das heißt, der Abschnitt der Druckdaten, die noch im Eingangspuffer gespeichert sind, nicht als ein Teil der Druckdaten für den Druckauftrag identifiziert.
  • Nachstehend beschrieben ist nun ein Grund, warum das herkömmliche Funktion nicht realisieren kann. Bilddaten, die die Diensteinheit 2301 vom Host 2300 erzeugt, werden in PDL-Daten vom Druckertreiber 2302 umgesetzt, und die PDL-Daten werden über den Ausgangspuffer 2303 und den I/F-Treiber 2304 an den Drucker 2350 gesendet. Selbst wenn die Information bezüglich des Druckers 2350 oder des Druckauftrags anzufordern sind, oder wenn die Umgebung während des Sendens der Druckdaten einzustellen ist, wird eine Exklusiv-ODER-Steuerung vom I/F-Treiber 2304 ausgeführt, und eine Anforderung von der Diensteinheit 2305 kann nicht erledigt werden, bis das Senden der Druckdaten abgeschlossen ist. Hinsichtlich des Anforderns von Informationen bezüglich des Druckers 2350 oder des Druckauftrags oder des Annullierens des Druckauftrags tritt folglich eine Verschlechterung bei der Echtzeitverarbeitung auf.
  • Aus dem Dokument EP-A-0653700 ist es bekannt, einen Drucker zu steuern, der Druckdaten als Dateien speichert, die unter Verwendung eines Auftragslistenmenus verwaltet werden, so daß ein Druckauftrag gemäß einer gespeicherten Datei durch Auswahl des Dateinamens aus dem Menu annulliert werden kann.
  • Das Dokument WO-A-9639656 offenbart das Senden von Druckdaten an einen Drucker unter Verwendung einer Anzahl unterschiedlicher Protokolle.
  • Aspekte der vorliegenden Erfindung sind in den unabhängigen Patentansprüchen angegeben.
  • Zur Lösung der oben aufgeführten Nachteile ist es eine Aufgabe der vorliegenden Erfindung, alle Druckaufträge zu identifizieren, die einem Drucker eingegeben werden, und einen beliebigen Druckauftrag zu bestimmen, der zu annullieren ist; Druckdaten für einen Druckauftrag als ungültig zu erklären, der zu annullieren ist, selbst bevor die Druckdaten analysiert sind, beispielsweise selbst wenn die Druckdaten im Eingangspuffer gespeichert sind; und es ist eine Aufgabe, einen Druckauftrag im Echtzeitbetrieb zu annullieren.
  • Nach einem Ausführungsbeispiel ist ein Drucker ausgestattet mit:
    einem Verwaltungsmittel, das Druckauftragsidentifikationsinformationen verarbeitet, die allein dem extern eingegebenen Druckauftrag zugewiesen sind, in dem Druckdaten enthalten sind; und
    einem Mittel zum Ungültigerklären von Druckdaten unter denen des Druckauftrags, die der Druckauftragsidentifikationsinformation entsprechen, die benannt ist, um einen Abschnitt der Druckdaten ungültig zu erklären, die noch nicht analysiert worden sind.
  • Des weiteren erklärt das Mittel zum Erklären der Ungültigkeit von Druckdaten diejenigen als ungültig, die der Druckauftragsidentifikationsinformation entsprechen, die benannt ist und an einer Vielzahl von Stellen gespeichert ist, beginnen mit Druckdaten, die näher an der Eingangsstufe für den Drucker liegen.
  • Ein Drucker nach einem Ausführungsbeispiel ist des weiteren ausgestattet mit:
    einem Eingangspuffer, der zum Speichern der Druckdaten verwendet wird, bevor die Druckdaten analysiert worden sind, und das Mittel zum Ungültigerklären der Druckdaten erklärt die Druckdaten für ungültig, die im Eingangspuffer für den Druckauftrag gespeichert sind, der der Druckauftragsidentifikationsinformation entspricht, die benannt worden ist.
  • Darüber hinaus ist der Eingangspuffer gebildet aus Pufferblöcken für das Speichern der Druckauftragsidentifikationsinformation und der Druckdaten.
  • Darüber hinaus ist der Puffer unter Verwendung einer Pufferblockwarteschlange aus Pufferblöcken aufgebaut, in denen die Druckauftragsidentifikationsinformation und die Druckdaten gespeichert sind, und einer unbenutzten Pufferblockwarteschlange unbenutzter Pufferblöcke. Das Mittel zum Ungültigerklären von Druckdaten liest aus der benutzten Pufferblockwarteschlange einen Pufferblock aus, in dem Druckauftragsidentifikationsinformationen gespeichert sind, die zu der Druckauftragsidentifikationsinformation paßt, die bestimmt ist, und verkettet den Pufferblock, der für die unbenutzte Pufferblockwarteschlange ausgelesen ist.
  • Weiterhin ist ein Drucker nach einem Ausführungsbeispiel ausgestattet mit:
    einem Druckdatenanalysemittel zum Analysieren von Druckdaten. Und wenn das Druckdatenanalysemittel die Druckdaten für den Druckauftrag analysiert, die der Druckauftragsidentifikationsinformation entsprechen, die ausgewählt ist, hält das Mittel zum Ungültigerklären von Druckdaten die Analyse an.
  • Nach einem Ausführungsbeispiel ist ein Drucker weiterhin ausgestattet mit einem Druckauftragsfeststellmittel zum Benennen der Druckauftragsidentifikationsinformation zum Druckauftrag, ohne die Druckdaten für den Druckauftrag zu analysieren.
  • Darüber hinaus analysiert nach einem Ausführungsbeispiel das Druckauftragsfeststellmittel auf der Grundlage von Steuerdaten ein Auftragspaket, das durch Addieren gewonnen wird, für den Druckauftrag, der Drucksteuerdaten, die Steuerdaten für die Druckdaten oder die Drucksteuerdaten enthält, und stellt die Druckdaten oder die Drucksteuerdaten für den Druckauftrag fest.
  • Nach einem Ausführungsbeispiel besteht das Auftragspaket aus der Identifikationsinformation, die verwendet wird zum Identifizieren der Drucksteuerdaten, und aus den Drucksteuerdaten, oder besteht aus Druckdaten und einer Identifikationsinformation, die für das Identifizieren der Druckdaten verwendet wird.
  • Gemäß einem Ausführungsbeispiel ist ein Drucker weiterhin ausgestattet mit:
    einem Druckauftragssteuermittel gemäß einem Drucksteuerbefehl, den Druckauftrag zu steuern, nachdem eine Drucksteueranforderung empfangen worden ist, die spezifiziert ist durch die Druckauftragsidentifikationsinformation, die die Drucksteueranforderung festlegt.
  • Nach einem Ausführungsbeispiel ist der Steuerbefehl die Anforderung oder die Einstellung der Drucksteuerdaten, die vom Druckauftragssteuermittel verwaltet werden, oder das Annullieren des Druckauftrags.
  • Wenn nach einem Ausführungsbeispiel der Drucksteuerbefehl darüber hinaus die Anforderung von Drucksteuerdaten ist, gibt das Druckauftragssteuermittel extern eine Drucksteuerantwort ab, die die Drucksteuerdaten beinhaltet.
  • Nach einem Ausführungsbeispiel enthält der Drucker weiterhin einen Auftragskanal für die Ein-/Ausgabe des Aufragspakets und einen Steuerkanal für die Ein-/Ausgabe der Drucksteueranforderung oder der Drucksteuerantwort.
  • Nach einem Ausführungsbeispiel enthält ein Drucker weiterhin ein Logikkanalsteuermittel zum Erzeugen eines Pakets für den Auftragskanal zur Ein-/Ausgabe des Auftragspakets und des Steuerkanals für die Ein-/Ausgabe von der Drucksteueranforderung der Druckersteuerungsantwort, und auch zum Verwenden des Pakets zur Multiplexübertragung unter Verwendung eines einzigen Übertragungsmediums.
  • Nach einem Ausführungsbeispiel enthält ein Drucker weiterhin ein Druckauftragsannullierbestimmungsmittel zum Bestimmen, welcher Druckauftrag zu annullieren ist.
  • Nach einem Ausführungsbeispiel bestimmt das Druckauftragsannulliermittel weiterhin, daß von Druckaufträgen, die im Drucker gehalten sind, ein Druckauftrag zu annullieren ist, für den sich Druckdaten nahe einer Ausgangsstufe befinden.
  • Nach einem Ausführungsbeispiel ist der Drucker weiterhin ausgestattet mit einem Annullierbefehlfeststellmittel zum Erfassen von außen empfangenen Befehls zum Annullieren des Druckauftrags.
  • Nach einem Ausführungsbeispiel ist der Drucker weiterhin ausgestattet mit:
    einem Druckauftragsanzeigemittel zum Darstellen aller Druckaufträge, die der Drucker hält; und mit
    einem Druckauftragsauswahlmittel zum Auswählen eines zu annullierenden Druckauftrags unter Druckaufträgen, die das Druckauftragsanzeigemittel darstellt.
  • Dieselben Merkmale sind für ein Drucksystem, ein Drucksteuerverfahren, ein Speichermedium, auf dem ein Drucksteuerprogramm zum Steuern eines Druckers gespeichert ist, und in einer Sendeeinrichtung zum Senden eines Drucksteuerprogramms zum Steuern des Druckers enthalten.
  • KURZE BESCHREIBUNG DER ZEICHNUNG
  • 1 ist ein funktionales Blockdiagramm, das die Anordnung eines Druckersystems nach einem ersten Ausführungsbeispiel der vorliegenden Erfindung darstellt;
  • 2 ist ein erläuterndes Diagramm, das ein Bezugsmodell für die Verbindung eines Hosts mit einem Drucker im Druckersystem nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung zeigt;
  • 3 ist ein erläuterndes Diagramm, das die Strukturen eines Auftragspakets und eines Steuerpakets nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung zeigt;
  • 4 ist ein Ablaufdiagramm, das die Verarbeitung von einem Arbeitsauftragspaketgenerator im Host nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung zeigt;
  • 5 ist ein Ablaufdiagramm, das die Verarbeitung zeigt, die der Arbeitsauftragspaketgenerator im Host nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung ausführt;
  • 6 ist ein erläuterndes Diagramm, das die Struktur eines Pakets IEEE 1284.4 nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung zeigt;
  • 7 ist ein erläuterndes Diagramm, das ein Auftragspaket zeigt, das über eine Paketform IEEE 1284.4 verfügt, die nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung zu senden ist;
  • 8 ist ein erläuterndes Diagramm, das ein Steuerpaket zeigt, das eine Paketform IEEE 1284.4 hat, die nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung zu senden ist;
  • 9 ist ein Diagramm zur Erläuterung eines Bereitstellungsinformationsanforderungsbefehlspakets mit der Form IEEE 1284.4 nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung;
  • 10 ist ein Diagramm zur Erläuterung eines Antwortpakets für ein Bereitstellungsinformationsanforderungsbefehlspaket mit der Form IEEE 1284.4 nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung;
  • 11 ist ein Ablaufdiagramm, das die Verarbeitung zeigt, die eine Logikkanalsteuerung nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung ausführt;
  • 12 ist ein detailliertes Ablaufdiagramm, das die Empfangssteuerverarbeitung zeigt, die die Logikkanalsteuerung nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung ausführt;
  • 13 ist ein detailliertes Ablaufdiagramm, das die Empfangssteuerverarbeitung zeigt, die die Logikkanalsteuerung nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung ausführt;
  • 14 ist ein detailliertes Ablaufdiagramm, das die Empfangssteuerverarbeitung zeigt, die die Logikkanalsteuerung nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung ausführt;
  • 15 ist ein detailliertes Ablaufdiagramm, das die Empfangssteuerverarbeitung zeigt, die die Logikkanalsteuerung nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung ausführt;
  • 16 ist ein detailliertes Ablaufdiagramm, das die Empfangssteuerverarbeitung zeigt, die die Logikkanalsteuerung nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung ausführt;
  • 17 ist ein Ablaufdiagramm, das die Druckauftragsannullierungsverarbeitung zeigt, die eine Informationsverwaltung nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung ausführt;
  • 18 ist ein Ablaufdiagramm, das die Druckauftragsannullierungsverarbeitung zeigt, die ein Auftragsvorprozessor nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung ausführt;
  • 19 ist ein Ablaufdiagramm, das die Druckauftragsannullierungsverarbeitung zeigt, die eine Zeichnungseinheit nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung ausführt;
  • 20 ist ein spezielles Diagramm, das die Struktur eines Bedienfeldes nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung zeigt;
  • 21 ist ein Ablaufdiagramm, das die Verarbeitung zeigt, die der Informationsverwalter ausführt, wenn nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung ein Annullierknopf betätigt ist;
  • 22 ist ein spezielles Blockdiagramm, das die Anordnung eines Druckersystems nach einem zweiten Ausführungsbeispiel der vorliegenden Erfindung zeigt;
  • 23 ist ein spezielles Blockdiagramm, das die Anordnung eines herkömmlichen Druckersystems zeigt;
  • 24 ist ein Diagramm zur Erläuterung eines Verfahrens zur Druckdatenübertragung einer Auftragssteuersprache;
  • 25 ist ein Diagramm zur Erläuterung der Anforderung und Einstellung von Informationen eines Druckers unter Verwendung einer Auftragssteuersprache;
  • 26 ist ein erläuterndes Diagramm, das das Laden eines Speichermediums in ein System oder in ein Gerät zeigt;
  • 27 ist ein Diagramm zur Erläuterung einer Speicherkarte, bei der ein Steuerprogramm in einem ROM 1702 gespeichert und bereit zur Ausführung ist;
  • 28 ist eine Querschnittsansicht der Innenstruktur eines Laserstrahlsdruckers;
  • 29 ist ein Diagramm, das den Umriß eines Tintenstrahlaufzeichnungsgerätes IJRA zeigt;
  • 30 ist ein Diagramm, das die Steueranordnung zum Ausführen einer Aufzeichnung darstellt;
  • 31 ist ein Diagramm zur Erläuterung der Struktur eines Eingangspuffers;
  • 32 ist ein Diagramm zur Erläuterung der Struktur eines Pufferblockes;
  • 33 ist ein Ablaufdiagramm, das die Verarbeitung zeigt, die der Auftragsvorprozessor zum Speichern von PDL-Daten für einen Druckauftrag im Eingangspuffer ausführt;
  • 34 ist ein Ablaufdiagramm, das die Verarbeitung zeigt, die ein PDL-Übersetzer zum Übersetzen von PDL-Daten zeigt, die im Eingangspuffer gespeichert sind, und zum Erzeugen eines Zeichnungsgegenstands;
  • 35 ist ein Ablaufdiagramm, das die Verarbeitung zeigt, die ein Informationsprozessor zum Ungültigerklären von PDL-Daten im Eingangspuffer zeigt; und
  • 36 ist ein Blockdiagramm, das die Steueranordnung für einen Laserstrahldrucker zeigt.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSBEISPIELE
  • Nachstehend beschrieben sind die bevorzugten Ausführungsbeispiele nach der vorliegenden Erfindung.
  • Erstes Ausführungsbeispiel
  • 1 ist ein Funktionalblockdiagramm, das die Anordnung eines Druckersystems nach einem ersten Ausführungsbeispiel der vorliegenden Erfindung veranschaulicht. Im Druckersystem nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung sind ein Host 100 und ein Drucker 150 miteinander über ein vorbestimmtes Übertragungsmedium 180 verbunden. Für das erste Ausführungsbeispiel der vorliegenden Erfindung wird eine Ortschnittstelle, die spezifiziert ist durch IEEE (Institute of Electrical und Electronics Engineers) 1284, als Übertragungsmedium 180 verwendet.
  • Im Druckersystem vom ersten Ausführungsbeispiel der vorliegenden Erfindung ist der Host 100 ausgestattet mit einer Anwendungseinheit 101, einer Druckertreiber 102, einem Ausgangspuffer 103, einem I/F-Treiber 104, einer Nutzeinheit 105, einer Logikkanalsteuerung 106 und einem Auftragspaketgenerator 107.
  • Zur genauen Erläuterung der Funktionen der individuellen Abschnitte sieht die Anwendungseinheit 101 eine Graphiknutzerschnittstelle für einen Nutzer vor und erzeugt Bilddaten, die zur Absicht des Nutzers passen. Der Druckertreiber 102 setzt die Bilddaten, die die Anwendungseinheit 101 erzeugt hat, um in Seitenbeschreibungssprachendaten (PDL-Daten), die ein Drucker 150 drucken kann. Der Ausgangspuffer 103 wird verwendet zum zeitweiligen Speichern von PDL-Daten, die der Druckertreiber 102 erzeugt. Der Auftragspaketgenerator 107 erzeugt ein Auftragspaket unter Verwendung von im Ausgangspuffer 103 gespeicherten PDL-Daten.
  • Die Nutzeinheit 105 erzielt aus dem Drucker 150 einen Druckauftrag oder eine Information bezüglich des Druckers 150 und sendet diese an die Graphikanwenderschnittstelle, oder setzt den Druckauftrag oder die Information bezüglich des Druckers 150 gemäß einem Befehl vom Anwender ein.
  • Die Logikkanalsteuerung 106 ändert zwei Logikkanäle in ein physisches Paket mit der Form IEEE 1284.4, das heißt, einen Auftragskanal, der verwendet wird für ein Auftragspaket, das der Auftragspaketgenerator 107 sendet, und einen Steuerkanal, der für das Steuerpaket verwendet wird, das die Nutzeinheit 105 sendet, und sendet den physischen Kanal an den I/F-Treiber 104. Die Logikkanalsteuerung 106 empfängt das Logikkanalpaket IEEE 1284.4 aus dem Drucker 150 über den I/F-Treiber 104, teilt es ein in zwei Logikkanäle und sendet ein Paket aus dem Drucker 150 an die Nutzeinheit 105. Der I/F-Treiber 104 tauscht ein Logikkanalpaket aus mit dem Drucker 150 über das Übertragungsmedium 180.
  • Der Drucker 150, der das Druckersystem gemäß dem ersten Ausführungsbeispiel der vorliegenden Erfindung bildet, ist ausgestattet mit: einer Logikkanalsteuerung 151, einer Datenbank 152, einem Auftragsvorprozessor 153, einem Eingangspuffer 154, einem PDL-Übersetzer 155, einem Zeichnungspuffer 156, einer Zeichnungseinheit 157, einer Druckmaschine 158, einem I/F-Treiber 159, einem Informationsverwalter 160 und mit einem Bedienfeld 161.
  • Zur Erläuterung der Arbeitsweisen der individuellen Abschnitte in Einzelheiten tauscht der I/F-Treiber 159 ein Logikkanalpaket mit dem Host 100 aus über das Übertragungsmedium 180. Die Logikkanalsteuerung 151 empfängt ein Logikkanalpaket IEEE 1284.4 aus dem Host 100 über den I/F-Treiber 159, teilt es ein in zwei Logikkanäle, einen Auftragskanal und einen Steuerkanal und sendet diese an die nächste Stufe. Darüber hinaus ändert die Logiksteuerung 151 ein Antwortpaket aus dem Informationsverwalter 160 in ein Paket IEEE 1284.4 und sendet die Logikkanalpaketdaten an den I/F-Treiber 159. Eingangspuffer 154 dient als Pufferglied zum zeitweiligen Speichern der PDL-Daten und zum Verzögern der Verarbeitung in der nachfolgenden Stufe.
  • Die Datenbank 152 verwaltet verschiedene Arten von Informationen, wie Informationen bezüglich des Druckers 150 oder der Eigenschaften eines Druckauftrags. Die Eigenschaften vom Druckauftrag sind der Name vom Druckauftrag, dessen Eigentümer, die Größe und die Anzahl von Kopien.
  • Information, die den Verarbeitungszustand eines jeden Druckauftrags aufzeigt, wird darüber hinaus ebenfalls gespeichert. Wenn beispielsweise das Übersetzen von PDL-Daten für einen speziellen Druckauftrag vom PDL-Übersetzer 155 begonnen wurde, wird der Zustand, bei dem die PDL-Daten vom PDL-Auftrag vom PDL-Übersetzer 155 analysiert werden, als der Zustand des anhaltenden Druckauftrags gespeichert. Eine Steuerung, die die individuellen Abschnitte synchronisiert, um so in korrekter Weise eine Vielzahl von Druckaufträgen unter Verwendung des Druckers 150 auszuführen, aktualisiert die Zustände Zustände der individuellen Druckaufträge. Die Auswahl, die zum Druckauftrag gesendet wurde an die nachfolgende Stufe oder den Druckauftrag aus der vorherigen Stufe empfangen hat, schreibt den Zustand des anhaltenden Druckauftrags neu.
  • Der Auftragsvorprozessor 153 empfängt ein Auftragspaket und wendet den Betriebscode an, der im Kopf des Auftragspakets gespeichert ist, um PDL-Daten zum Eingangspuffer 154 zu senden oder die Eigenschaften des Druckauftrags in der Datenbank 152 zu speichern. Der Informationsverwalter 160 speichert einen Druckauftrag oder eine Einrichtungsinformation in die Datenbank 152 gemäß dem Betriebscode und den Daten, die im empfangenen Steuerpaket gespeichert sind, oder erzeugt ein Antwortpaket gemäß einer Informationsanforderung aus der Nutzeinheit 105 vom Host 100, oder setzt einen Druckauftrag gemäß einem Annullierbefehl für den Druckauftrag ab, den die Nutzeinheit 105 eingegeben hat oder der über das Bedienfeld 161 eingegeben worden ist.
  • Das Annullieren vom Druckauftrag bedeutet denselben Prozeß, der ausgeführt wird, wie für das Zurückziehen des Druckauftrags oder das Löschen eines Druckauftrags, und auch die Ungültigkeitserklärung der Druckdaten für einen Druckauftrag, wie PDL-Daten, und ein Zeichnungsgegenstand beim Drucker 150.
  • Das Ungültigerklären von Druckdaten bedeutet, daß die Druckdaten zu löschen sind, wenn sie im Eingangspuffer oder im Zeichnungspuffer gespeichert sind, oder daß ein Ungültigkeitskennzeichen für die Druckdaten gesetzt werden muß für die Kennzeichenverwaltung, oder daß, wenn die Druckdaten vom Prozessor gehalten sind, die Verarbeitung für die Druckdaten angehalten wird oder die Druckdaten aufgegeben werden.
  • Der PDL-Übersetzer 155 übersetzt PDL-Daten und setzt die PDL-Daten um in einen Zeichnungsgegenstand, der für die Zeichnung adäquat ist. Der Zeichnungsgegenstand wird zeitweilig im Zeichnungspuffer 156 gespeichert, bis das aktuelle Drucken initialisiert ist. Die Zeichnungseinheit 157 setzt den Zeichnungsgegenstand um, der zeitweilig im Zeichnungspuffer 156 gespeichert ist, in ein Punktrasterbild durch die aktuelle Zeichnung. Die Druckmaschine 157 empfängt die Punktrasterdaten aus der Zeichnungseinheit 157 und druckt sie auf ein Blatt Papier unter Verwendung einer allgemein bekannten Drucktechnik.
  • Unter Verwendung des Bedienfeldes 161 wird die Feldmanipulation des herkömmlichen Druckers aktiviert, und das Annullieren des Druckauftrags kann bestimmt werden.
  • 2 ist ein erläuterndes Diagramm, das ein Bezugsmodell für die Verbindung vom Host 100 mit dem Drucker 150 nach dem ersten Ausführungsbeispiel zeigt. Gemäß dem Protokoll, das der IEEE 1284 entspricht, tauschen der Host 100 und der Drucker 150 Daten auf einer Datenverkettungsschicht aus, die eine physische Schicht unterhalb einer solchen gemäß OSI (Netzwerkprotokollnormen gemäß ISO (International Standards Organization) für die Zwischenverbindung eines offenen Systems). In 1 ist dieser Prozeß eine Belastung für den I/F-Treiber 140 vom Host 100 und den I/F-Treiber 159 vom Drucker 150.
  • Eine Netzwerkebene einer Transportebene, die obere Ebenen gemäß IEEE 1284 sind, werden gesteuert unter Verwendung des Logikkanalprotokolls, das festgelegt ist in IEEE 1284.4. IEEE 1284.4 legt eine Kanalmultiplexfunktion und eine Begleitsteuerfunktion fest. In 2 ist dieser Prozeß unter Verwaltung der Logikkanalsteuerung 106 und dem Host 100 sowie der Logikkanalsteuerung 151 vom Drucker 150. Die Kanäle, die dem Multiplexverfahren unterzogen sind gemäß IEEE 1284.4 werden in einen Auftragskanal und in einen Steuerkanal sortiert, und verschiedene Dienste stehen bereit zur Anwenderebene gemäß dem Auftragsprotokoll des Steuerprotokolls.
  • Die Struktur des Auftragsprotokolls ist nachstehend erläutert. Das Auftragsprotokoll ist ein solches, das aus einem Auftragspaket gebildet ist, das erzeugt wird durch den Auftragspaketgenerator 107 vom Host 100, und das so spezifiziert ist, daß der Auftragsvorprozessor 153 vom Drucker 150 leicht den Beginn und das Ende des Druckauftrags identifizieren und die Eigenschaften des Druckauftrags einstellen kann.
  • 3 ist ein erläuterndes Diagramm, das die Struktur eines Auftragspakets zeigt. Die Vertikalachse stellt ein Byte dar, und die Horizontalachse stellt die Bits in jedem Byte dar. In 3 ist ein Betriebscode der Bytes 0 bis 1 eine ID von zwei Bytes, die die Funktion des Pakets aufzeigen. Das Auftragspaket kann folgende Werte annehmen.
    0x0201: Auftragsstartoperation
    0x0202: Auftragseigenschaftseinstelloperation
    0x0204: PDL-Daten Sendeoperation
    0x0205: Auftragsendoperation
  • Die Blocknummern und Bytes 2 und 3 werden verwendet zum Anfordern der Inhalte einer Antwortanforderung von der Sendeseite eines Auftragspakets zu einer Antwort aus der Empfangsseite. Wenn beispielsweise ein Auftragspaket mit Blocknummern = 1, 2, 3, die sequentiell gesendet werden, und ein Fehlerpaket mit Blocknummer = 2 zurückgegeben wird, kann die Sendeseite sicherstellen, daß ein Fehler im zweiten Auftragspaket aufgetreten ist, das gesendet wurde.
  • Die Parameterlänge der Bytes 4 und 5 ist ein Bereich, der die Bytelänge des Datenabschnitts aufzeigt, und kann 0 bis 64 kBytes aufzeigen. Bytes 6 und 7 sind Bereiche, die verwendet werden zum Aufzeigen verschiedener Kennzeichen für das Auftragspaket, das folgende Inhalte darstellt.
  • Fehlerkennzeichen: Wenn es den Wert von "1" hat, zeigt das Kennzeichen das Auftreten eines Fehlers im Drucker 150 auf. Dieses Kennzeichen wird dem Antwortpaket hinzugefügt, das der Drucker 150 an den Host 100 sendet.
  • Meldekennzeichen: Wenn es einen Wert von "1" hat, meldet das Kennzeichen dem Host 1, daß es keine Antwort auf das Anforderungspaket vom Host 100 gibt, und es sich um einen Fall handelt, der vom Drucker 150 zu melden ist.
  • Fortsetzungskennzeichen: Wenn es den Wert von "1" hat, zeigt das Kennzeichen an, daß weil alle Daten nicht im Datenabschnitt enthalten sind, die restlichen Daten mit dem nachfolgenden Paket zu senden sind. Derselbe Betriebscode wie im vorigen Paket muß für das nächste Auftragspaket eingesetzt werden.
  • Antwortanforderung: Ein Wert von "1" wird gesetzt, wenn der Host 100 ein Antwortpaket vom Drucker 150 anfordert. Wenn es den Wert "0" hat, gibt es keine Antwort, wenn das Paket korrekt verarbeitet wird. Wenn ein Fehler im Drucker 150 auftritt, wird ein Antwortpaket, das ein auf "1" gesetztes Fehlerkennzeichen hat, permanent gesendet, obwohl die Antwortanforderung gleich 0/1 ist.
  • Eine Anwender-ID bei Bytes 8 und 9 und ein Kennwort bei Bytes 10 und 11 sind Bereiche, die verwendet werden zur Autorisierung eines Pakets, das gesendet wurde, um die Manipulation zu beschränken, die sich ergibt, wenn das Paket für Sicherheitsgründe verwendet wird. Diese Bereiche berühren dieses Ausführungsbeispiel nicht.
  • Daten, die dem Betriebscode entsprechen, werden in Byte 12 und den folgenden gespeichert. Daten sind nicht im Byte präsent, wenn der Betriebscode einer Arbeitsstartoperation oder einer Auftragsstopoperation dient.
  • Für die Auftragseigenschaftseinstelloperation werden eine gewünschte Eigenschafts-ID und Auftragseigenschaftswerte im Datenabschnitt gespeichert. Die Auftragseigenschafts-ID ist ein Identifikationsmittel, das versehen ist gemäß der Eigenschaft oder der Umgebung für einen Auftrag, und eine ID, die der Eigenschaft eines Auftrags entspricht, der festgelegt ist durch ISO-10175 (DPA), wird dem Identifiziermittel im voraus zugewiesen. Die typischen Auftragseigenschafts-ID sind folgende.
  • Auftragseigenschafts-ID
    • 0x0101: Auftragsname
    • 0x0103: Auftragseignername
    • 0x016a: Auftragsumfang
  • Abhängig von der Funktion des Druckers 150 können darüber hinaus die anderen Auftragseigenschaften, wie die Anzahl von Kopien, Monochrom/Farbe und eine entsprechende ID dem Identifizierer zugewiesen werden.
  • Für die PDL-Datensendeoperation werden PDL-Daten in den Datenabschnitt eingegeben. Das Maximum an Daten, das mit der obigen Parameterlänge bestimmt werden kann, das heißt, Daten von 64 kBytes, können in einem Auftragspaket gespeichert werden, und längere Daten als diese werden eingeteilt in eine Vielzahl von Auftragspaketen zum Senden. In diesem Falle wird das Fortsetzungskennzeichen auf "1" gesetzt.
  • Der Auftragspaketgenerator 107 vom Host 100 ist als nächstes erläutert. 4 und 5 sind Ablaufdiagramme, die die Verarbeitung zeigen, die der Auftragspaketgenerator 107 ausführt. Wenn das Drucken durch die Anwendereinheit 101 ausgewählt ist, wird der Druckertreiber 102 aktiviert, um PDL-Daten zu erzeugen und zum Ausgangspuffer 103 zu senden. Dann beginnt der Auftragspaketgenerator 107 die Verarbeitung.
  • In Schritt S401 wird ein Auftragspaket, bei dem der Auftragsstartbetriebscode (0x0201) in einen Bereich zum Speichern des Betriebscodes in 3 gespeichert und ausgegeben an die Logikkanalsteuerung 106. Danach werden alle Operationen zum Einstellen der Eigenschaften des anhaltenden Druckauftrags ausgeführt, bis das Auftragspaket, in dem der Auftragsendoperationscode gespeichert ist, ausgegeben ist.
  • In Schritt S204 wird der Name eines Auftrags eingesetzt. Der Auftragseigenschaftseinstellbetriebscode (0x0202) wird im Bereich eines Auftragspakets gespeichert, das Verwendung findet zum Speichern des Betriebscodes in 3, und die Auftragseigenschafts-ID (= 0x0101), die den Namen des Druckauftrags aufzeigt, und ein Name, der als Auftragseigenschaftswert dient (beispielsweise "Dokument 1" in diesem Falle) werden im Datenabschnitt gespeichert. Dieses Auftragspaket wird ausgegeben an die Logikkanalsteuerung 106.
  • In Schritt S403 wird der Eigner des Druckauftrags eingesetzt. Der Auftragseigenschaftseinstellbetriebscode (0x0202) wird im Bereich eines Auftragspakets gespeichert, der Verwendung findet zum Speichern des Betriebscodes in 3, und die Auftragseigenschafts-ID (= 0x0103), die den Auftragseigner aufzeigt, und der Name des Eigners, der als Auftragseigenschaftswert dient (in diesem Falle "Taro") werden im Datenabschnitt gespeichert. Dieses Auftragspaket wird an die Lokalkanalsteuerung 106 ausgegeben.
  • In Schritt S404 wird der Umfang des Druckauftrags eingesetzt. Der Auftragseigenschaftseinstellbetriebscode (0x0202) wird im Bereich eines Auftragspakets gespeichert, das ausgegeben wird zum Speichern des Betriebscodes in 3, und die Auftragseigenschafts-ID (= 0x016a), die den Auftragsumfang aufzeigt, und den Datenumfang vom Auftrag, der als Auftragseigenschaftswert dient (in diesem Falle "100000"), werden im Datenabschnitt gespeichert. Dieses Auftragspaket wird ausgegeben an die Lokalkanalsteuerung 106.
  • In Schritt S405 wird der Umfang der PDL-Daten, der zu senden ist, in die variable "Größe" substituiert. In Schritt S406 wird der Umfang der variablen "Größe" überprüft zum Bestimmen, ob sie größer als 64 kBytes ist. Da die Parameterlänge des Paketkopfes mit 16 Bits ausgedrückt wird, ist die Größe des Datenabschnitts vom Auftragspaket beschränkt auf maximal 64 kBytes, und Daten, die einen größeren Umfang haben, werden eingeteilt in eine Vielzahl von Auftragspaketen zum Senden.
  • Wenn der Umfang der PDL-Daten größer als 64 kBytes ist, wird in Schritt S407 das Fortsetzungskennzeichen im Paketkopf in 3 auf "1" gesetzt. In Schritt S408 werden 64 kBytes von PDL-Daten aus dem Ausgangspuffer 103 ausgelesen. Der PDL-Datensendebetriebscode (0x0204) wird im Bereich eines Auftragspakets gespeichert, das verwendet wird zum Speichern des Betriebscodes in 3, und die ausgelesenen PDL-Daten werden im Datenabschnitt gespeichert. Das sich ergebende Auftragspaket wird abgegeben an die Logilkanalsteuerung 106. In Schritt S409 werden die 64 kBytes von Daten, die gesendet sind, von der variablen "Größe" abgezogen, und die Programmsteuerung kehrt zur Verzweigung in Schritt S406 zurück.
  • Wenn die Größe der restlichen PDL-Daten in Schritt S406 gleich oder kleiner als 65 kBytes ist, muß nur ein Auftragspaket gesendet werden, um das Senden der PDL-Daten zu vollenden, die mit dem Druckauftrag verbunden sind. In diesem Falle wird in Schritt S410 das Fortsetzungskennzeichen im Paketkopf in 3 auf "0" gesetzt, um den Abschluß des Sendens der PDL-Daten für den Druckauftrag aufzuzeigen.
  • In Schritt S411 werden die restlichen PDL-Daten aus dem Ausgangspuffer 103 ausgelesen. Der PDL-Datensendebetriebscode (0x0204) wird im Bereich eines Auftragspakets gespeichert, das Verwendung findet zum Speichern des Betriebscodes in 3, und die restlichen PDL-Daten, die ausgelesen werden, werden im Datenabschnitt gespeichert. Das sich ergebende Auftragspaket wird dann an die Logikkanalsteuerung 106 abgegeben.
  • In Schritt S412 wird der Auftragsendbetriebscode (0x0205) im Bereich des Auftragspakets gespeichert, das verwendet wird zum Speichern des Betriebscodes in 3, und dieses Auftragspaket wird ausgegeben an die Logikkanalsteuerung 106. Danach ist die Verarbeitung beendet.
  • Nachstehend erläutert ist eine Erläuterung des Auftragsvorprozessors 153 vom Drucker 150. Wenn der Auftragsvorprozessor 153 aus dem Auftragspaketgenerator 107 das Auftragspaket empfängt, in dem der Auftragsstartoperationscode (0x0201) gespeichert ist, erkennt der Auftragsvorprozessor 153 den Beginn des Druckauftrags und eine Gegenstands-ID für den Druckauftrag und registriert ihn in der Datenbank 152.
  • Im Ergebnis wird der Druckauftrag, den der Drucker 150 empfangen hat, identifiziert, ohne daß die PDL-Daten des Druckauftrags analysiert sind. Da darüber hinaus der Druckauftrag verwaltet wird durch Ausgabe der Gegenstands-ID, können alle Druckaufträge, die beim Drucker 150 eingehen, identifiziert werden. Ein Druckauftrag, bei dem die Eigenschaften gewonnen oder eingestellt werden, kann weiterhin ein Druckauftrag, der zu annullieren ist, unter Verwendung der Gegenstands-ID bestimmt werden.
  • Bis ein Auftragspaket empfangen ist, in dem der Auftragsendbetriebscode (0x0205) gespeichert ist, werden die Eigenschaften des laufenden Druckauftrags in der Datenbank 152 gespeichert, oder die PDL-Daten des Druckauftrags werden zum Eingangspuffer 154 gemäß dem Betriebcode eines empfangenen Auftragspakets gesendet.
  • Die Struktur vom Eingangspuffer 154 ist nachstehend unter Bezug auf die 31 und 32 beschrieben. Wie in 31 gezeigt, besteht der Eingangspuffer 154 aus einer verwendeten Warteschlange UQ und einer freien Warteschlange FQ, die später zu beschreiben sind. Jede Warteschlange wird verwaltet durch Verbinden einer Vielzahl von Pufferblöcken in 32. Wie zuvor beschrieben, hat der Eingangspuffer 154 eine Pufferblockform und ist aus einer Vielzahl von Pufferblöcken gebildet, die jeweils über Köpfe verfügen.
  • Wie in 32 gezeigt, besteht der Pufferblock vom Kopf (12 Bytes) und einem Körper (2048 Bytes). Der Kopf enthält drei Bereiche, jeder mit vier Bytes, in denen die Kopfposition der effektiven Daten gespeichert sind, die Anzahl von Bytes effektiver Daten und eine Gegenstands-ID.
  • Die Kopfposition der effektiven Daten ist die Kopfposition des effektiven Datenabschnitts, gespeichert im Körper des Pufferblocks. Wenn die Kopfposition der effektiven Daten beispielsweise 0 ist, bedeutet dies, daß die effektiven Daten an der Kopfposition vom Körper beginnen. Wenn die Kopfposition 2047 ist, bedeutet dies, daß nur das erste Byte vom Körper effektive Daten hat. Die Datenposition der effektiven Daten wird um eins inkrementiert, immer wenn der PDL-Übersetzer 155 ein Byte der PDL-Daten aus dem Körper des Pufferblocks gelesen hat.
  • Die Anzahl von Bytes effektiver Daten ist der Umfang der Daten, die im Körper des Pufferblocks gespeichert sind. Eine Bytegröße von 2048 Bytes wird aufbereitet als Körper im Pufferblock, aber der Körper muß nicht vollständig mit Daten ausgefüllt sein. Wenn es beispielsweise 100 Bytes an PDL-Daten gibt, werden diese im Körper eines spezifischen Pufferblocks gespeichert, und die Anzahl von Bytes der effektiven Daten, gespeichert im Pufferblock, wird auf 100 gesetzt. Wenn es 2100 Bytes an PDL-Daten gibt, können 2048 PDL-Datenbytes im Körper des ersten Pufferblocks gespeichert werden, und die restlichen 52 Bytes können im Körper des zweiten Pufferblocks gespeichert werden.
  • Die Anzahl von Bytes effektiver Daten wird um eins inkrementiert, immer wenn der PDL-Übersetzer 155 ein Byte an Daten ausgelesen hat.
  • Während einer oder mehrere Pufferblöcke verwendet werden können, werden normalerweise bis mehrere 10 Pufferblöcke verwendet, weil die Empfangsgeschwindigkeit niedrig ist, wenn es zu wenig Pufferblöcke gibt. In diesem Ausführungsbeispiel werden 10 Pufferblöcke verwendet. Das heißt, der Eingangspuffer 154 besteht aus 10 Pufferblöcken und hat insgesamt eine Kapazität von 20480 Bytes.
  • Diese Pufferblöcke werden verwaltet von einer FIFO-Warteschlange. In diesem Ausführungsbeispiel gibt es zwei Arten von FIFO-Warteschlangen: Eine verwendete Warteschlange UQ und eine freie Warteschlange FQ.
  • Die Pufferblöcke, die der Host 100 sendet und in denen PDL-Daten gespeichert sind, die noch nicht vom PDL-Übersetzer 156 bearbeitet sind, werden untereinander in einer verwendeten Warteschlange UQ in der Reihenfolge verkettet, in der die PDL-Daten empfangen werden. Leere Pufferblöcke, in denen PDL-Daten nicht gespeichert sind im Körper, werden ebenfalls in einer freien Warteschlange FQ verkettet.
  • Wird der Drucker 150 aktiviert, dann werden alle zehn Pufferblöcke gemeinsam in der freien Warteschlange FQ verkettet, und es gibt keine Pufferblöcke in der verwendeten Warteschlange UQ. Wenn ein Druckauftrag vom Host 100 gesendet wird, erfolgt das Auslesen eines Pufferblockes aus der freien Warteschlange FQ. Die PDL-Daten für den Druckauftrag werden im Körper des Pufferblocks gespeichert, der dann als Kette der verwendeten Warteschlange UQ hinzugefügt wird. Dieser Prozeß wird solange wiederholt, bis Druckaufträge fortgesetzt vom Host gesendet werden.
  • Der Ausgangspuffer 154 wird verwaltet unter Verwendung von Pufferblöcken, und nur die PDL-Daten für einen Druckauftrag können in einem Pufferblock gespeichert werden. Der Kopf steht bereit für einen individuellen Pufferblock, und wenn das Speichern der PDL-Daten für einen Druckauftrag in einem Pufferblock erfolgt, wird die Auftrags-ID vom Druckauftrag im Kopf des Pufferblocks gespeichert.
  • Nachstehend beschrieben ist eine spezielle Erläuterung der Verarbeitung aus der Zeit des Auftragsvorprozessors 153, der einen Druckauftrag empfängt, bis die Speicherung der PDL-Daten für den Druckauftrag im Eingangspuffer 154 erfolgt. 33 ist ein Ablaufdiagramm, das die Verarbeitung zeigt, die der Auftragsvorprozessor 153 von der Zeit an ausführt, da er einen Druckauftrag empfängt, bis die PDL-Daten für den Druckauftrag im Eingangspuffer 154 gespeichert sind.
  • Wenn der Auftragsvorprozessor einen Druckauftrag empfängt, wird zunächst in Schritt S3301 ein Pufferblock aus der freien Warteschlange FQ ausgelesen. In Schritt S3302 werden so viele PDL-Daten wie möglich für den Druckauftrag im Körper des Pufferblocks gespeichert.
  • In Schritt S3303 erfolgt eine Überprüfung zur Bestimmung, ob alle PDL-Daten für den Druckauftrag im Eingangspuffer 154 gespeichert sind. Sind alle PDL-Daten gespeichert, werden in Schritt S3304 die Anzahl von letzten Bytes der PDL-Daten, die gespeichert worden sind, und die Gegenstands-ID des Druckauftrags in den Kopf des Pufferblocks eingegeben. In Schritt S3305 wird der Pufferblock in der verwendeten Warteschlange UQ verkettet. Danach ist die Verarbeitung beendet.
  • Sind in Schritt S3303 alle PDL-Daten des Druckauftrags nicht im Eingangspuffer 154 gespeichert, erfolgt in Schritt S3306 eine Überprüfung zur Bestimmung, ob der Körper des Pufferblocks voll ist. Ist der Pufferblock nicht voll, kehrt die Programmsteuerung zu Schritt S3302 zurück, und die restlichen PDL-Daten für den Druckauftrag werden im Körper des Pufferblocks gespeichert.
  • Ist der Pufferblock aber voll, wird in Schritt S3308, wie in Schritt S3304, die Anzahl von Bytes von PDL-Daten, die im Körper des Pufferblocks gespeichert sind, und die Gegenstands-ID des Druckauftrags in den Kopf des Pufferblocks eingegeben. In Schritt S3308 wird der Pufferblock in die verwendete Warteschlange UQ verkettet. Die Programmsteuerung kehrt zurück zu Schritt S3301, und die restlichen PDL-Daten für den Druckauftrag werden in einem neuen Pufferblock gespeichert.
  • Jedesmal, wenn der Auftragsvorprozessor 153 PDL-Daten für einen Druckauftrag auf diese Weise empfängt, werden die PDL-Daten im Eingangspuffer 154 gespeichert.
  • Erkennt der PDL-Übersetzer 155, daß es Pufferblöcke nicht in der verwendeten Warteschlange UQ gibt, erfolgt das Auslesen der Pufferblöcke aus der Warteschlange, und zwar einer nach dem anderen, die dort gespeicherten PDL-Daten werden übersetzt und in Bilddaten umgesetzt.
  • Nachdem der PDL-Übersetzer 155 alle PDL-Daten umgesetzt hat, die im Pufferblock gespeichert sind, in Bilddaten, und der Körper des Pufferblocks leer ist, dann wird der Pufferblock mit der freien Warteschlange FQ verbunden.
  • Solange es restliche Pufferblöcke in der verwendeten Warteschlange UQ gibt, wiederholt der PDL-Übersetzer 155 die obige Verarbeitung.
  • Eine spezielle Erläuterung wird nun für die Verarbeitung gegeben, die der PDL-Übersetzer 155 ausführt. 34 ist ein Ablaufdiagramm, das die Verarbeitung zeigt, die der PDL-Übersetzer 155 ausführt, wenn die PDL-Daten übersetzt werden, die in einem Eingangspuffer 154 gespeichert sind, und ein Zeichnungsgegenstand wird erzeugt.
  • In Schritt S3401 erfolgt eine Überprüfung zum Bestimmen, ob es Pufferblöcke gibt, die zunächst in der verwendeten Warteschlange UQ vorhanden sind. Wenn es keine Pufferblöcke in der verwendeten Warteschlange UQ gibt, ist die Verarbeitung abgeschlossen.
  • Wenn es Pufferblöcke in der verwendeten Warteschlange UQ gibt, werden in Schritt S3403 im Körper des Pufferblocks gespeicherte PDL-Daten, der am Kopf der verwendeten Warteschlange UQ positioniert ist, übersetzt und umgesetzt in einen Zeichnungsgegenstand. Dann wird der gewonnene Bildgegenstand zum Zeichnungspuffer 156 übertragen.
  • In Schritt S3404 wird dieser Pufferblock aus der verwendeten Warteschlange UQ gelöscht, und in Schritt S3405 wird der Pufferblock mit der freien Warteschlange FQ verbunden.
  • Die Logikkanalsteuerung 106 vom Host 100 ist nachstehend beschrieben. Die Logikkanalsteuerung 106 verarbeitet die oben beschriebene OSI-Netzwerkschicht und die Transportschicht. Die Logikkanalsteuerung 106 benennt ein Auftragspaket, das der Auftragspaketgenerator 107 ausgegeben hat, und ein Steuerpaket, das die Nutzeinheit 105 ausgegeben hat, an einen Auftragskanal beziehungsweise an einen Steuerkanal, um ein Logikkanalpaket zu bilden, und sendet das Logikkanalpaket an den I/F-Treiber 104 der nachfolgenden Stufe. Die Logikkanalsteuerung 106 empfängt darüber hinaus das Logikkanalpaket aus dem Drucker 150 über den I/F-Treiber 104 und teilt ihn ein in zwei Logikkanäle und sendet ein Antwortpaket vom Drucker 150 an die Nutzeinheit 105.
  • Das Logikkanalpaket ist nachstehend erläutert. Das Logikkanalpaket enthält Daten, die aus Strom von Paketen bestehen, festgelegt gemäß IEEE 1284.4. Das Logikkanalpaket wird als Einzelsatz von Daten über das Übertragungsmedium (Schnittstelle) 180 gesandt, und lokal analysiert zum Aufbereiten einer Vielzahl von Kanälen durch die Logikkanalsteuerung 106 des Hosts 100 und der Logikkanalsteuerung 151 vom Drucker 150. Dann wird ein Auftragspaket oder Steuerpaket zur nachfolgenden Stufe gesandt.
  • Die Paketstruktur gemäß IEEE 1284.4 ist nachstehend erläutert. 6 ist ein konzeptionelles Diagramm zur Erläuterung der Paketstruktur gemäß IEEE 1284.4. Das Paket gemäß IEEE 1284.4 hat einen Kopf von sechs Bytes: die ersten zwei Bytes werden verwendet für eine Sockel-ID, die nächsten beiden Bytes für die Datenlänge, ein Byte für einen Bereitstellungsinformationsbereich, ein Byte für einen Steuerbereich und die letzten 64 kBytes (einschließlich Kopflänge) für den größten Datenabschnitt. Der Bereitstellungsinformationsbereich ist ein erforderliches Konzept für die Ablaufsteuerung, die später zu beschreiben ist. Die Sockel-ID vom Auftragskanal ist festgelegt mit 0x10, sowohl für die Sendeseite als auch für die Empfangsseite, und die Sockel-ID des Steuerkanals ist festgelegt mit 0x20, sowohl für die Sendeseite als auch für die Empfangsseite.
  • Nachstehend erläutert ist das Logikkanalpaket, wenn ein Auftragspaket von 256 Bytes vom Auftragspaketgenerator 107 gesendet wird. 7 ist ein konzeptionelles Diagramm zur Erläuterung der Struktur eines Logikkanalpakets, in dem das oben beschriebene Auftragspaket geändert wird. Die Primärsockel-ID = 0x10 und die Sekundärsockel-ID = 0x10 werden bestimmt, um in ein Logikkanalpaket eines Auftragspakets geändert zu werden, das der Auftragspaketgenerator 107 vom Host 100 des Auftragsvorprozessors 153 im Drucker 150 sendet.
  • Der Umfang vom Logikkanalpaket einschließlich Kopf wird als Datenlänge bestimmt. Da in 7 der Datenumfang 256 Bytes beträgt und der Kopfumfang 6 Bytes, ist die Gesamtdatenlänge 262 Bytes. Obwohl nicht speziell erforderlich, wird 0x00 in der Bereitstellungsinformation und in Steuerbereichen gespeichert. 8 ist ein Konzeptdiagramm des Änderns vom Steuerpaket mit einer Datenlänge von 16 Bytes in ein Logikkanalpaket.
  • Das Konzept vom Bereitstellungsinformationsbereich ist nachstehend erläutert. Der Bereitstellungsinformationsbereich wird verwendet zur Ablaufsteuerung. Wenn Daten aus einer speziellen Einrichtung empfangen werden und zeitweilig in Ressourcen zwischengespeichert werden müssen in Bereitstellungsinformationsbereichen (allgemein ein Puffer, der Schreib-/Lesespeichermittel beinhaltet, die als Eingangspuffer bezeichnet werden, während das Vorhandensein des Druckers in dieser Erfindung angenommen wird), muß der Umfang an zu empfangenden Daten so gesteuert werden, daß er die Kapazität des Eingangspuffers nicht überschreitet, denn anderenfalls kann das Speichern der empfangenen Daten fehlschlagen, und die Verarbeitung wird nicht korrekt ausgeführt. Um ein derartiges Problem zu vermeiden, wird ein Ablaufsteuerprozeß zum Einstellen des Haltens und Wiederaufnehmens einer Datensendung ausgeführt.
  • Die Bereitstellungsinformation wird ausgegeben von der Paketempfangsseite zur Sendeseite für jeden Kanal und zeigt auf, wie viele Empfangspakete der Empfangsseite zu empfangen sind. Die Paketempfangsseite garantiert, daß die Pakete empfangen und als Bereitstellungsinformationen ausgegeben werden können. Wenn es keine Bereitstellungsinformation gibt, bedeutet dies, daß die Empfangsseite Daten über den passenden Kanal nicht empfangen kann. Ein Bereitstellungsinformationsanforderungsbefehlspaket und ein Antwortpaket werden zum Bereitstellungsinformationsaustausch verwendet. Wenn der Host 100 alle Bereitstellungsinformationen für den Auftragskanal verwendet hat und kann ein Logikkanalpaket nicht senden, dann sendet der Host 100 ein Bereitstellungsinformationsanforderungsbefehlspaket an den Drucker 150.
  • 9 ist ein konzeptionelles Diagramm zur Erläuterung eines Bereitstellungsinformationsanforderungsbefehlspakets. Das Bereitstellungsinformationsanforderungsbefehlspaket besteht aus 13 Bytes, und 0x00 ist für die Primärsockel-ID und die Sekundärsockel-ID zugewiesen, und 0x04 wird für einen Befehl eingesetzt. Da die Sockel-ID = 0x00 ist und ein spezieller Kanal nur für Befehle verwendet wird, kann dies nicht für den Austausch von Echtzeitdaten verwendet werden. Die Sockel-ID zur Anforderung der Bereitstellungsinformation ist mit Bytes 8 und 9 in 9 benannt, während die Anzahl erforderlicher Bereitstellungsinformationen mit den Bytes 10 und 11 angegeben ist. Wenn der Drucker 150 das Bereitstellungsinformationsanforderungsbefehlspaket empfängt, erzeugt er ein Antwortpaket gemäß dem Zustand vom Eingangspuffer 154 und sendet das Antwortpaket an den Host 100.
  • 10 ist ein konzeptionelles Diagramm zur Erläuterung eines Antwortpakets. Das Antwortpaket besteht aus 12 Bytes, und 0x00 wird für die Primärsockel-ID und die Sekundärsockel-ID eingesetzt, während 0x84 für den Befehl eingesetzt wird. Wenn in 10 die Bereitstellungsinformation ausgegeben wird, erfolgt Einsetzen von 0x00 als Ergebnis (Byte 8), und der Bereitstellungsinformationsumfang kann ausgegeben werden, wie in den Bytes 11 und 12 eingestellt.
  • Die von der Logikkanalsteuerung ausgeführte Verarbeitung ist nachstehend beschrieben. Da die Logikkanalsteuerung 106 vom Host 100 und die Logikkanalsteuerung 151 vom Drucker 150 dieselbe Integralstruktur aufweisen, wird die nachstehende Beschreibung für beide Logikkanalsteuerungen 106 und 151 gemeinsam gegeben.
  • 11 ist ein Ablaufdiagramm, das die Verarbeitung zeigt, die die Logikkanalsteuerung ausführt. In Schritt S1101 wird die Empfangssteuerverarbeitung ausgeführt, und in Schritt S1102 wird die Sendesteuerverarbeitung ausgeführt. Die Verarbeitung für die Logikkanalsteuerung besteht aus einer Endlosschleife, die die Schritte S1101 und S1102 umfaßt.
  • 12 bis 14 sind detaillierte Ablaufdiagramme, die den Empfangsprozeß zeigen (Schritte S1101 in 11), ausgeführt von der Logikkanalsteuerung. In Schritt S1201 wird der I/F- Treiber überprüft, und in Schritt S1202 erfolgt eine Überprüfung zum Bestimmen, ob Daten präsent sind. Sind Daten präsent, werden in Schritt S1203 Daten für ein Logikkanalpaket untersucht. Für die Primärsockel-ID 0x00 verzweigt sich die Programmsteuerung zu Schritt S1205, für die Primärsockel-ID 0x10 verzweigt sich die Programmsteuerung zu Schritt S1212, und für die andere Primärsockel-ID verzweigt sich die Programmsteuerung zu Schritt S1214.
  • Wenn der Primärsockel 0x00 ist, und sich die Programmsteuerung zu Schritt S1205 verzweigt, wird angenommen, daß ein Befehlskanal festgelegt ist durch IEEE 1284.4. Wenn die Befehls-ID für den Befehlskanal gleich 0x04 ist, wird angenommen, daß das Paket ein Bereitstellungsinformationsanforderungsbefehlspaket ist, und die Programmsteuerung schreitet fort zu Schritt S2106.
  • In Schritt S1206 wird ein Kanal, für den eine Bereitstellungsinformation angefordert ist, spezifiziert durch Überprüfen der Primärsockel-ID und der Sekundärsockel-ID, die in Bytes 8 und 9 im Bereitstellungsinformationsanforderungsbefehlspaket eingegeben worden sind, und die Anzahl freier Bereitstellungsinformationen wird errechnet aus der Kapazität eines freien Eingangspuffers für den passenden Kanal. Da für den Befehlskanal (ID = 0x00) der Umfang einer Bereitstellungsinformation mit 64 Bytes angenommen wird, und zwar gemäß IEEE 1284.4, können vier Bereitstellungsinformationen bereitgestellt werden, wenn es 256 freie Bytes im Befehlskanal gibt.
  • In Schritt S1207 wird die Anzahl von Bereitstellungsinformationen, die angefordert sind im Bereitstellungsinformationsanforderungsbefehlspaket, verglichen mit der Anzahl freier Bereitstellungsinformationen, die in Schritt S1206 erzielt werden. Wenn die Anzahl freier Bereitstellungsinformationen in Schritt S1208 größer ist, wird ein Antwortpaket erzeugt und an den I/F-Treiber 104 oder 159 abgegeben, in den dieselbe Zahl eingegeben wird, wie die Anzahl angeforderter Bereitstellungsinformationen.
  • Wenn in Schritt S1207 die Anzahl freier Bereitstellungsinformationen geringer als die Anzahl ist, die angefordert wurde, wird in Schritt S1209 ein Antwortpaket, in dem die Anzahl aller freier Bereitstellungsinformationen eingegeben ist, erzeugt und an den I/F-Treiber 104 oder 159 abgegeben. Wenn keine freie Bereitstellungsinformation verfügbar ist, wird die Anzahl an Bereitstellungsinformationen auf "0" gesetzt.
  • Wenn in Schritt S1216 die Befehls-ID vom Befehlskanal gleich 0x84 ist, wird angenommen, daß das Paket ein Antwortpaket für den Bereitstellungsinformationsanforderungsbefehl ist. Die Bereitstellungsinformation für einen Kanal, der in diesem Falle in Schritt S1217 zur Sockel-ID gehört, die mit Bytes 9 und 10 vom Antwortpaket gemäß 10 aufgezeigt ist, wird um eine äquivalente Zahl inkrementiert, die der auf die unter Bytes 11 und 12 aufgezeigten Größe äquivalent ist.
  • Wenn die Primärsockel-ID gleich 0x10 ist und sich das Programm zu Schritt S1212 verzweigt, wird in diesem Ausführungsbeispiel angenommen, daß das Paket für einen Auftragskanal ist. Der Kopf des Logikkanalpakets wird gelöscht, und die hinzugenommenen Daten in das Paket werden zum Auftragskanal gesandt. Die Daten sind jene im oben beschriebenen Auftragspaket. Da zu dieser Zeit für die Logikkanalsteuerung 151 vom Drucker 150 der Auftragskanal verbunden ist mit dem Auftragsvorprozessor 153, übersetzt hiernach der Auftragsvorprozessor 153 das Auftragspaket. Andererseits erfordert die Logikkanalsteuerung 106 des Hosts 100 nicht das Ausführen des Prozesses zum Empfang des Auftragskanals.
  • Wenn die Primärsockel-ID weder 0x00 noch 0x10 ist, verzweigt sich die Programmsteuerung zu Schritt S1214, es wird angenommen, daß das Paket für den Steuerkanal (Primärsockel-ID = 0x20) ist. Der Kopf des Logikkanalpakets wird gelöscht, und die dem Paket hinzugefügten Daten werden zum Steuerkanal gesendet. Die Daten sind jene im zuvor beschriebenen Steuerpaket. Da zu dieser Zeit für die Logikkanalsteuerung 151 des Druckers 150 der Steuerkanal mit dem Informationsverwalter 160 verbunden ist, wird hiernach das Steuerpaket vom Informationsverwalter 160 übersetzt. Da andererseits für die Logikkanalsteuerung 106 vom Host 100 der Steuerkanal mit der Nutzeinheit 105 zugeschaltet ist, wird hiernach das Steuerpaket von der Nutzeinheit 105 übersetzt.
  • 15 und 16 sind detaillierte Ablaufdiagramme, die den Sendesteuerprozeß (Schritt S1102 in 11) zeigen, ausgeführt von der Logikkanalsteuerung. In Schritt S1501 wird zunächst ein Auftragskanal überprüft. Für die Logikkanalsteuerung 106 vom Host 100 wird der Auftragskanal mit dem Auftragspaketgenerator 107 verbunden, während für die Logikkanalsteuerung 151 vom Drucker 150 kein Auftragskanal angeschlossen wird.
  • In Schritt S1502 erfolgt eine Überprüfung zum Bestimmen, ob Daten für den Auftragskanal präsent sind. Sind Daten für den Auftragskanal präsent, erfolgt in Schritt S1503 eine Überprüfung zum Bestimmen, ob es eine verfügbare Bereitstellungsinformation zum Senden eines Auftrags an den Drucker 150 gibt. Ist eine Bereitstellungsinformation verfügbar, wird in Schritt S1504 der Kopf vom Paket gemäß IEEE 1284.4 den Daten hinzugefügt, um ein Paket zu bilden, das danach an den I/F-Treiber 104 in der nachfolgenden Stufe gesendet wird. Die Anzahl verfügbarer Bereitstellungsinformationen für die Auftragspakete, verwendet für das Senden, wird reduziert. Wenn keine Bereitstellungsinformation verfügbar ist, folgt in Schritt S1505 ein Bereitstellungsinformationsanforderungsbefehlspaket, das zum Befehlskanal gesendet wird, um eine Bereitstellungsinformation zu erhalten. Zu dieser Zeit wird die Anzahl verfügbarer Bereitstellungsinformationen für Befehlspakete dekrementiert.
  • In Schritt S1506 wird der Steuerkanal überprüft. Für die Logikkanalsteuerung 106 vom Host 100 wird der Steuerkanal mit der Nutzeinheit 105 verbunden, während die Logikkanalsteuerung 151 vom Drucker 150 des Auftragskanals eine Verbindung zum Informationsverwalter 160 bekommt.
  • In Schritt S1507 erfolgt eine Überprüfung zum Bestimmen, ob Daten für einen Steuerkanal präsent sind. Sind Daten präsent, erfolgt in Schritt S1508 eine Überprüfung zum Bestimmen, ob es eine verfügbaren Bereitstellungsinformation für den Steuerkanal zum Auftrag für den Drucker 150 gibt. Ist eine Bereitstellungsinformation verfügbar, wird in Schritt S1509 der Kopf für das Paket gemäß IEEE 1284.4 den Daten hinzugefügt, um ein Paket zu bilden, das danach an den I/F-Treiber 104 in der nachfolgenden Stufe gesendet wird, und die Anzahl der verfügbaren Bereitstellungsinformationen für den Steuerkanal wird reduziert. Ist keine Bereitstellungsinformation verfügbar, wird in Schritt S1510 ein Bereitstellungsinformationsanforderungspaket an den Befehlskanal gesendet, um eine Bereitstellungsinformation zu erhalten. Gleichzeitig wird die Anzahl von den für das Befehlspaket verfügbaren Bereitstellungsinformationen dekrementiert.
  • Da die beiden Logikkanäle, der Auftragskanal und der Steuerkanal für das Übertragungsmedium vorgesehen sind, wie zuvor beschrieben, selbst wenn ein Druckauftrag, der PDL-Daten aufzeigt, die vom Host 100 zum Drucker 150 gesendet werden, kann das Hereinnehmen oder die Einstellung von Information für den Druckauftrag des Druckers 150 oder das Annullieren eines Druckauftrags angefordert werden von der Nutzeinheit 105 des Hosts 100.
  • Nachstehend beschrieben ist die Nutzeinheit 105 vom Host 100. Die Nutzeinheit 105 wird verwendet zur Anzeige der Liste und der Eigenschaften von Druckaufträgen für einen Anwender, und um dem Anwender zu ermöglichen, das Informationseinstellen für einen Druckauftrag und das Annullieren eines Druckauftrags zu ermöglichen. Die Nutzeinheit 105 verwendet den Steuerkanal zum Austausch mit dem Drucker 150 eines Steuerpakets, um einen Druckauftrag zu erzielen oder einzustellen, und Einrichtungsinformation bezüglich des Druckers 150, oder um das Annullieren eines Druckauftrags anzuweisen.
  • Das Steuerpaket sowie das Auftragspaket hat die in 3 gezeigte Datenstruktur. Die in Byte 0 bis Byte 11 eingegebene Information vom Paketkopf ist ebenfalls dieselbe wie jene für das Auftragspaket, mit Ausnahme des Betriebscodes, der sich vom Auftragspaket unterscheidet, wie folgt.
    0x010b: Befehl zum Annullieren eines Druckauftrags
    0x010d: Annehmen einer Liste von Druckaufträgen
    0x0105: Eigenschaften einstellen
    0x0106: Eigenschaften annehmen
    0x0110: Befehl zum Anhalten des Druckers
    0x0111: Befehl zum Wiederherstellen des Druckers
    0x011a: Befehl zum Rücksetzen des Druckers
  • Anders als bei Auftragspaketen werden Steuerpakete für ihre individuellen einzigartigen Zwecke verwendet.
  • Um Druckaufträge zu verstehen, die im Drucker 150 gespeichert sind, sendet die Nutzeinheit 105 vom Host 100 an den Steuerkanal ein Steuerpaket, in dem der Betriebscode (0x010d) gespeichert ist zum Annehmen von Druckaufträgen. Die Klassen-ID (0x0102), die die Druckauftragsklasse aufzeigt, wird in den Datenabschnitt eingegeben. Das Steuerpaket wird geändert in ein Logikkanalpaket IEEE 1284.4 von der Logikkanalsteuerung 106, und das gewonnene Paket wird über den I/F-Treiber 104 zum Drucker 150 gesendet.
  • Der I/F-Treiber 159 vom Drucker 150 empfängt das Logikkanalpaket, den Kopf des Logikkanalpakets, der gelöscht wird von der Logikkanalsteuerung 151, und das gewonnene Steuerpaket wird an den Informationsverwalter 160 gesendet.
  • Der Informationsverwalter 160 überprüft den Betriebscode, der im empfangenen Steuerpaket eingegeben ist, und bestimmt, daß das Annehmen der Druckauftragsliste angefordert ist. Die Listeninformation für die Druckaufträge, gespeichert in der Datenbank 152, werden gewonnen, und ein Antwortpaket wird gesendet.
  • Das Antwortpaket und auch das Auftragspaket haben die in 3 gezeigte Struktur. Derselbe Betriebscode wie der für das empfangene Steuerpaket, das heißt der Betriebscode für das Hereinnehmen der Druckauftragsliste, wird im Betriebscodebereich des Antwortpakets gespeichert. Die Anzahl von Druckaufträgen, die der Drucker 150 identifiziert, und die Liste der Gegenstands-ID für die Druckaufträge, sind im Datenabschnitt gespeichert.
  • Wenn mit jedem Druckauftrag Informationen für den Auftragsnamen, für den Eigner und für den Umfang des Ergebnisses der Auftragseigenschaftseinstelloperation enthalten ist, kann die Nutzeinheit 105 detaillierte Information bezüglich des Druckauftrags erhalten. Wenn die Nutzeinheit 105 die Liste von Druckaufträgen enthält, sendet sie ein Steuerpaket an den Drucker 150, in dem der Betriebscode (= 0x0106) gespeichert ist, um detaillierte Eigenschaften anzufordern. Die Gegenstands-ID vom Druckauftrag, für den die detaillierten Eigenschaften gewünscht sind, und die Eigenschafts-ID, die zu erzielen ist, sind im Datenabschnitt des Steuerpakets gespeichert. Wenn beispielsweise der Name vom Druckauftrag gewonnen ist und gleich "1" ist, wird dieser als Gegenstands-ID und 0x0101 als Eigenschafts-ID eingegeben. Gemäß dem Betriebscode für das empfangene Steuerpaket bestimmt der Informationsverwalter 160, daß das Hereinnehmen von Eigenschaften angefordert ist. Der Informationsverwalter 160 fordert dann diese aus der Datenbank 152 an, den Wert der Eigenschafts-ID, der für den Druckauftrag bestimmt, und sendet ein Antwortpaket.
  • Um einen beliebigen Druckauftrag im Drucker 150 zu annullieren, sendet die Nutzeinheit 105 an den Drucker 150 ein Steuerpaket, in dem der Betriebscode (= 0x010b) gespeichert ist, um das Annullieren eines Druckauftrags anzuweisen. Gemäß dem Operationscode für das empfangene Steuerpaket bestimmt der Informationsverwalter 160, daß das Annullieren eines Druckauftrags angefordert ist. Wenn Druckdaten für den Druckauftrag, für den das Annullieren angefordert ist, entweder im Auftragsvorprozessor 143, im Eingangspuffer 154, im PDL- Übersetzer 150, im Zeichnungspuffer 156 oder in der Zeichnungseinheit 157 gespeichert ist, annulliert der Informationsverwalter 160 den zur Sache gehörigen Druckauftrag. Ist der Druckauftrag annulliert, sendet der Informationsverwalter 160 ein Antwortpaket, das aufzeigt, daß der Druckauftrag normal annulliert ist. Angemerkt sei, daß die Gegenstands-ID vom Druckauftrag, der zu annullieren ist, im Datenabschnitt des Steuerpakets gespeichert ist.
  • 17 ist ein Ablaufdiagramm, das die Auftragsannullierverarbeitung zeigt, die der Informationsverwalter 160 ausführt. Wenn der Informationsverwalter 160 ein Steuerpaket empfängt, in dem der Betriebscode (= 0x010b) gespeichert ist zum Anweisen des Annullierens eines Druckauftrags, sendet in Schritt S1701 der Informationsverwalter 160 ein Druckauftragannulliersignal an den Auftragsvorprozessor 153 sowie die Gegenstands-ID des zu annullierenden Druckauftrags. Dann wartet der Informationsverwalter 160, bis der Vorprozessor 153 die im Ablaufdiagramm von 18 gezeigte Verarbeitung abgeschlossen hat. Nach Empfang einer Endemeldung aus dem Auftragsvorprozessor 143 beginnt der Informationsverwalter 160 den Prozeß mit Schritt S1702.
  • In Schritt S1702 wird die Gegenstands-ID, gespeichert im Kopf des Pufferblockes im Eingangspuffer 154, überprüft. Wenn die Gegenstands-ID zur Gegenstands-ID vom zu annullierenden Druckauftrag paßt, werden die PDL-Daten, gespeichert im Pufferblock, für diese Gegenstands-ID ungültig gemacht.
  • Nachstehend speziell erläutert ist die Verarbeitung, die der Informationsverwalter 160 ausführt, um die PDL-Daten für einen zu annullierenden Druckauftrag ungültig zu machen. 35 ist ein Ablaufdiagramm, das die Verarbeitung zeigt, die der Informationsverwalter 160 ausführt, um die PDL-Daten für einen zu annullierenden Druckauftrag ungültig zu machen, die im Eingangspuffer 154 gespeichert sind.
  • In Schritt S3501 wird zunächst eine Überprüfung durchgeführt zum Bestimmen, ob es Pufferblöcke gibt, die mit einer verwendeten Warteschlange UQ verbunden sind. Sind keine Pufferblöcke verbunden, ist die Verarbeitung danach beendet.
  • Gibt es aber Pufferblöcke, die mit der verwendeten Warteschlange UQ verbunden sind, dann wird in Schritt S3502 einer der Pufferblöcke (anderer als ein Pufferblock, der zuvor in diesem Schritt verwendet wurde) überprüft. In Schritt S3503 erfolgt eine Überprüfung zum Bestimmen, ob die Gegenstands-ID, gespeichert im Kopf des Pufferblockes, zur Gegenstands-ID des zu annullierenden Druckauftrags paßt.
  • Passen die beiden Gegenstands-ID nicht zueinander, geht die Programmsteuerung weiter zu Schritt S3504.
  • Wenn die beiden Gegenstands-ID zueinander passen, wird in Schritt S3305 der Pufferblock aus der verwendeten Warteschlange UQ gelöscht. In Schritt S5306 wird dann der Pufferblock gelöscht, der mit der freien Warteschlange FQ verbunden ist. Die Programmsteuerung schreitet dann fort zu Schritt S3504.
  • In Schritt S3504 erfolgt eine Überprüfung zum Bestimmen, ob alle verbundenen Pufferblöcke, die in der benutzten Warteschlange UQ verbunden sind, überprüft worden sind. Sind alle Pufferblöcke überprüft worden, dann ist die Verarbeitung danach beendet. Sind nicht alle Pufferblöcke überprüft worden, dann werden in Schritt S3502 die restlichen Pufferblöcke überprüft, und die Verarbeitung wird wiederholt.
  • Die Köpfe aller Pufferblöcke, die mit der verwendeten Warteschlange UQ verbunden sind, werden in der zuvor beschriebenen Weise überprüft. Ein Pufferblock, dessen Gegenstands-ID vom zu annullierenden Druckauftrag im Kopf gespeichert ist, wird aus der verwendeten Warteschlange UQ gelöscht und wird mit der freien Warteschlange FQ verbunden. Für einen zu annullierenden Druckauftrag werden die PDL-Daten, die im Eingangspuffer 154 gespeichert sind, ungültig gemacht.
  • Da im Ergebnis ein Druckauftrag, für den PDL-Daten in einem Pufferblock des Eingangspuffers 154 gespeichert sind, leicht identifiziert werden können unter Verwendung der Gegenstands-ID, können die PDL-Daten für einen Druckauftrag, der zu annullieren ist, im Eingangspuffer 154 ungültig gemacht werden.
  • In Schritt S1703 in 17 wird der Druckauftrag, der in der Datenbank 152 verwaltet wird, überprüft zum Bestimmen, ob die PDL-Daten für den Druckauftrag vom PDL-Übersetzer 155 übersetzt werden. Wenn die PDL-Daten übersetzt werden, erfolgt in Schritt S1704 das Zurücksetzen vom PDL-Übersetzer 155, und die PDL-Daten werden aufgegeben. In Schritt S1705 werden das Druckauftragsannulliersignal und die Gegenstands-ID des Druckauftrags zur Zeichnungseinheit 157 gesendet. Die Verarbeitung ist danach abgeschlossen.
  • Wie zuvor beschrieben, können die PDL-Daten für einen Druckauftrag gelöscht werden, und Druckdaten, wie ein Zeichnungsgegenstand, werden ungültig gemacht, beginnend mit jenen nahe der Eingangsstufe. Selbst wenn die Druckdaten für einen Druckauftrag in mehreren Orten vorhanden sind, können alle diese Daten ungültig gemacht werden, mit Ausnahme der Daten, die zum Drucken für die Druckmaschine 158 verwendet werden.
  • Nachstehend erläutert ist der Auftragsvorprozessor 153 in Schritt S1701 in 17. 18 ist ein Ablaufdiagramm, das die Druckauftragsannullierverarbeitung zeigt, die der Auftragsvorprozessor 153 ausführt.
  • Wie zuvor beschrieben, beginnt das Senden eines Auftrags durch den Auftragspaketgenerator 107 mit dem Senden eines Auftragspakets, in dem der Auftragsstartbetriebscode (0x0201) gespeichert ist, und endet mit dem Senden eines Auftragspakets, in dem der Auftragsendebetriebscode (0x0205) gespeichert ist. Wenn der Auftragsvorprozessor 153 ein Auftragspaket empfängt, bei dem der Auftragsstartbetriebscode (0x0201) gespeichert ist, registriert der Auftragsvorprozessor 153 in der Datenbank 152 die Auftrags-ID, die einzig für den Druckauftrag zugeordnet ist. Da die letzte Gegenstands-ID vom Druckauftrag gespeichert ist, kann folglich ein Druckauftrag, zu dem ein aktuell empfangenes Auftragspaket gehört, identifiziert werden.
  • Wenn ein Druckauftragssignal und die Gegenstands-ID eines Druckauftrags vom Informationsverwalter 160 empfangen sind, und wenn in Schritt S1801 ein Auftragspaket, das zu allerletzt empfangen wurde, für einen Druckauftrag ist, der zur empfangenen Gegenstands-ID paßt, wird das Auftragspaket in Schritt S1802 aufgegeben. Die Programmsteuerung kehrt dann zu Schritt S1801 zurück. Wenn in Schritt S51801 ein zuletzt empfangenes Auftragspaket nicht für den zur Sache gehörenden Druckauftrag gehört, dann wird die Verarbeitung beendet. Zum Beenden der Verarbeitung wird ein Endemeldesignal zum Informationsverwalter 160 gesendet.
  • Nachstehend erläutert ist der Betrieb, den die Zeichnungseinheit 157 in Schritt S1705 gemäß 17 ausführt. 19 ist ein Ablaufdiagramm, das die Druckauftragsannullierverarbeitung zeigt, die die Zeichnungseinheit 157 ausführt.
  • Sind ein Druckauftragsannulliersignal und die Gegenstands-ID eines Druckauftrags vom Informationsverwalter 160 empfangen, erfolgt in Schritt S1901 eine Überprüfung zum Bestimmen, ob ein Zeichnungsgegenstand für den Druckauftrag, der zur empfangenen Gegenstands-ID paßt, aktuell gezeichnet wird. Wenn der Zeichnungsgegenstand für den Druckauftrag gezeichnet wird, erfolgt in Schritt S1901 das Anhalten des Zeichnens, und der Zeichnungsgegenstand wird aufgegeben. Die Programmsteuerung kehrt dann zu Schritt S1901 zurück. Wird der Aufzeichnungsgegenstand für den zur Sache gehörenden Druckauftrag nicht gezeichnet, dann ist die Verarbeitung abgeschlossen. Für diese Verarbeitung können nicht nur die Daten für den sachdienlichen Druckauftrag in der Zeichnungseinheit, sondern auch der Zeichnungsgegenstand für den Druckauftrag, gespeichert im Zeichnungspuffer 156, aufgegeben werden.
  • Gleichermaßen können das Einstellen der Eigenschaften, der Befehl zum Anhalten des Druckers 150, der Befehl zur Wiederherstellung des Druckers 150 und der Befehl zum Zurücksetzen des Druckers 150 durch Senden des Steuerpakets von der Nutzeinheit 105 zum Host 100 zum Informationsverwalter 160 vom Drucker 150 erfolgen.
  • Nachstehend beschrieben ist das Bedienfeld 161 vom Drucker 150. 20 ist ein spezifisches Diagramm, das die Struktur des Bedienfeldes 161 zeigt. Ein Flüssigkristallbildschirm 2001 wird verwendet zur Darstellung des Zustands vom Drucker 150 und von Meldungen. Ein Cursorknopf 2002 dient der Auswahl und dem Einrichten von Einstellpunkten für den Drucker 150. Eine Online-Taste 2003 wird benutzt zum Ändern des Online/Offline-Status vom Drucker 150. Ein Annullierknopf 2004 wird verwendet zur Auswahl des Annullierens eines Druckauftrags, und ist der Annullierknopf 2004 betätigt, wird der Informationsverwalter 160 vom Drucker 150 darüber informiert.
  • Nachstehend erläutert ist die Druckauftragsannullierverarbeitung, die erfolgt, wenn der Annullierknopf 2004 betätigt ist. 21 ist ein Ablaufdiagramm zur Erläuterung der Druckauftragsannullierverarbeitung, die der Informationsverwalter 160 nach Betätigen des Annullierknopfes 2004 ausführt. In Schritt S2101 erfolgt eine Überprüfung zum Bestimmen, ob ein Druckauftrag aktuell von der Zeichnungseinheit 157 ausgeführt wird. wird ein Druckauftrag ausgeführt, gewinnt man in Schritt S2102 die Gegenstands-ID des Druckauftrags, und in Schritt S2103 wird der Druckauftrag annulliert. Die Verarbeitung ist dann beendet. Wird kein Druckauftrag verarbeitet, erfolgt in Schritt S2104 eine Überprüfung zum Bestimmen, ob ein Druckauftrag aktuell vom PDL-Übersetzer 155 ausgeführt wird. Wenn ein Druckauftrag vom PDL-Übersetzer 155 ausgeführt wird, erhält man in Schritt S2105 die Gegenstands-ID vom Druckauftrag, und in Schritt S1206 wird der Druckauftrag annulliert. Danach ist die Verarbeitung beendet.
  • In Schritt S1203 und S1206 erfolgt das Initialisieren des Prozesses gemäß dem Ablaufdiagramm in 18 auf der Grundlage der Gegenstands-ID des zu annullierenden Druckauftrags. Die An-/ Abwesenheit eines Druckauftrags, der von der Zeichnungseinheit oder dem PDL-Übersetzer 155 verarbeitet wird, kann bestimmt werden durch Überprüfen der Zustände aller Druckaufträge vom Drucker 150, die in der Datenbank 152 gespeichert sind.
  • Da nur ein Druckauftrag annulliert wird, der sich nahe der Ausgangsstufe befindet, kann folglich nur ein zu annullierender Druckauftrag durch Bestätigen verarbeitet werden, daß Material gedruckt worden ist; oder wenn Druckdaten für eine ausgedehnte Zeitdauer des Druckens verarbeitet aber noch nicht begonnen sind, kann der erste Druckauftrag, der das Anhalten des Druckens verursacht, für eine ausgedehnte Zeitdauer annulliert werden.
  • Im Falle, daß eine Vielzahl von Druckaufträgen im Eingangspuffer 154 präsent sind und im Druckerpuffer 156, muß ein zu annullierender Druckauftrag gemäß den Spezifikationen für den Drucker 150 bestimmt werden. Da in diesem Ausführungsbeispiel keiner der Druckaufträge zu annullieren ist, wird nicht in Betracht gezogen, ob ein Druckauftrag im Eingangspuffer 154 und im Zeichnungspuffer 156 vorhanden ist, wenn die Auswahl eines zu annullierenden Druckauftrags erfolgt.
  • Gemäß dem ersten Ausführungsbeispiel der vorliegenden Erfindung, wie es zuvor beschrieben ist, enthält das Druckersystem den Host 100 und den Drucker 150, die miteinander über das Übertragungsmedium 180 verbunden sind. Der Host 100 ist ausgestattet mit: dem Auftragspaketgenerator 107 zum Hinzufügen eines Kopfes, den Druckdaten für eine Druckauftrag, der erzeugt wurde, um ein Paket zu bilden; der Nutzeinheit 105 zum Erzielen des Verarbeitungszustandes eines Druckauftrags oder Einstellen der Eigenschaft eines Druckauftrags für den Drucker 150; und mit der Logikkanalsteuerung 106 zum Erzeugen eines Pakets für einen Auftragskanal, der zum Senden eines Druckauftrags verwendet wird, und für einen Steuerkanal, der zum Senden einer Steueranforderung aus der Nutzeinheit 105 verwendet wird, und zum Multiplexen des Paketes für ein Einzelübertragungsmedium. Der Drucker 150 ist ausgestattet mit: dem Auftragsvorprozessor 153 zum Feststellen von Beginn und Ende eines Druckauftrags auf der Grundlage von Informationen, die im Kopf des Auftragspakets beschrieben sind, empfangen vom Host 100, und zum Registrieren des Druckauftrags in der Datenbank 152; der Logikkanalsteuerung 151 zum Anwenden eines Pakets für die Multiplexverarbeitung eines Auftragskanals und eines Steuerkanals für ein Einzelübertragungsmedium; dem Informationsverwalter 160 zum Einstellen von Informationen für einen Druckauftrag oder zum Annullieren eines Druckauftrags gemäß einer Anforderung in einem empfangenen Steuerpaket; und mit dem Bedienfeld 161, das zur Anzeige des Zustands vom Drucker 150 verwendet wird und für Meldungen zur Eingabe eines Befehls für das Annullieren eines Druckauftrags. Folglich lassen sich folgende Wirkungen erzielen.
  • Der Auftragspaketgenerator 107 vom Host 100 bildet mit der obigen Anordnung für jeden Druckauftrag ein Paket, das aus PDL-Daten besteht und den Eigenschaften, und der Auftragsvorprozessor 153 des Druckers 150 stellt den Beginn und das Ende des Druckauftrags fest. Eine Gegenstands-ID kann für dem Druckauftrag zugeordnet werden, ohne daß die PDL-Daten für den Druckauftrag analysiert werden.
  • Da darüber hinaus der Auftragsvorprozessor 153 eine Gegenstands-ID im Eingangspuffer 154 mit PDL-Daten speichert, und da die Zustände der individuellen Druckaufträge in der Datenbank 152 verwaltet werden, können PDL-Daten für einen Druckauftrag, der zu annullieren ist, ungültig gemacht werden, selbst wenn sie vom PDL-Übersetzer 155 noch nicht analysiert worden sind.
  • Da die Druckdaten bezüglich eines Druckauftrags, der zu annullieren ist, beginnend mit den Daten nahe der Eingangsstufe ungültig gemacht werden, können alle Druckdaten für den Druckauftrag ungültig gemacht werden, mit Ausnahme jener Druckdaten, die zum Drucken von der Druckmaschine 158 verwendet werden.
  • Der Auftragskanal und der Steuerkanal werden dem Multiplexverfahren unterzogen, relativ zum Übertragungsmedium 180 von der Logikkanalsteuerung 106 des Hosts 100 und der Logikkanalsteuerung 151 vom Drucker 150. Selbst während des Austauschs eines Druckauftrags im Auftragskanal kann die Nutzeinheit 105 vom Host 100 die Information für den Druckauftrag und den Drucker 150 erzielen oder einstellen und kann somit den Druckauftrag in Echtzeit ausführen.
  • Das Annullieren eines Druckauftrags kann nicht nur angewiesen werden von der Nutzeinheit 105, sondern kann auch unter Verwendung des Bedienfeldes 161 vom Drucker 150 angewiesen werden, so daß ein Anwender das Drucken anhalten kann, während er das Material bestätigt, das gedruckt ist.
  • Da darüber hinaus der zu annullierende Druckauftrag als Druckauftrag bestimmt ist, der nahe der Ausgangsstufe liegt, wird nur ein Druckauftrag ausgeführt, der annulliert werden kann, während das gedruckte Material bestätigt wird, oder wenn das Drucken der Druckdaten für eine lange Zeit fortgesetzt wird und das Drucken noch nicht begonnen hat, kann nur der erste Druckauftrag, der den Druckprozeß zum Halten veranlaßt, annulliert werden.
  • Zweites Ausführungsbeispiel
  • Im zweiten Ausführungsbeispiel der vorliegenden Erfindung ist ein Logikkanal gemäß IEEE 1284.4 in der oberen Schicht durch eine Lokalverbindung gemäß IEEE 1284 installiert. In einem zweiten Ausführungsbeispiel der vorliegenden Erfindung wird eine Erläuterung für ein System angegeben, das das Ethernet (Lokalbereichsnetz mit einem Bus, der die Verbindungsstruktur nutzt, die von Xerox Corp., DEC Corp. und Intel Corp. entwickelt wurde).
  • 22 ist ein spezielles Blockdiagramm, das die Anordnung einer Druckersystems nach dem zweiten Ausführungssystem der vorliegenden Erfindung veranschaulicht. Im Druckersystem nach dem zweiten Ausführungsbeispiel sind ein Host 2200 und ein Drucker 2250 miteinander über das Ethernet 2280 verbunden.
  • Nach dem zweiten Ausführungsbeispiel der vorliegenden Erfindung ist der Host 2200 vom Druckersystem ausgestattet mit: einer Anwendungseinheit 2201, einem Druckertreiber 2202, einem Ausgangspuffer 2203, einem I/F-Treiber 2204, einer Nutzeinheit 2205, einer Logikkanalsteuerung 2206 und mit einem Auftragspaketgenerator 2207.
  • Der Drucker 2250 des Druckersystems enthält eine Datenbank 2252, einen Auftragsvorprozessor 2253, einen Eingangspuffer 2254, einen PDL-Übersetzer 2255, einen Zeichnungspuffer 2256, eine Zeichnungseinheit 2257, eine Druckmaschine 2258, einen Auftragskanal-I/F-Treiber 2259, einen Informationsverwalter 2260, ein Bedienfeld 2261 und einen Steuerkanal I/F-Treiber 2262. Ein Ethernetadapter 2290 ist an den Drucker 2250 angeschlossen.
  • Der Unterschied vom ersten Ausführungsbeispiel besteht darin, daß eine Logikkanalsteuerung für den Drucker 2250 nicht vorgesehen ist; daß der I/F-Treiber eingeteilt ist in einen Auftragskanal-I/F-Treiber 2259 und den Steuerkanal-I/F-Treiber 2262, und diese I/F-Treiber 2259 und 2262 sind mit dem Ethernetadapter 2290 verbunden, und daß das Ethernet 2280 als Verbindungsmittel verwendet wird. Da die anderen Anordnungen jenen des ersten Ausführungsbeispiels gleichen, wird hier keine weitere Beschreibung angegeben.
  • Im zweiten Ausführungsbeispiel sind der Auftragskanal-I/F-Treiber 2259 und der Steuerkanal-I/F-Treiber 2262 miteinander zum Ethernetadapter 2290 verbunden, welcher ein Paket für den Auftragskanal und den Steuerkanal erzeugt. Wenn ein TCP/IP-Protokoll (Sendesteuerprotokoll/Internetprotokoll: das Standardprotokoll vom Computernetz) verwendet wird, und wenn beispielsweise TCP 515 (dieses Port wird als lpd verwendet) für den Auftragskanal und UDP (User Datagram Protocol: Übertragungsprotokoll für eine Transportschicht, die keine Zuverlässigkeit bietet) 9100 für den Steuerkanal verwendet wird, kann ein Konflikt zwischen den beiden Kanälen vermieden werden.
  • Das Druckersystem nach dem zweiten Ausführungsbeispiel, wie es zuvor beschrieben wurde, enthält den Host 2200 und den Drucker 2250, die miteinander über das Übertragungsmedium (Ethernet) 220 verbunden sind. Der Host 2200 ist ausgestattet mit: dem Auftragspaketgenerator 2207 zum Hinzufügen eines Kopfes den Druckdaten für jeden Druckauftrag, der erzeugt wird, um ein Paket zu bilden; der Nutzeinheit 2205 zum Erzielen des Verarbeitungszustands eines Druckauftrags oder zum Einstellen der Eigenschaft eines Druckauftrags für den Drucker 2250; und der Logikkanalsteuerung 2206 zum Erzeugen eines Pakets für einen Auftragskanal, der verwendet wird zum Senden eines Druckauftrags und für einen Druckkanal, der verwendet wird zum Austauschen einer Steueranforderung aus der Nutzeinheit 2205 und zum Multiplexen des Paketes für ein Einzelübertragungsmedium. Der Drucker 2250 ist ausgestattet mit: dem Auftragsvorprozessor 2253 zum Erfassen von Anfang und Ende eines Druckauftrags auf der Grundlage von Informationen, die im Kopf eines Auftragspakets beschrieben sind, empfangen aus dem Host 2200, und zum Registrieren eines Druckauftrags in der Datenbank 2252; dem Informationsverwalter 2260 zum Einstellen von Information zum Druckauftrag oder zum Annullieren eines Druckauftrags gemäß einer Anforderung, die in einem empfangenen Steuerpaket enthalten ist; und mit dem Bedienfeld 2261, das für die Darstellung des Zustands vom Drucker 2250 und für Meldungen verwendet wird, und zur Eingabe eines Befehls für das Annullieren eines Druckauftrags. Darüber hinaus ist der Ethernetadapter 2290 vorgesehen zwischen dem Drucker 2250 und dem Übertragungsmedium (Ethernet) 2280 zum Ändern eines Auftragskanals und eines Steuerkanals in einen Logikkanal. Folglich lassen sich die folgenden Wirkungen erzielen.
  • Mit der obigen Anordnung erzeugt der Auftragspaketgenerator 2207 vom Host 2200 für jeden Druckauftrag ein Paket, bestehend aus PDL-Daten und den Eigenschaften, und der Auftragsvorprozessor 2253 vom Drucker 2250 erfaßt Anfang und Ende des Druckauftrags. Die Gegenstands-ID kann dem Druckauftrag folglich zugeordnet werden, ohne daß PDL-Daten des Druckauftrags analysiert werden müssen.
  • Da darüber hinaus der Auftragsvorprozessor 2253 eine Auftrags-ID vom Eingangspuffer 2254 mit den PDL-Daten speichert, und da die Zustände der individuellen Druckaufträge in der Datenbank 2252 verwaltet werden, können die PDL-Daten für einen Druckauftrag, der zu annullieren ist, ungültig gemacht werden, selbst wenn sie noch nicht vom PDL-Übersetzer 2255 analysiert worden sind.
  • Da die Druckdaten bezüglich eines zu annullierenden Druckauftrags ungültig gemacht werden, beginnend mit den Daten nahe der Eingangsstufe, können des weiteren die Druckdaten für den Druckauftrag ungültig gemacht werden, mit Ausnahme jener Druckdaten, die zum Drucken von der Druckmaschine 2258 verwendet werden.
  • Der Auftragskanal und der Steuerkanal werden weiterhin bezüglich des Übertragungsmediums 2280 von der Logikkanalsteuerung 106 des Hosts 2200 und der Logikkanalsteuerung 2251 vom Drucker 2250 dem Multiplexverfahren unterzogen. Selbst während des Austauschs eines Druckauftrags entlang dem Auftragskanal kann die Nutzeinheit 2205 vom Host 2200 folglich Informationen erzielen oder kann Informationen für den Druckauftrag des Druckers 2250 einstellen, und somit kann der Druckauftrag in Echtzeit annulliert werden.
  • Nicht nur das Annullieren eines Druckauftrags wird von der Nutzeinheit 2205 angewiesen, sondern die Anweisung kann darüber hinaus auch über das Bedienfeld 2261 des Druckers 2250 erfolgen, so daß der Anwender den Drucker anhalten und das Drucken eines Druckauftrags verhindern kann, der nicht erforderlich ist.
  • Da der zu annullierende Druckauftrag bestimmt ist als ein Druckauftrag, der nahe an der Ausgangsstufe liegt, kann darüber hinaus nur ein Druckauftrag, der gedruckt wird, annulliert werden, während das gedruckte Material bestätigt wird, oder wenn die Verarbeitung der Druckdaten für lange Zeit fortgesetzt wird und der Drucker nicht gestartet wurde, kann nur der erste Druckauftrag annulliert werden, der den anzuhaltenden Druckvorgang veranlaßt.
  • Da das Ethernet 2280 weiterhin als Übertragungsmedium verwendet wird, kann das Druckersystem mit den obigen Wirkungen auf dem Netzwerk arbeiten.
  • Nach dem ersten und zweiten Ausführungsbeispiel der vorliegenden Erfindung kann ein Laserstrahldrucker als solcher verwendet werden. 28 ist eine Querschnittsansicht der Innenstruktur vom Laserstrahldrucker (wird nachstehend einfach als "LBP" bezeichnet). Der LBP kann eingegebene Zeichenmusterdaten auf ein Blatt Aufzeichnungspapier drucken.
  • In 28 verwendet eine LBP-Einheit 2840 ein empfangenes Zeichenmuster, um ein Bild auf einem Blatt Aufzeichnungspapier zu bilden, das das Aufzeichnungsmedium ist. Ein Bedienfeld 2800 enthält Bedienschalter und eine LED-Anzeigeeinrichtung, und eine Druckersteuereinheit 2801 übernimmt die Gesamtsteuerung des LBP 2840 und analysiert die Zeichenmusterinformation. Die Druckersteuereinheit 2801 setzt hauptsächlich Zeichenmusterinformation in ein Videosignal um und gibt das Signal an den Lasertreiber 2802 ab.
  • Der Lasertreiber 2802, der eine Schaltung zum Ansteuern eines Halbleiterlasers 2303 ist, schaltet einen Laserstrahl 2804 ein oder aus, der von einer Halbleiterschicht 2803 gemäß einem empfangenen Videosignal emittiert wird. Der Laserstrahl 2804 wird von einem vielflächigen Drehspiegel 2805 nach links und rechts abgelenkt und tastet eine elektrostatische Trommel 2806 ab. Ein elektrostatisches latentes Bild eines Zeichenmusters wird auf der elektrostatischen Trommel 2806 gebildet. Dieses latente Bild wird von einer Entwicklungseinheit 2807 entwickelt, die sich an der Peripherie der elektrostatischen Trommel 2806 befindet, und das entwickelte Bild wird auf ein Aufzeichnungsblatt übertragen. Ein geschnittenes Blatt wird als Aufzeichnungsblatt verwendet. Die geschnittenen Blätter lagern in einer Vielzahl von Blattkassetten 2808, die sich im LBP 2840 befinden und die einer Vielzahl von Blattarten entsprechen, und werden von einer Papierzuführwalze 2809 und Auslieferwalzen 2810 und 2811 in den LBP 2840 eingeführt und zur elektrostatischen Trommel 2806 geliefert.
  • Die Steueranordnung eines Laserstrahldruckers ist nachstehend beschrieben. 36 ist ein Blockdiagramm, das die Anordnung vom Laserstrahldrucker zeigt. In 36 ist ein Laserstrahldrucker 3601 ausgestattet mit einer Druckersteuerung (wird nachstehend als Steuerung bezeichnet) 3603, einer Maschine 3604, einem Feld 3605 und einer Platte 3606.
  • Die Steuerung 3603 verfügt über eine CPU 3607, einen PROM 3608, einen optionalen Speicher 3609, einen RAM 3610, eine Haupt-I/F 3611, eine Maschinen-I/F 3612, eine Feld-I/F 3613, eine Platten-I/F 3614 und über einen NVRAM 3615.
  • Die CPU 3607 steuert die individuellen Abschnitte auf der Grundlage von Steuerprogrammen, die in den Ablaufdiagrammen der 4, 5, 11 bis 19, 21, 33 bis 35 gezeigt sind, sowie verschiedener anderer Steuerprogramme. Die Haupt-I/F 3611 ist eine Schnittstelle zum Austausch eines Druckauftrags mit dem Host 3602. Die Maschinen-I/F 3612 ist eine Schnittstelle zum Kommunizieren mit der Maschine 3604, die aktuell das Drucken ausführt.
  • Die Feld-I/F 3613 ist eine Schnittstelle, die zum Austausch mit dem Feld 3605 für einen Befehl der Umgebung verwendet wird, der vom Anwender über das Feld 3605 eingegeben wird, und für den Zustand des Laserstrahldruckers 3601, der für einen Anwender auf dem Feld 3605 dargestellt wird. Die Platten-I/F 3614 ist eine Schnittstelle zur Kommunikation mit der Platte 3606.
  • Der optionale Speicher 3609 ist ein solcher wie eine Karte, ein optionaler ROM oder ein Flash-Speicher, der geladen oder entladen werden kann, um Schriftarten zu speichern. Der RAM 3610 enthält einen Bildpuffer 3610a zum Speichern von Bilddaten und einen Eingangspuffer 3610b zum zeitweiligen Speichern von PDL-Daten, die der Host 3602 empfängt. Der RAM 3610 wird ebenfalls als Arbeitsbereich für die CPU 3607 verwendet. Der NVRAM 3615 wird verwendet zum Speichern von Einstellwerten für verschiedene Punkte bezüglich der Einrichtung oder bezüglich eines Druckauftrags.
  • Auf dem Feld 3605 vorgesehen ist eine Flüssigkristallanzeigeeinrichtung zum Darstellen von Informationen, wie dem Zustand des Laserstrahldruckers 3601 unter Verwendung einer Zeichenkette, verschiedene Bedienknöpfe, die ein Anwender verwendet, um dem Laserstrahldrucker 3601 verschiedene Betribsarten anzuweisen, und eine LED, um einem Anwender zu melden, daß es Zeit ist, Papier nachzufüllen, oder um den Online-/Offline-Zustand zu signalisieren.
  • Die Maschine 3604 druckt aktuell einen Zeichnungsgegenstand auf ein Aufzeichnungsmedium. Die Platte 3606 ist ein externe Speichereinrichtung zum Speichern verschiedener Daten, eine Festplatte, eine magnetooptische Platte oder eine Diskette. Der Laserstrahldrucker 3601 bezieht seinen Strom aus einer Stromversorgungsquelle (nicht dargestellt).
  • Die Komponenten in der funktionalen Anordnung des Druckersystems in 1, das heißt, die Logikkanalsteuerung 151, der Auftragsvorprozessor 153, der PDL-Übersetzer 155, die Zeichnungseinheit 157 und der Informationsverwalter 160, lassen sich realisieren durch Ausführungen der CPU 3607 vom Laserstrahldrucker 3601 in 36 von einem Steuerprogramm, das der PROM 3608 speichert. Der Eingangspuffer 154 und der Zeichnungspuffer 156 in 1 werden im RAM 3610 vom Laserstrahldrucker 3601 in 36 aufbereitet. Dies läßt sich beim zweiten Ausführungsbeispiel anwenden.
  • Ein Laserstrahldrucker wird zum Drucken für das erste und das zweite Ausführungsbeispiel der vorliegenden Erfindung verwendet. Die Druckerart ist nicht auf einen Laserdrucker beschränkt, und ein Tintenstrahldrucker kann ebenfalls verwendet werden. 29 ist ein Diagramm, das die äußere Erscheinung des Tintenstrahlaufzeichnungsgerätes IJRA zeigt, die eine Vielzahl von Papierarten zuführen kann (nicht dargestellt) entsprechend dem Bedarf für einen jeweiligen Druckauftrag.
  • Ein Schlitten HC in 29, der einen nicht dargestellten Stift besitzt, wird in einer Richtung bewegt, die durch Pfeile a und b aufgezeigt sind, während der Stift in Eingriff ist mit einer Spiralrille 5004 einer Führungsschraube 5005, die die Vorwärts- und Rückwärtsdrehung des Antriebsmotors 5013 vermittelt und von den Antriebskraftübertragungszahnrädern 5011 und 5009 gedreht wird. Eine Tintenstrahlkartusche IJC befindet sich auf dem Schlitten HC. Eine Papierhalteplatte 5002 drückt Papier gegen eine Auflagescheibe 5000 in der Richtung, in die sich der Schlitten HC bewegt. Optokoppler 5007 und 5008 sind Ausgangspositionsfeststellmittel zum Identifizieren der Anwesenheit eines Schlittenhebels 5006 in diesem Bereich und zum Ändern der Richtung, in der sich der Antriebsmotor 5013 dreht. Ein Glied 5016 stützt ein Kappenglied 5022 zum Versiegeln der Vorderfläche eines Aufzeichnungskopfes; und Saugmittel 5015 ziehen die Kappe an, um den Aufzeichnungskopf über einen Kappenöffnung 5023 wiederherzustellen. Ein Glied 5019 bewegt eine Reinigungsplatte 5017 nach vorne und nach hinten, und die Reinigungsplatte 5017 und das Glied 5019 werden auf einer Stützplatte 5018 gehalten. Anstelle dieser Reinigungsklinge 5017 kann eine allgemein bekannte Reinigungsklinge für dieses Ausführungsbeispiel verwendet werden. Ein Hebel 5021 wird verwendet zum Beginn des Anziehens für die Wiederherstellung. Der Hebel 5021 wird entsprechend der Bewegung eines Kammes 5020 versetzt, der mit dem Schlitten HC in Eingriff ist, und die Antriebskraft aus dem Antriebsmotor 5013 wird durch ein allgemein bekanntes Übertragungsmittel gesteuert, wie durch Umschalten, das eine Kupplung ausführt. Wenn der Schlitten HC den Ausgangspositionsbereich erreicht hat, kann ein gewünschter Prozeß, entweder das Verkappen, Reinigen oder die Saugwiederherstellung, bei einer entsprechenden Position durch Betätigen der Führungsschraube 5005 ausgeführt werden. Soll eine gewünschte Operation entsprechend einer allgemein bekannten Zeitvorgabe ausgeführt werden, kann die obige Anordnung für jedes Ausführungsbeispiel verwendet werden.
  • Nachstehend beschrieben ist die Anordnung des Tintenstrahldruckers anhand eines Blockdiagramms in 30. In einer Steuerschaltung in 30 empfängt eine Schnittstelle 1700 ein Aufzeichnungssignal. Eine MPU 1701 führt die Steuerprogramme, die in den Ablaufdiagrammen der 4, 5, 11 bis 19, 21, 33 bis 35 gezeigt sind, und verschiedene andere Programme aus, die in einem Programm-ROM 1702 gespeichert sind. Ein DRAM 1703 wird verwendet zum Speichern verschiedener Arten von Daten (Aufzeichnungssignale und Aufzeichnungsdaten, die an einen Aufzeichnungskopf zu liefern sind). Ein Gatearray 1704 liefert Aufzeichnungsdaten an einen Aufzeichnungskopf 1708 und überträgt auch Daten zwischen der Schnittstelle 1700, der MPU 1701 und dem RAM 1703. Ein Kopfschlittenmotor 1710 treibt den Aufzeichnungskopf 1708 an, während Motortreiber 1706 und 1707 einen Papierschlittenmotor 1709 sowie den Kopfschlittenmotor 1710 antreiben.
  • Nach Empfang eines Aufzeichnungssignals in der Schnittstelle 1700 mit dieser Anordnung wird das Aufzeichnungssignal umgesetzt in Druckdaten zwischen der Gatearray 1704 und der MPU 1701. Die Motortreiber 1706 und 1707 werden angesteuert, und folglich wird der Aufzeichnungskopf gemäß den Druckdaten angesteuert, die dem Kopftreiber 1705 gesendet werden. Somit wird das Drucken ausgeführt.
  • Die Komponenten der vorliegenden Erfindung können auch zusammengebaut werden unter Verwendung der zuvor beschriebenen Anordnung für einen Tintenstrahldrucker. Es ist offensichtlich, daß die vorliegende Erfindung nicht auf die Verwendung eines Laserstrahldruckers beschränkt ist, sondern sich auch bei einem Tintenstrahldrucker anwenden läßt.
  • Die vorliegende Erfindung kann auch bei einem System verwendet werden, das aus einer Vielzahl von Einrichtungen besteht (das heißt, einem Host, einer Schnittstelleneinrichtung, einer Leseeinrichtung und einem Drucker), oder bei einem Gerät (das heißt, einem Kopierer, einem Drucker oder einem Fax-Gerät), das eine Einzeleinrichtung enthält.
  • Ein Aspekt der vorliegenden Erfindung wird auch folgendermaßen erzielt: ein Speichermedium, auf dem ein Softwareprogrammcode gespeichert ist, um die Funktionen der vorherigen Ausführungsbeispiele zu realisieren, wird an ein System oder ein Gerät geliefert, wie es in 26 gezeigt ist, und der Computer (oder eine CPU oder eine MPU) im System oder Gerät liest den Programmcode aus dem Speichermedium. In diesem Falle realisiert der aus dem Speichermedium gelesene Programmcode die Funktionen der oben beschriebenen Ausführungsbeispiele, und das Speichermedium, auf dem ein derartiger Programmcode gespeichert ist, bildet einen Aspekt der vorliegenden Erfindung.
  • Ein Aspekt der vorliegenden Erfindung wird folgendermaßen erzielt: ein Speichermedium, auf dem ein Softwareprogrammcode zum Realisieren der Funktionen in den vorherigen Ausführungsbeispiel gespeichert ist, wird an ein System oder an ein Gerät über ein Netzwerk oder eine öffentliche Fernsprechleitung über eine Sendeeinrichtung geliefert, das heißt, über einen Web-Server oder einen http-Server, und der Computer (oder eine CPU oder eine MPU) im System oder im Gerät liest den Programmcode aus dem Speichermedium. In diesem Falle bewerkstelligt der von der Übertragungseinrichtung gesendete Programmcode die Funktionen der zuvor beschriebenen Ausführungsbeispiele, und die Sendeeinrichtung, die einen derartigen Programmcode sendet, bildet die vorliegende Erfindung.
  • In 27 gezeigt ist eine Speicherkarte für das Steuerprogramm der vorliegenden Erfindung, wenn dieses im ROM 1702 in 30 oder im PROM 3608 in 36 gespeichert ist und zur Ausführung bereit ist.
  • Zum Ausführen des Steuerprogramms und der zugehörigen Daten in den Ausführungsbeispielen werden diese aus dem Speichermedium gelesen und direkt im ROM gespeichert. Das Steuerprogramm und die zugehörigen Daten können jedoch aus einem externen Speichermedium gelesen werden, wie beispielsweise aus einer Diskette, und werden zeitweilig in einer Festplatte gespeichert (installiert), die ein nichtflüchtiges Speichermedium darstellt, das für ein System oder ein Gerät bereitsteht und aus der Festplatte auf den RAM geladen werden kann, um das Programm für das Aufbereiten und das Senden der Daten auszuführen.
  • Ein Speichermedium zum Liefern eines derartigen Programmcodes kann beispielsweise eine Diskette, eine Festplatte, eine optische Platte, eine magnetooptische Platte, CD-ROM, CD-R, ein Magnetband, eine nichtflüchtige Speicherkarte oder ein ROM sein.
  • Ausführungsbeispiele der vorliegenden Erfindung enthalten darüber hinaus nicht nur einen Fall, bei dem die Funktionen im vorherigen Ausführungsbeispiel ausgeführt werden können, wenn ein Programmcode gelesen und vom Computer ausgeführt wird, sondern auch den Fall, bei dem gemäß einem Befehl im Programmcode ein Betriebssystem auf dem Computer läuft und einen Teil oder die gesamte aktuelle Verarbeitung ausführt, die erforderlich ist, um die Funktionen zu erfüllen, die in den obigen Ausführungsbeispielen enthalten sind.
  • Die Ausführungsbeispiele enthalten weiterhin einen Fall, bei dem ein Programmcode, gelesen aus einem Speichermedium, in einen Speicher geschrieben wird, der auf eine Funktionserweiterungskarte montiert ist, die in einen Computer gesteckt wird, oder eine Funktionserweiterungseinheit, die mit einem Computer verbunden ist, und in Übereinstimmung mit den Programmcodebefehlen realisiert eine auf die Funktionserweiterungskarte montierte CPU oder die Funktionserweiterungseinheit einen Teil oder die gesamte aktuelle Verarbeitung, um die Funktionen zu erfüllen, die in den oben beschriebenen Ausführungsbeispielen enthalten sind.
  • Wie zuvor beschrieben, lassen sich folgende Wirkungen erzielen. von den Druckaufträgen eines Druckers kann das Annullieren eines gewünschten Druckauftrags angewiesen werden. Selbst wenn ein Teil der Druckdaten für den zu annullierenden Druckauftrag noch nicht analysiert worden ist, kann der Druckauftrag annulliert werden.
  • Mit Ausnahme der Druckdaten, die bereits zum Drucken verwendet worden sind, können alle Druckdaten für den ausgewählten Druckauftrag ungültig gemacht werden.
  • Von den Druckdaten des Druckauftrags, der zu annullieren ist, können speziell jene Daten ungültig gemacht werden, die im Eingangspuffer gespeichert sind.
  • Ob Druckdaten, die im Eingangspuffer gespeichert sind, jene für einen auszuwählenden Druckauftrag sind, läßt sich leicht bestimmen.
  • Druckdaten im Eingangspuffer lassen sich leicht ungültig machen.
  • Selbst während des Analysierens der Druckdaten für die Auswahl eines Druckauftrags können die Druckdaten ungültig gemacht werden.
  • Ein Druckauftrag, der an den Drucker gesendet wird, läßt sich identifizieren, ohne daß die Druckdaten analysiert werden müssen.
  • Ob die Inhalte eines empfangenen Auftragspakets Drucksteuerdaten oder Druckdaten sind, läßt sich bestimmen durch Untersuchen lediglich der Identifikationsinformation.
  • Ein ausgewählter Druckauftrag läßt sich außerhalb vom Drucker steuern.
  • Das Hereinnehmen oder die Einstellung von Drucksteuerdaten für einen ausgewählten Druckauftrag oder das Annullieren eines ausgewählten Druckauftrags kann angefordert werden.
  • Drucksteuerdaten für einen Druckauftrag können nach außen gemeldet werden.
  • Eine Steueranforderung kann eingegeben werden, selbst während der Eingabe eines Auftragspakets, und das Hereinnehmen oder Einstellen der Drucksteuerdaten oder das Annullieren eines Druckauftrags läßt sich in Echtzeit ausführen.
  • Ein vorbestimmter Druckauftrag im Drucker kann gemäß einer spezifizierten Bedingung ohne Annullieren des angewiesenen Druckauftrags annulliert werden.
  • Ein aktueller oder nachfolgender Druckauftrag, der zu drucken ist, kann spezifiziert und annulliert werden.
  • Der Drucker kann direkt von außen einen Befehl zum Annullieren eines Druckauftrags empfangen.
  • Der Drucker kann direkt von außen einen Befehl zum Annullieren eines speziellen Druckauftrags empfangen.
  • Dieselben Wirkungen können für das Druckersystem, das Drucksteuerverfahren, das Aufzeichnungsmedium, auf dem ein Steuerprogramm zum Steuern des Druckers gespeichert ist, und für die Sendeeinrichtung zum Senden eines Steuerprogramms zum Steuern des Druckers bereitgestellt werden.

Claims (22)

  1. Drucksteuergerät zum Steuern eines Druckers (150), der mit einem Hauptcomputer (100) kommuniziert, mit: einem Interpreter (155), der in einem Speicherbereich (154) gespeicherte Druckdaten in Maschinensprache umsetzt; einem Eingabemittel (159) zum Eingeben eines Druckauftrags, der Druckdaten enthält, die in eine Vielzahl von Auftragspaketen geteilt sind, die alle mit einer jeweiligen Kopfinformation bereitstehen, wobei die Kopfinformation die Eigenschaft eines jeden Auftragspakets aufzeigt; einem Vorprozessor (153) zum Speichern der Druckdaten, die in allen der Vielzahl von Auftragspaketen des vom Eingabemittel in den Speicherbereich eingegebenen Druckauftrags enthalten sind; einer Verwaltungseinrichtung (153) zum Verwalten einer Verwaltungsdruckauftragsidentifikationsinformation, die den Druckauftrag entsprechend den im Speicherbereich gespeicherten Druckdaten identifiziert; einem Invalidiermittel (153) zum Annullieren eines bestimmten Druckauftrags als Reaktion auf einen Annullierbefehl, Invalidieren der Druckdaten aus den im Speicherbereich gespeicherten Druckdaten, die der Druckauftragsidentifikationsinformation für den bestimmten Druckauftrag entsprechen, wobei der Invalidierschritt in Hinsicht auf die eingegebenen Auftragspakete die Druckdaten der auf der Grundlage der für die Pakete bereitgestellten Kopfinformation für ungültig erklärt, ohne die Druckdaten im Speicherbereich zu speichern.
  2. Drucksteuergerät nach Anspruch 1, das weiterhin über ein Selektiermittel verfügt, um herauszufinden, ob die eingegebenen Auftragspakete mit der Druckauftragsidentifikationsinformation für einen zu annullierenden Druckauftrag übereinstimmen, wobei das Invalidiermittel betriebsbereit ist, die Druckdaten der Auftragspakete als Reaktion auf einen vom Selektiermittel ausführten Selektiervorgang für ungültig zu erklären.
  3. Drucksteuergerät nach Anspruch 1 oder 2, dessen Vorprozessor betriebsbereit ist, die Druckdaten eines Druckauftrags über das Eingabemittel in eine Vielzahl von Blöcken zu teilen, um eine Vielzahl von Blöcken mit jeweiligen ID und zum Speichern der Vielzahl von Druckdatenblöcken entsprechend den jeweiligen ID im Speicherbereich bereitzustellen, wobei das Invalidiermittel betriebsbereit ist, als Reaktion auf den Annullierbefehl einen Druckauftrag zu annullieren, der eine ID bestimmt, und die Druckdaten eines Blockes für ungültig zu erklären, die mit der bestimmten ID übereinstimmen.
  4. Drucksteuergerät nach einem der Ansprüche 1 bis 3, dessen Vorprozessor betriebsbereit ist, Eigenschaftsdaten und PDL-Daten eines jeden Auftragspakets in jeweiligen unterschiedlichen Speicherbereichen auf der Grundlage der Kopfinformation zu speichern.
  5. Drucksteuergerät nach einem der Ansprüche 1 bis 4, das für einen Laserstrahldrucker bereitsteht.
  6. Drucksteuergerät nach einem der Ansprüche 1 bis 4, das für einen Tintenstrahldrucker bereitsteht.
  7. System mit einem Drucksteuergerät nach einem der Ansprüche 1 bis 6, das weiterhin zur Kommunikation über einen Hauptcomputer verfügt.
  8. System nach Anspruch 7, dessen Hauptcomputer über einen Paketgenerator (107) verfügt, um eine Vielzahl von Paketen durch Anordnen von Druckdaten zu erzeugen, die ein Druckertreiber auf der Grundlage von Anwenderdaten in Paketdaten aufbereitet, und über ein Übertragungsmittel zum Senden der Paketdaten an das Drucksteuergerät über ein vorbestimmtes Übertragungsprotokoll.
  9. System nach einem der Ansprüche 7 und 8, dessen Drucker des weiteren über einen Auftragskanal zur Übertragung des Druckauftrags und einen Verwaltungskanal zur Übertragung von Druckverwaltungsbefehlen verfügt, wobei der Verwaltungskanal betriebsbereit ist, den Annullierbefehl aufzunehmen.
  10. System nach einem der Ansprüche 7 bis 9, dessen Übertragungsmittel der Übertragung in einem Übertragungsprotokoll dient unter Verwendung einer in IEEE 1284 festgelegten lokalen Schnittstelle oder eines Lokalbereichsnetzes.
  11. Verfahren zum Steuern eines mit einem Hauptcomputer (100) kommunizierenden Druckers (150), das das Betreiben eines Drucksteuergerätes umfaßt, mit den Verfahrensschritten: Übersetzen von in einem Speicherbereich (154) gespeicherten Druckdaten in eine Maschinensprache; Eingeben eines Druckauftrags, der Druckdaten enthält, die in eine Vielzahl von Auftragspaketen geteilt sind, die alle mit einer jeweiligen die Eigenschaft eines jeden Auftragspakets aufzeigenden Kopfinformation bereitstehen; Vorverarbeiten des Speicherns von Druckdaten, die in allen der Vielzahl von Auftragspaketen des eingegebenen Druckauftrags im Speicherbereich enthalten sind; Verwalten von Druckauftragskennzeichnungsinformation, die den Druckauftrag entsprechend den im Speicherbereich gespeicherten Druckdaten identifiziert; Annullieren eines bestimmten Druckauftrags als Reaktion auf einen Annullierbefehl, Invalidieren der Druckdaten aus den im Speicherbereich gespeicherten Druckdaten, die der Druckauftragsidentifikationsinformation für den bestimmten Druckauftrag entsprechen, wobei der Invalidierschritt in Hinsicht auf die eingegebenen Auftragspakete die Druckdaten der auf der Grundlage der für die Pakete bereitgestellten Kopfinformation für ungültig erklärt, ohne die Druckdaten im Speicherbereich zu speichern.
  12. Verfahren nach Anspruch 11, das des weiteren herausfindet, ob die eingegebenen Auftragspakete der Druckauftragsidentifikationsinformation für einen zu annullierenden Druckauftrag entsprechen, wobei der Invalidierschritt die Druckdaten der Auftragspakete als Reaktion auf ein Selektieren im Selektierschritt für ungültig erklärt.
  13. Verfahren nach einem der Ansprüche 11 und 12, wobei der Vorverarbeitungsschritt die Druckdaten eines Druckauftrags in eine Vielzahl von Blöcken teilt (S3302), die Vielzahl von Blöcken mit jeweiligen ID bereitstellt (S3304) und die Vielzahl von Druckdatenblöcken entsprechend den jeweiligen ID im Speicherbereich speichert (S3304), und wobei als Reaktion auf den Annullierbefehl zum Annullieren eines Druckauftrags, der eine ID bestimmt, der Invalidierschritt die Druckdaten eines der bestimmten ID entsprechenden Blockes für ungültig erklärt.
  14. Verfahren nach einem der Ansprüche 11 bis 13, bei dem der Vorverarbeitungsschritt Eigenschaftsdaten und PDL-Daten eines jeden Auftragspakets in jeweils unterschiedlichen Speicherbereichen auf der Grundlage der Kopfinformation speichert.
  15. Verfahren nach einem der Ansprüche 11 bis 14, bei dem das Drucksteuergerät für einen Laserstrahldrucker bereitsteht.
  16. Verfahren nach einem der Ansprüche 11 bis 14, bei dem das Drucksteuergerät einen Tintenstrahldrucker steuert.
  17. Verfahren zum Steuern eines Systems mit einem Drucker und einem mit diesem in Verbindung stehenden Hauptcomputer, das das Betreiben eines Drucksteuergerätes vom Drucker nach einem Verfahren beinhaltet, das in einem der Ansprüche 11 bis 16 festgelegt ist, um aus dem Hauptcomputer empfangene Druckdaten zu verarbeiten.
  18. Verfahren nach Anspruch 17, bei dem der Hauptcomputer eine Vielzahl von Auftragspaketen durch Anordnen von Druckdaten erzeugt, die ein Druckertreiber auf der Grundlage von Anwenderdaten in Paketdaten aufbereitet und diese unter Verwendung eines vorbestimmten Übertragungsprotokolls über ein Übertragungsmittel an das Drucksteuergerät sendet.
  19. Verfahren nach einem der Ansprüche 17 und 18, bei dem der Drucker des weiteren über einen den Druckauftrag übertragenden Auftragskanal und über einen die Druckverwaltungsbefehle übertragenden Verwaltungskanal verfügt, wobei der Verwaltungskanal den Annullierbefehl empfängt.
  20. Verfahren nach einem der Ansprüche 17 bis 19, bei dem das Übertragungsmittel eine lokale Schnittstelle verwendet, die in IEEE 1284 oder einem Lokalbereichsnetzwerk festgelegt ist.
  21. Speichermedium, das ein Steuerprogramm zum Ausführen aller Verfahrensschritte eines in einem der Ansprüche 11 bis 20 angegebenen Verfahrens speichert.
  22. Computerprogramm zum Ausführen aller Verfahrensschritte, wie sie in einem der Ansprüche 11 bis 20 angegeben sind.
DE69827747T 1997-12-11 1998-12-10 Druckersystem und Übertragungsvorrichtung um Druckersteuerungsprogramm zu übertragen Expired - Lifetime DE69827747T2 (de)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
JP36170597 1997-12-11
JP36170597 1997-12-11
JP3441198 1998-02-17
JP3441198 1998-02-17
JP24343098 1998-08-28
JP24343098 1998-08-28
JP31754998 1998-11-09
JP31754998A JP2000135820A (ja) 1997-12-11 1998-11-09 印刷装置及び印刷システム及び印刷制御方法及び印刷装置を制御する印刷制御プログラムを格納した記憶媒体及び印刷装置を制御する印刷制御プログラムを送出する送出装置

Publications (2)

Publication Number Publication Date
DE69827747D1 DE69827747D1 (de) 2004-12-30
DE69827747T2 true DE69827747T2 (de) 2005-11-03

Family

ID=27459928

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69827747T Expired - Lifetime DE69827747T2 (de) 1997-12-11 1998-12-10 Druckersystem und Übertragungsvorrichtung um Druckersteuerungsprogramm zu übertragen

Country Status (4)

Country Link
US (3) US6633395B1 (de)
EP (1) EP0923024B1 (de)
JP (1) JP2000135820A (de)
DE (1) DE69827747T2 (de)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6671813B2 (en) 1995-06-07 2003-12-30 Stamps.Com, Inc. Secure on-line PC postage metering system
JP2000135820A (ja) * 1997-12-11 2000-05-16 Canon Inc 印刷装置及び印刷システム及び印刷制御方法及び印刷装置を制御する印刷制御プログラムを格納した記憶媒体及び印刷装置を制御する印刷制御プログラムを送出する送出装置
JP3159174B2 (ja) * 1998-06-19 2001-04-23 日本電気株式会社 プリンタ制御装置
JP3258633B2 (ja) * 1998-11-26 2002-02-18 キヤノン株式会社 インクジェット記録装置及び方法並びに印刷システムとその制御方法
JP3817387B2 (ja) * 1999-04-27 2006-09-06 キヤノン株式会社 プリントジョブのキャンセルの指示を行える情報処理装置、印刷装置、情報処理方法及び記憶媒体
AU7092200A (en) 1999-08-30 2001-03-26 Stamps.Com A method and apparatus for printing indicia, logos and graphics onto print media
US6982808B1 (en) 1999-08-30 2006-01-03 Stamps.Com Virtualized printing of indicia, logos and graphics
US6965451B1 (en) 1999-08-30 2005-11-15 Stamps.Com Method and apparatus for printing indicia, logos and graphics onto print media
JP2001063148A (ja) * 1999-08-31 2001-03-13 Fuji Xerox Co Ltd 画像処理装置
AU1606701A (en) 1999-11-12 2001-06-06 Mimeo.Com, Inc. System, method and recordable medium for printing services over a network and graphical user interface
US6714964B1 (en) * 1999-11-12 2004-03-30 Mimeo.Com System, method and recordable medium for printing services over a network
US7095519B1 (en) * 1999-11-12 2006-08-22 Mimeo.Com, Inc. System, method and recordable medium for uploading documents over a network
US7805384B1 (en) 1999-12-22 2010-09-28 Stamps.Com, Inc. Postal printer driver system and method
US7177041B2 (en) * 2000-04-17 2007-02-13 International Business Machines Corporation Method and apparatus for detecting and processing print jobs that request backchannel data
JP3520500B2 (ja) * 2000-07-26 2004-04-19 セイコーエプソン株式会社 プリンタ、プリンタの制御方法、そのためのプログラム、及び、そのプログラムを記録した記録媒体
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
US10860290B2 (en) 2000-11-01 2020-12-08 Flexiworld Technologies, Inc. Mobile information apparatuses that include a digital camera, a touch sensitive screen interface, support for voice activated commands, and a wireless communication chip or chipset supporting IEEE 802.11
US20020059415A1 (en) * 2000-11-01 2002-05-16 Chang William Ho Manager for device-to-device pervasive digital output
US11467856B2 (en) 2002-12-12 2022-10-11 Flexiworld Technologies, Inc. Portable USB device for internet access service
US10915296B2 (en) 2000-11-01 2021-02-09 Flexiworld Technologies, Inc. Information apparatus that includes a touch sensitive screen interface for managing or replying to e-mails
US11204729B2 (en) 2000-11-01 2021-12-21 Flexiworld Technologies, Inc. Internet based digital content services for pervasively providing protected digital content to smart devices based on having subscribed to the digital content service
US7953818B2 (en) 2000-11-20 2011-05-31 Flexiworld Technologies, Inc. Output device and system for rendering digital content
US20020097416A1 (en) 2001-01-19 2002-07-25 Chang William Ho Output controller processor for universal data output
US20020188646A1 (en) * 2001-06-06 2002-12-12 Terrill Jody L. Print information capture and correlation
US6961936B2 (en) * 2001-09-20 2005-11-01 Hewlett-Packard Development Company, L.P. Apparatus and method for controlling stored jobs
JP2003177880A (ja) * 2001-12-07 2003-06-27 Panasonic Communications Co Ltd 印刷ジョブ管理装置及び印刷ジョブ操作方法
JP2003266808A (ja) * 2002-03-15 2003-09-25 Fujitsu Ltd プリンタ、及び、印刷イメージ参照システム
JP4401662B2 (ja) 2002-03-29 2010-01-20 キヤノン株式会社 印刷制御装置および印刷制御方法
US8702624B2 (en) 2006-09-29 2014-04-22 Sanofi-Aventis Deutschland Gmbh Analyte measurement device with a single shot actuator
EP1383301B1 (de) * 2002-07-18 2020-01-01 Sharp Kabushiki Kaisha Bildverarbeitungsvorrichtung
JP2004130784A (ja) * 2002-08-22 2004-04-30 Seiko Epson Corp プリンタ
US7908401B2 (en) 2002-12-12 2011-03-15 Flexiworld Technology, Inc. Method and device for wireless communication between computing devices
US7394558B2 (en) * 2003-01-28 2008-07-01 Hewlett-Packard Development Company, L.P. Modifying printing based on print job clues
JP4558340B2 (ja) * 2003-02-20 2010-10-06 オセ−テクノロジーズ・ベー・ヴエー ネットワークにおける印刷ジョブの処理システム
CN107797953B (zh) 2003-04-11 2021-10-08 富意科技公司 一种可实现自动运行的集成电路存储设备或方法
JP2004341728A (ja) * 2003-05-14 2004-12-02 Canon Inc 印刷装置、印刷システム及びキャンセル方法
JP4490188B2 (ja) * 2003-07-31 2010-06-23 株式会社リコー 印刷処理装置、印刷処理システム、印刷処理装置の制御方法、印刷処理装置の制御プログラム及び記録媒体
JP4018622B2 (ja) * 2003-12-10 2007-12-05 キヤノン株式会社 情報処理装置、情報処理システム、情報処理方法、及び情報処理プログラム並びに記憶媒体
KR100606119B1 (ko) * 2004-06-04 2006-07-31 삼성전자주식회사 홈 네트워크 시스템에서의 이동통신용 휴대 단말기를이용한 프린터 제어 방법
JP2006065697A (ja) * 2004-08-27 2006-03-09 Hitachi Ltd 記憶デバイス制御装置
JP2006082262A (ja) * 2004-09-14 2006-03-30 Canon Inc 画像処理装置およびジョブ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
JP4804164B2 (ja) * 2005-02-23 2011-11-02 キヤノン株式会社 画像形成装置及び方法、並びにプログラム
JP2006289797A (ja) 2005-04-11 2006-10-26 Canon Inc 印刷制御装置、その制御方法及びプログラム
JP2006334803A (ja) * 2005-05-31 2006-12-14 Konica Minolta Business Technologies Inc 画像処理装置、および、その制御方法
JP5303808B2 (ja) * 2009-08-06 2013-10-02 株式会社Pfu 提案装置、提案システム、提案方法、及びプログラム
JP5713557B2 (ja) * 2009-12-07 2015-05-07 キヤノン株式会社 印刷システム、制御方法、プログラム
JP5739639B2 (ja) * 2010-10-19 2015-06-24 キヤノン株式会社 画像形成装置、画像形成方法、およびプログラム
US9130885B1 (en) 2012-09-11 2015-09-08 Mellanox Technologies Ltd. End-to-end cache for network elements
JP6164823B2 (ja) * 2012-11-30 2017-07-19 キヤノン株式会社 印刷装置
US9325641B2 (en) * 2014-03-13 2016-04-26 Mellanox Technologies Ltd. Buffering schemes for communication over long haul links
US9584429B2 (en) 2014-07-21 2017-02-28 Mellanox Technologies Ltd. Credit based flow control for long-haul links
US10437527B2 (en) * 2017-04-02 2019-10-08 Kyocera Document Solutions Inc. System and method for pre-generation of page description language (PDL) for printing
JP7145752B2 (ja) * 2018-12-27 2022-10-03 セイコーインスツル株式会社 印刷システム、ホスト装置、印刷制御方法、およびプログラム
US10951549B2 (en) 2019-03-07 2021-03-16 Mellanox Technologies Tlv Ltd. Reusing switch ports for external buffer network
US11558316B2 (en) 2021-02-15 2023-01-17 Mellanox Technologies, Ltd. Zero-copy buffering of traffic of long-haul links
US11973696B2 (en) 2022-01-31 2024-04-30 Mellanox Technologies, Ltd. Allocation of shared reserve memory to queues in a network device
US11995367B1 (en) * 2023-01-16 2024-05-28 Kyocera Document Solutions Inc. Image forming apparatus and image forming method capable of presenting and changing internal priority of printing order

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5220674A (en) 1987-07-17 1993-06-15 Digital Equipment Corporation Local area print server for requesting and storing required resource data and forwarding printer status message to selected destination
US5133048A (en) * 1990-09-28 1992-07-21 Xerox Corporation System for printing ordered stock
JP2739145B2 (ja) 1991-07-26 1998-04-08 大日本スクリーン製造株式会社 印刷データ管理装置
JP3165268B2 (ja) 1992-10-30 2001-05-14 キヤノン株式会社 印刷情報処理方法および装置
JP3224460B2 (ja) * 1993-09-27 2001-10-29 富士通株式会社 ソルダクリーム製版製造データ作成システム
DE69433482T2 (de) 1993-11-16 2004-06-03 Fuji Xerox Co., Ltd. Netzwerkdrucker
JP3222668B2 (ja) 1993-12-17 2001-10-29 キヤノン株式会社 印刷制御装置および方法
JP3486452B2 (ja) * 1994-04-20 2004-01-13 キヤノン株式会社 複合画像処理装置
US6922416B2 (en) * 1995-04-28 2005-07-26 Matsushita Electric Industrial Co., Ltd. Data transmitting apparatus, data receiving apparatus and data transmission control apparatus
US5718520A (en) * 1995-05-22 1998-02-17 Xerox Corporation Apparatus and method for modifying a print job ticket
AU6251696A (en) 1995-06-06 1996-12-24 Apple Computer, Inc. Architecture for network printing systems
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
JP3618884B2 (ja) * 1996-03-18 2005-02-09 キヤノン株式会社 情報処理装置、情報処理方法、印刷システム、及び、メモリ
GB2312077B (en) * 1996-04-12 2000-04-12 Sony Uk Ltd Tape recording of video signals
US5963216A (en) * 1996-04-25 1999-10-05 Hewlett-Packard Company Providing print preview of a print job using printing calls from a print driver
JP3255855B2 (ja) * 1996-09-30 2002-02-12 株式会社沖データ プリンタシステム、およびその印刷制御方法
US5832274A (en) * 1996-10-09 1998-11-03 Novell, Inc. Method and system for migrating files from a first environment to a second environment
JP3665691B2 (ja) * 1996-11-29 2005-06-29 株式会社東芝 画像形成装置
US6614546B1 (en) * 1997-03-10 2003-09-02 Minolta Co., Ltd. Image processing system and image forming apparatus
JP3622412B2 (ja) * 1997-03-25 2005-02-23 セイコーエプソン株式会社 印刷装置,印刷方法,及び、印刷システム
US6301010B1 (en) * 1997-09-30 2001-10-09 Canon Kabushiki Kaisha Image processing method and apparatus
JP3559713B2 (ja) * 1997-10-27 2004-09-02 キヤノン株式会社 印刷処理装置、及び、印刷処理方法、並びに、処理プログラムが格納された記憶媒体
JP3786152B2 (ja) * 1997-11-14 2006-06-14 セイコーエプソン株式会社 印刷システム、印刷方法及びプリンタ
JP2000135820A (ja) * 1997-12-11 2000-05-16 Canon Inc 印刷装置及び印刷システム及び印刷制御方法及び印刷装置を制御する印刷制御プログラムを格納した記憶媒体及び印刷装置を制御する印刷制御プログラムを送出する送出装置
JP3711433B2 (ja) * 1998-05-06 2005-11-02 セイコーエプソン株式会社 印刷制御方法及びシステム、記録媒体
JP3226095B2 (ja) * 1998-10-14 2001-11-05 セイコーエプソン株式会社 ネットワークプリンタ
US6160629A (en) * 1998-10-26 2000-12-12 Hewlett-Packard Company Multiple copy printer with print job retention
JP4392919B2 (ja) * 1998-12-24 2010-01-06 キヤノン株式会社 印刷制御装置及び印刷制御方法及び印刷制御プログラムが格納された記録媒体及び印刷制御プログラム製品
JP4953496B2 (ja) * 2000-05-15 2012-06-13 ソニー株式会社 コンテンツ検索・提示システム及び方法、並びに、ソフトウェア記憶媒体
US7069271B1 (en) * 2000-11-03 2006-06-27 Oracle International Corp. Methods and apparatus for implementing internet storefronts to provide integrated functions
JP2002207632A (ja) * 2001-01-12 2002-07-26 Fujitsu Ltd 共有情報処理システムおよび記録媒体
US7088462B2 (en) * 2001-06-29 2006-08-08 International Business Machines Corporation Print manager having a user interface for specifying how documents are directed to print devices
JP3722057B2 (ja) * 2001-11-30 2005-11-30 ソニー株式会社 データ記録再生装置及びデータ記録再生方法、並びにデジタルカメラ
US20050071736A1 (en) * 2003-09-26 2005-03-31 Fuji Xerox Co., Ltd. Comprehensive and intuitive media collection and management tool
JP2005149436A (ja) * 2003-11-20 2005-06-09 Hitachi Ltd ストレージ装置、ストレージ装置における制御方法、ジョブスケジューリング処理方法及び障害処理方法並びにそれらのプログラム
JP4297792B2 (ja) * 2004-01-08 2009-07-15 株式会社リコー Webサーバ組み込みビジネス機器
JP2005215976A (ja) * 2004-01-29 2005-08-11 Konica Minolta Holdings Inc 画像処理装置、画像記録装置及び画像記録システム
US20050193055A1 (en) * 2004-02-26 2005-09-01 Mark Angel Context sensitive dynamic user interface for customer service agent

Also Published As

Publication number Publication date
EP0923024B1 (de) 2004-11-24
US6633395B1 (en) 2003-10-14
DE69827747D1 (de) 2004-12-30
EP0923024A3 (de) 2000-08-09
US20040051898A1 (en) 2004-03-18
US7145683B2 (en) 2006-12-05
US6963416B2 (en) 2005-11-08
JP2000135820A (ja) 2000-05-16
US20050243361A1 (en) 2005-11-03
EP0923024A2 (de) 1999-06-16

Similar Documents

Publication Publication Date Title
DE69827747T2 (de) Druckersystem und Übertragungsvorrichtung um Druckersteuerungsprogramm zu übertragen
DE10034841B4 (de) Vorrichtung und Verfahren zur Überwachung und Aufzeichnung der Verwendung von Druckern in einem System
DE69709970T2 (de) Verfahren und Gerät, um einen Auftrag für einem Drucker zu speichern
DE60203571T2 (de) Druckvorrichtung und dessen Verfahren zum Aktualisieren der Betriebsdaten
DE3908459C2 (de) Netzwerkserver
EP1456742B1 (de) Verfahren, gerätesystem und computerprogramm zum speichern und abrufen von druckdaten in einem netzwerk
DE69614034T2 (de) Rechnersystem
DE69818141T2 (de) Verfahren und Vorrichtung zur dynamischen Verwaltung von Kommunikationspuffern mit Paketvermittlungsdaten für einen Drucker
DE68919975T2 (de) Verfahren für die simultane Ablaufverwaltung eines verteilten Anwenderprogramms in einem Hostrechner und in einer grossen Anzahl von intelligenten Benutzerstationen in einem SNA-Netzwerk.
DE69829136T2 (de) Netzwerkdrucker und entsprechendes computerlesbares Programaufzeichnungsmedium
DE69629433T2 (de) Protokollrekonfigurierung in einem Netzschnittstellengerät
DE69725451T2 (de) Drucken in offenen systemen
DE69906604T2 (de) Rechnersystem und Verfahren zur Zuordnung von Speicherraum zu Kommunikationsportpuffern
DE10310337B4 (de) Bilderzeugungs-Vorrichtung und Bilderzeugungs-Steuerverfahren
DE69912017T2 (de) Peripheriegerät und Steuerverfahren dafür
DE69521256T2 (de) Verfahren zur Verwaltung der Speicherzuweisung in einem Druckersystem
DE60001134T2 (de) System und Verfahren zur Überwachung und Meldung des Gebrauchs einer Benutzerschnitstelle
DE69616119T2 (de) Netzwerkschnittstellenkarte für digitales Kopiergerät
DE69734432T2 (de) Verfahren und Vorrichtung zur Absendung von Clientverfahrenanrufen in einem Server Rechnersystem
DE69813976T2 (de) Datenübertragungssteuerverfahren und Vorrichtung und Datenübertragungssystem
DE19522527A1 (de) Verfahren zur Vereinfachung der Kommunikation mit Chipkarten
EP1197347A2 (de) Schnittstellen-System und Verfahren
DE10024715A1 (de) Verfahren und Vorrichtung zum Einrichten einer Zwei-Wege-Übertragung mit einem fernen Drucker
DE112018000731T5 (de) IoT-Gerät Fog-Networking-Betrieb
DE69320915T2 (de) Datenverarbeitungssystem

Legal Events

Date Code Title Description
8364 No opposition during term of opposition