DE69021143T2 - Verfahren zur wirksamen Verwendung von auswechselbaren Aufzeichnungsmedien für Daten. - Google Patents
Verfahren zur wirksamen Verwendung von auswechselbaren Aufzeichnungsmedien für Daten.Info
- Publication number
- DE69021143T2 DE69021143T2 DE69021143T DE69021143T DE69021143T2 DE 69021143 T2 DE69021143 T2 DE 69021143T2 DE 69021143 T DE69021143 T DE 69021143T DE 69021143 T DE69021143 T DE 69021143T DE 69021143 T2 DE69021143 T2 DE 69021143T2
- Authority
- DE
- Germany
- Prior art keywords
- data
- amount
- recorded
- recording medium
- recording
- 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 - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 52
- 238000007906 compression Methods 0.000 claims description 25
- 230000006835 compression Effects 0.000 claims description 25
- 238000012545 processing Methods 0.000 claims description 16
- 230000002093 peripheral effect Effects 0.000 claims description 15
- 238000012546 transfer Methods 0.000 claims description 9
- 238000012544 monitoring process Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 2
- 238000013500 data storage Methods 0.000 description 17
- 238000013144 data compression Methods 0.000 description 11
- 230000011218 segmentation Effects 0.000 description 7
- 238000003780 insertion Methods 0.000 description 5
- 230000037431 insertion Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000000903 blocking effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00007—Time or data compression or expansion
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Debugging And Monitoring (AREA)
Description
- Die vorliegende Erfindung betrifft ein Verfahren zur wirksamen Verwendung von auswechselbaren Datenaufzeichnungsmedien in einem Datenverarbeitungssystem. Insbesondere betrifft die Erfindung ein Verfahren zur Verbesserung der Kopierbarkeit eines Aufzeichnungsmediums und zur Verminderung der Segmentierung auf mehrere Aufzeichnungsmedien.
- Moderne Computer benötigen einen Host-Prozessor mit einem oder mehreren Zentralprozessoren und einer Speichereinrichtung. Der Prozessor verarbeitet die im Speicher befindlichen Daten entsprechend den Anweisungen, die ihm gegeben werden. Der Speicher muß daher in der Lage sein, die vom Prozessor benötigten Daten zu speichern und zu dem Prozessor mit einer Geschwindigkeit zu übertragen, die den Gesamtbetrieb des Computers praktikabel macht. Kosten und Leistung des Computerspeichers sind daher für den kommerziellen Erfolg des Computersystems entscheidend.
- Da die heutigen Computer große Speicherkapazitäten erfordern, sind Computerspeicher in vielen Formen verfügbar. Eine schnelle, aber auch teure Form ist der Hauptspeicher, der meist aus Mikrochips besteht. Andere verfügbare Speicherformen sind als periphere Speichergeräte bekannt. Zu ihnen zählen Direktzugriffs-Speichergeräte (DASD, Direct Access Storage Device), Magnetband-Speichergeräte, optische Aufzeichnungsgeräte und magnetische oder optische Massenspeicherbibliotheken. Alle diese anderen Speichertypen haben eine größere Speicherdichte als der Hauptspeicher und kosten daher weniger. Allerdings bieten diese anderen Speichergeräte nicht die gleiche Leistung wie der Hauptspeicher. So läßt sich die Zeit zum Einlegen eines Bandes oder einer Platte in ein Bandlaufwerk, DASD oder optisches Plattenlaufwerk sowie die Zeit zum richtigen Positionieren des Bandes oder der Platte unter dem Lese/Schreibmechanismus des Laufwerks nicht mit der schnellen, rein elektronischen Datenübertragungsgeschwindigkeit des Hauptspeichers vergleichen. Es ist ineffizient, alle Daten in einem Computersystem nur in Speichergeräten eines einzigen Typs zu speichern. Alle Daten im Hauptspeicher zu speichern ist zu teuer, und alle Daten auf einem der peripheren Speichergeräte zu speichern mindert die Leistung.
- Ein typisches Computersystem enthält sowohl einen Hauptspeicher als auch einen oder mehrere Typen peripherer Speichergeräte, die in einer Datenspeicherhierarchie geordnet sind. Die Ordnung der Datenspeicherhierarchie ist auf die Leistungs- und Kostenanforderungen der Benutzer zugeschnitten. In einer solchen Hierarchie wird der Hauptspeicher oft als primärer Datenspeicher bezeichnet, die nächste Ebene der Hierarchie wird oft als sekundärer Datenspeicher bezeichnet usw. Im allgemeinen hat die oberste Hierarchieebene die niedrigste Speicherdichte, die höchste Leistung und die höchsten Kosten. In den unteren Hierarchieebenen nimmt im allgemeinen die Speicherdichte zu, die Leistung ab und die Kosten ebenfalls ab. Indem die Daten nach Bedarf zwischen den verschiedenen Hierarchieebenen übertragen werden, werden die Kosten des Speichers minimiert und die Leistung maximiert. Die Daten werden also nur so lange im Hauptspeicher gespeichert, wie sie vom Prozessor voraussichtlich benötigt werden. Die Hierarchie kann viele Formen annehmen, wie zum Beispiel jede beliebige Zahl von Datenspeicherebenen, und kann in der Lage sein, Daten direkt zwischen zwei beliebigen Speicherebenen zu übertragen. Bei der Datenübertragung können I/O-Kanäle, Controller oder Cachespeicher verwendet werden, wie sie im Fach bekannt sind.
- Zur Verbesserung der Effizienz bei der Nutzung einer oder mehrerer Komponenten einer Datenspeicherhierarchie sind verschiedene Verfahren bekannt. Eine Gruppe solcher Verfahren ist unter Namen wie "Datenverdichtung" bekannt. Der Ausdruck Verdichtung wird auf vielfache Weise zur Bezeichnung von Methoden zur effizienten Speicherung und Übertragung von Daten verwendet. Ein Verdichtungstyp verbessert die Datenübertragung durch die Verwendung der Mindestzahl der benötigten Bits zur Darstellung der am häufigsten codierten Zeichen. Weniger häufig codierte Zeichen können durch mehr als die Mindestzahl der benötigten Bits dargestellt werden. Insgesamt kann mit diesem Verdichtungsverfahren eine gegebene Informationsmenge mit einer Mindestzahl von Bits codiert werden
- Ein anderer häufig verwendeter Verdichtungstyp ist die Codierung von Daten auf eine Weise, bei der unveränderliche Bits entfernt werden. Dieser Verdichtungstyp, der manchmal als lauf längenbegrenzte Codierung (RLL, Run Length Limited) bezeichnet wird, ersetzt Ketten desselben Bits durch eine einfache binäre Darstellung der Zahl der zu wiederholenden Bits. Ein Beispiel für ein solches Verfahren ist in der US- Patentschrift 4.675.750 beschrieben. Das Patent beschreibt ein Videoverdichtungssystem, bei dem überflüssige Bits bei der Speicherung auf Magnetband entfernt werden.
- Ein weiteres Verfahren der Datenverdichtung ist die Beseitigung ungültiger Daten. Da aufgezeichnete Daten auch ungültige Daten enthalten können, die später mit Fehlerkorrekturcodes berichtigt wurden, wird zur Speicherung dieser Daten mehr Speicherplatz benötigt, als wenn sie keine Fehler enthielten. Im IBM Technical Disclosure Bulletin Bd. 24, Nr. 9, Februar 1982, Seite 4483, ist ein Verfahren zur Beseitigung ungültiger Daten aus Datenmengen beschrieben. Bei dem Verfahren werden nur die gültigen Daten einer Datenmenge kopiert, wenn die Größe dieser Datenmenge eine bestimmte Schwelle erreicht, und die ungültigen Daten werden ignoriert. Dadurch verringert sich der Speicherplatz, der zur Speicherung dieser Daten benötigt wird.
- Noch ein anderes Verdichtungsverfahren spart Speicherplatz durch die Nutzung von fragmentiertem Speicherplatz. Fragmentierung bezieht sich auf die ungenutzten Teile eines Auszeichnungsmediums, die durch häufige Zugriffe auf die darauf befindlichen Datenmengen entstehen. Im Laufe seiner Nutzung können verschiedene Bereiche eines Aufzeichnungsmediums gelöscht oder auf sonstige Weise von der Nutzung ausgeschlossen werden. Die einzelne zusammenhängende ungenutzte Aufzeichnungsstelle auf dem Aufzeichnungsmedium kann jedoch so klein sein, daß es schwer ist, darauf eine vollständige Datenmenge aufzuzeichnen. Es sind Verdichtungsverfahren bekannt, bei denen Datenmengen von einem Aufzeichnungsmedium auf ein anderes kopiert werden, damit mehrere ungenutzte Aufzeichnungsstellen zu einer einzigen großen Aufzeichnungsstelle zusammengeführt werden können. Darüber hinaus beschreibt die US-Patentschrift 3.787.827 ein Datenaufzeichnungssystem, bei dem ein Aufzeichnungsmedium zyklisch überprüft wird, um ungenutzte Stellen darauf zu lokalisieren. Eine solche Überprüfung gewährleistet, daß ungenutzte Bereiche auf dem Aufzeichnungsmedium letztendlich doch genutzt werden.
- Ein wiederum anderes Verdichtungsverfahren ist das Blocken. Hierbei handelt es sich um die Kombination von zwei oder mehr logischen Aufzeichnungen zu einer einzelnen Einheit, die übertragen oder aufgezeichnet werden kann. Die einzelne Einheit wird meist als Block bezeichnet. Durch das Blocken sinkt die Zahl der zwischen den Aufzeichnungen oder Blöcken vorhandenen Lücken, durch die die einzelnen Aufzeichnungen voneinander unterschieden werden können. Beim Blocken wird die Möglichkeit geopfert, einzeln auflogische Aufzeichnungen zuzugreifen, um dafür eine höhere Aufzeichnungsdichte zu erreichen. Ein Beispiel für ein solches Blockverfahrens ist in der US-Patentschrift 3.821.703 dargestellt.
- Die obengenannten Verfahren der Datenverdichtung zielen alle auf die Reduzierung des Speicherplatzes, der zur Aufzeichnung einer bestimmten Informationsmenge benötigt wird. Außerdem kann die Übertragung von Daten in verdichteter Form die Datenübertragungsgeschwindigkeit verbessern. Da der Ausdruck "Verdichtung" lose zur Bezeichnung aller obengenannten Verfahren verwendet wird, soll im folgenden der Ausdruck "Komprimierung" zur Bezeichnung aller Verfahren verwendet werden, die Datenspeicherplatz zum Beispiel durch Beseitigen von Lücken, leeren Feldern, Redundanzen oder unnötigen Daten sparen, um die Länge von Aufzeichnungen oder Blöcken zu verkürzen. Der Preis für die Verwendung der Datenkomprimierung ist der Aufwand, der zur Umwandlung der unkomprimierten Daten in komprimierte Daten und umgekehrt erforderlich ist. Die zum Komprimieren und Entkomprimieren benötigte Logik kann im Host-Prozessor bereitgestellt werden. Leider schmälert die Komprimierung und Entkomprimierung von Daten auf der Ebene des Host-Prozessors dessen Fähigkeit, seine normalen Aufgaben zu erfüllen. Daher wird die zum Komprimieren und Entkomprimieren von Daten benötigte Logik manchmal in den Steuereinheiten peripherer Speichergeräte bereitgestellt, so daß die Aufgabe der Komprimierung und Entkomprimierung von Daten vom Host-Prozessor zu dem peripheren Speichergerät verlagert wird. Datenverarbeitungssysteme, bei denen die Aufgabe der Komprimierung und Entkomprimierung von Daten außerhalb des Host-Prozessors angesiedelt ist, sind im IBM Technical Disclosure Bulletin Bd. 22, Nr. 9, Februar 1980, S. 4191- 4193, und im IBM Technical Disclosure Bulletin Bd. 26, Nr. 3A, August 1983, S. 1281, beschrieben.
- Durch die Verlagerung der Datenkomprimierung auf die Steuereinheiten eines peripheren Speichergeräts ergeben sich zwei Probleme. Das erste Problem hängt mit der Kopierbarkeit eines Aufzeichnungsmediums auf ein anderes Aufzeichnungsmedium zusammen. Bei dem Magnetbandlaufwerk IBM 3480 zum Beispiel beträgt die nominale Speicherkapazität einer Bandkassette 200 Megabyte. Es liegt in der Natur der Fertigung von Bandkassetten, daß die genaue Länge des in einer Bandkassette aufgewickelten Bandes nur innerhalb einer bestimmten Toleranz angegeben werden kann. Daher kann die tatsächliche Speicherkapazität einer Bandkassette etwas über 200 Megabyte liegen. Wenn die Kopierbarkeit der Daten von einer Kassette auf eine andere Einzelkassette garantiert sein soll, muß die Summe der auf einer Bandkassette aufgezeichneten Daten auf die Mindestdatenkapazität der Kassette zu begrenzt werden. Wenn Daten aufgezeichnet würden, bis die tatsächliche Kapazität der Kassette überschritten ist (d.h. bis kein Band mehr übrig ist), wäre es möglich, mehr als 200 Megabyte auf einer Kassette auf zuzeichnen, und dann wiederum wäre es unmöglich, den gesamten Inhalt dieser Bandkassette auf eine andere Bandkassette zu kopieren, die eine Kapazität von nur 200 Megabyte hat. Ahnliche Probleme können auch bei anderen Typen von Datenauf zeichnungsmedien auftreten.
- Um zu gewährleisten, daß die auf einem Aufzeichnungsmedium aufgezeichnete Datenmenge nicht die dafür garantierte Mindestspeicherkapazität überschreitet, können zwei Verfahren eingesetzt werden. Das erste Verfahren besteht darin, physisch zu überprüfen, wieviel von dem Aufzeichnungsmedium bei der Aufzeichnung verwendet wurde. Der Preis für dieses Verfahren kann in hohem Aufwand oder in Ungenauigkeit bestehen. Bei Bandlaufwerken zum Beispiel besteht ein bekanntes Verfahren darin, mit Tachometern und ähnlichem die Bewegung des Bandes zu kontrollieren und die Länge des Bandes auf einer bestimmten Bandspule zu verfolgen. Beispiele für Verfahren zum physischen Überprüfen, wieviel eines Aufzeichnungsmediums verbraucht wurde, sind in den US- Patentschriften 4.125.881 und 4.811.132 beschrieben. Leider sind Verfahren zur physischen Ermittlung des Umfangs des bespielten Datenauf zeichnungsmediums nicht für alle Anwendungen genau genug, um sich darauf zu verlassen.
- Das andere Verfahren, um sicherzustellen, daß nicht mehr Daten als die Mindestkapazität für ein bestimmtes Aufzeichnungsmedium aufgezeichnet werden, umfaßt die Überwachung der Daten während der Aufzeichnung. In Datenverarbeitungssystemen, in denen Daten in unkomprimierter Form übertragen oder gespeichert werden, sind solche Verfahren verläßlich. Wenn die Daten auf das Aufzeichnungsmedium geschrieben werden, werden sie überwacht, um den Gesamtumfang der Daten zu verfolgen, die auf jedem Medium aufgezeichnet wurden. Da die Daten nicht komprimiert sind, korreliert der Umfang der aufgezeichneten Daten mit dem Umfang der Daten, die der Host-Prozessor und die Steuereinheiten des Speichergeräts sehen. Bei Datenverarbeitungssystemen, die Daten komprimieren, muß jedoch die in komprimierter Form gespeicherte Datenmenge bekannt sein. Wenn die Daten innerhalb des Host-Prozessors komprimiert werden, ist dies unproblematisch. Die Speicherverwaltungssoftware, die im Host-Prozessor abläuft, hat dann Zugang zu den Daten in komprimierter Form und kann daher den Umfang der in dieser komprimierten Form gespeicherten Daten überwachen. In vielen heutigen Datenverarbeitungssystemen jedoch hat sich der Aufwand für die Komprimierung der Daten auf der Ebene des Host-Prozessors als zu teuer erwiesen. Die Leistung des Host-Prozessors wurde, wie bereits erwähnt, dadurch verbessert, daß die Aufgabe der Datenkomprimierung vom Host-Prozessor auf die Steuereinheiten der peripheren Speichergeräte verlagert wurde. Diese Verlagerung verbessert nicht nur die Leistung des Host-Prozessors, sondern sie ermöglicht auch eine für den Host-Prozessor transparente Komprimierung und Entkomprimierung der Daten. Jedes periphere Speichergerät, das an einen einzelnen Host-Prozessor angeschlossen ist, kann einen anderen Komprimierungsalgorithmus verwenden, solange dieses Gerät die Daten in unkomprimierter Form an den Host- Prozessor zurückgibt.
- In Datenverarbeitungssystemen, in denen die Komprimierung in den Steuereinheiten der Speichergeräte erfolgt, kann die im Host-Prozessor ablaufende Speicherverwaltungssoftware den Umfang der Daten, die in komprimierter Form auf einem im Speichergerät befindlichen Aufzeichnungsmedium gespeichert sind, nicht kennen. Zwar "sieht" die Speicherverwaltungssoftware auch hier die Daten in unkomprimierter Form im Host-Prozessor, aber sie kann nicht genau feststellen, wieviel Platz auf dem Aufzeichnungsmedium zur Speicherung der Daten benötigt wird, wenn sie komprimiert sind. Wenn einfach aufgezeichnet würde, bis ein bestimmter Umfang an unkomprimierten Daten aufgezeichnet ist, könnte dies zu einer Überschreitung der Mindestbandkapazität führen, wenn der angenommene Komprimierungsfaktor nicht zutraf. Mit Hilfe von Zählern in der Steuereinheit des Speichergeräts ist es möglich, die Datenmenge zu überwachen, die in komprimierter Form aufgezeichnet wird. Da diese Informationen über die komprimierten Daten ständig von den Zählern in der Steuereinheit des Speichergeräts in den Host-Prozessor gerufen werden, damit die Speicherverwaltungssoftware darauf zugreifen kann, entsteht jedoch wieder ein teurer Aufwand. Benötigt wird daher ein Verfahren zur genauen Überwachung des Umfangs der komprimierten Daten, die auf einem Aufzeichnungsmedium gespeichert werden, mit einem Minimum an Aufwand für den Host-Prozessor.
- Das andere Problem bei der Datenkomprimierung ist die Segmentierung der Daten auf mehrere Aufzeichnungsmedien. Es ist generell wünschenswert, die Segmentierung einer Datenmenge über mehrere Aufzeichnungsmedien hinweg zu vermeiden, weil das Abrufen dieser Datenmenge dann das Einlegen mehrerer Aufzeichnungsmedien oder, wenn schon alle benötigten Aufzeichnungsmedien eingelegt sind, mehrere Suchvorgänge nach Daten auf diesen Aufzeichnungsmedien erfordert. Eine bekannte Vorgehensweise besteht darin, Daten einfach an das Ende eines Aufzeichnungsmediums zu schreiben und eine Datenmenge bei Bedarf über mehrere Aufzeichnungsmedien hinweg zu segmentieren, wenn das Ende eines Aufzeichnungsmediums erreicht ist. Da jedoch Bibliotheken von Aufzeichnungsmedien in neuerer Zeit zugenommen haben, ist die Notwendigkeit zur Vermeidung der Segmentierung von Daten auf mehrere Aufzeichnungsmedien wichtiger geworden. Da es sich eingebürgert hat, Daten auf der Ebene der Steuereinheit des Speichergeräts zu komprimieren, ist es wiederum schwieriger geworden, vor der Aufzeichnung und mit minimalem Aufwand für den Host-Prozessor die Wahrscheinlichkeit vorherzusagen, mit der eine Datenmenge über mehrere Aufzeichnungsmedien hinweg segmentiert werden
- Die vorliegende Erfindung ist in den beigefügten Ansprüchen definiert.
- Das Hauptziel der vorliegenden Erfindung ist ein verbessertes Verfahren zur wirksamen Verwendung auswechselbarer Datenaufzeichnungsmedien in einem Datenverarbeitungssystem.
- Ein anderes Ziel der vorliegenden Erfindung ist ein Verfahren zur Verbesserung der Möglichkeit zum Kopieren eines Aufzeichnungsmediums in einem Datenverarbeitungssystem, wobei für den Host-Prozessor ein minimaler Aufwand entsteht und die Datenkomprimierung unterhalb der Ebene des Host-Prozessors stattfindet.
- Ein weiteres Ziel der vorliegenden Erfindung ist ein verbessertes Verfahren zur Reduzierung der Segmentierung von Datenmengen auf Aufzeichnungsmedien in einem Datenverarbeitungssystem, wobei für den Host-Prozessor ein minimaler Aufwand entsteht und die Datenkomprimierung unterhalb der Ebene des Host-Prozessors stattfindet.
- Noch ein anderes Ziel der vorliegenden Erfindung ist ein Datenverarbeitungssystem mit verbesserten Verfahren zur Steigerung der Kopierbarkeit eines Aufzeichnungsmediums und zur Reduzierung der Segmentierung von Daten auf mehrere Aufzeichnungsmedien gemäß der obigen Beschreibung.
- Diese Ziele der vorliegenden Erfindung werden durch ein von der Speicherverwaltung durchgeführtes Überwachungsverfahren erreicht. Zur Verbesserung der Kopierbarkeit eines Aufzeichnungsmediums ohne Steigerung des Aufwands für den Host-Prozessor wird die Steuereinheit, die die komprimierten Daten sieht, nur nach der Aufzeichnung eines vorbestimmten Umfangs unkomprimierter Daten überprüft. Der aufgezeichnete Umfang der unkomprimierten Daten kann direkt vom Host- Prozessor überwacht werden. Wenn der vorbestimmte Umfang unkomprimierter Daten aufgezeichnet ist, wird der Komprimierungsfaktor für die Datenmenge berechnet und zur Überwachung der Aufzeichnung der verbleibenden Daten in komprimierter Form verwendet. Wenn geschätzt wird, daß ein vorbestimmter Umfang komprimierter Daten aufgezeichnet ist, wobei der vorbestimmte Umfang die Mindestspeicherkapazität eines Aufzeichnungsmediums ist, beginnt die Aufzeichnung auf einem neuen Aufzeichnungsmedium.
- Bei dem Verfahren zur Reduzierung der Segmentierung von Daten auf mehrere Aufzeichnungsmedien ohne Steigerung des Aufwands für den Host-Prozessor werden die Zähler in der Steuereinheit des Speichergeräts erst nach Abschluß der Aufzeichnung einer vollständigen Datenmenge überprüft, und dann wird anhand der unkomprimierten Größe der nächsten aufzuzeichnenden Datenmenge bestimmt, ob die Aufzeichnung auf derselben oder auf einer neuen Kassette fortgesetzt werden soll. Wenn der Gesamtumfang der bekannten komprimierten Daten, die schon aufgezeichnet wurden, und der unkomprimierten Daten, die noch aufgezeichnet werden sollen, die Zielkapazität des Aufzeichnungsmediums überschreitet, wird ein neues Aufzeichnungsmedium eingelegt und die Datenmenge auf dem neuen Medium aufgezeichnet. Die obengenannten Verfahren können auch Unrichtigkeiten in den Daten erklären, die von den Zählern der Steuereinheit geliefert wurden.
- Die obengenannten Merkmale und Vorteile der Erfindung werden durch die folgende speziellere Beschreibung des bevorzugten Ausführungsbeispiels der Erfindung deutlich werden, das in der beiliegenden Zeichnung dargestellt ist.
- Figur 1 ist ein schematisches Diagramm eines Datenverarbeitungssystems mit mehreren Hosts, das mehrere periphere Datenspeichergeräte aufweist, die gemäß der Erfindung verwaltet werden können.
- Figur 2 ist ein Flußdiagramm, das die Erfindung veranschaulicht.
- Figur 3 ist ein Flußdiagramm, das sich an das aus Figur 2 anschließt.
- Die Erfindung wird im folgenden so beschrieben, wie sie in einer Datenverarbeitungsumgebung mit mehreren Hosts ausgeführt wird, die über mehrere periphere Datenspeichergeräte von verschiedenen Typen und verschiedenen Fähigkeiten verfügt. Dabei dürfte klar sein, daß die Erfindung auch in einer Umgebung mit nur einem Host- Prozessor, die über eine kleinere Zahl peripherer Datenspeichergeräte verfügt, oder mit einer Vielzahl verschiedener Systemstrukturen ausgeführt werden kann. Unter Bezugnahme auf Figur 1 wird nun ein Datenverarbeitungssystem in einer Umgebung mit mehreren Hosts beschrieben. Das System umfaßt zwei oder mehr Host- Prozessoren, einen Host-Prozessor 10 und einen Host-Prozessor 11, die jeweils die gewohnten Bestandteile eines Host- Prozessors enthalten, wie zum Beispiel die Arithmetik-Logik- Einheit, den Hauptspeicher und die Eingabe/Ausgabe-Kanäle (nicht dargestellt). Bei jedem Host-Prozessor kann es sich entweder um ein Einprozessorsystem oder ein Mehrprozessorsystem handeln. Die Host-Prozessoren arbeiten mit verschiedenen Betriebssystemen, die für das Verständnis der vorliegenden Erfindung nicht von Belang sind. In jedem Host-Prozessor befindet sich ein Computerprogramm, das die Erfindung nutzt, wie noch ausführlich beschrieben wird.
- Die Host-Prozessoren 10 und 11 sind an ein gemeinsames DASD 12 angeschlossen. Das gemeinsame DASD (Direct Access Storage Device, Direktzugriffs-Speichergerät) 12 besteht aus einem Hochleistungs-Datenspeichergerät mit Platten. In dem gemeinsamen DASD 12 sind diejenigen Steuerdatenstrukturen (nicht dargestellt) gespeichert, die zur Koordination der Operationen der Host-Prozessoren 10 und 11 bei der Ausführung eines Datenspeicherverwaltungsprogramms wünschenswert sind. Ein mit L0 DASD bezeichnetes Hochleistungs-DASD 14 speichert die Datenmengen, auf die die Host-Prozessoren 10 und 11 direkt zugreifen, und erhält zur Speicherung Datenmengen, die von den Host-Prozessoren 10 und 11 erzeugt werden. Ein DASD mit geringerer Leistung, das mit L1 DASD bezeichnet ist, speichert die Datenmengen, auf die die Host-Prozessoren 10 und 11 seltener zugreifen als auf diejenigen, die auf dem Hochleistungs-DASD 14 gespeichert sind. Wenn die im DASD 14 gespeicherten Datenmengen durch den Nichtzugriff der Host- Prozessoren 10 und 11 veralten, verlagert das Datenspeicherverwaltungsprogramm sie automatisch vom DASD 14 zum DASD 15, so daß der Zugriff der Host-Prozessoren 10 und 11 auf Datenmengen verbessert wird, indem nur diejenigen Datenmengen im DASD 14 gehalten werden, auf die die Host- Prozessoren häufig zugreifen. Die DASDs 14 und 15 stellen die beiden ersten Ebenen einer Datenspeicherhierarchie dar, die von dem Datenspeicherverwaltungsprogramm erstellt wird.
- Eine noch niedrigere Ebene in der Datenspeicherhierarchie wird durch ein mit L2 MSS bezeichnetes Massenspeichersystem (MSS) 16 und ein mit L2 BAND bezeichnetes Bandlaufwerk 17 dargestellt. Das MSS 16 und die DASDs 12, 14 und 15 ermöglichen den automatischen Zugriff auf alle darin gespeicherten Datenmengen. MSS 16 umfaßt ein oder mehrere Mittel zum Lesen und Beschreiben von Aufzeichnungsmedien und ein automatisches Mittel zur Übertragung solcher Medien zwischen Speicherzellen, die sich im MSS 16 befinden, und dem Lese- und Schreibmittel. Bei den Aufzeichnungsmitteln kann es sich um Magnetbänder, Magnetplatten oder optische Platten handeln, bei den Lese- und Schreibmitteln dementsprechend um Bandlaufwerke, Magnet- oder optische Plattenlaufwerke. Das MSS 16 kann auch Mittel zum Einlegen oder Herausnehmen von Aufzeichnungsmedien umfassen. Das Bandlaufwerk 17 dient zum Archivieren oder sonstigen langfristigen Speichern von Daten, für Sicherungskopien oder ähnliches und erfordert zum Einlegen oder Herausnehmen von Bändern in der Regel das Eingreifen eines Bedieners. Der Systembediener und die Systemkonsole sind der Einfachheit halber in Figur 1 nicht dargestellt.
- In dem bevorzugten Ausführungsbeispiel handelt es sich bei dem Speicherverwaltungsprogramm, das die Erfindung umfaßt, um den Hierarchical Storage Manager (HSM), eine Dateneinrichtung in der Betriebssystemumgebung Multiple Virtual Storage (MVS). Eine allgemeine Beschreibung des HSM findet sich in den US- Patentschriften 4.771.375 und 4.638.424; im IBM Manual SH35- 0085-3, DATA FACILITY HIERARCHICAL STORAGE MANAGER VERSION 2 RELEASE 4.0, "System Programmer's Guide"; im IBM Manual SH35- 0083-3, DATA FACILITY HIERARCHICAL STORAGE MANAGER VERSION 2 RELEASE 4.0, "System Programmer's Command Reference"; und im IBM Manual LY35-0098-1, DATA FACILITY HIERARCHICAL STORAGE MANAGER VERSION 2 RELEASE 4.0, "Diagnosis Guide", die hiermit durch Verweis zum Bestandteil dieser Beschreibung werden. Der HSM ist ein ständig laufendes Anwendungsprogramm und umfaßt Anweisungen, die in den Host-Prozessoren 10 und 11 liegen. Der HSM übernimmt die Speicherplatzverwaltung im Datenverarbeitungssystem durch Verlagern von Datenmengen zwischen den verschiedenen Ebenen der Datenspeicherhierarchie gemäß den vorbestimmten Spezifikationen und erledigt ferner auch die Verfügbarkeitsverwaltung, indem er ebenfalls nach vorbestimmten oder benutzergesteuerten Spezifikationen Sicherheitskopien von Datenmengen anlegt und Datenträger zwischenspeichert. Die Erfindung kann die Effizienz aller Arten von Aufzeichnungsmedien verbessern, die in einem Datenverarbeitungssystem verwendet werden. Im Hinblick auf Figur 1 wird das Verfahren der Erfindung unter Bezugnahme auf ein bevorzugtes Ausführungsbeispiel beschrieben, wenn die Daten auf dem Bandlaufwerk 17 aufgezeichnet werden. Bei dem Bandlaufwerk 17 handelt es sich, genau gesagt, um ein Magnetbandlaufwerk IBM 3480 und bei dem Aufzeichnungsmedium um eine Magnetbandkassette, die ein Datenvolumen von bis zu 200 Megabyte speichert. Die Steuereinheit für das Bandlaufwerk komprimiert die Daten und führt Zähler mit bestimmten Informationen über die Daten, die seit dem letzten Einlegen auf eine Bandkassette geschrieben wurden, wie später noch erläutert wird.
- Die aufzuzeichnenden Daten werden, wie schon ausgeführt wurde, in der Steuereinheit des Bandlaufwerks komprimiert, die für die Bandkassetten als Puffer wirkt. Die Datenkomprimierung erfolgt gemäß den US-Patentschriften 4.463.342 und 4.467.317, denen gemeinsam die Seriennummer der gleichzeitig anhängigen US-Patentanmeldung _ (Docket-Nr. TU989003) von Dunn et al. zugewiesen ist, sowie IBM Technical Disclosure Bulletin, Bd. 27, Nr. 6, November 1984, S. 3275- 3278, die hiermit durch Verweis zum Bestandteil dieser Beschreibung werden. Die Daten, die zur Aufzeichnung zu der Steuereinheit übertragen werden, werden als logische oder unkomprimierte Daten bezeichnet. Die Daten, die bereits in der Steuereinheit des Bandlaufwerks komprimiert wurden, werden als komprimierte Daten bezeichnet. Komprimierte Daten, die auf einer Bandkassette aufgezeichnet wurden, werden als physische Daten bezeichnet. Der Unterschied zwischen logischen und physischen Daten besteht daher in der Zahl der Bytes (d.h. des Umfangs) des zusammenhängenden Speicherplatzes auf der Bandkassette, der zum Speichern der Daten benötigt wird. Logische Daten, die auf eine Bandkassette geschrieben werden sollen, werden von einem Host-Prozessor zu der Steuereinheit des Bandlaufwerks übertragen, wenn ein Mindestblock von 16 Kilobyte Daten in unkomprimierter Form vorliegt. Er wird dann von der Steuereinheit des Bandlaufwerks komprimiert und in komprimierter Form angesammelt. Wenn eine noch größere Schwellen-Datenmenge im Puffer der Steuereinheit angesammelt wird, werden die Daten physisch auf einer Bandkassette aufgezeichnet. Die Datenmenge, die zu einer gegebenen Zeit geschrieben wird, wird als die aktuelle Datenmenge bezeichnet.
- Die Zähler der Bandlaufwerks-Steuereinheit führen bestimmte Statistiken zur Überwachung der bereits bespielten Bandmenge in einer Bandkassette (also der Bandposition). Ein Zähler zählt den Umfang der logischen Daten, die tatsächlich von der Bandlaufwerks-Steuereinheit empfangen wurden, ein anderer die physischen Daten, die auf die Bandkassette geschrieben wurden, und ein weiterer die Zahl der Lücken zwischen den Blöcken in den physischen Daten. Wie bereits ausgeführt, werden die Zähler jedes Mal zurückgesetzt, wenn eine Bandkassette eingelegt wird. Der Zugriff auf die Informationen in den Zählern erfolgt durch den Befehl READ BUFFERED LOG. Struktur und Funktionsweise der Zähler sind dem Fachmann bekannt.
- Wie bereits ausgeführt, speichert das gemeinsame DASD 12 bestimmte Steuerdatenstrukturen. Das DASD 12 enthält eine Datenmenge zur Steuerung von Migrationen (MCDS, Migration Control Data Set) für Migrationsdatenträger und eine Datenmenge zur Steuerung von Datensicherungen (BCDS, Backup Control Data Set) für Datensicherungs-Datenträger. Auf die Steuerdatenmengen wird durch Angabe des Aufzeichnungstyps und des Aufzeichnungsschlüssels (VOLSER) zugegriffen, deren Struktur und Funktionsweise dem Fachmann bekannt sind. Die Steuerdatenmengen enthalten bestimmte Informationen über jede Bandkassette, wie z.B. die Bandposition, die beim vorherigen Mal, als die Kassette in das Bandlaufwerk eingelegt war, am Ende der Ausgabe erreicht war. Die Position gibt somit den Gesamtumfang der physischen Daten auf der Bandkassette beim vorherigen Einlegen an, einschließlich der tatsächlichen Länge der Daten und der Lücken zwischen den Aufzeichnungen. Ebenfalls in der Steuerdatenmenge enthalten ist die Gesamtzahl der logischen Datenbytes, die beim aktuellen Einlegen auf die Bandkassette geschrieben werden sollten. Diese Zahl umfaßt nicht die Lücken zwischen den Aufzeichnungen. Als letztes enthält die Steuerdatenmenge die Gesamtzahl der physischen Datenbytes auf einer Bandkassette, ebenfalls ohne die Lücken zwischen den Aufzeichnungen. HSM führt bestimmte statistische Angaben im Hauptspeicher des aktiven Host-Prozessors. Diese Angaben umfassen Zähler für den Umfang der logischen Daten und die zugehörige Anzahl von Blöcken, die an die Bandlaufwerks-Steuereinheit geschickt wurden. Ebenfalls im Hauptspeicher befinden sich alle anderen benötigten Angaben, die noch beschrieben werden.
- Wie in Figur 2 zu erkennen ist, beginnt das Verfahren bei Punkt 30, wo eine Bandkassette in das Bandlaufwerk eingelegt wird. In Schritt 31 beginnt der Host-Prozessor, der die Daten auf die Bandkassette überträgt, die Aufzeichnung logisch zu überwachen. Wenn die Aufzeichnung den Schritt 31 durchläuft, wird der Umfang der unkomprimierten Daten, die an die Steuereinheit des peripheren Speichergeräts geschickt werden, im Hauptspeicher protokolliert. Solange ein Zieldatenumfang in Schritt 31 noch nicht erreicht ist, läuft die Aufzeichnung weiter. Das Ziel ist in Schritt 32 gezeigt und kann auf die Mindestkapazität einer Bandkassette eingestellt werden, um die Kopierbarkeit der Kassette auf eine andere einzelne Kassette zu verbessern, oder auch auf einen anderen vorbestimmten Wert, den der Speicherverwalter wünscht. Solange das Ziel nicht erreicht ist, läuft die Aufzeichnung weiter, bis das Ende der Datenmenge in Schritt 33 erreicht ist. Wenn das Ende einer Datenmenge erreicht ist, leitet der Verzweigungsschritt 33 den Fluß der Operationen zu Punkt 50 in Figur 3.
- Wenn das Ende einer Datenmenge erreicht ist, erreicht das Verfahren den Schritt 51, in dem die tatsächliche Position auf dem Band oder der Umfang der physischen Daten auf ihm berechnet wird. Die tatsächliche Position wird berechnet, indem die Zähler aus der Steuereinheit ausgelesen werden, so daß sie von dem aufzeichnenden Host-Prozessor verwendet werden können. Der Umfang des Speicherplatzes auf dem Band, der während des aktuellen Einlegens verwendet wurde, errechnet sich durch Addition des Umfangs der geschriebenen physischen Daten, der Zahl der Lücken zwischen den Blöcken in den physischen Daten und des Umfangs der logischen Daten, die an die Bandlaufwerks-Steuereinheit geschickt wurden, abzüglich des Umfangs der logischen Daten, die tatsächlich auf einer Bandkassette aufgezeichnet wurden (wobei die beiden letzten Umfänge in der Regel gleich sind). Der Umfang des verwendeten Speicherplatzes wird dann zu einer etwaigen vorherigen Zählung der Bandposition aus einem früheren Einlegen der Bandkassette hinzuaddiert. Die Bandposition wird dann in der Steuerdatenmenge für die betreffende Bandkassette im gemeinsamen DASD 12 gespeichert. Wenn die Bandkassette aus dem Bandlaufwerk 17 herausgenommen und später zum Aufzeichnen weiterer Daten auf dem Datenträger wieder eingelegt wird, ermöglicht es der in den Steuerdaten gespeicherte Stand dem hier beschriebenen Verfahren, dort anzuknüpfen, wo beim letzten Beschreiben der Bandkassette aufgehört wurde. In Schritt 52 wird die geschätzte Zahl der unkomprimierten Datenbytes in der Benutzerdatenmenge, die als nächste auf die Bandkassette geschrieben werden soll, zu der in Schritt 51 berechneten tatsächlichen Position hinzuaddiert. Die Summe ist eine Schätzung der Bandposition nach der Aufzeichnung der Benutzerdatenmenge, die als nächste geschrieben werden soll.
- In Schritt 53 wird die in Schritt 52 ermittelte Summe betrachtet, um festzustellen, ob die nächste Datenmenge zu einem potentiellen Segmentierungsproblem führen kann. Es werden zwei Eigenschaften der in Schritt 52 erhaltenen Informationen betrachtet. Als erstes wird die Größe der als nächster zu schreibenden Datenmenge in unkomprimierten Bytes überprüft, um festzustellen, ob sie kleiner oder größer als eine vom Benutzer festgelegte Größe ist, die in dem bevorzugten Ausführungsbeispiel acht Megabyte beträgt. Wenn die geschätzte unkomprimierte der als nächster zu schreibenden Datenmenge größer als acht Megabyte ist, kehrt das Verfahren zu Punkt 30 in Figur 2 zurück. Dieses Ergebnis beruht darauf, daß eine große Datenmenge, mit der ein Datenträgerende erzwungen wird und die auf der nächsten Bandkassette aufgezeichnet wird, potentiell viel Speicherplatz am Ende der aktuellen Bandkassette verschwenden würde. Wenn die geschätzte unkomprimierte Größe der nächsten Datenmenge kleiner oder gleich acht Megabyte ist, wird die logische Schätzung der in Schritt 52 errechneten Position mit einem vorbestimmten Zielwert verglichen. Zu beachten ist, daß dieses Ziel dasselbe wie das in Schritt 32 verwendete Ziel sein kann, aber nicht muß. Wenn laut Schritt 53 die Größe der als nächster zu schreibenden Datenmenge nicht zu einem Überschreiten des Ziels führen würde, kehrt die Aufzeichnung zu Schritt 30 in Figur 2 zurück. Wenn also in dem Fall, daß diese Datenmenge auf das Band geschrieben würde, die Größenschätzung der Datenmenge in unkomprimierten Bytes über acht Megabyte liegt oder wenn die geschätzte Bandposition die Zielkapazität nicht überschreiten würde, wird das Schreiben der Datenmenge auf die aktuelle Bandkassette bei Punkt 30 in Figur 2 fortgesetzt. Wenn jedoch die geschätzte Größe der Ausgabe kleiner oder gleich acht Megabyte ist und wenn in dem Fall, daß die Datenmenge auf das Band geschrieben würde, die aktuelle geschätzte Position der Bandkassette zu einer Überschreitung der Zielkapazität führen würde, wird in Schritt 54 das Ende des Datenträgers erzwungen (FEOV), und die Bandkassette wird zugunsten einer neuen Bandkassette herausgenommen, die eingelegt wird, bevor die Aufzeichnung der nächsten Datenmenge fortgesetzt wird. Diese fortgesetzte Aufzeichnung auf der neuen Bandkassette würde dann zu Punkt 30 in Figur 2 zurückkehren. Ausgehend von der Annahme, daß in Schritt 33 kein Ende einer Datenmenge erreicht wurde oder daß das Ende einer Datenmenge in Schritt 33 erreicht wurde, der Ablauf jedoch zu Schritt 31 zurückkehrte, wird das Schreiben auf die aktuelle Bandkassette fortgesetzt, bis in Schritt 32 das Ziel erreicht ist. Sobald in Schritt 32 das Ziel erreicht ist, wird der Ablauf mit Schritt 35 fortgesetzt, in dem die tatsächliche Position der Bandkassette oder der Umfang der physischen Datenbytes auf ihr sowie bestimmte Statistiken berechnet werden. Die Berechnung der tatsächlichen Bandposition ist dieselbe, die bereits in Schritt 51 beschrieben wurde. Darüber hinaus umfaßt Schritt 35 die Berechnung von Statistiken, die zur weiteren Überwachung der Aufzeichnung auf der aktuellen Bandkassette benötigt werden. Zu den Statistiken gehören die Berechnung des prozentualen Komprimierungsverhältnisses für die aktuelle Datenmenge. Das Komprimierungsverhältnis ist das Verhältnis zwischen dem Umfang der aufgezeichneten komprimierten Datenbytes für eine Datenmenge und dem Umfang der unkomprimierten Datenbytes für diese aufgezeichneten Daten in Prozent. Genauer ist das Verhältnis die Zahl der physischen Datenbytes und der Lücken zwischen den Blöcken, geteilt durch die Zahl der logischen Datenbytes und Blöcke, die an die Bandlaufwerks-Steuereinheit geschickt werden, wobei auf alle diese Zahlen im Hauptspeicher oder in der Bandlaufwerks-Steuereinheit zugegriffen werden kann. Das Komprimierungsverhältnis für die Datenmenge dient zur Vorhersage der Zahl der Bytes, die auf der Datenkassette benötigt werden, um die restlichen, noch nicht aufgezeichneten logischen Bytes in der aktuellen Datenmenge zu speichern.
- In Schritt 36 wird die Aufzeichnung fortgesetzt und physisch überwacht. Mit physischer Überwachung ist gemeint, daß der aufzeichnende Host-Prozessor anhand des Komprimierungsverhältnisses die Zahl der physischen Datenbytes schätzt, die zur Aufzeichnung der unkomprimierten Bytes erforderlich sind, die er an die Steuereinheit schickt. In Schritt 37 wird im weiteren Verlauf der Aufzeichnung die geschätzte Position der Aufzeichnung in komprimierten Datenbytes mit einem Zielwert verglichen. Wieder kann der Zielwert in Schritt 37 dem in Schritt 32 oder in dem vorherigen Schritt 53 verwendeten Ziel entsprechen, muß es aber nicht. Solange das Ziel nicht erreicht ist, wird die Aufzeichnung in Schritt 38 fortgesetzt, der wie Schritt 33 das Ende der Datenmenge erkennt, die aufgezeichnet wurde. Solange kein Ende einer Datenmenge erkannt wurde, wird die Aufzeichnung in Schritt 36 und 37 fortgesetzt. Wenn jedoch das Ende einer Datenmenge erkannt wird, wird der Ablauf wieder zu Punkt 50 in Figur 3 verwiesen. Von Punkt 50 aus wird das Verfahren fortgesetzt wie zuvor beschrieben.
- Wenn in Schritt 38 kein Ende einer Datenmenge erkannt wird, wird die physische Überwachung in Schritt 36 und 37 fortgesetzt. Wenn das Ziel von Schritt 37 erreicht ist, womit angezeigt wird, daß eine weitere Aufzeichnung vermutlich dazu führen würde, daß sich die Bandkassette nicht mehr auf eine andere einzelne Bandkassette kopieren lassen würde, wird in Schritt 40 das Datenträgerende erzwungen und der Ablauf zu Schritt 30 mit dem Einlegen einer neuen Bandkassette zurückverwiesen. Zu beachten ist, daß das in Schritt 40 erzwungene Datenträgerende nicht unbedingt eine Bandsegmentierung erklärt, denn das Ziel könnte auch in der Mitte einer Datenmenge erreicht werden.
- Bei der Durchführung der Abläufe in den Figuren 2 und 3 müssen die Steuereinheitsinformationen, die aus der Bandlaufwerks-Steuereinheit gewonnen werden, stimmen. Allerdings kann das Betriebssystem diese Informationen gelegentlich für Fehleraufzeichnungs- und -berichtssoftware entladen. Nachdem das Betriebssystem das Entladen der Informationen für Fehleraufzeichnungszwecke veranlaßt hat, werden die Zähler meist zurückgesetzt. Da das Speicherverwaltungsprogramm nicht in der Lage ist, auf das Fehleraufzeichnungsprogramm zuzugreifen, muß das Verfahren auch erkennen können, wann die Informationen in der Bandlaufwerks-Steuereinheit nicht stimmen. Diese Prüfung ist aus praktischen Gründen in keiner der Figuren dargestellt, findet aber jedesmal statt, wenn der Zugriff auf die Informationen erforderlich ist. Die Erkennung der Unrichtigkeit der Informationen wird erreicht, indem im Hauptspeicher die Zahl der unkomprimierten Datenbytes gehalten wird, die während eines kontinuierlichen Einlegens des Bandes auf die Bandkassette geschrieben wurde. Diese Zahl muß der entsprechenden Zählung in der Bandlaufwerks- Steuereinheit entsprechen. Durch Vergleich der beiden Zähler läßt sich feststellen, ob in der Bandlaufwerks-Steuereinheit ein Reset erfolgt ist.
- Sobald der Verlust der Informationen der Bandlaufwerks- Steuereinheit erkannt wurde, muß der Verlust erklärt werden. Zwei Korrekturverfahren sind möglich. Bei dem ersten Verfahren wird bei der Erkennung einer Differenz zwischen den Zählern angenommen, daß alle Daten, die auf dem Aufzeichnungsmedium aufgezeichnet wurden, tatsächlich unkomprimierte Daten sind. Die Zahl der komprimierten Bytes, die auf dem Aufzeichnungsmedium aufgezeichnet wurden, wird also auf die Zahl der unkomprimierten Bytes gesetzt, die vom Host-Prozessor während der Aufzeichnung erkannt wurden. Das andere Verfahren, bei dem es sich um das bevorzugte Ausführungsbeispiel handelt, enthält die gleiche Annahme, aber nur für die Bytes, die bei dem Zähler fehlen. Wenn also der Hauptspeicher eine bestimmte Bytezahl anzeigt und die Bandlaufwerks-Steuereinheit während dieser Zählung zurückgesetzt wurde, gibt die Bandlaufwerks-Steuereinheit eine kleinere Zählung oder eine Teilmenge der Zählung des Hauptspeichers an. Dann wird angenommen, daß die Zählung der physischen oder komprimierten Daten in der Bandlaufwerks- Steuereinheit soweit stimmt, wie sie sich nur auf die Zählung bezieht, die in unkomprimierter Form im Puffer gezeigt wird. Die restlichen Bytes, d.h. die Differenz in der Zählung der unkomprimierten Datenbytes zwischen dem Hauptspeicher und der Bandlaufwerks-Steuereinheit, lassen sich mit der Annahme erklären, daß keine Komprimierung stattgefunden hat. So läßt sich der Datenverlust in der Bandlaufwerks-Steuereinheit erklären.
Claims (6)
1. Ein Verfahren zur Aufzeichnung von Daten auf einem
auswechselbaren Aufzeichnungsmedium in einem
Datenverarbeitungssystem, das ein Host-System (10)
umfaßt, welches an ein peripheres Speichergerät (17)
angeschlossen ist, das auswechselbare
Aufzeichnungsmedien verwendet, wobei das Host-System ein
Mittel zur Protokollierung des Umfangs der logischen
Daten in einer Datenmenge umfaßt, die zur Aufzeichnung
auf einem Aufzeichnungsmedium an das Gerät übertragen
wird, das Gerät eine Steuereinheit mit einem Mittel zur
Zählung des Umfangs der seit dem Einlegen eines
Aufzeichnungsmediums in das Gerät aufgezeichneten
physikalischen Daten umfaßt und die Steuereinheit ein
Mittel zur Komprimierung der von dem Host-System
empfangenen logischen Daten vor ihrer Aufzeichnung als
physikalische Daten auf dem Aufzeichnungsmedium umfaßt,
wobei das Verfahren folgende Schritte umfaßt:
während der Übertragung logischer Daten einer aktuellen
Datenmenge zu dem Gerät zur Aufzeichnung auf dem
Aufzeichnungsmedium ständiges Addieren des Umfangs der
übertragenen logischen Daten zu einem vorbestimmten Wert
für den Umfang der physikalischen Daten, die sich vor
der Aufzeichnung der aktuellen Datenmenge auf dem
Aufzeichnungsmedium befunden haben;
nach dem Erreichen eines ersten vorbestimmten Ziels
Ermitteln des Umfangs der physikalischen Daten in der
aktuellen Datenmenge, die auf dem Aufzeichnungsmedium
aufgezeichnet wurden, und eines Gesamtumfangs der
physikalischen Daten auf dem Aufzeichnungsmedium aus dem
Wert, der in dem Zählmittel der Steuereinheit
gespeichert ist;
Berechnen eines Komprimierungsverhältnisses für die
aktuelle Datenmenge anhand des Umfangs der
aufgezeichneten physikalischen Daten in der aktuellen
Datenmenge und des Umfangs der logischen Daten in der
aktuellen Datenmenge, die zu dem Gerät übertragen wurde;
bei der Übertragung weiterer logischer Daten der
aktuellen Datenmenge zu dem Gerät Verwenden des
berechneten Komprimierungsverhältnisses zur Überwachung
einer Schätzung des Gesamtumfangs der auf dem Medium
aufgezeichneten physikalischen Daten am Host-System und
Anhalten der Übertragung beim Erreichen eines zweiten
vorbestimmten Zielwertes.
2. Ein Verfahren nach Anspruch 1, das ferner folgende
Schritte umfaßt:
beim Erreichen des zweiten vorbestimmten Wertes
Erzwingen eines Datenträgerendes, um dem Benutzer des
Systems einen Hinweis zu geben, daß das
Aufzeichnungsmedium in dem Gerät ausgewechselt werden
muß, damit der Rest der aktuellen Datenmenge auf dem
Austausch-Aufzeichnungsmedium aufgezeichnet werden kann.
3. Ein Verfahren nach Anspruch 1 und 2, das ferner folgende
Schritte umfaßt:
bei einer Feststellung, daß die gesamte aktuelle
Datenmenge auf dem Medium aufgezeichnet ist, und vor der
Aufzeichnung einer neuen Datenmenge Addieren des Umfangs
der logischen Daten in der aufzuzeichnenden Datenmenge
zu dem bestehenden Umfang der physikalischen Daten auf
dem Aufzeichnungsmedium, wie er bei der Vollendung der
Aufzeichnung der zuvor aufgezeichneten Datenmenge
ermittelt wurde, um eine Schätzung des Gesamtumfangs der
Daten zu erhalten, die sich auf dem Aufzeichnungsmedium
befinden würden, wenn die Datenmenge darauf
aufgezeichnet würde.
4. Ein Verfahren nach Anspruch 3, das ferner folgende
Schritte umfaßt:
bei einer Feststellung, daß der geschätzte Gesamtumfang
der Daten, die sich auf dem Aufzeichnungsmedium befinden
würden, ein drittes vorbestimmtes Ziel überschreitet und
des Umfangs der logischen Daten in der Datenmenge
unterhalb eines vierten vorbestimmten Zieles liegt,
Erzwingen eines Datenträgerendes, um dem Benutzer des
Systems einen Hinweis zu geben, daß die Datenmenge auf
einem Austausch-Aufzeichnungsmedium aufgezeichnet werden
5. Ein Verfahren nach einem der obigen Ansprüche, bei dem
die Steuereinheit ein weiteres Mittel zum Zählen des
Umfangs der logischen Daten umfaßt, die von dem Host-
System empfangen wurden, seit ein Aufzeichnungsmedium in
das Gerät eingelegt wurde, wobei das Verfahren den
weiteren Schritt des periodischen Vergleichens des
Zählungsstandes für die logischen Daten, der von dem
Protokollierungsmittel des Host-Systems angezeigt wird,
mit dem Zählungsstand für die logischen Daten, der in
der Steuereinheit gespeichert ist, umfaßt, um etwaige
Abweichungen zwischen den beiden Werten zu erkennen.
6. Ein Datenverarbeitungssystem mit einem Host-Prozessor,
der zur Übertragung von Daten an ein peripheres
Speichergerät angeschlossen ist, welches auswechselbare
Aufzeichnungsmedien verwendet, wobei der Host-Prozessor
ein Mittel zur Protokollierung des Umfangs der logischen
Daten in einer Datenmenge umfaßt, die zur Aufzeichnung
auf einem in dem Gerät befindlichen Aufzeichnungsmedium
an das Gerät übertragen wird, das periphere
Speichergerät eine Steuereinheit zum Empfangen und
Komprimieren von Daten der aktuellen Datenmenge für die
Aufzeichnung als physikalische Daten auf dem
Aufzeichnungsmedium umfaßt und die Steuereinheit ein
Mittel zum Zählen des Umfangs der physikalischen Daten
der aktuellen Datenmenge bei deren Aufzeichnung auf dem
Medium umfaßt, wobei das System besteht aus:
einem Mittel zum ständigen Addieren des Umfangs der zu
dem Gerät übertragenen logischen Daten der aktuellen
Datenmenge zu einem vorbestimmten Wert für den Umfang
der physikalischen Daten, die sich vor der Aufzeichnung
der aktuellen Datenmenge auf dem Aufzeichnungsmedium
befunden haben;
einem Mittel zum Ermitteln, nach dem Erreichen einer
ersten vorbestimmten Zieldatenmenge und dem Verwenden
des in dem Zählmittel der Steuereinheit gespeicherten
Wertes, des Umfangs der physikalischen Daten in der
aktuellen Datenmenge, die auf dem Aufzeichnungsmedium
aufgezeichnet wurden, und eines Gesamtumfangs der
physikalischen Daten auf dem Aufzeichnungsmedium;
einem Mittel zum Berechnen eines
Komprimierungsverhältnisses für die aktuelle Datenmenge
anhand des Umfangs der aufgezeichneten physikalischen
Daten in der aktuellen Datenmenge und des Umfangs der
logischen Daten in der aktuellen Datenmenge, die zu dem
Gerät übertragen wurde;
einem Mittel im Host-System zur Überwachung einer
Schätzung des Gesamtumfangs der auf dem Medium
aufgezeichneten physikalischen Daten bei der Übertragung
weiterer logischer Daten der aktuellen Datenmenge, wobei
die Schätzung auf dem berechneten
Komprimierungsverhältnis beruht, und zum Anhalten der
Übertragung beim Erreichen eines zweiten vorbestimmten
Zielwertes.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US37274589A | 1989-06-28 | 1989-06-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69021143D1 DE69021143D1 (de) | 1995-08-31 |
DE69021143T2 true DE69021143T2 (de) | 1996-02-29 |
Family
ID=23469460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69021143T Expired - Fee Related DE69021143T2 (de) | 1989-06-28 | 1990-05-21 | Verfahren zur wirksamen Verwendung von auswechselbaren Aufzeichnungsmedien für Daten. |
Country Status (4)
Country | Link |
---|---|
US (1) | US5278970A (de) |
EP (1) | EP0406189B1 (de) |
JP (1) | JPH0351908A (de) |
DE (1) | DE69021143T2 (de) |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69133320T2 (de) * | 1990-03-16 | 2004-07-22 | Canon K.K. | Bildkodierungs- und -aufzeichnungsgerät und Methode |
JPH0727442B2 (ja) * | 1991-09-11 | 1995-03-29 | インターナショナル・ビジネス・マシーンズ・コーポレイション | データ記憶装置階層構造におけるヒット率を向上させる方法およびそのための装置 |
US5734892A (en) * | 1992-06-29 | 1998-03-31 | Apple Computer, Inc. | Efficient method and apparatus for access and storage of compressed data |
US5649151A (en) * | 1992-06-29 | 1997-07-15 | Apple Computer, Inc. | Efficient method and apparatus for access and storage of compressed data |
JP3465272B2 (ja) * | 1992-08-28 | 2003-11-10 | ソニー株式会社 | デジタルデータ記録装置および記録方法 |
CN1157653C (zh) * | 1994-04-22 | 2004-07-14 | 索尼公司 | 数据传输和接收装置及方法和数据记录和再现装置及方法 |
US5574953A (en) * | 1994-08-19 | 1996-11-12 | Hewlett-Packard Company | Storing compressed data in non-contiguous memory |
US5812817A (en) * | 1994-10-17 | 1998-09-22 | International Business Machines Corporation | Compression architecture for system memory application |
EP0720085A3 (de) * | 1994-12-29 | 1997-08-27 | Ibm | Kompressionsüberwachungssystem zum Steuern physikalischer Speicherbereichszuordnung in einem logischen abgebildeten Datenspeicher |
US5924092A (en) * | 1997-02-07 | 1999-07-13 | International Business Machines Corporation | Computer system and method which sort array elements to optimize array modifications |
JP3580982B2 (ja) * | 1997-04-30 | 2004-10-27 | パイオニア株式会社 | 情報記録方法及び装置 |
US6446160B1 (en) | 2000-09-28 | 2002-09-03 | International Business Machines Corporation | Multi-drive data storage system with analysis and selected demounting of idle data storage media |
US6434682B1 (en) | 2000-09-28 | 2002-08-13 | International Business Machines Corporation | Data management system with shortcut migration via efficient automatic reconnection to previously migrated copy |
US6604160B1 (en) | 2000-09-28 | 2003-08-05 | International Business Machines Corporation | Computing system arbitrating and selectively providing resource-seeking tasks with takeaway of non-shareable resources |
US7034849B1 (en) | 2001-12-31 | 2006-04-25 | Apple Computer, Inc. | Method and apparatus for image blending |
US7681013B1 (en) | 2001-12-31 | 2010-03-16 | Apple Inc. | Method for variable length decoding using multiple configurable look-up tables |
US7197189B2 (en) * | 2003-05-15 | 2007-03-27 | Hewlett-Packard Development Company, L.P. | System and method having removable storage medium with data compression |
KR100860985B1 (ko) * | 2003-05-23 | 2008-09-30 | 삼성전자주식회사 | 패딩 정보를 이용한 기록/재생 방법 |
JP4863605B2 (ja) | 2004-04-09 | 2012-01-25 | 株式会社日立製作所 | 記憶制御システム及び方法 |
US7103740B1 (en) * | 2003-12-31 | 2006-09-05 | Veritas Operating Corporation | Backup mechanism for a multi-class file system |
US8825591B1 (en) | 2003-12-31 | 2014-09-02 | Symantec Operating Corporation | Dynamic storage mechanism |
US7293133B1 (en) | 2003-12-31 | 2007-11-06 | Veritas Operating Corporation | Performing operations without requiring split mirrors in a multi-class file system |
US8127095B1 (en) | 2003-12-31 | 2012-02-28 | Symantec Operating Corporation | Restore mechanism for a multi-class file system |
US7660962B2 (en) * | 2005-12-15 | 2010-02-09 | International Business Machines Corporation | Use of memory compression algorithm to assess efficiency of memory usage |
US20080065676A1 (en) * | 2006-09-13 | 2008-03-13 | Hause Curtis B | System and method for tracing data storage devices |
US20080122623A1 (en) * | 2006-09-13 | 2008-05-29 | Hause Curtis B | System and method for tracing data storage devices |
US20080061979A1 (en) * | 2006-09-13 | 2008-03-13 | Hause Curtis B | Traceable RFID enable data storage device |
US20080198022A1 (en) * | 2007-02-21 | 2008-08-21 | Imation Corp. | Inkjet printable RFID label and method of printing an inkjet printable RFID label |
US7953433B2 (en) | 2007-04-24 | 2011-05-31 | Imation Corp. | Data storage device and data storage device tracing system |
FR2926378B1 (fr) * | 2008-01-14 | 2013-07-05 | Canon Kk | Procede et dispositif de traitement pour l'encodage d'un document de donnees hierarchisees |
US8016194B2 (en) | 2008-03-06 | 2011-09-13 | Imation Corp. | Mobile data storage device reader having both radiofrequency and barcode scanners |
US20100161895A1 (en) * | 2008-12-22 | 2010-06-24 | Qualls William R | Securing data on data cartridges |
JP2010191989A (ja) * | 2010-04-26 | 2010-09-02 | Hitachi Ltd | 記憶制御システム及び方法 |
JP5664347B2 (ja) * | 2011-03-04 | 2015-02-04 | ソニー株式会社 | 仮想メモリシステム、仮想メモリの制御方法、およびプログラム |
US8738585B2 (en) | 2012-07-13 | 2014-05-27 | Symantec Corporation | Restore software with aggregated view of site collections |
US8712971B2 (en) | 2012-07-13 | 2014-04-29 | Symantec Corporation | Restore software with aggregated view of content databases |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3787827A (en) * | 1972-10-05 | 1974-01-22 | Ohio Nuclear | Real time data compression system |
US3821703A (en) * | 1972-12-26 | 1974-06-28 | Ibm | Signal transferring |
US4125881A (en) * | 1977-05-19 | 1978-11-14 | International Business Machines Corporation | Tape motion control for reel-to-reel drive |
US4463342A (en) * | 1979-06-14 | 1984-07-31 | International Business Machines Corporation | Method and means for carry-over control in the high order to low order pairwise combining of digits of a decodable set of relatively shifted finite number strings |
US4467421A (en) * | 1979-10-18 | 1984-08-21 | Storage Technology Corporation | Virtual storage system and method |
FR2491703B1 (fr) * | 1980-10-03 | 1988-04-29 | Thomson Csf | Dispositif de compression et dispositif de decompression temporelle de donnees et systeme de transmission comportant au moins l'un de ces dispositifs |
US4467317A (en) * | 1981-03-30 | 1984-08-21 | International Business Machines Corporation | High-speed arithmetic compression coding using concurrent value updating |
US4468730A (en) * | 1981-11-27 | 1984-08-28 | Storage Technology Corporation | Detection of sequential data stream for improvements in cache data storage |
JPH0828053B2 (ja) * | 1983-08-08 | 1996-03-21 | 株式会社日立製作所 | データ記録方法 |
EP0156880A1 (de) * | 1983-09-19 | 1985-10-09 | Storage Technology Partners Ii | Optischer speicher für digitale daten |
US4638424A (en) * | 1984-01-12 | 1987-01-20 | International Business Machines Corporation | Managing data storage devices connected to a digital computer |
AU575182B2 (en) * | 1984-06-28 | 1988-07-21 | Wang Laboratories, Inc. | Self extending memory file |
US4675750A (en) * | 1984-10-30 | 1987-06-23 | Fuji Photo Film Co., Ltd. | Video compression system |
US4811132A (en) * | 1986-09-26 | 1989-03-07 | Hunter Dan A | Early end of tape sensing for a cache buffered tape drive |
US4891784A (en) * | 1988-01-08 | 1990-01-02 | Hewlett-Packard Company | High capacity tape drive transparently writes and reads large packets of blocked data between interblock gaps |
-
1990
- 1990-05-21 DE DE69021143T patent/DE69021143T2/de not_active Expired - Fee Related
- 1990-05-21 EP EP90850195A patent/EP0406189B1/de not_active Expired - Lifetime
- 1990-06-28 JP JP2168602A patent/JPH0351908A/ja active Granted
-
1992
- 1992-01-14 US US07/821,839 patent/US5278970A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
DE69021143D1 (de) | 1995-08-31 |
EP0406189A1 (de) | 1991-01-02 |
EP0406189B1 (de) | 1995-07-26 |
JPH0351908A (ja) | 1991-03-06 |
JPH057736B2 (de) | 1993-01-29 |
US5278970A (en) | 1994-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69021143T2 (de) | Verfahren zur wirksamen Verwendung von auswechselbaren Aufzeichnungsmedien für Daten. | |
DE68929229T2 (de) | Steuergerät mit einem Cache-Speicher und Verfahren zur Steuerung des Cache-Speichers | |
DE3851730T2 (de) | Cachespeicherverwaltung für ein peripheres Ratenspeichersubsystem. | |
DE69225636T2 (de) | Automatisierte Speicherbibliothek | |
US5235695A (en) | Apparatus for efficient utilization of removable data recording media | |
DE69026652T2 (de) | Zusammenfügung kurzer Aufzeichnungen in einem einzelnen Datenblock zur Aufzeichnung auf einem Aufzeichnungsmedium | |
DE60000457T2 (de) | Informationsaufzeichnungsmedium, Informationsaufzeichnungsverfahren, und Informationsaufzeichnungs/wiedergabe System | |
DE69127736T2 (de) | System und Verfahren zum Bestimmen des Sektorzustandes in einer Plattenspeichereinrichtung | |
DE68920196T2 (de) | Methode zur Behandlung von Daten in einer Dataspeicherungsbibliothek. | |
DE60303895T2 (de) | Hybridimplementierung von Fehlerkorrekturkoden eines nichtflüchtigen Speichersystems | |
DE69920293T2 (de) | Aufzeichnungsträger zur Aufzeichnung von Echtzeit-Aufzeichnung/Wiedergabeinformation | |
DE112013002355B4 (de) | Steigern von Datenzwischenspeicherungsleistung | |
DE69418482T2 (de) | Inkrementales datensicherungssystem | |
DE69310908T2 (de) | Verfahren und geraet um nicht loeschbare dateien auf ein speichermedium zu schreiben | |
DE102012208141B4 (de) | Ausgleich nachlassender Funktionsfähigkeit | |
DE3650333T2 (de) | Verfahren zur Zustandsverwaltung gemeinsamer Betriebsmittel für ein komplexes Rechnersystem. | |
DE69714324T2 (de) | Bandvorformatierung | |
DE60310960T2 (de) | Halten von informationen in einem oder mehreren virtuellen volumenaggregaten mit mehreren virtuellen volumen | |
DE112012004571T5 (de) | Unterstützen von unvollständigen Datensegmenten in Flash-Cache-Speichern | |
DE112004001255T5 (de) | Speichervorrichtung und Speichersystem | |
DE69405000T2 (de) | Verteilte eintragsspeicher für informationen, die in audioqualitätsspeichereinheiten gespeichert sind | |
DE69324656T2 (de) | Gerät zur Aufzeichnung/Wiedergabe | |
DE112015003579B4 (de) | Vervielfältigung von Bandkassettendaten | |
DE69023770T2 (de) | Verfahren zum betrieb eines datenverarbeitungssystems. | |
DE69319816T2 (de) | Verfahren und Vorrichtung zur nicht-spezifischen Datenrückgewinnung in einem Datenverarbeitungssystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |