-
Die vorliegende Erfindung betrifft ein Verfahren zum Betreiben eines Druckservers für digitale Hochleistungsdrucksysteme sowie einen entsprechenden Druckserver.
-
In der Druckschrift
US 2013/0035672 A1 wird ein phthalmologisches Andocksystem vorgestellt, das die Kondensation an einer Patientenschnittstelle eines chirurgischen Lasersystems verringert (siehe Zusammenfassung).
-
In der Druckschrift
US 2013/0258377 A1 wird ein Verfahren zur Steuerung eines Druckers vorgestellt, das das Spoolen einer Datei mit der Hierarchie eines Druckscheins umfasst als Reaktion auf einen Druckauftrag (siehe Zusammenfassung).
-
In dem Buch „Digital Printing, Technology and Printing Techniques of Océ Digital Printing Presses“, 9. Auflage, Februar 2005, ISBN 3-00-001081-5, sind in Kapitel 15 Druckserver für Hochleistungsdrucker beschrieben. Hierin ist schematisch der Ablauf eines in einem Océ PRISMAproduction Document Output Management System verwendeten Verfahrens zur Kommunikation zwischen zwei Prozessen eines Computersystems zum Übertragen von Druckdaten gezeigt.
-
In der
DE 10 2016 125 023 A1 wird ein Verfahren zum Betreiben eines Druckservers für digitale Hochleistungsdrucksysteme beschrieben, das folgende Schritte umfasst: - Lesen von Zustandsparametern, welche Systemzustände, wie z. B. die Belastung einer CPU, eines Arbeitsspeichers, eines Dateisystems, eines Netzwerks und/oder einer Systemschnittstelle, beschreiben, mittels eines Sammeltriggers,
- - Triggern von Filtern zum Lesen weiterer Zustandsparameter, welche Prozesszustände von am Druckserver ausgeführten Anwendungsprozessen umfassen, wobei das Triggern mit einer Triggerlogik ausgeführt wird, in Abhängigkeit davon, ob die mit dem Sammel-Trigger erfassten Systemzustände einen außergewöhnlichen Betriebszustand darstellen.
-
Aus der
DE 10 2016 125 020 A1 geht ein Speichersystem für einen Druckserver hervor, das eine erste logische Festplatte und eine zweite logische Festplatte aufweist. Ein drittes Massenspeichermedium ist vorgesehen, das zur Aufnahme vom Betriebssystem, von Anwendungsprogrammen, von Steuerdaten und Trace-Daten dient. Die erste logische Festplatte dient zur Aufnahme von Druckdaten (PD: Print Data) und die zweite logische Festplatte zur Aufnahme der zum Drucken bereits vorbereiteten Druckdaten (R2P: Ready to Print). Am Druckserver eingehende Druckaufträge (PD) werden auf die erste logische Festplatte geschrieben. Beim Durchführen eines Druckdatendienstes werden die Druckdaten von der ersten logischen Festplatte in den Arbeitsspeicher gelesen, bearbeitet und wieder auf die erste logische Festplatte geschrieben. Dies wird für jeden Druckdatendienst wiederholt. Hierdurch werden die Druckaufträge (PD) in zum Drucken bereite Druckdaten (R2P: Ready to Print) umgewandelt. Ein Druckdatendienst kann z.B. die Druckdaten konvertieren, mit Barcodes erweitern, an ein bestimmtes Layout anpassen und/oder den Inhalt auf Vollständigkeit oder auf Syntax überprüfen. Auf die zweite logische Festplatte werden nur zum Drucken bereits vorbereitete Druckdaten, welche im Folgenden als Ready-to-Print-Druckdaten bezeichnet werden, gespeichert. Die Ready-to-Print-Druckdaten können auch als druckfertige Daten bezeichnet werden. Die zweite logische Festplatte kann auch als Druckdatenspooler bezeichnet werden, in welchen die Ready-to-Print-Druckdaten zwischengespeichert werden.
-
Bei Druckservern für digitale Hochleistungsdrucksysteme ist es enorm wichtig, dass den Druckgeräten kontinuierlich ein Druckdatenstrom zugeführt werden kann. Würde ein von einem Druckgerät angeforderter Druckdatenstrom nicht rechtzeitig übermittelt werden können, dann müsste das Druckgerät angehalten werden. Ein Druckgerät für ein Hochleistungsdrucksystem kann jedoch nicht ohne weiteres angehalten werden. Zum Beispiel kann die Beförderung des Aufzeichnungsträgers nicht ohne weiteres gestoppt werden. Daher führt ein überraschendes Anhalten des Druckvorganges zu einem erheblichen Ausschuss an Aufzeichnungsträgern, welcher auch als Makulatur bezeichnet wird. Zudem verursacht die Stillstandzeit eines Druckgerätes erhebliche Produktionskosten.
-
Deshalb ist in Druckservern diese zweite logische Festplatte beziehungsweise der Druckerspooler in der Regel ausschließlich aus einem Cache-Speicher, in dem große Datenmengen schnell geschrieben und aus dem große Datenmengen schnell gelesen werden können, ausgebildet. Da die Datenmenge von Druckaufträgen bekannter Weise groß ist und mehrere Druckaufträge gleichzeitig in einem solchen Druckerspooler gespeichert werden müssen, muss die Kapazität des CacheSpeichers entsprechend groß ausgelegt sein. Cache-Speicher sind jedoch technisch wesentlich aufwendiger als herkömmliche Massenspeicher und deshalb wesentlich teurer.
-
Der Erfindung liegt die Aufgabe zu Grunde, ein Verfahren zum Betreiben eines Druckservers für digitale Hochleistungsdrucksysteme und einen entsprechenden Druckserver zu schaffen, welches erlaubt, einen im Vergleich zum oben erläuterten Stand der Technik kleineren Cache-Speicher zu verwenden, ohne hierdurch Einbußen in der Bereitstellung der Ready-to-Print-Druckdaten zu erhalten.
-
Eine weitere Aufgabe liegt darin, ein Verfahren zum Betreiben eines Druckservers für digitale Hochleistungsdrucksysteme und einen entsprechenden Druckserver zu schaffen, welche es einen Druckgerät erlauben, den Betrieb wieder schnell aufzunehmen.
-
Die Aufgabe wird durch den Gegenstand der unabhängigen Patentansprüche gelöst. Vorteilhafte Weiterbildungen und bevorzugte Ausführungsformen bilden den Gegenstand der Unteransprüche.
-
Bei einem erfindungsgemäßen Verfahren zum Betreiben eines Druckservers für digitale Hochleistungsdrucksysteme wird ein Druckserver verwendet, der einen Spooling-Speicher, welcher zum Speichern von Druckaufträgen ausgebildet ist, und einen Druckdaten-Cachespeicher aufweist, welcher zum Übermitteln von Druckdaten eines Spooling-Druckauftrags an ein oder mehrere Druckgeräte ausgebildet ist. Jedem auf dem Spooling-Speicher gespeicherten Druckauftrag, im Folgenden Spooling-Druckauftrag genannt, wird eine Druckpriorität zugeordnet.
-
Bei diesem Verfahren werden folgende Schritte ausgeführt:
- - Bestimmen eines Spooling-Prio-Druckauftrages, welcher unter den Spooling-Druckaufträgen die höchste Druckpriorität hat und nicht im Druckdaten-Cachespeicher gespeichert ist,
- - Bestimmen der Druckauftrag-Größe des Spooling-Prio-Druckauftrages,
- - Bestimmen der freien Kapazität des Druckdaten-Cachespeichers,
- - Löschen eines oder mehrerer nicht im Druck befindlicher Druckaufträge im Druckdaten-Cachespeicher, sofern die freie Kapazität des Druckdaten-Cachespeichers kleiner ist als die Größe des Spooling-Prio-Druckauftrages und sofern die Druckpriorität des zu löschenden Druckauftrages kleiner ist als die Druckpriorität des Spooling-Prio-Druckauftrages, und
- - Laden des Spooling-Prio-Druckauftrages in den Druckdaten-Cachespeicher, sofern die freie Kapazität ausreichend ist.
-
Die Druckpriorität ist ein vergleichender Wert. Die Druckpriorität bestimmt, welchen Vorrang ein Druckauftrag hat, um an dem ihm zugeordneten Druckgerät ausgedruckt zu werden.
-
Ein Druckauftrag ist eine maschinelle Anweisung, Druckdaten zu drucken. Ein Druckauftrag kann neben den Druckdaten weitere Informationen und Parameter enthalten, wie z.B. Größe, Parameter, die die Druckqualität beschreiben, oder Druckpriorität. Der Druckauftrag kann einem Druckgerät zugeordnet sein.
-
Der Druckdaten-Cachespeicher ist ein logischer Bereich des Cachespeicher-Mediums. Das Cachespeicher-Medium umfasst alle Druckdaten-Cachespeicher. Das Cachespeicher-Medium kann auch nur einen einzelnen Druckdaten-Cachespeicher aufweisen.
-
Druckdaten sind Inhaltsinformationen eines Druckauftrages. Sie können Texte, Bilder und/oder Vektorinformationen, wie z.B. Tabellen umfassen. Ein Druckauftrag kann ein oder mehrere Dateien enthalten. Eine Druckauftrag-Größe ist die Größe eines bestimmten Druckauftrages, bzw. Teile des Druckauftrages. Die Größe beschreibt, wieviel Speicherplatz die zugehörigen Druckdaten belegen. Die Druckauftrag-Größe berechnet sich aus einem Datenparameter pro Einteilungseinheit. Der Datenparameter beschreibt Merkmale der Inhalte der Druckdaten, wie z.B. Speichergröße, Zeichenanzahl, Wörteranzahl oder Anzahl der Seitenelemente. Die Seitenelemente bilden einen zusammenhängenden Teil einer Druckdatei, wie z.B. Tabellen, Bilder oder Listen. Beispiele einer Druckauftrag-Größe sind Gesamtgröße in Megabyte [MB], Anzahl der Zeichen pro Seite oder Seitengröße, welche in Megabyte pro DIN-A4-Seite [MB/DIN-A4-Seite] angegeben werden kann. Andere Seitenformate wie beispielsweise DIN-A3, DIN-A2 sind ebenfalls möglich.
-
Mit dem Verfahren werden zum Spoolen von Druckaufträgen sowohl der Spooling-Speicher als auch der Druckdaten-Cachespeicher verwendet. Aus dem Druckdaten-Cachespeicher werden die Druckaufträge gelesen und an ein Druckgerät übermittelt. Da ein Cachespeicher das Lesen von Daten mit einer hohen Datenrate erlaubt, können die Druckdaten schnell in einem kontinuierlichen Datenstrom an das Druckgerät übermittelt werden. Das Druckgerät ist direkt mit dem Druckserver verbunden, so dass der Druckdaten-Cachespeicher die Druckdaten direkt zum Druckgerät leitet. Der Datenstrom muss, wenn das Druckgerät ihn anfordert bzw. zur Entgegenahme bereit ist, immer vom Druckserver geliefert werden. Wenn der Druckvorgang unterbrochen werden würde, dann führt dies bei einem Hochleistungsdrucksystem zu erheblichen Kosten. Es entsteht ein Ausschuss, auch Makulatur genannt, mit einer Papierbahn von einigen zehn Metern bis einigen hundert Metern. Es kann sich sogar als notwendig erweisen, den Druckauftrag von Anfang an neu zu drucken. Zudem verursacht die Stillstandzeit des Druckgerätes erhebliche Kosten. Mit dem Ausdruck „kontinuierlicher Datenstrom“ ist somit ein Datenstrom gemeint, der kontinuierlich, also ohne Unterbrechung, bereit steht, um an das oder die Druckgeräte übermittelt werden zu können, aber nicht notwendigerweise tatsächlich immer kontinuierlich übermittelt wird. Werden vom Druckgerät keine Druckdaten angefordert, dann kann die Übermittlung der Druckdaten auch unterbrochen werden. Bei herkömmlichen Druckservern wird ein solcher Ausschuss vermieden, indem die Kapazität des Druckdaten-Cachespeichers sehr groß gewählt wird. Solche Druckdaten-Cachespeicher mit einer großen Kapazität sind sehr teuer, insbesondere wenn nur ein Cache-Speicher vorhanden ist, welcher die maximale Lesegeschwindigkeit des schnellsten Druckgerätes leisten können muss. Typischerweise sind bei herkömmlichen Druckservern die Druckdaten-Cachespeicher so groß, dass alle Druckaufträge dort gespeichert werden können.
-
Das erfindungsgemäße Verfahren ermöglicht es hingegen, dass Druckaufträge, welche bereits im Druckdaten-Cachespeicher gespeichert sind, unter bestimmten Bedingungen wieder gelöscht werden, um im Druckdaten-Cachespeicher Speicherplatz für später am Druckserver eingehende Druckaufträge mit höherer Druckpriorität zu schaffen. Hierdurch wird sichergestellt, dass ein Druckauftrag mit hoher Druckpriorität nicht zurückgestellt werden muss und andererseits muss die Kapazität des Druckdaten-Cachespeichers nur so gering ausgebildet sein, dass nur einige wenige Druckaufträge darin vorgehalten werden können. Vorzugsweise hat der Druckdaten-Cachespeicher eine derartige Kapazität, dass der Druckbetrieb ununterbrochen für alle angeschlossenen Druckgeräte durchgeführt werden kann. Zum Beispiel ist die Kapazität so groß, dass eine Papierrolle mit den Druckaufträgen im Druckdaten-Cachespeicher bedruckt werden kann. Durch das oben beschriebene Verfahren ist dann sichergestellt, dass die Papierrolle unterbrechungsfrei bedruckt wird.
-
Vorzugsweise wird die benötigte Kapazität des Druckdaten-Cachespeichers G aus der gewünschten ununterbrochenen Druck-Zeitdauer t [min], der Druckgeschwindigkeit der Druckgeräte V
D [Seiten/min], der Seitengröße K
D [MB/Seite] und der durchschnittlichen Anzahl an gedruckten Kopien A mit folgender Formel berechnet:
-
Im Folgenden wird die benötigte Kapazität für ein erstes Beispiel berechnet. Es soll eine Papierrolle bedruckt werden. Die Druckzeit einer Papierrolle beträgt in etwa 90 Minuten. Es sind vier Druckgeräte mit je 2.000 DIN-A4-Seiten pro Minute angeschlossen. Jede DIN-A4-Seite des Druckauftrages hat 4 MB. Es sollen 10 Kopien gedruckt werden. Daraus ergibt sich eine minimale Kapazität von:
-
Diesem Beispiel nach benötigt der Druckdaten-Cachespeicher eine Kapazität von mindestens 565 GB. Da ein Papierrollenwechsel üblicherweise nur bei stehenden Drucker gemacht werden kann, können in dieser Zeit (ca. 10-15 Minuten) Druckdaten in den Druckdaten-Cachespeicher aufgefüllt werden.
-
Diesem Verfahren liegt die Erkenntnis zu Grunde, dass Druckaufträge in großer Menge kostengünstig im Spooling-Speicher vorgehalten werden können und ein relativ kleiner Druckdaten-Cachespeicher genügt, um die schnelle und kontinuierliche Versorgung des Druckgerätes mit Druckdaten sicher zu stellen. Da die Druckaufträge im Spooling-Speicher vorgehalten werden können, können sie ohne weiteres im Druckdaten-Cachespeicher gelöscht werden, wenn ein Druckauftrag mit höherer Druckpriorität vorliegt, ohne dass sie verloren gehen. Die im Druckdaten-Cachespeicher gelöschten Druckaufträge bleiben jedoch im Spooling-Speicher so lange bestehen, bis die Druckaufträge vollständig bearbeitet sind oder vom Nutzer verworfen wurden. Nur der Druckdaten-Cachespeicher muss ein schnelles Cachespeicher-Medium sein. Der Spooling-Speicher kann im Vergleich dazu wesentlich langsamer in Bezug zur Schreib- und Lesegeschwindigkeit als der Druckdaten-Cachespeicher sein, wodurch eine große Kapazität kostengünstig bereitgestellt werden kann.
-
Gemäß einer Weiterbildung der Erfindung können Druckaufträge am Druckdaten-Cachespeicher ebenfalls gelöscht werden, wenn ein Druckstatus des Druckauftrages anzeigt, dass der Druckauftrag gedruckt oder abgebrochen wurde oder aus weiteren Gründen eine vorbestimmte Zeit nicht gedruckt wird. Wenn einer dieser beiden Druckstatustypen vorliegt, muss der Druckauftrag keine Kapazität auf dem Druckdaten-Cachespeicher belegen. Die so frei gewordene Kapazität kann für Druckaufträge genutzt werden, die auch tatsächlich gedruckt werden.
-
Vorzugsweise werden bei mehreren potenziell zu löschenden Druckaufträgen aufgrund zumindest eines der folgenden Kriterien einer von diesen mehreren potenziell zu löschenden Druckaufträgen ausgewählt, um ihn zu löschen:
- - der Druckauftrag wurde pausiert,
- - der Druckauftrag hat die niedrigste Druckpriorität aller Druckaufträge im Druckdaten-Cachespeicher,
- - der Druckauftrag weist den spätestens zu erwartenden Beginn der Druckvorgänge auf,
- - der Druckauftrag wurde als letzter aller Druckaufträge auf den Druckdaten-Cachespeicher geladen,
- - der Druckauftrag ist der größte aller Druckaufträge im Druckdaten-Cachespeicher,
- - der Druckauftrag bräuchte am längsten aller im Druckdaten-Cachespeicher vorhandenen Druckaufträge, um gedruckt zu werden,
- - das für den Druckauftrag vorgesehene Druckgerät wurde ausgeschaltet,
- - das für den Druckauftrag vorgesehene Druckgerät hat einen Fehler ausgegeben, und/oder
- - das für den Druckauftrag vorgesehene Druckgerät ist im Wartungs zustand.
-
Wurde ein Druckgerät ausgeschaltet oder in den Wartungsmodus gesetzt, werden die im Druckdaten-Cachespeicher gespeicherten Druckaufträge zunächst nicht benötigt und könnten im Bedarfsfall gelöscht werden. Beim Starten, bzw. Wiedereinsetzen des Druckgerätes sollte vorzugsweise der zugehörige Druckdaten-Cachespeicher nach Druckaufträgen für dieses Druckgerät überprüft werden. Je nach vorhandener Kapazität können dann neue Druckaufträge geladen werden.
-
Es kann durchaus vorkommen, dass durch Änderung der Druckpriorität ein Druckauftrag auf den Druckdaten-Cachespeicher geladen wird, und mehrere dort gespeicherte Druckaufträge potenzielle Kandidaten zum Löschen sind. Da nur eine gewisse Kapazität freigemacht werden muss, müssen nicht zwangsläufig all diese potenziell löschbaren Druckaufträge gelöscht werden. Um zu entscheiden, welche Druckaufträge gelöscht werden sollen, werden die oben stehenden Kriterien genutzt. Sie können auch in absteigender Reihenfolge priorisiert werden.
-
Weiterhin kann der Druckserver derart ausgebildet sein, dass der Druckdaten-Cachespeicher eine von der Lesegeschwindigkeit abhängige Schreibgeschwindigkeit aufweist. Die Lese- und Schreibgeschwindigkeit kann auch als I/O-Leistung bezeichnet werden. Herkömmliche Festplatten weisen oftmals nur einen Lese-/Schreibkopf auf. Somit kann entweder nur gelesen oder nur geschrieben werden. Der Schreibvorgang hat herkömmlicherweise meistens die höhere Priorität. Bei einem Druckserver ist es jedoch wichtig, dass das Lesen nicht unterbrochen wird, denn ansonsten könnte die Versorgung eines Druckgerätes mit Druckdaten nicht sichergestellt sein. Damit der Schreibvorgang nicht den Lesevorgang blockiert, kann bei der vorliegenden Erfindung die Schreibgeschwindigkeit entsprechend limitiert werden. Die Schreibgeschwindigkeit zum Schreiben von Daten in den Druckdaten-Cachespeicher kann in Abhängigkeit von einer für das jeweilige Druckgerät, bzw. Gruppe von Druckgeräten, notwendigen Lesegeschwindigkeit derart gesteuert werden, dass die Geschwindigkeit des Schreibvorganges des Spooling-Prio-Druckauftrags kleiner sein sollte als die Differenz von der Lese- und Schreibgeschwindigkeit des Druckdaten-Cachespeichers und der benötigten Lesegeschwindigkeit zur Weitergabe an das Druckgerät. Die notwendige Lesegeschwindigkeit ist oftmals empirisch bekannt. Sie kann jedoch auch im Einzelfall im Druckserver anhand der vorliegenden Druckaufträge, insbesondere deren Datenmenge pro Seite, und der Druckgeschwindigkeit des jeweiligen Druckgerätes bestimmt werden. Die Lesegeschwindigkeit kann über mehrere Druckaufträge gemittelt werden und/oder es kann auch die momentane Lesegeschwindigkeit herangezogen werden. Durch Berücksichtigung der momentanen Lesegeschwindigkeit kann sichergestellt werden, dass auch bei kurzfristigen Spitzenleistungen die benötigte Leseleistung gegeben ist.
-
Hierzu werden vorzugsweise die Lese- und Schreibgeschwindigkeit des Druckdaten-Cachespeichers sowie der Druckdatenstrom zum Druckgerät in regelmäßigen Abständen überprüft. Hierbei wird zwischen einem Durchschnitts- und einem Momentan-Lesegeschwindigkeit unterschieden. Die erlaubte Durchschnitts-Schreibgeschwindigkeit wird aus der Differenz von der Lese- und Schreibgeschwindigkeit des Druckdaten-Cachespeichers und der gemittelten benötigten Lesegeschwindigkeit zur Weitergabe an das Druckgerät berechnet. Bei der Momentan-Schreibgeschwindigkeit ist es stattdessen die aktuelle, in diesem Moment benötigte Lesegeschwindigkeit des Druckgeräts, welche die Schreibgeschwindigkeit begrenzt. Dadurch führen auch kurzfristige Lastspitzen nicht zu Engpässen bei der Lesegeschwindigkeit.
-
Als erste Alternative darf die Lesegeschwindigkeit nie reduziert werden. Als zweite Alternative kann die Lesegeschwindigkeit, sofern die Lesegeschwindigkeit zur Weitergabe an das Druckgerät deutlich über der eigentlich benötigten Lesegeschwindigkeit liegt, diese zum Vorteil des Schreibvorganges reduziert werden, solange sie über einen bestimmten Schwellwert bleibt. Der Schwellwert ist gleich oder größer als die benötigte Lesegeschwindigkeit. Vorzugsweise ist der Schwellwert doppelt so groß, insbesondere zehnmal so groß wie die benötigte Lesegeschwindigkeit.
-
Vorzugsweise wird die Schreibgeschwindigkeit reduziert, wenn gemäß dem obigen Kriterium keine ausreichende Lesegeschwindigkeit zur Verfügung steht.
-
Vorzugsweise weist, sofern mehrere Druckgeräte angeschlossen sind, das Cachespeicher-Medium mehrere Partitionen auf, wobei jeder dieser Druckdaten-Cachespeicher jeweils einem Druckgerät zugeordnet ist. Die Druckdaten-Cachespeicher müssen keine physikalischen Partitionen sein. Es sind logische Bereiche auf dem Cachespeicher-Medium.
-
Die Druckdaten-Cachespeicher können vorzugsweise an die jeweilige Situation angepasst werden. Wird an einem Druckgerät nur Text in schwarz/weiß gedruckt, dann sind die Druckaufträge und die notwendige Datenrate wesentlich kleiner als bei Druckaufträgen mit vielen farbigen Bildern. Der Druckdaten-Cachespeicher kann dann entsprechend an den Bedarf anpasst werden. Es können auch mehrere physikalisch unterschiedliche Cachespeicher-Medien vorgesehen werden, wobei die einzelnen Druckdaten-Cachespeicher auch mehrere logische Bereiche unterschiedlicher physikalischer Cachespeicher-Medien umfassen können. So können die physikalischen Eigenschaften, wie z.B. Latenz, Schreib- und/oder Lesegeschwindigkeit der einzelnen physikalischen Speicher für die jeweilige Partition gemittelt werden.
-
Eine Partition, bzw. eine Eigenschaft und/oder eine Funktionalität einer Partition, wobei die Funktionalität die ausführbare Eigenschaft der Partition beschreibt, wie z.B. das Gewährleisten von einer bestimmten Kapazität oder einer bestimmten I/O Leistung, können durch das Betriebssystem und/oder durch entsprechende Software bereitgestellt, erzeugt, geändert und/oder gelöscht werden. Die Partitionen können auch extern an das System angeschlossen sein, wie z.B. durch ein Speichernetzwerk (engl.: Storage-Area-Network, kurz SAN). Über bestimmte Verfahren, wie z.B. dem iSCSI (engl.: internet Small Computer System Interface), können reale oder virtuelle Speichermedien, die Partitionen aufweisen können, angesteuert werden. Partitionen können auch Teil eines logischen Laufwerkes eines RAID-Systems (engl.: redundant array of independent disks) sein. Das RAID-System kann sowohl ein Hardware-, als auch ein Software-RAID sein.
-
Unterschiedliche Druckgeräte weisen unterschiedliche Lesegeschwindigkeiten auf. Druckgeräte können zum Beispiel fünf Seiten pro Sekunde, fünfzig Seiten pro Sekunde oder hundert Seiten pro Sekunde drucken. Beispielsweise benötigt ein Drucker, der 50 Seiten pro Sekunde druckt, somit eine größere Lesegeschwindigkeit als ein Druckgerät, welches nur fünf Seiten pro Minute druckt. Auch die Seitengröße ist entscheidend. Beispielsweise benötigt ein Drucker, der Seiten mit 5 MB/DIN-A4-Seite druckt, somit eine größere Lesegeschwindigkeit, als ein Druckgerät, welches nur Seiten mit 0,5 MB/DIN-A4-Seite druckt. Der Druckdaten-Cachespeicher, der dem Druckgerät zugeordnet ist, welches eine höhere Lesegeschwindigkeit benötigt, leert sich dementsprechend schneller als bei dem Langsameren. Insofern wäre es vorteilhaft, wenn die Druckdaten-Cachespeicher bei dem schnelleren Druckgerät größer und schneller sind als bei dem langsameren Druckgerät.
-
Es hat sich gezeigt, dass die Abhängigkeit der benötigten Kapazität des Druckdaten-Cachespeichers proportional zum Druckdatenstrom ist. Im einfachsten Fall kann die Proportionalität linear sein. So ist ein doppelt so schnell druckendes Druckgerät mit einem doppelt so großen Druckdaten-Cachespeicher verknüpft.
-
Ein weiterer Faktor, der Einfluss auf die Größe der Kapazität hat, ist die Papierlänge auf der Druckrolle im Druckgerät. Je mehr Papier auf der Druckrolle ist, desto mehr Seiten können gedruckt werden. Vorzugsweise wird eine Druckrolle am Stück bedruckt. D.h., dass alle für die Druckrolle vorgesehenen Druckaufträge vorzugsweise im Druckdaten-Cachespeicher gespeichert vorliegen. Bei Druckrollen mit viel Papier wird daher ein großer Druckdaten-Cachespeicher benötigt.
-
Gemäß einer Weiterbildung der Erfindung wählt der Druckserver, sofern er mehrere Druckdaten-Cachespeicher mit jeweils unterschiedlichen Lese- und Schreibgeschwindigkeiten aufweist, den Druckdaten-Cachespeicher aufgrund einer der folgenden Regeln aus:
- - Der Spooling-Prio-Druckauftrag wird auf dem Druckdaten-Cachespeicher mit der größten freien Kapazität geladen,
- - der Spooling-Prio-Druckauftrag wird anhand seiner benötigten Lesegeschwindigkeit auf dem langsamsten Druckdaten-Cachespeicher geladen, welcher die benötigte Lesegeschwindigkeit leistet,
- - der Spooling-Prio-Druckauftrag wird auf dem Druckdaten-Cachespeicher geladen, auf dem bereits ähnliche Druckaufträge gespeichert sind, wobei die Ähnlichkeit bestimmt wird durch die Übereinstimmung bestimmter Parameter, wie z.B. Papierauswahl,
- - der Spooling-Prio-Druckauftrag mit einem vorbestimmten Ausfall-Stellenwert wird auf dem Druckdaten-Cachespeicher geladen, der einem Druckgerät zugeordnet ist, welcher auf Grund seiner Ausfallwahrscheinlichkeit einem entsprechenden Ausfall-Stellenwert zugeordnet ist, und/oder
- - der Spooling-Prio-Druckauftrag wird mit einem im Druckauftrag enthaltenden Parameter auf dem Druckdaten-Cachespeicher geladen, der einem Druckgerät zugeordnet ist, welcher diesem Parameter zugeordnet ist.
-
Dadurch wird zu jedem Spooling-Prio-Druckauftrag der zu ihm passende Druckdaten-Cachespeicher ausgewählt. Die benötigte Lesegeschwindigkeit wird durch die Seitengröße, also die Datenmenge pro Seite, des Druckauftrages und der Geschwindigkeit des Druckgerätes bestimmt. Dabei ist vorzugsweise zu überprüfen, ob die gesamte Lesegeschwindigkeit von dem Druckdaten-Cachespeicher während des voraussichtlichen Druckvorgangs, bzw. Druckvorträge, nicht überschritten wird.
-
Durch die Auswahl eines Druckdaten-Cachespeichers, auf dem bereits ähnliche Druckaufträge gespeichert sind, lassen sich Druckaufträge zusammenfassen. Diese Zusammenfassung kann zum Beispiel auf Grundlage der Papierart, die für diese Druckaufträge bestimmt ist, geschehen. Die Zeit zwischen dem Drucken zweier Druckaufträge kann so an einem Druckgerät verkürzt werden, da die Papierart nicht ausgetauscht werden muss. Vorzugsweise werden auch Druckaufträge im Druckdaten-Cachespeicher zusammengefasst. Die Druckpriorität wird hierbei automatisch so verändert, dass ähnliche Druckaufträge direkt nacheinander gedruckt werden. Alternativ kann die Druckpriorität auch manuell verändert werden.
-
Das Laden eines Spooling-Prio-Druckauftrags mit einem vorbestimmten Ausfall-Stellenwert auf den Druckdaten-Cachespeicher, der einem Druckgerät zugeordnet ist, welcher auf Grund seiner Ausfallwahrscheinlichkeit einem entsprechenden Ausfall-Stellenwert zugeordnet ist, hat den Vorteil, dass die Makulatur bei einem Ausfall vergleichsweise gering gehalten werden kann. So kann beispielsweise ein Blattseitendrucker bei einem ungeplanten kurzfristigen Stopp den Druckauftrag anhalten und später wieder fortsetzen. Dies ist bei Rollendruckern nicht so einfach möglich, wodurch eine vermehrte Makulatur auftritt. Jedem Druckauftrag kann ein Ausfall-Stellenwert zugeordnet werden, wodurch die Auswahl der Druckgeräte und damit auch die Auswahl der zugeordneten Druckdaten-Cachespeicher beschränkt ist. Beispielsweise ist der Ausfall eines Druckvorgangs auf einfachem Papier nicht so kostspielig, wie der Ausfall von Druckerzeugnissen auf Spezialpapier, das bspw. beschichtet ist. Einem Druckauftrag auf Spezialpapier wird beispielsweise ein Ausfall-Stellenwert zugeordnet, der dafür sorgt, dass der Druckauftrag auf einem äußerst zuverlässigen Druckgerät durchgeführt wird.
-
Ähnlich verhält es sich mit dem Kriterium, dass der Spooling-Prio-Druckauftrag mit einem im Druckauftrag enthaltenden Parameter auf dem Druckdaten-Cachespeicher geladen wird, der einem Druckgerät zugeordnet ist, welcher diesem Parameter zugeordnet ist. Dadurch wird für jeden Druckauftrag die Auswahl der Druckgeräte und damit auch die Auswahl der zugeordneten Druckdaten-Cachespeicher beschränkt. Beispielsweise können so Druckaufträge, die farbige Seiten umfassen, gezielt auf bestimmte Druckgeräte gelenkt werden.
-
Vorzugsweise werden sicherheitsrelevante Spooling-Druckdaten unverschlüsselt ausschließlich auf einen flüchtigen Druckdaten-Cachespeicher, z.B. einen RAM-Speicher, geladen. Der flüchtige Druckdaten-Cachespeicher zeichnet sich durch einen flüchtigen (engl.: volatile) Speicher aus. Sicherheitsrelevante Spooling-Druckdaten liegen auf dem Spooling-Speicher ausschließlich verschlüsselt vor. Der Spooling Speicher ist nicht flüchtig (engl.: non-volatile). Bei der Entschlüsselung dieser sicherheitsrelevanten Spooling-Druckdaten werden sie auf den flüchtigen Druckdaten-Cachespeicher geladen. Der Vorteil von flüchtigen Druckdaten-Cachespeichern ist, dass sie nur im Betrieb Informationen speichern. Bei Wegfall der Stromversorgung sind diese Daten nicht mehr im RAM-Speicher zu finden. Bei anderen Systemen wäre ein aktives Löschen und regelmäßiges Überschreiben der Datenblöcke nötig, was aber bei einem Wegfall der Stromversorgung nicht möglich ist.
-
In einer erfindungsgemäßen Ausführungsform können zwei oder mehrere Druckserver miteinander vernetzt sein, um Informationen über die jeweilige Kapazität des Caches auszutauschen und je nach Verfügung zumindest eine der folgenden Aktionen auszuführen:
- - Laden des Spooling-Prio-Druckauftrages eines ersten Druckservers in den Druckdaten-Cachespeichers eines zweiten Druckservers,
- - Drucken eines Druckauftrages, welcher im Druckdaten-Cachespeicher des ersten Druckservers gespeichert ist, auf einem Druckgerät, welcher am zweiten Druckserver angeschlossen ist, oder
- - Verschieben von Druckaufträgen vom Druckdaten-Cachespeicher des ersten Druckservers in den Druckdaten-Cachespeicher des zweiten Druckservers.
-
Werden mehrere Druckserver verwendet, kann so bei sehr starker Belastung eines Drucksystems die Last dadurch reduziert werden, dass ein zweiter Druckserver mit Druckgeräten Druckdaten vom ersten Druckserver übernimmt. Die Last wird dadurch verteilt.
-
Vorzugsweise wird ein Spooling-Prio-Druckauftrag direkt und unmittelbar von einem Spooling-Speicher an ein Druckgerät geleitet. Dies ist insbesondere dann sinnvoll, wenn der Druckdaten-Cachespeicher ausgelastet ist und die Lesegeschwindigkeit des Spooling-Speichers für den Druckauftrag ausreichend ist.
-
Bei einem alternativen Verfahren zum Betreiben eines Druckservers für digitale Hochleistungsdrucksysteme wird ebenfalls ein Druckserver verwendet, der einen Spooling-Speicher, welcher zum Speichern von Druckaufträgen ausgebildet ist, und einen Druckdaten-Cachespeicher aufweist, welcher zum Übermitteln von Druckdaten eines Spooling-Druckauftrags an ein oder mehrere Druckgeräte ausgebildet ist. Der Druckdaten-Cachespeicher ist in mehrere Unterbereiche unterteilt, wobei jeweils ein Unterbereich einem Druckgerät zugeordnet ist,
wobei zumindest eine vorbestimmte Kapazität des Unterbereichs dauerhaft für das zugeordnete Druckgerät reserviert bleibt.
Diese vorbestimmte Kapazität wird im Folgenden als Kapazitätsreserve bezeichnet. Dies bedeutet, dass diese Speicherkapazität nicht von anderen Druckgeräten benutzt werden kann.
-
Wird ein Druckgerät deaktiviert, kann die Kapazität des dazugehörigen Unterbereichs bis auf die Kapazitätsreserve für andere Unterbereiche anderer Druckgeräte zur Verfügung gestellt werden. Beim Reaktivieren des deaktivierten Druckgeräts steht ihm daher sofort die reservierte Kapazität zur Verfügung. Hierdurch kann ohne Verzögerung der Druckvorgang beginnen.
-
Die Kapazität des Unterbereichs wird vorzugsweise als Teil der Gesamtkapazität des Druckdaten-Cachespeichers mittels eines Unterbereich-Faktors berechnet. Die Kapazität des Unterbereichs entspricht der Gesamtkapazität des Druckdaten-Cachespeichers multipliziert mit dem jeweiligen Unterbereich-Faktor. Der Unterbereich-Faktor liegt zwischen null und eins und die Summe aller Unterbereich-Faktoren eines Druckdaten-Cachespeichers ergibt eins. Der Unterbereich-Faktor wird anhand einer oder mehrerer der folgenden Regeln eingestellt:
- - der Unterbereich-Faktor ist größer als 0,05, vorzugsweise größer als 0,1 und insbesondere größer als 0,15, damit die Kapazitätsreserve gegeben ist.
- - der Unterbereich-Faktor ist antiproportional zu der Anzahl der Unterbereiche,
- - der Unterbereich-Faktor ist proportional zu der Lesegeschwindigkeit des zugeordneten Druckgeräts,
- - der Unterbereich-Faktor ist proportional zu der Größe und/oder Anzahl der Spooling-Druckaufträge, die für den dem Unterbereich zugeordnetem Drucker vorgesehen sind,
- - der Unterbereich-Faktor ist in vorbestimmter Weise den Eigenschaften der Spooling-Druckaufträge, die für den dem Unterbereich zugeordnetem Drucker vorgesehen sind, zugeordnet,
- - der Unterbereich-Faktor ist größer als ein vorbestimmter Wert, und/oder
- - der Unterbereich-Faktor ist ein manuell eingestellter Wert.
-
Der Unterbereich-Faktor kann somit automatisch und/oder manuell während des Betriebes eingestellt und angepasst werden. Bereiche des Druckdaten-Cachespeichers bleiben dadurch nicht ungenutzt. Dadurch kann die Kapazität des Druckdaten-Cachespeichers optimal genutzt werden. Die zum Betrieb erforderliche Größe des Druckdaten-Cachespeichers wird hierdurch reduziert.
-
Vorzugsweise wird der Unterbereich-Faktor angepasst zu einer bestimmten Uhrzeit oder nach:
- - einem bestimmten Zeitraum,
- - dem Druck einer Druckdatei oder einer bestimmten Anzahl von Druckdateien,
- - der Änderung eines Drucktyps, wobei der Drucktyp Gruppen von Druckaufträgen mit ähnlichen Druckeigenschaften, wie z.B. der Druck von Rechnungen, bezeichnet, und/oder
- - einer Aktivierung oder Deaktivierung eines Druckgerät, welches an den Druckserver angeschlossen ist.
-
Durch die Anpassung des Unterbereich-Faktors durch bestimmte Trigger kann auch auf unvorhergesehene Ereignisse, wie Leistungsspitzen, reagiert werden.
-
Vorzugsweise wird der Unterbereich-Faktor anhand des zeitlichen Verlaufs einer oder mehrerer der folgenden Parameter geregelt:
- - Größe der Druckaufträge im Unterbereich,
- - Anzahl der Druckaufträge im Unterbereich,
- - Drucktyp der Druckaufträge im Unterbereich, und/oder
- - die freie Kapazität des Unterbereichs und/oder der anderen Unterbereiche.
-
Durch die Regelung des Unterbereich-Faktors kann die Anpassung auf einen zeitlichen Verlauf reagieren. So kann zum Beispiel auf steigende Druckauftragszahlen besser reagiert werden. Solche steigenden Druckauftragszahlen entstehen zum Beispiel bei einer erhöhten Anzahl an Rechnungen am Monatsende.
-
Dieses alternative Verfahren kann auch ohne das oben beschriebene Verfahren ausgeführt werden. Um die Kapazität optimal zu nutzen, können beide Verfahren auch gemeinsam verwendet werden.
-
Ein erfindungsgemäßer Druckserver für digitale Hochleistungsdrucke, mit dem Druckaufträge empfangen werden, umfasst eine CPU, eine Speichereinheit, einen Spooling-Speicher und ein Cachespeicher-Medium, welches zumindest einen Druckdaten-Cachespeicher aufweist, wobei der Druckserver zum Ausführen des oben erläuterten Verfahrens ausgebildet ist. Dies kann hierzu mit einem geeigneten Computerprogramm realisiert sein.
-
Die vorliegende Erfindung ist besonders zur Anwendung auf einem Druckserver geeignet. Das Ändern von Druckprioritäten kann jedoch auf andere Computersysteme ausgelagert werden, wobei die Druckprioritätsänderungen zum Druckserver weitergleitet werden.
-
Vorzugsweise ist die Kapazität des Spooling-Speichers größer als die kombinierte Kapazität aller Druckdaten-Cachespeicher. Insbesondere ist die Kapazität um ein Vielfaches größer, zumindest um das Zweifache, vorzugsweise zumindest um das Fünffache und nach Möglichkeit zumindest um das Zehnfache. Dadurch können Druckaufträge, die auch im Druckdaten-Cachespeicher gelöscht wurden, im Spooling-Speicher vorrätig gehalten werden, so dass, sobald auf dem Druckdaten-Cachespeicher wieder genügend Kapazität vorhanden ist, die Druckaufträge erneut auf den Druckdaten-Cachespeicher geladen werden können.
-
Vorzugsweise ist die Lese- und Schreibgeschwindigkeit des Druckdaten-Cachespeichers größer als die Lese- und Schreibgeschwindigkeit des Spooling-Speichers. Insbesondere ist die Lese- und Schreibgeschwindigkeit um ein Vielfaches schneller, zumindest um das Zweifache, vorzugsweise zumindest um das Fünffache und nach Möglichkeit zumindest um das Zehnfache. Die Hauptaufgabe des Druckdaten-Cachespeichers ist, dafür zu sorgen, dass ein Druckgerät zu jeder Zeit die zu druckenden Druckdaten lesen kann. Bei bestimmten Druckgeräten kann diese Lesegeschwindigkeit sehr hoch sein. Hinzu kommt, dass neben diesem Lesevorgang Druckdaten auf den Druckdaten-Cachespeicher geladen werden, während andere Druckdaten gedruckt werden. Somit ist eine hohe Lese- und Schreibgeschwindigkeit des Druckdaten-Cachespeichers wichtig, um einen Stillstand und somit hohe Kosten beim Druckgerät zu vermeiden. Die Lese- und Schreibgeschwindigkeit des Spooling-Speichers ist deshalb vergleichsweise gering. Typische Lesegeschwindigkeiten ergeben sich aus der Seitengröße und der Geschwindigkeit des Druckergerätes. Ein erstes Beispiel berechnet sich aus 2.200 DIN A4 Seiten pro Minute mit 2 MB pro DIN A4 Seite, wodurch sich 73,3 MB/s ergeben. Ein zweites Beispiel berechnet sich aus 3.200 DIN A4 Seiten pro Minute mit 4 MB pro DIN A4 Seite, wodurch sich 213,3 MB/s ergeben.
-
Vorzugsweise können einige Druckaufträge, sofern die Lese- und Schreibgeschwindigkeit des Spooling-Speichers ausreichend ist, auch direkt vom Spooling-Speicher an das Druckgerät geleitet werden. Der Spooling-Speicher fungiert dann ebenfalls als Druckdaten-Cachespeicher.
-
Vorzugsweise wird die Lese- und Schreibgeschwindigkeit des Druckdaten-Cachespeichers V
LS aus einer gewichteten Summe der Druckgeschwindigkeiten ∑(V
D) aller zugeordneten Druckgeräte berechnet. Beispielsweise kann die Summe durch die durchschnittliche Größe |K
D| der Druckaufträge für den jeweiligen Drucker und einer Standardgröße K
S gewichtet werden. Die Standardgröße K
S ist vorbestimmt und beträgt beispielsweise 1 MB. In diesem Beispiel ist die Lese- und Schreibgeschwindigkeit des Druckdaten-Cachespeichers V
LS doppelt so schnell wie das Produkt aus der Summe der Druckgeschwindigkeiten ∑(V
D) aller zugeordneten Druckgeräte und der durchschnittlichen Größe |K
D| der Druckaufträge für den jeweiligen Drucker dividiert durch die Standardgröße K
S. Die entsprechende Formel ist:
-
Je höher die Druckgeschwindigkeiten VD, desto höher muss die Lese- und Schreibgeschwindigkeit des Druckdaten-Cachespeichers VLS sein. Auch wenn die der durchschnittlichen Größe |KD| der Druckaufträge über der Standardgröße KS liegt, muss sich die Lese- und Schreibgeschwindigkeit erhöhen.
-
Alternativ könnte die Summe der Druckgeschwindigkeiten VD aller zugeordneten Druckgeräte durch die Häufigkeit der Druckaufträge bestimmt werden. D.h. wenn zwischen den einzelnen Druckaufträgen vergleichsweise viel Zeit vergeht, dann ist die Anforderung an die Lesegeschwindigkeit auch geringer.
-
Die Lese- und Schreibgeschwindigkeit des Druckdaten-Cachespeichers VLS könnte aber auch über eine Maximalbelastung vorgegeben werden. Bei der Maximalbelastung wird statt der durchschnittlichen Größe |KD| der Druckaufträge eine maximale Größe KD, max der Druckaufträge gewählt. Andere Gewichtungen sind ebenfalls denkbar.
-
Vorzugsweise weist das Cachespeicher-Medium mehrere Speichermedien mit jeweils unterschiedlichen Lese- und Schreibgeschwindigkeiten auf. Diese können beispielsweise eine Festplatte, SSD- oder RAM-Speichermedien sein. Das Cachespeicher-Medium weist hierbei vorzugsweise mehrere logische Bereiche auf. Wie oben bereits erwähnt, sind die logischen Bereiche nicht notwendigerweise physikalische Partitionen, obwohl sie es sein können.
-
Dadurch können Druckgeräte mit unterschiedlichen Lesegeschwindigkeitsanforderungen bedient werden. So können auch Druckaufträge je nach Lesegeschwindigkeitsanforderung in die entsprechenden Druckdaten-Cachespeicher, die die Anforderungen erfüllen, geladen werden.
-
Die Erfindung wird nachfolgend beispielhaft näher anhand der Zeichnungen erläutert. Die Zeichnungen zeigen in:
- 1 schematisch ein Drucksystem mit einem erfindungsgemäßen Druckserver in einem Blockschaltbild,
- 2 eine Speicherstruktur des Druckservers mit einer erfindungsgemäßen Spooling-Einheit in einem Blockschaltbild,
- 3 eine Speicherstruktur eines Druckservers gemäß eines weiteren Ausführungsbeispiels mit einer erfindungsgemäßen Spooling-Einheit in einem Blockschaltbild,
- 4 wesentliche Software-Module, logische Datenverbindungen und logische Speichereinheiten zur Ausführung des erfindungsgemäßen Verfahrens in einem Blockschaltbild, und
- 5 ein Verfahren zum Steuern der Spooling-Einheiten aus 2 und 3 in einem Flussdiagramm.
-
Die Erfindung wird nachfolgend anhand eines Drucksystems 1 näher erläutert. Das Drucksystem 1 weist einen Druckserver 2 (1) auf, an dem mehrere Druckgeräte 3 über jeweils eine Datenleitung 4 angeschlossen sind. Die Datenleitung 4 entspricht in der Regel einem Netzwerkstandard, wie z.B. Ethernet.
-
Der Druckserver 2 ist mit einem Netzwerk (LAN bzw. WAN)und insbesondere mit dem Internet 5 verbunden, an dem ein oder mehrere Clients 6 angeschlossen sind, an welchen Druckaufträge erzeugt und über das Internet 5 an den Druckserver 2 übermittelt werden.
-
Der Druckserver 2 empfängt die Druckaufträge und leitet sie an die jeweiligen Druckgeräte 3 weiter. Die Druckaufträge werden im Druckserver 2 zwischengespeichert, je nach Bedarf bearbeitet, so dass sie vom Druckserver 2 empfangen, am Druckgerät 3 gerastert und ausgedruckt werden können. Am Druckserver hat ein Operator auch die Möglichkeit, die Druckaufträge beispielsweise mit einem sogenannten Preview-Programm einzusehen, wobei er einzelne Seiten überprüfen und Einfluss auf die Weiterleitung und Verarbeitung der Druckaufträge am Druckserver nehmen kann.
-
Solche Druckserver, welche Druckdaten zu einem oder mehreren Druckgeräten weiterleiten, werden üblicherweise im Hochleistungsdruck verwendet. Als Hochleistungsdruck im Sinne der vorliegenden Erfindung wird die Verwendung eines Druckgerätes verstanden, das zumindest 5 Seiten der Größe DIN A4 pro Sekunde bedrucken kann. Druckgeräte für den Hochleistungsdruck können jedoch auch für höhere Druckgeschwindigkeiten, wie zum Beispiel zumindest 30 Seiten DIN A4 pro Sekunde und insbesondere zumindest 50 Seiten DIN A4 pro Sekunde und vorzugsweise zumindest 90 Seiten DIN A4 pro Sekunde ausgebildet sein. Die Druckgeräte sind digitale Druckgeräte, d.h., dass ihnen Druckdaten in digitaler Form übermittelt werden, die an einem Druckkopf im Druckgerät 3 in ein Druckbild umgesetzt werden, das mittels einer Druckfarbe auf einen Aufzeichnungsträger, der oftmals Papier ist, aufgetragen wird. Typischerweise ist ein solches Druckgerät als Tintenstrahldruckgerät oder als elektrophotografisches Druckgerät ausgebildet. Es kann auch ein Druckgerät sein, dessen Druckfarbe Flüssigtoner ist.
-
Erfahrungsgemäß beträgt die Datenmenge einer Farbseite in der Größe DIN A4 im Portable Document Format, kurz PDF, im Durchschnitt etwa 0,5 bis 2 MB. Bei einer Datenmenge von 2 MB pro Seite und einer Druckgeschwindigkeit von 50 Seiten pro Sekunde bedeutet dies, dass dem Druckgerät ein Druckdatenstrom von 100 MB/sec. zugeführt wird. Diese Druckdaten sind noch nicht gerastert. Bei einem hochauflösenden Farbdruck, und insbesondere bei einem Druck, und/oder bei Dokumenten, in welchen mehrere Bilder verankert sind, kann die Datenmenge pro DIN A4-Seite 10 bis 25 MB und im Extremfall bis zu 600 MB betragen.
-
Der Druckserver 2 muss daher einen erheblichen Datenstrom empfangen, die darin enthaltenen Daten den einzelnen Druckgeräten 3 zuweisen und gegebenenfalls anpassen. Eine solche Anpassung kann eine Änderung des Formates des Druckdatenstromes (IPDS, PCL, PDF, etc.), eine Skalierung der Druckdaten, eine Änderung der Auflösung der Druckdaten oder eine andere Anpassung der Druckdaten an die Anforderungen des jeweiligen Druckgerätes bzw. an spezielle Anforderungen des Betreibers des Druckgerätes bzw. eines Auftraggebers eines Druckauftrages umfassen.
-
Die Speicherstruktur des Druckservers 2 (2) umfasst eine Spooling-Einheit 8 mit zumindest zwei Festplatten 9, 10 wobei die eine Festplatte 9 ein herkömmlicher Massenspeicher ist, weshalb diese Festplatte im Folgenden als M-Festplatte 9 bezeichnet wird, welche zur Speicherung von Druckdaten (PD: Print Data) dient, und die andere Festplatte aus einem Cache-Speicher ausgebildet ist, weshalb sie als Cachespeicher-Medium 10 bezeichnet wird.
-
Der Druckserver 2 weist eine weitere Festplatte 11 auf, welche zur Aufnahme vom Betriebssystem, von Anwendungsprogrammen, von Steuerdaten und Trace-Daten dient. Diese Festplatte wird im Folgenden als System-Festplatte 11 bezeichnet.
-
Die am Client 6 erzeugten Druckdaten werden über das Internet 5 an den Druckserver 2 übermittelt und dort zunächst auf die M-Festplatte 9 gespeichert.
-
Die Druckdaten werden in Ready-to-Print-Druckdaten gewandelt, wobei sie hierbei auf der M-Festplatte 9 weiterhin vorgehalten werden. Die fertig gewandelten Ready-to-Print-Druckdaten werden auf das Cachespeicher-Medium 10 übertragen. Das Cachespeicher-Medium 10 ist, wie es oben erläutert ist, ein Cache-Speicher in dem die Daten schnell geschrieben und schnell gelesen werden können. Hierdurch können die Ready-to-Print-Druckdaten schnell dem Druckgerät 3 zugeführt werden.
-
Sowohl die Druckdaten als auch die Ready-to-Print-Druckdaten sind in einzelne Druckaufträge unterteilt. Ein Druckauftrag kann ein oder mehrere Dateien umfassen.
-
Die Spooling-Einheit 8 zeichnet sich dadurch aus, dass bereits auf der Cache-Festplatte 10 gespeicherte Druckaufträge wieder gelöscht werden können, um Speicherplatz für Druckaufträge mit einer höheren Priorität freizumachen. Dies wird unten näher erläutert. Hierdurch ist es möglich, die Kapazität des Cachespeicher-Medium 10 relativ klein auszubilden und trotzdem den angeschlossenen Druckgeräten 3 einen kontinuierlichen Druckdatenstrom zur Verfügung zu stellen.
-
In 2 sind die M-Festplatte 9, die Cache-Festplatte 10 und die System-Festplatte 11 als separate Festplatten dargestellt. Grundsätzlich ist es auch möglich, dass diese Festplatten lediglich separate Partitionen auf einer einzigen Festplatte bilden. Der Begriff „Partition“ wird hier im Sinne einer logischen Festplatte verwendet.
-
Die M-Festplatte 9 und das Cachespeicher-Medium 10 der Spooling-Einheit 8 sind hingegen zumindest zwei separate Hardware-Elemente. Das Cachespeicher-Medium 10 ist aus einem Cache-Speicher ausgebildet, wohin die M-Festplatte 9 ein herkömmliches Massenspeichermedium ist, das keinen Cache-Speicher darstellt. Ein Cache-Speicher im Sinne der vorliegenden Erfindung ist ein Massenspeicher mit einer schnelleren Schreib- und Lesegeschwindigkeit als die M-Festplatte 9. Daher kann der Cache-Speicher beziehungsweise das Cachespeicher-Medium 10 auch eine herkömmliche, schnelle Festplatte mit einer Magnetscheibe (HDD) sein. Bevorzugt sind jedoch schnellere Massenspeichermedien, insbesondere Halbleiterspeicher, wie zum Beispiel eine SSD, ein Flash-Speicher und/oder eine RAM-Disk. Wie es unten noch näher erläutert wird, kann der Cache-Speicher auch mehrere unterschiedliche Massenspeichermedien in Kombination umfassen.
-
Nachfolgend werden die logischen Elemente des Drucksystems 1, das heißt die Softwaremodule, logische Datenverbindungen und logische Speichereinheiten anhand von 4 näher erläutert. Die Druckaufträge werden an Druckdatenerzeugungsprogrammen 12, welche auf dem Client 6 ausgeführt werden, erzeugt und über das Internet 5 an ein Input-Modul 13 des Druckservers 2 übermittelt. Das Input-Modul 13 schreibt die Druckaufträge auf eine logische M-Festplatte 17, welche das logische Pendant zu der M-Festplatte 9 ist und Bestandteil der Spooling-Einheit 8 ist. Die logische M-Festplatte 17 wird im folgenden Spooling-Speicher 17 genannt. Druckdatendienste 15 lesen den Druckauftrag aus dem Spooling-Speicher 17 und bearbeiten ihn. Nach der Bearbeitung schreiben die Druckdatendienste 15 den Druckauftrag wieder auf den Spooling-Speicher 17. Durch die Bearbeitung mittels einem oder mehreren derartigen Druckdatendiensten werden die am Druckserver 2 eingehenden Druckaufträge in Druckaufträge gewandelt, welche Ready-to-Print-Druckdaten darstellen und somit unmittelbar von den Druckgeräten 3 gedruckt werden können. Diese derart gewandelten Druckaufträge werden im Folgenden als R2P-Druckaufträge bezeichnet.
-
Diese Ready-to-Print-Druckaufträge werden durch ein Spooler-Modul 16 nach vorbestimmten Regeln an eine von mehreren logischen Druckdaten-Cachespeicher 18.1/18.2 übermittelt. Jeder dieser Druckdaten-Cachespeicher 18 ist noch einmal in Unterbereiche 21 unterteilt. Jedem Unterbereich 21 ist ein Backend-Modul 19 zugeordnet, das die Druckaufträge aus dem jeweiligen Unterbereich 21 ausliest und an ein Druckmodul 20 des jeweiligen Druckgerätes 3 übermittelt. Bei dem vorliegenden Ausführungsbeispiel werden alle an der Spooling-Einheit 8 eingehenden Druckaufträge zunächst in dem Spooling-Speicher 17 gespeichert. Die Druckaufträge können einem bestimmten der Druckgeräte 3 zugeordnet sein oder falls dies nicht der Fall ist, dann werden die Druckaufträge anhand ihrer Eigenschaften vom Spooler-Modul 16 einem der Druckgeräte 3 zugeordnet. Druckaufträge mit vielen farbigen Bildern werden vorzugsweise einem Hochleistungs-Farbdrucker zugeordnet, wohin Formulare in Schwarz-Weiß vorzugsweise einem speziellen Formular-Drucker zugeordnet werden. Diese Zuordnung kann nach einer Vielzahl unterschiedlicher Parameter, wie Größe des Druckauftrages, Farbanteil, Auflösung des Druckbildes und dergleichen einem der Druckgeräte 3 zugeordnet werden.
-
Ist ein Druckauftrag einem bestimmten Druckgerät 3 zugeordnet, dann versucht das Spooler-Modul 16 den Druckauftrag in die Unterbereiche 21 der Druckdaten-Cachespeicher 18 zu schreiben, die über eines der Backend-Module 19 dem jeweiligen Druckgerät 3 zugeordnet ist.
-
Wenn sich ein Druckauftragszustand ändert, dann wird ein Verfahren zum Laden eines der Druckaufträge aus dem Spooling-Speicher 17 in einen der Druckdaten-Cachespeicher 18 ausgeführt. Dieses Ladeverfahren ist in 5 dargestellt und beginnt mit dem Schritt S1. Der Schritt S1 wird durch einen Interrupt auf eine Druckauftragszustandsänderung hin ausgeführt. Eine Druckauftragszustandsänderung tritt beispielsweise ein, wenn die Spooler-Einheit 8 einen neuen Druckauftrag empfangen hat und dieser auf dem Spooling-Speicher 17 geschrieben worden ist, oder sich die Priorität des Druckauftrages ändert. Weiterhin tritt dieser Interrupt auf, wenn ein Druckgerät einen Druckauftrag fertig gedruckt hat, wobei dann eine Druckdatei im Druckdaten-Cachespeicher gelöscht wird.
-
Alle im Spooling-Speicher gespeicherten Druckaufträge werden als Spooling-Druckaufträge bezeichnet. Diesen Spooling-Druckaufträgen ist jeweils eine Druckpriorität zugeordnet. Die Druckpriorität bestimmt, welchen Vorrang ein Druckauftrag hat, um an dem ihm zugeordneten Druckgerät ausgedruckt zu werden.
-
Im Schritt S2 wird ein Spooling-Prio-Druckauftrag bestimmt. Dies ist der Spooling-Druckauftrag, der die höchste Priorität hat und noch nicht im Druckdaten-Cachespeicher 18 gespeichert ist.
-
Es wird die Druckauftrag-Größe des Spooling-Prio-Druckauftrages bestimmt (Schritt S3).
-
Anschließend wird in Schritt S4 das Druckgerät 3 bestimmt.
-
In Schritt S5 wird die Datenmenge pro Seite des Druckauftrages bestimmt.
-
Danach wird eine Leseleistung des Druckgerätes 3 bestimmt (Schritt S6). Die Leseleistung ergibt sich aus der Datenmenge pro Seite des Druckauftrages und der Druckgeschwindigkeit des Druckgerätes 3.
-
Anschließend wird der Druckdaten-Cachespeicher 18 ausgewählt (Schritt S7). Sind mehrere Druckdaten-Cachespeicher 18 vorhanden, wird zunächst einer dieser Druckdaten-Cachespeicher 18 ausgewählt.
-
Es wird die freie Kapazität des Druckdaten-Cachespeichers 18 bestimmt, in dem der Spooling-Prio-Druckauftrag geladen werden soll, um an das entsprechende Druckgerät 3 übermittelt werden zu können (Schritt S8).
-
Anschließend wird untersucht, ob die Schreibgeschwindigkeit des Druckdaten-Cachespeichers 18 ausreichend ist, um die Druckdaten dem Druckgerät 3 schnell genug zu übermitteln (Schritt S9). Die Schreibgeschwindigkeit sollte höher sein als die Leseleistung, die in Schritt S6 ermittelt wurde.
-
Wenn dies nicht gegeben ist, wird geprüft, ob ein anderer Druckdaten-Cachespeicher 18 zur Verfügung steht (Schritt S10). Steht dann ein anderer Druckdaten-Cachespeicher 18 zur Verfügung, wird Schritt 8 wiederholt.
-
Gibt es keinen anderen Druckdaten-Cachespeicher 18, so wird das Verfahren im Schritt S11 beendet.
-
Wird in Schritt 8 ermittelt, dass die Schreibgeschwindigkeit ausreichend ist, so wird danach beurteilt, ob die freie Kapazität des Druckdaten-Cachespeichers 18 ausreichend ist, um den Spooling-Prio-Druckauftrag in den entsprechenden Druckdaten-Cachespeicher 18 zu schreiben (Schritt S13). Ist dies der Fall, dann geht der Verfahrensablauf auf den Schritt S12 über, in dem das Spooler-Modul 16 den Spooling-Prio-Druckauftrag aus dem Spooling-Speicher 17 liest und in den Druckdaten-Cachespeicher 18 schreibt. Der Spooling-Prio-Druckauftrag wird somit in den Druckdaten-Cachespeicher 18 geladen.
-
Das Verfahren wird dann im Schritt S11 beendet.
-
Wird hingegen im Schritt S13 festgestellt, dass die freie Kapazität im gewünschten Druckdaten-Cachespeicher 18 nicht genügt, um den Spooling-Prio-Druckauftrag vollständig in den Druckdaten-Cachespeicher 18 zu schreiben, dann geht der Verfahrensablauf auf den Schritt S14 über, in dem bestimmt wird, ob in Druckdaten-Cachespeicher 18 ein löschbarer Druckauftrag vorhanden ist. Ein löschbarer Druckauftrag im Druckdaten-Cachespeicher 18 ist ein Druckauftrag, dessen Priorität kleiner als die Priorität des Spooling-Prio-Druckauftrages ist und der noch nicht im Druck befindlich ist. Noch nicht im Druck befindlich bedeutet, dass das entsprechende Backend-Modul 19 noch nicht damit begonnen hat, diesen Druckauftrag an das entsprechende Druckgerät 3 zu übertragen.
-
Wird ein löschbarer Druckauftrag festgestellt, dann wird im Schritt S15 dieser Druckauftrag im Druckdaten-Cachespeicher 18 gelöscht, um Kapazität für den Spooling-Prio-Druckauftrag frei zu machen. Der Verfahrensablauf geht dann wieder auf den Schritt S8 über, in dem erneut geprüft wird, ob nun die Kapazität des Druckdaten-Cachespeicher 18 zum Speichern des Spooling-Prio-Druckauftrages genügt.
-
Sollte im Schritt S14 hingegen festgestellt werden, dass kein löschbarer Druckauftrag im Druckdaten-Cachespeicher vorhanden ist, dann wird Schritt S10 ausgeführt.
-
Beim Laden der Druckaufträge aus dem Spooling-Speicher 17 in den Unterbereich 21 des Druckdaten-Cachespeicher 18 werden die Druckaufträge in Spooling-Speicher 17 nicht gelöscht. Daher sind die entsprechenden Druckaufträge im Spooling-Speicher 17 nach wie vor vorhanden, falls sie im Schritt S9 im Druckdaten-Cachespeicher 18 gelöscht werden. Sie können dann zu einem späteren Zeitpunkt wieder aus dem Spooling-Speicher 17 in den Druckdaten-Cachespeicher 18 geladen werden.
-
Die Kapazität eines Unterbereiches 21 kann während des Betriebes, d.h. vor, während und nach einem Druckvorgang verändert werden. Eine Erhöhung der Kapazität eines ersten Unterbereichs 21/1 führt zu einer Reduzierung mindestens eines anderen Unterbereichs 21/2 und/oder 21/3.
-
Des Weiteren kann eine gewisse Kapazität, die im Folgenden als Kapazitätsreserve 22 bezeichnet wird, reserviert werden. Das bedeutet, dass die Kapazität eines Unterbereiches 21/1 nicht unter einem bestimmten Wert fallen darf, welcher der Kapazitätsreserve 22 entspricht.
-
Wird im Drucksystem 1 ein Druckgerät 3 ausgeschaltet oder entkoppelt, so kann die Kapazität des Unterbereichs 21/1, welches diesem Druckgerät 3/1 zugeordnet ist, bis auf die Kapazitätsreserve 22/1 reduziert werden. Somit stehen den anderen Unterbereichen 21/2 und/oder 21/3 mehr Kapazität zur Verfügung.
-
Wird das Druckgerät 3 wieder in Betrieb genommen oder angekoppelt, so steht dem zugehörigen Unterbereich 21/1 sofort die Kapazitätsreserve 22/1 zur Verfügung. Druckdaten können so in den Unterbereich 21/2 geladen werden, unabhängig davon ob das Druckgerät 3 in Betrieb ist oder nicht.
-
Im Spooling-Speicher 17 können auch mehrere Versionen der Druckaufträge gespeichert vorliegen. Die Druckaufträge werden vom Druckdatenerzeugungsmodul 12 über das Input-Modul 13 geleitet und in den Spooling-Speicher 17 gespeichert. Wie oben beschrieben, werden sie von Druckdatendiensten 15 bearbeitet. Nach jedem Bearbeitungsschritt wird die neuste Version der Druckaufträge in den Spooling-Speicher 17 gespeichert. Je nach vorliegendem Bearbeitungsschritt kann die ältere Version gelöscht werden. Es kann jedoch auch vorteilhaft sein, bestimmte Versionen, wie z.B. die unbearbeitete Version, der Druckaufträge nicht zu löschen. Es kann auch vorteilhaft sein, Zwischenversionen der Druckaufträge nicht zu löschen, wenn ein Druckauftrag für unterschiedliche Druckgeräte vorgesehen ist und sich somit unterschiedliche Ready-to-Print-Druckaufträge ergeben. Die Druckaufträge können auch verschlüsselt im Spooling-Speicher 17 gespeichert sein. Dies wird unten ausführlich erläutert.
-
Im Spooling-Speicher 17 werden die Druckaufträge erst gelöscht, wenn sie vollständig vom Druckdaten-Cachespeicher 18 an das jeweilige Druckgerät 3 übermittelt worden sind. Das oben erläuterte Verfahren zum Laden von Druckaufträgen aus dem Spooling-Speicher 17 in den Unterbereich 21 des Druckdaten-Cachespeicher 18 wird auf eine Druckauftragszustandsänderung mit einem Interrupt aufgerufen. Eine solche Druckauftrags-zustandsänderung liegt beispielsweise vor, wenn die Spooler-Einheit 8 einen neuen Druckauftrag empfangen hat. Eine solche Druckauftragszustandsänderung liegt jedoch auch vor, wenn im Druckdaten-Cachespeicher 18 ein Druckauftrag vollständig an das entsprechende Druckgerät 3 übertragen worden ist und dieser sowohl im Unterbereich 21 des Druckdaten-Cachespeicher 18 als auch im Spooling-Speicher 17 gelöscht wird. Eine Druckauftragszustandsänderung tritt somit bei jedem Löschen eines Druckauftrages im Spooling-Speicher 17 und/oder im Unterbereich 21 des Druckdaten-Cachespeicher 18 als auch beim Schreiben eines Druckauftrages in den Spooling-Speicher 17 ein. Das Laden eines Druckauftrages vom Spooling-Speicher 17 in den Unterbereich 21 des Druckdaten-Cachespeicher 18 stellt keine Druckauftragszustandsänderung dar.
-
Alternativ können Druckaufträge für eine vorbestimmte Zeit nach dem Druck auf dem Spooling-Speicher 17 vorgehalten werden, bevor sie automatisch gelöscht werden.
-
Eine weitere Möglichkeit wäre es, dass Druckaufträge nach dem Druck auf dem Spooling-Speicher 17 vorgehalten werden, bevor sie manuell gelöscht werden.
-
Bei dem oben erläuterten Verfahren werden neu am Druckserver 2 empfangene Druckaufträge zunächst immer in den Spooling-Speicher 17 geschrieben. Hierdurch liegt im Spooling-Speicher 17 immer eine Kopie des Druckauftrages vor, selbst wenn er im Unterbereich 21 des Druckdaten-Cachespeicher 18 gelöscht werden sollte, bevor er gedruckt worden ist.
-
Die Druckpriorität gibt an, mit welchen Vorrang ein Druckauftrag an dem ihm zugeordneten Druckgerät ausgedruckt werden soll. Dieser Vorrang beziehungsweise diese Druckpriorität kann von unterschiedlichen Parametern abhängen. „Alte“ Druckaufträge haben in der Regel Vorrang vor „jüngeren“ Druckaufträgen. Das Alter der Druckaufträge kann hierbei anhand des Erstellungsdatums des jeweiligen Druckauftrages und/oder des Eingangs am Druckserver 2, insbesondere an der Spooling-Einheit 8, bestimmt werden. Es kann auch eine Kombination des Alters des Druckauftrages aufgrund seiner Erzeugung und des Eingangs am Druckserver beziehungsweise an der Spooling-Einheit verwendet werden. Die Druckpriorität kann auch manuell von einem Nutzer sowohl am Client als auch am Druckserver verändert beziehungsweise eingestellt werden. Die Druckpriorität kann auch von einem Lieferdatum, bis zu dem das mit dem Druckauftrag zu erzeugende Druckgut geliefert werden soll, beeinflusst werden. Der Druckserver und/oder ein Nutzer kann auch auf die Druckpriorität Einfluss nehmen, um die Reihenfolge der Abarbeitung der Druckaufträge möglichst effizient zu sortieren. Zum Beispiel können Druckaufträge, welche auf ein Papier mit der gleichen Qualität gedruckt werden sollen, mittels der Druckpriorität aufeinanderfolgend sortiert werden, sodass am Druckgerät 3 kein oder zumindest nur ein geringer Papierwechsel zwischen einzelnen Druckaufträgen zu erfolgen hat.
-
Bei obigem Ausführungsbeispiel gibt die Druckpriorität den Vorrang eines Druckauftrages an dem ihm zugeordneten Druckgerät an. Das heißt, dass die Druckpriorität für ein bestimmtes Druckgerät gilt. Im Rahmen der Erfindung ist es jedoch auch möglich, eine Druckpriorität zu verwenden, welche unabhängig vom Druckgerät ist. Dies hat den Vorteil, dass man mit einem Regelsatz die Druckprioritäten für alle Druckaufträge festlegen kann. Jedoch ist hierbei nachteilig, dass druckgerätspezifische Anforderungen keinen Einfluss auf die Druckpriorität haben können. Es hängt daher von den Umständen ab, ob die Druckpriorität druckgerätspezifisch oder unabhängig von den Druckgeräten ausgebildet ist.
-
Nachfolgend wird ein zweites Ausführungsbeispiel des Druckservers 2 beziehungsweise der Spooling-Einheit 8 näher erläutert (3). Im zweiten Ausführungsbeispiel sind gleiche Teile mit den gleichen Bezugszeichen versehen. Falls nachfolgend nichts anderes erwähnt ist, gelten die obigen Erläuterungen zu den entsprechenden Elementen gleichermaßen.
-
Das zweite Ausführungsbeispiel des Druckservers 2 weist wiederum eine M-Festplatte 9 sowie eine System-Festplatte 11 auf. Die M-Festplatte 9 ist Bestandteil einer Spooling-Einheit 8, welche mehrere Cachespeicher-Medien 10/1 - 10/4 aufweist. Das Cachespeicher-Medium 10/1 ist eine schnelle Magnetplatten-Festplatte (HDD), die Cachespeicher-Medien 10/2, 10/3 sind jeweils SSD-Festplatten und das Cachespeicher-Medium 10/4 ist eine RAM-Disk. Die Druckdaten-Cachespeicher 18 sind jeweils bestimmten Abschnitten eines der Cachespeicher-Medien 10 zugeordnet, wobei es auch möglich ist, dass ein Druckdaten-Cachespeicher 18 Abschnitte von zwei oder mehr unterschiedlichen Cachespeicher-Medien 10 umfasst. Hierdurch kann ein Druckdaten-Cachespeicher 18 bereitgestellt werden, dessen Eigenschaften hinsichtlich Speicherkapazität, Schreib- beziehungsweise Lesegeschwindigkeit und Latenz einen gemittelten Wert der entsprechenden Parameter der unterschiedlichen Cachespeicher-Medien 10 aufweist, über welche sich die Druckdaten-Cachespeicher 18 erstreckten. Im vorliegenden Ausführungsbeispiel sind sechs unterschiedliche Druckdaten-Cachespeicher 18/1 - 18/6 vorgesehen, wobei die Druckdaten-Cachespeicher 18/1 und 18/3 jeweils über zwei unterschiedliche Cachespeicher-Medien 10 sich erstrecken. Ein jeder Druckdaten-Cachespeicher ist über ein Backend-Modul 19 an eines der Druckgeräte 3 gekoppelt.
-
Die sensiblen Druckaufträge werden vom Client 6 verschlüsselt an den Druckserver 2 übermittelt und verschlüsselt auf der M-Festplatte 9 gespeichert. Bei der Umwandlung der Druckdaten durch die Druckdatendienste 15 werden die Druckaufträge in einem flüchtigen Cache entschlüsselt, umgewandelt, verschlüsselt und wieder verschlüsselt auf der M-Festplatte gespeichert.
-
Da das Cachespeicher-Medium 10/4 als RAM-Disk ausgebildet ist, ist es ein flüchtiger Festplattenspeicher. Ready-to-Print-Druckaufträge im Cachespeicher-Medium 10/4 sind immer entschlüsselt, damit sie unmittelbar vom entsprechenden Druckgerät 3 gedruckt werden können. Druckaufträge, welche sensible Daten enthalten, werden ausschließlich in das flüchtige Cachespeicher-Medium 10/4 geschrieben, sodass im Falle eines technischen Problems die entschlüsselten Daten des sensiblen Druckauftrages nicht auf dem Cachespeicher-Medium 10/4 weiter vorgehalten werden und von unberechtigten Personen gelesen werden könnten.
-
Das Cachespeicher-Medium 10/1 ist eine Magnetplatten-Festplatte (HDD) mit einem einzigen Schreib-/Lesekopf. Hierdurch kann mit dieser Festplatte entweder geschrieben oder gelesen werden. Es ist nicht möglich, gleichzeitig Daten auf die Festplatte zu schreiben und zu lesen. Bei herkömmlichen Einsätzen von Festplatten hat das Schreiben vor dem Lesen Vorrang. Da bei einem Druckserver der Druckdatenstrom vom Druckserver zum Druckgerät nicht unterbrochen werden darf, hat bei der vorliegenden Anwendung hingegen das Lesen vor dem Schreiben Vorrang. Deshalb ist im Druckserver ein Schreibprozess für diese Festplatte, welche nur einen einzigen Schreib-/Lesekopf aufweist, welcher den Datenstrom, der auf die Festplatte geschrieben werden soll, auf einen bestimmten maximalen Wert begrenzt. Faktoren die diese obere Grenze bestimmen sind unter anderem: Lese- und Schreibgeschwindigkeit des Druckdaten-Cachespeicher 18, der momentanen Leistung des Druckdaten-Cachespeicher 18, andere Schreib- und Leseprozesse und einem Sicherheitspuffer. Hierdurch wird sichergestellt, dass der Schreib-/Lesekopf in einem vorbestimmten Umfang auch immer zum Lesen der Daten von der Festplatte zur Verfügung steht. Es wird somit ein vorbestimmter Lesedatenstrom sichergestellt, um zuverlässig die Druckdaten vom Druckserver 2 zum Druckgerät 3 übertragen zu können.
-
In den oben beschriebenen Ausführungsbeispielen sind die M-Festplatte 9 und das Cachespeicher-Medium 10 eine physikalische Festplatte. In anderen Ausführungsbeispielen können sie aber auch als logische Festplatte vorliegen. Der Spooling-Speicher 17 und der Druckdaten-Cachespeicher 18 bilden dann eine weitere Ebene von logischen Festplatten.
-
Bezugszeichenliste
-
- 1
- Drucksystem
- 2
- Druckserver
- 3
- Druckgerät
- 4
- Datenleitung
- 5
- Internet
- 6
- Client
- 8
- Spooling-Einheit
- 9
- M-Festplatte
- 10
- Cachespeicher-Medium
- 11
- System-Festplatte
- 12
- Druckdatenerzeugungsmodul
- 13
- Input-Modul
- 15
- Druckdatendienst
- 16
- Spooler-Modul
- 17
- Logische M-Festplatte/Spooling-Speicher
- 18
- Logische Cachespeicher-Medium/Druckdaten-Cachespeicher
- 19
- Backend-Modul
- 20
- Druckmodul
- 21
- Unterbereich
- 22
- Kapazitätsreserve