In Computing, Spooling ist eine spezialisierte Form der Multi-Programmierung zum Kopieren von Daten zwischen verschiedenen Geräten. In heutigen Systemen [a] wird es normalerweise zur Vermittlung zwischen einer Computeranwendung und einem langsamen Peripheriegerät wie einem Drucker verwendet. Durch das Spooling können Programme die Arbeit des Peripheriegeräts "übergeben" und dann mit anderen Aufgaben fortfahren oder erst beginnen, wenn die Eingabe transkribiert wurde. Ein dediziertes Programm, der Spooler führt eine geordnete Abfolge von Jobs für das Peripheriegerät und gibt die Daten mit seiner eigenen Geschwindigkeit ein. Umgekehrt kann bei langsamen Eingabegeräten wie z. B. einem Kartenleser, ein Spooler eine Folge von auf Daten wartenden Rechenaufträgen verwalten und jeden Auftrag starten, wenn alle relevanten Eingaben verfügbar sind. siehe Stapelverarbeitung. Die Spule selbst bezieht sich auf die Reihenfolge der Jobs oder den Lagerplatz, in dem sie sich befinden. In vielen Fällen ist der Spooler in der Lage, Geräte mit voller Nenndrehzahl anzutreiben, ohne die Verarbeitung zu beeinträchtigen.
Spooling ist eine Kombination aus Pufferung und Warteschlangen.
Druckspulen [ edit ]
Heutzutage wird Spooling am häufigsten verwendet: Drucken: Zum Drucken formatierte Dokumente werden mit der Geschwindigkeit des Computers in einer Warteschlange gespeichert, abgerufen und abgerufen mit der Geschwindigkeit des Druckers gedruckt werden. Mehrere Prozesse können ohne Wartezeit Dokumente auf die Spule schreiben und können dann andere Aufgaben ausführen, während der "Spooler" -Prozess den Drucker bedient. [1]
Zum Beispiel, wenn eine große Organisation Lohnabrechnungsprüfungen vorbereitet Die Berechnung dauert nur wenige Minuten oder sogar Sekunden, der Druckvorgang kann jedoch Stunden dauern. Wenn das Abrechnungsprogramm Schecks direkt gedruckt hat, kann es erst nach dem Ausdrucken aller Schecks mit anderen Berechnungen fortfahren. In ähnlicher Weise konnten Textverarbeitungsprogramme vor dem Hinzufügen von Spooling zu PC-Betriebssystemen nichts anderes tun, einschließlich der Interaktion mit dem Benutzer während des Druckvorgangs.
Spooler- oder Druckverwaltungssoftware umfasst häufig eine Vielzahl verwandter Funktionen, z. B. das Zuweisen von Prioritäten zu Druckaufträgen, Benachrichtigen von Benutzern, wenn ihre Dokumente gedruckt wurden, Verteilung von Druckaufträgen auf mehrere Drucker, Auswählen des geeigneten Papiers für jedes Dokument. usw.
Ein Druckserver wendet Spooling-Techniken an, damit viele Computer den gleichen Drucker oder dieselbe Gruppe von Druckern verwenden können.
Bannerseite [ edit ]
Druckspooler können so konfiguriert werden, dass sie eine -Bannerseite (auch aufgerufen) hinzufügen ein Burst Page Arbeitsblatt oder Druckertrenner ) an der Vorderseite jedes Dokuments. Diese voneinander getrennten Dokumente identifizieren jedes Dokument (z. B. mit seinem Titel) und geben oft auch an, wer es gedruckt hat (z. B. nach Benutzername oder Auftragsname). Bannerseiten sind in Büroumgebungen wertvoll, in denen sich viele Benutzer eine kleine Anzahl von Druckern teilen. Je nach Konfiguration können Bannerseiten auf jedem Client-Computer oder auf einem zentralen Druckserver oder vom Drucker selbst generiert werden.
Auf Druckern, die Endlosformulare mit Endlosformular verwenden, wird eine führende Bannerseite häufig zweimal gedruckt, so dass eine Kopie immer offen liegt, wenn die Aufträge getrennt werden. Die Seite enthält möglicherweise über der Falte gedruckte Linien, die entlang der Kante eines Druckausgabestapels sichtbar sind, sodass der Bediener die Aufträge problemlos trennen kann. Einige Systeme drucken am Ende jedes Jobs auch eine Bannerseite, um den Benutzern zu versichern, dass sie ihren gesamten Ausdruck gesammelt haben.
Andere Anwendungen [ edit ]
Spooling wird auch verwendet, um den Zugriff auf Lochkartenleser und Locher, Magnetbandlaufwerke und andere langsame, sequentielle E / A-Geräte zu vermitteln. Dadurch kann die Anwendung mit der Geschwindigkeit der CPU laufen, während Peripheriegeräte mit voller Geschwindigkeit betrieben werden.
Ein Stapelverarbeitungssystem verwendet Spooling, um eine Warteschlange mit betriebsbereiten Tasks zu verwalten, die gestartet werden kann, sobald das System über die Ressourcen zur Verarbeitung verfügt.
Einige Store- und Forward-Messagingsysteme, wie z. B. uucp, verwendeten "Spool", um auf ihre Warteschlangen für eingehende und ausgehende Nachrichten zu verweisen. Diese Terminologie ist immer noch in der Dokumentation für E-Mail- und Usenet-Software enthalten, obwohl Nachrichten häufig sofort zugestellt werden heutzutage.
Geschichte [ edit ]
Peripheriegeräte waren schon immer viel langsamer als Kernverarbeitungseinheiten. Dies war ein besonders schwerwiegendes Problem für frühe Mainframes. Beispielsweise musste ein Job, der gelochte Karten liest oder direkt eine gedruckte Ausgabe generiert, mit der Geschwindigkeit der langsamen mechanischen Geräte laufen. Die ersten Spool-Programme wie das "SPOOL System" (7070-IO-076) von IBM kopierten Daten von Lochkarten auf Magnetband und von Bandrückseiten auf Lochkarten und Drucker. Festplatten, die noch schneller sind und den Direktzugriff unterstützen, lösten ab Mitte der 1960er Jahre diese Verwendung von Magnetbändern und hatten in den 1970er Jahren die Verwendung von Band aufgehoben.
Da die Geräterekordgeräte auf IBM-Mainframes der frühen 1960er Jahre so langsam waren, war es üblich, eine kleine Offline-Maschine wie eine 1401 anstelle von Spooling zu verwenden.
Der Begriff "Spule" stammt wahrscheinlich von der Software "Simultaneous Peripheral Operations On-Line" (19659027) (SPOOL). Ihre Herleitung ist unsicher. Gleichzeitige periphere Operationen online können ein Backronym sein. [3] Eine andere Erklärung ist, dass es sich um "Spulen" oder Magnetbandspulen handelt.
Liste der Spulensysteme [ edit ]
- IBM SPOOL System, 7070-IO-076
- Integrierte Einrichtung verschiedener Betriebssysteme, z. B. GCOS, OS / 360
- Attached Support Processor (ASP) [4] in OS / 360 und OS / VS2 (SVS).
- Houston Automatic Spooling Priority (HASP), prominent in den 1960er Jahren [5] Job Entry Subsystem 2 (JES2), [6] ein Nachfolger von HASP
- Job Entry Subsystem 3 (JES3), [7] ein Nachfolger von ASP
- Priority-Ausgabeschreibern, Ausführungsprozessoren und Eingabelesern (POWER) [8] [9]
- GRASP
- Der Spooler, IBM DOS / 360, DOS / VS und der DOS / VSE-Spooler, 1975-1980
- Das Berkeley-Drucksystem (lpr / lpd)
- CUPS
- VM / 370 RSCS (Remote-Spooling-Kommunikationssubsystem)
- ^ Früher wurde es zum Beispiel zum Kopieren eines Kartenstapels verwendet, der nicht mit einer Computeranwendung zusammenhängt.
Referenzen [19659007] [ edit ]
- ^ Lundin, Leigh; Stoneman, Don (1977). Das Benutzerhandbuch zum Spooler (2. Aufl.). Harrisonburg: DataCorp of Virginia
- ^ IBM 7070 SPOOL System 7070 Datenverarbeitungssystem-Bulletins (Zweite Ausgabe), IBM, J28-6047-1
- ^ 19659047] Tanenbaum, Andrew S. Moderne Betriebssysteme . 3. Ed. Pearson Education, Inc., 2008. ISBN 978-0-13-600663-3
- ^ IBM System / 360 und System / 370 Asymmetrisches Multiprozessorsystem: General Information Manual, Programmnummer 360A-CX-15X IBM, GH20-1173
- ^ Das HASP-System, 26. Februar 1971 HASP II (360D-05.1-014) V3M1 , Version 3 Modifikationsstufe 1, IBM, 26. Februar 1971
- ^ z / OS V1R9.0 JES2 Einführung IBM, SA22-7535-06
- ^ [19659047] JES3 Overview (Erste Ausgabe), IBM, Dezember 1980, SC23-0040-0
- ^ DOS / VS POWER / VS Installation und Operations (PDF) (2. Aufl.), IBM, September 1974, GC33-5403-1
- ^ Ausgabeschreiber für virtuelle Speicher mit erweiterter / Prioritätsstufe, Ausführungsprozessoren und Eingabelesern ; VSE / POWER - 5686-CF9-03
Không có nhận xét nào:
Đăng nhận xét