DE112012002622B4 - Aufzeichnungseinheit für lineare Aufzeichnung zum Ausführen optimalen Schreibens beim Empfangen einer Reihe von Befehlen, darunter gemischte Lese- und Schreibbefehle, sowie Verfahren und Programm für dessen Ausführung - Google Patents

Aufzeichnungseinheit für lineare Aufzeichnung zum Ausführen optimalen Schreibens beim Empfangen einer Reihe von Befehlen, darunter gemischte Lese- und Schreibbefehle, sowie Verfahren und Programm für dessen Ausführung Download PDF

Info

Publication number
DE112012002622B4
DE112012002622B4 DE112012002622.5T DE112012002622T DE112012002622B4 DE 112012002622 B4 DE112012002622 B4 DE 112012002622B4 DE 112012002622 T DE112012002622 T DE 112012002622T DE 112012002622 B4 DE112012002622 B4 DE 112012002622B4
Authority
DE
Germany
Prior art keywords
data
tape
buffer
eod
read
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.)
Active
Application number
DE112012002622.5T
Other languages
English (en)
Other versions
DE112012002622T5 (de
Inventor
Kohhei Taguchi
Toshiyuki Shiratori
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112012002622T5 publication Critical patent/DE112012002622T5/de
Application granted granted Critical
Publication of DE112012002622B4 publication Critical patent/DE112012002622B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0682Tape device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/11Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information not detectable on the record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B5/00Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
    • G11B5/008Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires
    • G11B5/00813Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires magnetic tapes
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B5/00Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
    • G11B5/008Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires
    • G11B5/00813Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires magnetic tapes
    • G11B5/00817Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires magnetic tapes on longitudinal tracks only, e.g. for serpentine format recording
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1012Design facilitation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/21Employing a record carrier using a specific recording technology
    • G06F2212/213Tape storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/22Employing cache memory using specific memory technology
    • G06F2212/222Non-volatile memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/25Using a specific main memory architecture
    • G06F2212/253Centralized memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/45Caching of specific data in cache memory
    • G06F2212/452Instruction code
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B2020/10898Overwriting or replacing recorded data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B2020/10898Overwriting or replacing recorded data
    • G11B2020/10907Overwriting or replacing recorded data using pseudo-overwriting, i.e. virtually or logically overwriting data on WORM media by remapping recorded blocks to alternate areas
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/60Solid state media
    • G11B2220/65Solid state media wherein solid state memory is used for storing indexing information or metadata
    • G11B2220/652Solid state media wherein solid state memory is used for storing indexing information or metadata said memory being attached to the recording medium
    • G11B2220/655Memory in cassette [MIC]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/90Tape-like record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/90Tape-like record carriers
    • G11B2220/93Longitudinal format, wherein tracks are in the direction of the tape, read with a static head, e.g. DCC

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

Bandaufzeichnungseinheit (10) zum Ausführen von Operationen einer Positionierungsbewegung, von Lesen und Schreiben an einem Bandmedium (23), rückwärts und vorwärts in einer Längsrichtung des Bandmediums (23), wobei die Einheit (10) mit einer einzigen in die Einheit eingelegten Bandkassette (20) mit dem Bandmedium (23) versehen ist und eine Reihe von Befehlen von einer Einheit (200) einer übergeordneten Ebene empfängt (von denen jeder in eine Bandposition bewegt, die von einem Bewegungsbefehl, d.h. „Position“, angegeben wird), wobei die Reihe von Befehlen gemischte Befehle zum Lesen, Überschreiben und anfügenden Schreiben enthält und die Mehrzahl von Lesebefehlen erste, zweite, ... m-te, n-te ... (m, n = m + 1) Lesebefehle in dieser Reihenfolge enthält, wobei die Bandaufzeichnungseinheit (10) aufweist: einen Puffer (12) zum Speichern von Daten, die mit dem Lesen und Schreiben in Zusammenhang stehen; ein Band (23) zum Aufzeichnen der in dem Puffer (12) gespeicherten Daten; einen Lese-/Schreibkopf (14a, 14b) zum Lesen der Daten von dem Band (23) in den Puffer (12) und Schreiben der Daten aus dem Puffer (12) auf das Band (23); Steuerungsmittel (16) zum Lesen von Daten von der angegebenen Position des Bandes (23) und Speichern der Daten in dem Puffer (12) als Reaktion auf einen Lesebefehl und zum Schreiben der in dem Puffer (12) gespeicherten Daten von einer Datenende-Position angefügter Daten des Bandes (23) (EOD) als Reaktion auf einen Befehl zum anfügenden Schreiben, und einen nicht flüchtigen Speicher zum Speichern der in dem Puffer (12) gespeicherten Daten als Reaktion auf ...

Description

  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine Bandspeichereinheit für lineare Aufzeichnung, die beim Empfang einer Reihe von Befehlen, darunter gemischte Lese- und Schreibbefehle („Read“ und „Write“), optimales Schreiben ausführt, sowie ein Verfahren und ein Programm für dessen Ausführung.
  • Hintergrund der Technik
  • Eine Bandaufzeichnungseinheit (ein Bandlaufwerk) ist eine Einheit mit sequenziellem Zugriff. Zu den Laufwerksoperationen zählen bereitstellen/einlegen und Bereitstellung aufheben/ausgeben. Zu den Bandoperationen zählen Operationen an einem Bandmedium, bei denen es sich um eine Positionierungsbewegung (ein Position-Befehl), Schreiben (ein Write-Befehl), Lesen (ein Read-Befehl) und Synchronisation (ein Sync-Befehl: synchronisieren) handelt.
  • Zu den auf das Band zu schreibenden Daten gehören Benutzerdaten und eine Dateimarkierung (DM), die ein Trennzeichen für Benutzerdaten darstellt. Eine Schreiboperation wird entweder in einem Verfahren mit anfügendem Schreiben ausgeführt, bei dem Daten nachdem das Band bewegt wurde von einer Position hinter dem Ende der Daten auf das Band geschrieben werden, oder sie wird in einem Überschreibverfahren ausgeführt, bei dem alte Daten mit neuen Daten überschrieben werden.
  • Üblicherweise kann das Bandlaufwerk Lese- und Schreiboperationen auf eine gemischte Weise ausführen, und diese Operationen schließen eine Bewegungsoperation und eine Synchronisationsoperation (flush) ein. Die Synchronisations- und Bewegungsoperationen veranlassen das Band dazu, sich in einer Bandlängsrichtung zu bewegen, wodurch die Lese- und Schreibleistung des Bandlaufwerks verringert wird. Es sollte beachtet werden, dass es sich bei der Synchronisationsoperation um eine Operation handelt, bei der sichergestellt wird, dass Daten, die vorübergehend in einem Puffer gespeichert wurden, auf ein Bandmedium geschrieben werden.
  • Ein hierarchisches Speichermanagementsystem (hierarchical storage management system, HSM-System) sorgt dafür, dass die gemischten Lese- und Schreiboperationen an Bandlaufwerken ausgeführt werden. Das Bandlaufwerk gehört auch zu einem Bandarchiv, das sich auf einer niedrigeren Ebene des HSM-Systems befindet. Bei einem einzelnen Bandlaufwerk kann jedoch darauf verzichtet werden, dass dieses Lese- und Schreiboperationen auf eine gemischte Weise ausführt, damit das Absinken der Gesamtleistung der gesamten Lese- und Schreibverarbeitung verhindert wird.
  • Stattdessen führt das einzelne Bandlaufwerk für jede Bereitstellung einer Bandkassette entweder die Schreiboperation oder die Leseoperation aus. Alternativ wird eine Mehrzahl von Bandlaufwerken jeweils entweder für Schreib- oder für Leseoperationen verwendet. Diese Techniken erfordern mehr Bandlaufwerke, erfordern mehr zeitaufwendige (Aufwand erfordernde) Bereitstellungsoperationen und senken so die Verarbeitungsleistung.
  • Die nicht zum Patent gehörenden nachfolgend genannten beiden Dokumente veranschaulichen Gebrauchsumgebungen, in denen eine Bandkassette ausschließlich für eine Lese- oder Schreiboperation verwendet wird: das Internet-Dokument http://castor.web.cern.ch/castorold/presentations/2006/ Review/Castor_Monitoring.pdf sowie das Internet-Dokument https://twiki.cern.ch/ twiki/pub/FIOgroup/TapeRefCernUsageNov2007/tape_usage_efficiency_v05.pdf. Insbesondere bei wissenschaftlichen und technischen Berechnungen im großen Maßstab lässt sich keine höhere Leistung erzielen, wenn eine einzige Bandkassette für gemischte Lese- und Schreiboperationen verwendet wird. Dies trifft auch auf ein hierarchisches Speichersystem zu, allgemeine Bandspeichereinheiten eingeschlossen.
  • Durch die japanische Patentanmeldung Nr. 2009 - 294 309 mit der Veröffentlichungsnummer JP 2011 - 134 413 A wird ein Konzept beschrieben, das dazu dient, ein Bandlaufwerk dazu zu veranlassen, Lese/Schreiboperationen auf eine gemischte Weise in einer einzigen Kassette auszuführen. In diesem Fall ist das bei dieser Erfindung in Betracht gezogene Schreibverfahren ein anfügendes Schreibverfahren (Append Write). Bei dem anfügenden Schreibverfahren wird das Datenende (EOD) von Schreibdaten auf einem Band mithilfe eines sequenziellen Bewegungsverfahrens des Bandlaufwerks sequenziell zurückverlegt. Darüber hinaus stellt das Dokument US 6,763,427 B1 ein Bandlaufwerk vor, bei dem der Datendurchsatz durch eine neue Anordnung der Sequenz, in der Zugriffsanforderungen für Daten verarbeitet werden, erhöht wird.
  • Das Schreibverfahren eines Bandlaufwerks beinhaltet jedoch zusätzlich zu dem anfügenden Schreiben auch Überschreiben (Over Write). Der Befehl „Over Write“ wird zum Überschreiben von auf ein Band geschriebenen Daten (zum Beispiel eines Datensatzes) verwendet, die mithilfe des anfügenden Schreibens mit neuen Daten überschrieben werden.
  • Kurzdarstellung der Erfindung
  • Durch die Erfindung zu lösende Probleme
  • Folglich ist es erforderlich, einen Fall zu betrachten, bei dem ein Überschreibbefehl bei gemischten Lese/Schreiboperationen in einem einzigen Bandlaufwerk und in einer einzigen Bandkassette empfangen wird.
  • Es ist daher eine Aufgabe der vorliegenden Erfindung, eine Bandspeichereinheit (für lineare Aufzeichnung) bereitzustellen, die ein optimales Schreibverfahren beim Empfang eines Überschreibbefehls während des gemischten Ausführens von Lese/Schreiboperationen sowie ein Verfahren und ein Programm für dessen Ausführung bietet.
  • Mittel zum Lösen der Probleme
  • Zur Lösung der vorstehend genannten Aufgabe wird von der vorliegenden Erfindung eine Bandaufzeichnungseinheit bereitgestellt, die Operationen der Positionierungsbewegung, des Lesens und des Schreibens rückwärts und vorwärts in einer Längsrichtung des Bandmediums ausführt, und die eine Reihe von Befehlen von einer Einheit einer übergeordneten Ebene empfängt, wobei die Reihe von Befehlen gemischte Befehle zum Lesen (Read), Überschreiben und anfügenden Schreiben (Write) beinhaltet, und die Mehrzahl der Lesebefehle erste, zweite, ... m-te, n-te, ... (m, n = m + 1) Lesebefehle in dieser Reihenfolge beinhaltet. Die Bandaufzeichnungseinheit enthält: einen Puffer zum Speichern von Daten, die mit dem Lesen und Schreiben in Zusammenhang stehen; ein Band zum Aufzeichnen der in dem Puffer gespeicherten Daten; einen Lese/Schreibkopf zum Lesen der Daten von dem Band in den Puffer und zum Schreiben der Daten aus dem Puffer auf das Band; Steuerungsmittel zum Lesen von Daten von der angegebenen Position des Bandes und zum Speichern der Daten in dem Puffer als Reaktion auf einen Lesebefehl und zum Schreiben der in dem Puffer gespeicherten Daten von einer Datenende-Position (EOD) angefügter Daten für das Schreiben von Daten auf das Band als Reaktion auf einen Befehl zum anfügenden Schreiben sowie einen nicht flüchtigen Speicher zum Speichern der in dem Puffer gespeicherten Daten als Reaktion auf einen Schreibbefehl. Darüber hinaus führt das Steuerungsmittel Folgendes aus: (a) Beim Empfangen des Befehls zum anfügenden Schreiben Speichern der in dem Puffer gespeicherten Daten von einer Datenende-Position angefügter Daten in dem nicht flüchtigen Speicher (EOD in dem Speicher); (b) Senden einer Beendigungsbenachrichtigung für den Befehl zum anfügenden Schreiben an die Einheit einer übergeordneten Ebene, wenn die Daten in dem Puffer in den nicht flüchtigen Speicher geschrieben wurden; (c) Bestimmen, ob die vorübergehend in dem nicht flüchtigen Speicher gespeicherten Daten zu Daten auf dem Band verschoben werden sollen und anschließendes Bewegen an eine Band-Schreibposition (EOD), wo die vorübergehend in dem nicht flüchtigen Speicher gespeicherten Daten geschrieben werden sollen, um Schreiben auf der Grundlage eines vorgegebenen Kriteriums auszuführen, um eine Bewegungsstrecke zu minimieren, um die sich das Band im Verhältnis zu dem Kopf bewegt, wenn es sich nach dem Empfangen des Befehls zum anfügenden Schreiben von einer Endposition von gelesenen Daten für den m-ten Lesebefehl auf dem Band zu einer Lese-Startposition für den n-ten Lesebefehl bewegt, und (d) in dem Fall des Empfangens eines Überschreibbefehls (Over Write) von Daten an einer vorgegebenen Position auf dem Band zwischen den gemischten Befehlen in der Reihe von Befehlen, wobei der Überschreibbefehl bewirkt, dass das Ende der geschriebenen Daten sich an einer Datenende-Position (EOD) befindet, Aktualisieren der Position zum Überschreiben von Daten als eine Datenende-Position (EOD) angefügter Daten, wenn die Bandposition zum Überschreiben der Daten einen kleineren Wert aufweist als die Datenende-Position (EOD) angefügter Daten des Bandes und Aktualisieren der Position zum Überschreiben von Daten als eine Datenende-Position angefügter Daten in dem nicht flüchtigen Speicher (EOD in dem Speicher), wenn die Bandposition zum Überschreiben der Daten einen größeren Wert aufweist als die Datenende-Position angefügter Daten des Bandes (EOD).
  • Die Einheit ist dadurch gekennzeichnet, dass das Kriterium erfüllt ist, wenn die Datenende-Position des Bandes (EOD), an der die Daten geschrieben werden sollen, sich innerhalb der Bewegungsstrecke (zwischen der Endposition und der Startposition) befindet.
  • Die Einheit ist dadurch gekennzeichnet, dass das Steuerungsmittel die aktualisierte Datenende-Position (EOD) in dem nicht flüchtigen Speicher speichert.
  • Die Einheit ist dadurch gekennzeichnet, dass das Steuerungsmittel die aktualisierte Datenende-Position (EOD) in dem nicht flüchtigen Speicher der Kassette mit dem Band speichert.
  • Um die vorstehende Aufgabe zu lösen, wird durch die vorliegende Erfindung ein Verfahren zum Schreiben auf eine Bandaufzeichnungsvorrichtung bereitgestellt, das einen Puffer zum vorübergehenden Speichern von Daten beinhaltet, die mit dem Lesen und anfügendem Schreiben in Zusammenhang stehen; ein Band zum Aufzeichnen der in dem Puffer gespeicherten Daten, einen Lese/Schreibkopf zum Lesen der Daten von dem Band in den Puffer und zum Schreiben der Daten aus dem Puffer auf das Band sowie Steuerungsmittel zum Lesen von Daten von einer angegebenen Position des Bandes und zum Speichern der Daten in dem Puffer als Reaktion auf einen Lesebefehl und zum Schreiben der in dem Puffer gespeicherten Daten von dem Band als Reaktion auf einen Befehl zum anfügenden Schreiben, und das Operationen der Positionierungsbewegung, des Lesens und des Schreibens auf das Bandmedium rückwärts und vorwärts in einer Längsrichtung des Bandmediums ausführt, in dem Fall, dass eine einzige Bandkassette mit dem Bandmedium in die Bandaufzeichnungseinheit eingelegt ist und die Bandaufzeichnungsvorrichtung eine Reihe von Befehlen, darunter gemischte Lesebefehle (Read), Überschreibbefehle und Befehle zum anfügenden Schreiben (Write), von einer Einheit einer übergeordneten Ebene empfängt (von denen jeder in eine Bandposition bewegt, die von einem Bewegungsbefehl, d.h. „Position“, angegeben wird), wobei die Mehrzahl von Lesebefehlen erste, zweite, ... m-te, n-te ... (m, n = m + 1) Lesebefehle in dieser Reihenfolge enthält. Bei diesem Verfahren ist die Bandaufzeichnungseinheit oder die Kassette mit einem nicht flüchtigem Speicher zum Speichern der als Reaktion auf einen Schreibbefehl in dem Puffer gespeicherten Daten versehen. Das Verfahren weist die Schritte auf: (a) Beim Empfangen des Befehls zum anfügenden Schreiben Speichern der in dem Puffer gespeicherten Daten an einer Datenende-Position angefügter Daten in dem nicht flüchtigen Speicher (EOD in dem Speicher); (b) Senden einer Beendigungsbenachrichtigung für den Befehl zum anfügenden Schreiben (Synchronisation) an die Einheit einer übergeordneten Ebene, wenn die Daten in dem Puffer in den nicht flüchtigen Speicher geschrieben wurden; (c) Bestimmen, ob die vorübergehend in dem nicht flüchtigen Speicher gespeicherten Daten zu Daten auf dem Band verschoben werden sollen und anschließendes Bewegen an eine Band-Schreibposition (EOD), wo die vorübergehend in dem nicht flüchtigen Speicher gespeicherten Daten geschrieben werden sollen, um Schreiben auf der Grundlage eines vorgegebenen Kriteriums auszuführen, um eine Bewegungsstrecke zu minimieren, um die sich das Band im Verhältnis zu dem Kopf bewegt, wenn es sich von einer Endposition von für den m-ten Lesebefehl gelesenen Daten auf dem Band zu einer Lese-Startposition für den anschließenden n-ten Lesebefehl bewegt, und (d) in dem Fall des Empfangens eines Überschreibbefehls (Over Write) für Daten an einer vorgegebenen Position auf dem Band zwischen den gemischten Befehlen in der Reihe von Befehlen, wobei der Überschreibbefehl bewirkt, dass das Ende der geschriebenen Daten sich an einer Datenende-Position (EOD) befindet, Aktualisieren der Position zum Überschreiben von Daten als eine Datenende-Position (EOD) angefügter Daten, wenn die Bandposition zum Überschreiben der Daten einen kleineren Wert aufweist als die Datenende-Position angefügter Daten des Bandes (EOD) und Aktualisieren der Position zum Überschreiben von Daten als eine Datenende-Position angefügter Daten in dem nicht flüchtigen Speicher (EOD in dem Speicher), wenn die Bandposition zum Überschreiben der Daten einen größeren Wert aufweist als die Datenende-Position angefügter Daten des Bandes (EOD).
  • Um die vorstehende Aufgabe zu lösen, wird durch die vorliegende Erfindung ein Programm zum Schreiben auf eine Bandaufzeichnungsvorrichtung bereitgestellt, das einen Puffer zum vorübergehenden Speichern von Daten beinhaltet, die mit dem Lesen und anfügendem Schreiben in Zusammenhang stehen; ein Band zum Aufzeichnen der in dem Puffer gespeicherten Daten, einen Lese/Schreibkopf zum Lesen der Daten von dem Band in den Puffer und zum Schreiben der Daten aus dem Puffer auf das Band sowie Steuerungsmittel zum Lesen von Daten von einer angegebenen Position des Bandes und zum Speichern der Daten in dem Puffer als Reaktion auf einen Lesebefehl und zum Schreiben der in dem Puffer gespeicherten Daten von dem Band als Reaktion auf einen Schreibbefehl, und das Operationen der Positionierungsbewegung, des Lesens und des Schreibens auf ein Bandmedium rückwärts und vorwärts in einer Längsrichtung des Bandmediums ausführt, in dem Fall, dass eine einzige Bandkassette mit dem Bandmedium in die Bandaufzeichnungseinheit geladen ist und die Bandaufzeichnungseinheit eine Reihe von Befehlen, darunter gemischte Befehle zum Lesen (Read), Überschreiben und anfügenden Schreiben (Write) von einer Einheit einer übergeordneten Ebene empfängt, (von denen jeder in eine Bandposition bewegt, die von einem Bewegungsbefehl, d.h. „Position“, angegeben wird), wobei die Mehrzahl von Lesebefehlen erste, zweite, ... m-te, n-te ... (m, n = m + 1) Lesebefehle in dieser Reihenfolge enthält. Darüber hinaus wird die Bandaufzeichnungseinheit oder die Kassette für dieses Programm mit einem nicht flüchtigen Speicher zum Speichern der in dem Puffer gespeicherten Daten als Reaktion auf einen Schreibbefehl versehen. Das Programm veranlasst einen Computer zum Ausführen folgender Schritte: (a) Beim Empfangen des Befehls zum anfügenden Schreiben Speichern der in dem Puffer gespeicherten Daten an einer Datenende-Position angefügter Daten in dem nicht flüchtigen Speicher (EOD in dem Speicher); (b) Senden einer Beendigungsbenachrichtigung für den Befehl zum anfügenden Schreiben (Synchronisation) an die Einheit einer übergeordneten Ebene, wenn die Daten in dem Puffer in den nicht flüchtigen Speicher geschrieben wurden; (c) Bestimmen, ob die vorübergehend in dem nicht flüchtigen Speicher gespeicherten Daten zu Daten auf dem Band verschoben werden sollen und anschließendes Bewegen an eine Band-Schreibposition (EOD), wo die vorübergehend in dem nicht flüchtigen Speicher gespeicherten Daten geschrieben werden sollen, um Schreiben auf der Grundlage eines vorgegebenen Kriteriums auszuführen, um eine Bewegungsstrecke zu minimieren, um die sich das Band im Verhältnis zu dem Kopf bewegt, wenn es sich von einer Endposition von für den m-ten Lesebefehl gelesenen Daten auf dem Band zu einer Lese-Startposition für den anschließenden n-ten Lesebefehl bewegt, und (d) in dem Fall des Empfangens eines Überschreibbefehls (Over Write) für Daten an einer vorgegebenen Position auf dem Band zwischen den gemischten Befehlen in der Reihe von Befehlen, wobei der Überschreibbefehl bewirkt, dass das Ende der geschriebenen Daten sich an einer Datenende-Position (EOD) befindet, Aktualisieren der Position zum Überschreiben von Daten als eine Datenende-Position (EOD) angefügter Daten, wenn die Bandposition zum Überschreiben der Daten einen kleineren Wert aufweist als die Datenende-Position angefügter Daten des Bandes (EOD) und Aktualisieren der Position zum Überschreiben von Daten als eine Datenende-Position angefügter Daten in dem nicht flüchtigen Speicher (EOD in dem Speicher), wenn die Bandposition zum Überschreiben der Daten einen größeren Wert aufweist als die Datenende-Position angefügter Daten des Bandes (EOD).
  • Vorteile der Erfindung
  • Gemäß der vorstehend beschriebenen vorliegenden Erfindung ist die Bandaufzeichnungseinheit der vorliegenden Erfindung in der Lage, die Gesamtleistung der gemischten Operationen selbst in dem Fall zu steigern, in dem eine Einheit einer übergeordneten Ebene eine Reihe von Befehlen, darunter gemischte Befehle zum Lesen und anfügenden Schreiben, zwecks Überschreibens unterbricht.
  • Kurzbeschreibung der Zeichnungen
  • 1 ist ein Schaubild, das ein Konfigurationsbeispiel eines Bandarchivs 100 mit einem Bandlaufwerk veranschaulicht, auf das diese Ausführungsform angewendet wird;
  • 2 veranschaulicht normale Operationen des Bewegens, Lesens und Schreibens, die an einem Band 23 des Bandlaufwerks ausgeführt werden;
  • 3 veranschaulicht ein Beispiel für herkömmliche gemischte Lese- und Schreiboperationen;
  • 4 veranschaulicht, dass das Entfallen einer Synchronisationsoperation eine Verkürzung der Bewegungsstrecke des Bandes zur Folge hat;
  • 5 veranschaulicht eine Verkürzung der Bewegungsstrecke als Folge des Entfallens von Schreib- und Synchronisationsoperationen bei der Ausführungsform;
  • 6 veranschaulicht eine Tabelle, die eine Beziehung zwischen einer Verlängerung oder Verkürzung einer Bewegungsstrecke und einem Entfallen einer Synchronisationsoperation und einer anschließenden Schreiboperation zusammenfasst (die Fälle 1-a bis 4-b in 5);
  • 7 veranschaulicht, dass in dem Fall 1-a beim Bewegen eine Schreibposition auf dem Weg liegt;
  • 8 veranschaulicht Modi, in denen Daten auf das Band geschrieben werden, wenn kein freier Speicherplatz in einem nicht flüchtigen Speicherbereich vorhanden ist;
  • 9 veranschaulicht einen Ablauf von Operationen beim anfügenden Schreiben (Write) von Daten;
  • 10 veranschaulicht einen Ablauf, bei dem bei gemischten Operationen des Lesens und anfügenden Schreibens sowohl Befehle zum Überschreiben, als auch Befehle zum anfügenden Schreiben empfangen werden;
  • 11 veranschaulicht einen Ablauf von Operationen bei einer Synchronisation (Sync) und
  • 12 veranschaulicht einen Ablauf von Operationen beim Bewegen (Positionieren) zwischen zwei Punkten, wenn zwischen beiden eine Schreibposition vorhanden ist.
  • Weg zum Ausführen der Erfindung
  • Nachfolgend wird eine Ausführungsform (im Folgenden als „Beispiel“ bezeichnet) eines Verfahrens zum anfügenden Schreiben neuer Daten in dem Fall einer Unterbrechung durch Überschreiben (Over Write) bei einem Bandlaufwerk für lineare Aufzeichnung beschrieben, in das eine einzige Bandkassette eingelegt ist und das von einem Host eine Reihe von Befehlen empfangen hat, darunter gemischte Befehle zum Lesen und anfügenden Schreiben (Append Write). Diese Beispiele sind lediglich veranschaulichend und sollen eine Bandaufzeichnungseinheit für anfügendes Schreiben gemäß der vorliegenden Erfindung sowie ein diesbezügliches Verfahren und Programm nicht einschränken.
  • Es ist vorstellbar, dass eine Gesamtstrecke und -dauer der Bewegung des Bandes bezüglich eines Lese/Schreibkopfs bei gemischten Operationen für anfügendes Schreiben und Lesen eines Bandlaufwerks mit einer einzigen eingelegten Bandkassette (Kassette) verkürzt sind. Dementsprechend wird eine Zusammenfassung der Erfindung gegeben, sodass die folgenden besonderen Anliegen (Gestaltungen) der Erfindung ausgeführt werden.
    • 1. Wenn eine Synchronisationsoperation (Schreiben auf das Band) von in einen Puffer geschriebenen Daten erforderlich ist, werden die mithilfe einer Flush- Operation zu schreibenden Daten in einen temporären nicht flüchtigen Speicherbereich geschrieben.
    • 2. Als der temporäre Speicherbereich wird ein Bereich verwendet, wo keine Bewegung des Bandes erforderlich ist oder wo die gesamte Strecke und Dauer der Bandbewegung kürzer sind als sie beim Aufzeichnen in einem ursprünglich angestrebten Bereich wären. Des Weiteren ist die Schreibzeit gleich lang oder kürzer als die übliche Schreibzeit.
    • 3. Die temporär gespeicherten Daten werden später an der ursprünglich angestrebten Aufzeichnungsposition erneut geschrieben. Üblicherweise bleiben die Daten in dem Puffer, und ein erneutes Lesen aus dem temporären Speicherbereich ist beim Neuschreiben nicht erforderlich.
    • 4. Die Neuschreiboperation wird als eine Bewegungsoperation in einem späteren Prozess ausgeführt.
    • 5. Wenn Daten in dem Puffer aufgrund von unbeabsichtigtem Ausschalten verloren gehen, werden die Daten aus dem temporären nicht flüchtigen Speicherbereich als Verarbeiten der Wiederherstellung nach einem Fehler gelesen und anschließend an der ursprünglich angestrebten Aufzeichnungsposition geschrieben.
  • Als Erstes werden ein Bandlaufwerk und ein Bandarchiv, das das Bandlaufwerk enthält, beschrieben, auf das diese Ausführungsform angewendet wird. 1 ist ein Schaubild, das ein Konfigurationsbeispiel eines Bandarchivs 100 mit dem Bandlaufwerk veranschaulicht, auf das diese Ausführungsform angewendet wird. Wie in 1 veranschaulicht, enthält das Bandarchiv 100 ein Bandlaufwerk 10, einen Archiv-Steuerungsmechanismus 30, einen Zugriffsmechanismus 40 und ein Kassettenfach 50. Von diesen weist das Bandlaufwerk 10 eine Host-Schnittstelle 11 (im Folgenden als „Host-SS“ bezeichnet), einen Puffer 12, einen Kanal 13, einen Schreibkopf 14a, einen Lesekopf 14b und einen Motor 15 auf und verfügt außerdem über einen Controller 16, ein Kopfpositions-Steuerungssystem 17 und einen Motortreiber 18. Darüber hinaus wird auch eine Bandkassette (im Folgenden einfach als „Kassette“ bezeichnet) 20 veranschaulicht, da die Kassette 20 in das Bandlaufwerk 10 durch Einführen in das Bandlaufwerk 10 eingelegt werden kann. Die Kassette 20 enthält ein Band 23, das um Spulen 21 und 22 gewickelt ist. Durch die Drehung der Spulen 21 und 22 wird das Band 23 in eine Bandlängsrichtung bewegt, von der Spule 21 zu der Spule 22 oder von der Spule 22 zu der Spule 21. Ein Magnetband dient als Beispiel für das Band 23, aber es kann auch ein anderes Bandmedium als das Magnetband verwendet werden.
  • Die Kassette 20 enthält auch einen Kassettenspeicher 24. Der Kassettenspeicher 24 zeichnet beispielsweise Informationen darüber auf, wie Daten auf das Band 23 geschrieben werden. Die Indizes der auf das Band 23 geschriebenen Daten und ein Nutzungsstatus des Bandes 23 werden beispielsweise mithilfe einer HF-Schnittstelle auf eine kontaktlose Weise geprüft, wodurch ein Hochgeschwindigkeits-Zugriff auf die Daten ermöglicht wird. In 1 wird eine Schnittstelle für den Zugriff auf den Kassettenspeicher 24, wie beispielsweise die HF-Schnittstelle, als eine Kassettenspeicher-Schnittstelle (im Folgenden als „KS-SS“ bezeichnet) 19 gezeigt.
  • Die Host-SS 11 tauscht Daten mit einem Host 200 aus. Beispielsweise empfängt die Host-SS 11 von dem Host 200 einen Befehl zum Schreiben von Daten auf das Band 23, einen Befehl zum Bewegen des Bandes 23 an eine Zielposition und einen Befehl zum Lesen von Daten von dem Band 23. Übrigens dient SCSI als Beispiel für einen Datenübertragungsstandard, der für die Host-SS 11 verwendet wird. Bei SCSI entspricht ein erster Befehl einem Schreibbefehl, ein zweiter Befehl entspricht einem Suchbefehl (Locate) oder einem Datenleerbereich-Befehl (Space) für eine Bandbewegungsoperation, und ein dritter Befehl entspricht einem Lesebefehl. Die Host-SS 11 antwortet dem Host 200 unabhängig davon, ob eine Verarbeitung als Reaktion auf einen der Befehle erfolgreich verläuft oder fehlschlägt.
  • In dem Puffer 12 gepufferte Daten werden mithilfe einer Synchronisationsoperation (Flush) auf das Band 23 geschrieben. Die Synchronisation nach „Write“ wird ausdrücklich durch einen Befehl (wie beispielsweise einen Befehl zum Schreiben einer Dateimarkierung (Write Filemark)) festgelegt oder wird implizit durch einen Befehl (wie beispielsweise „Suchen“ (Locate), „Datenleerbereich“ (Space), „Zurückspulen“ (Rewind) oder „Ausgeben“ (Unload) festgelegt. Darüber hinaus wird der Befehl „Write“ in Abhängigkeit von einer Option des Write-Befehls selbst möglicherweise nicht vor der Beendigung der Synchronisation abgeschlossen.
  • Bei dem Puffer 12 handelt es sich um einen Speicher, in dem Daten, die auf das Band 23 geschrieben werden sollen, und Daten, die von dem Band 23 gelesen werden sollen, gespeichert werden. Der Puffer 12 besteht beispielsweise aus einem DRAM (dynamischer Speicher mit wahlfreiem Zugriff, Dynamic Random Access Memory). Außerdem ist der Puffer 12 aus einer Mehrzahl von Puffersegmenten ausgebildet und in jedem Puffersegment ist ein Datensatz gespeichert, der eine Einheit des Lesens von dem und Schreiben auf das Band 23 darstellt. Der Kanal 13 ist ein Datenübertragungskanal, der zum Übertragen von auf das Band 23 zu schreibenden Daten an den Schreibkopf 14a und zum Empfangen von von dem Band 23 gelesenen Daten von dem Lesekopf 14b verwendet wird. Wenn sich das Band 23 in der Längsrichtung bewegt, schreibt der Schreibkopf 14a Daten auf das Band 23, während der Lesekopf 14b Daten von dem Band 23 liest. Der Motor 15 dreht die Spulen 21 und 22. Obwohl der Motor 15 in 1 als ein einzelnes Rechteck gezeigt wird, wird bevorzugt ein Motor 15 für jede der Spulen 21 und 22 bereitgestellt, nämlich zwei Motoren 15 insgesamt
  • Der Controller 16 steuert das gesamte Bandlaufwerk 10. Beispielsweise steuert der Controller 16 das Schreiben von Daten auf das oder das Lesen von Daten von dem Band 23 gemäß einem von der Host-SS 11 empfangenen Befehl. Der Controller 16 steuert außerdem das Kopfpositions-Steuerungssystem 17 und den Motortreiber 18. Bei dem Kopfpositions-Steuerungssystem 17 handelt es sich um ein System, das den Schreibkopf 14a und den Lesekopf 14b so steuert, dass sie einem gewünschten Wrap (Satz von parallelen Aufzeichnungsspuren)) folgen. Der „Wrap“ ist eine Gruppe aus einer Mehrzahl von Spuren auf dem Band 23. Wenn es nötig ist, zu einem anderen Wrap zu wechseln, ist außerdem ein elektrisches Umschalten des Schreibkopfs 14a oder des Lesekopfs 14b erforderlich. Daher steuert das Kopfpositions-Steuerungssystem 17 ein derartiges Umschalten. Der Motortreiber 18 treibt den Motor 15 an. Wenn zwei Motoren 15 bereitgestellt werden wie vorstehend beschrieben, sollten auch zwei Motortreiber 18 bereitgestellt werden.
  • Der Archiv-Steuerungsmechanismus 30 ist ein Mechanismus, der den Zugriffsmechanismus 40 und das Bandlaufwerk 10 als Reaktion auf eine Anweisung von dem Host 200 steuert. Insbesondere weist der Archiv-Steuerungsmechanismus 30 den Zugriffsmechanismus 40 an, die Kassette 20 in das Bandlaufwerk 10 einzulegen, sodass von dem Host 200 bezeichnete Daten gelesen oder geschrieben werden können, und weist das Bandlaufwerk 10 an, die von dem Host 200 angegebenen Daten von der Kassette 20, die von dem Zugriffsmechanismus 40 eingelegt wurde, zu lesen oder auf diese zu schreiben. Der Zugriffsmechanismus 40 entnimmt die Kassette 20 aus dem Kassettenfach 50, um die Kassette 20 gemäß der Steuerung des Archiv-Steuerungsmechanismus 30 in das Bandlaufwerk 10 einzulegen. Das Kassettenfach 50 ist ein Raum zum Aufbewahren einer Kassette 20, in dem keine Daten gelesen oder geschrieben werden. Das Kassettenfach 50 wird hier als ein einziges Rechteck gezeigt, aber tatsächlich wird eine Mehrzahl von Fächern zum Aufbewahren einer Mehrzahl von Kassetten bereitgestellt.
  • Es sollte beachtet werden, dass in 1 nur ein Bandlaufwerk 10 gezeigt wird, aber ein Mehrzahl von Bandlaufwerken 10 bereitgestellt werden kann. In dem letzteren Fall benachrichtigt der Archiv-Steuerungsmechanismus 30 den Zugriffsmechanismus 40 über Kennungsinformationen für eines der Bandlaufwerke 10, an das ein Lese- oder Schreibbefehl gesendet werden soll, und weist dadurch den Zugriffsmechanismus 40 an, eine Kassette 20 in das Bandlaufwerk 10 einzulegen.
  • 2 veranschaulicht Operationen der normalen Positionierungsbewegung von Daten (Befehl „Position“), des Lesens (Befehl „Read“) und anfügenden Schreibens (Befehl „Write“), die an dem Band 23 eines Bandlaufwerks ausgeführt werden. Bei dem Bandlaufwerk handelt es sich um ein Bandprodukt für lineare Aufzeichnungen für Unternehmen (TSxx-Reihe von IBM), das mit Linear Tape-Open (LTO) konform ist. Als Erstes werden Lesen und Schreiben von Daten an einem Wrap Nr. 0 in Rechtsrichtung ausgeführt, wie durch einen Pfeil 201 gezeigt wird, und dann wird die Bewegungsrichtung des Bandes 23 umgekehrt, wie durch einen Pfeil 202 gezeigt wird. Anschließend werden Lesen und Schreiben von Daten an einem Wrap Nr. 1 in Linksrichtung ausgeführt, und dann wird die Bewegungsrichtung des Bandes 23 umgekehrt, wie durch einen Pfeil 203 gezeigt wird. Darüber hinaus werden Lesen und Schreiben von Daten an einem Wrap Nr. 2 in Rechtsrichtung ausgeführt, und dann wird die Bewegungsrichtung des Bandes 23 umgekehrt, wie durch einen Pfeil 204 gezeigt wird. Bei dem letzten Schritt werden Lesen und Schreiben von Daten an einem Wrap Nr. 55 in Linksrichtung ausgeführt, wie durch einen Pfeil 205 gezeigt wird.
  • Wie vorstehend beschrieben, werden bei dem Bandlaufwerk für lineare Aufzeichnung das Lesen und Schreiben von Daten in als „Wraps“ bezeichneten Datenspeicherbereichen ausgeführt, die auf dem Band 23 definiert sind, während sich der Lese/Schreibkopf zwischen dem Anfang des Bandes 23 (BA, Bandanfang) und dessen Ende (BE, Bandende) hin und her bewegt. Bei dem „Wrap“ handelt es sich um einen Satz aus einer Mehrzahl von Spuren, die zueinander parallel angeordnet und zueinander in einer Breitenrichtung eines Bandes beabstandet sind. Der Schreibkopf 14a und der Lesekopf 14b können jeweils eine Mehrzahl von Kanälen (acht oder 16 Lese/Schreibelemente) aufweisen. Der Schreibkopf 14a und der Lesekopf 14b ermöglichen es, dass die Operationen des Bewegens, Lesens und Schreibens parallel an der Mehrzahl von Spuren in demselben Wrap ausgeführt werden können. In dem Fall seriellen Lesens/Schreibens bewegt sich der Lese/Schreibkopf in den Wraps hin und her. Es sollte beachtet werden, dass der Anfang des Bandes 23 ein Beispiel für einen ersten Endabschnitt und das Ende des Bandes 23 ein Beispiel für einen zweiten Endabschnitt darstellt.
  • Das auf der untersten Ebene angeordnete Bandarchiv 100 empfängt mithilfe eines HSM-Systems eine Reihe von Befehlen für gemischte Lese/Schreiboperationen von dem Host 200. Nachfolgend wird ein Beispiel für das Verbessern der Leistung beim Verarbeiten von Operationen der gesamten Reihe von Befehlen in dem Fall gegeben, dass ein einziges Bandlaufwerk eine solche Reihe von Befehlen für die gemischten Lese/Schreiboperationen empfängt. Bei dieser Ausführungsform werden die gesamte Strecke und Dauer der Bandbewegung verkürzt, wenn ein Bandlaufwerk gemischte Operationen des anfügten Schreibens und des Lesens an einer einzigen in das Bandlaufwerk eingelegten Bandkassette ausführt.
  • Vor der Erläuterung des Beispiels wird beschrieben, wie sehr durch eine Synchronisationsoperation eine Bewegungsstrecke bei den gemischten Lese/Schreiboperationen verlängert wird. Anschließend wird ein Beispiel aufgeführt, bei dem eine Verbesserung der Gesamtleistung im Wesentlichen durch Entfallen der mit der Synchronisationsoperation verbundenen Bewegungsstrecke erreicht wird. Als Erstes sollte als eine Voraussetzung für die Erläuterung des Beispiels ein nachstehendes Beispiel verstanden werden, bei dem herkömmliche gemischte Lese- und Schreiboperationen eine unnötige Bewegungsstrecke beinhalten.
  • 3 veranschaulicht das Beispiel für die herkömmlichen gemischten Lese/Schreiboperationen. Es wird ein Beispiel beschrieben, bei dem eine Reihe von Befehlen empfangen wird, darunter gemischte Lese- und Schreibbefehle, wenn ein Band in Bezug auf die Spuren linear bewegt wird wie beispielsweise von rechts nach links oder von links nach rechts. Wie in der folgenden Reihe von Befehlen (1) bis (9) gezeigt, wird die Bewegung nach einer Schreiboperation (anfügendes Schreiben) (Write) ausgeführt, um eine Leseoperation (Read) auszuführen, und des Weiteren wird eine Schreiboperation (Write) ausgeführt:
    (1) Schreibe Daten9 → (2) Schreibe DM9 m. Synch. (Synchronisation [Flush] wird gleichzeitig mit dem Schreiben der Dateimarkierung 9 ausgeführt) → (3) Position auf C (ein Befehl zum Bewegen zu einer Position C) → (4) Lies Daten3 → (5) Position auf B → (6) Schreibe Daten10 → (7) Schreibe DM10 m. Synch. → (8) Position auf F → (9) Lies Daten7
  • Operationen des Bandlaufwerks werden wie nachfolgend beschrieben ausgeführt. Benutzerdaten werden durch die Daten1 bis Daten10 dargestellt, und Dateimarkierungen (DM) als die Trennzeichen von Daten werden durch DM1 bis DM10 dargestellt.
    • 1. An einer Position A werden die Daten9 in einem Puffer gepuffert ((1)).
    • 2. Nachdem die Daten9 als eine Synchronisationsoperation aus dem Puffer geschrieben wurden, wird die DM9 geschrieben ((2)). Das Schreiben der Daten9 und der DM9 hat eine Bewegung von der Position A zu einer Position B zur Folge.
    • 3. Die Position bewegt sich von B zu C ((3)).
    • 4. Die Daten3 werden gelesen ((4)). Das Schreiben der Daten3 hat eine Bewegung von der Position C zu einer Position D zur Folge.
    • 5. Die Position bewegt sich von D nach B ((5)).
    • 6. Die Daten10 werden in dem Puffer gepuffert ((6)).
    • 7. Nachdem die Daten10 als eine Synchronisationsoperation geschrieben wurden, wird die DM10 geschrieben ((7)). Die Position bewegt sich von B zu E.
    • 8. Die Position bewegt sich von E zu F ((8)).
    • 9. Die Daten7 werden gelesen. Die Position bewegt sich von F zu G ((9)).
  • Wie in 3 gezeigt wird (in einem unteren Teil von 3), wo schematisch die gesamte Bandlänge gezeigt wird, hat die vorstehend beschriebene Reihe von Operationen eine Bewegungsstrecke des Bandes zur Folge, die durch die Positionen A → B → C → D → B → E → F → G angezeigt wird. Eine Synchronisationsoperation (beispielsweise Flush durch einen Sync-Befehl) und eine Bewegungsoperation (der Position-Befehl) treten immer zwischen einer Schreiboperation und einer Leseoperation auf. Die gemischten Operationen beinhalten eine lange Bewegungsstrecke des Bands. Die gemischten Operationen haben in diesem Fall durch einen Abschnitt mit einer Überschneidung (B → E) eine Verlängerung zur Folge, was von der Synchronisationsoperation und dem anschließenden Bewegen über die Hälfte der Strecke zu der Zielposition F herrührt. Bei den herkömmlichen Operationen tritt insbesondere das Problem auf, dass die Bewegungsoperation eine Dauer erfordert, die durch den Betrag dieser Verlängerung erhöht wird. Es wird daher untersucht, ob die Synchronisationsoperation und der anschließende Abschnitt mit der Überschneidung entfallen können.
  • 4 zeigt, dass ein Entfallen einer Synchronisationsoperation eine Verkürzung einer Bewegungsstrecke des Bandes ermöglicht. Durch Entfallen des Schreibens auf ein Bandmedium als Reaktion auf einen Synchronisationsbefehl in derselben Reihe von Befehlen ((1) bis (9)) aus den herkömmlichen Operationen (3) lässt sich die Bewegungsstrecke verkürzen. Das Folgende sind die Operationen des Bandlaufwerks gemäß derselben Serie von Befehlen wie auf der vorangehenden Seite:
    • 1. An einer Position A werden die Daten9 in einem Puffer gepuffert ((1)).
    • 2. Nachdem die Daten9 als eine Synchronisationsoperation aus dem Puffer geschrieben wurden, wird die DM9 geschrieben ((2)). Die Position bewegt sich von A zu B.
    • 3. Die Position bewegt sich von B zu C ((3)).
    • 4. Die Daten3 werden gelesen ((4)). Die Position bewegt sich von C zu D.
    • 5. Ein Bewegen von der Position D zu B ((5)) entfällt.
    • 6. Die Daten10 werden in dem Puffer gepuffert ((6)).
    • 7. Eine Synchronisationsoperation für die Daten 10 und die DM10 ((7)) entfällt, und die Daten10 werden gepuffert in dem Puffer gehalten ((6)).
    • 8. Die Position bewegt sich von D zu F ((8)).
    • 9. Die Daten7 werden gelesen ((9)). Die Position bewegt sich von F zu G.
  • Die Bewegungsstrecke wird durch die Positionen A → B → C → D → F → G dargestellt. Bei dem zuvor erwähnten Beispiel mit den Synchronisationsoperationen gibt es drei Bewegungsoperationen (D → B → E → F), während es bei diesem Beispiel nur eine Bewegungsoperation zum Bewegen von der Position D zu F gibt, wodurch die Bewegungsstrecke verkürzt wird. Die Bewegungsstrecke wird insbesondere bei den folgenden drei Operationen im Vergleich zu dem Fall aus 3 verkürzt:
    • – Bewegungsoperation von der Position D zu B gemäß dem fünften Befehl;
    • – Eine synchronisierte Schreiboperation der Daten10 und der DM10 gemäß dem siebten Befehl, die eine Bewegung von der Position B zu E beinhaltet, und
    • – eine Bewegungsoperation von der Position E zu F gemäß dem achten Befehl.
  • Zum Zeitpunkt einer Beendigungsbenachrichtigung als Reaktion auf den Synchronisationsbefehl ist es jedoch erforderlich, dass Daten ordnungsgemäß auf das Medium geschrieben werden, und dass ein zukünftiger Zugriff sichergestellt wird. Durch die Erfindung wird garantiert, dass die Synchronisationsoperation für den Host im Wesentlichen sichergestellt ist. Des Weiteren wird in dem folgenden Beispiel ein „Einmal-Schreibverfahren“ (write-once method) offenbart, durch das eine Verlängerung einer Bewegungsstrecke einer Reihe von Befehlen, darunter gemischte Lese- und Schreibbefehle, durch Platzieren eines Schreibbefehls unterdrückt wird.
  • Die folgende Konfiguration wird bei der vorliegenden Erfindung erörtert, um bezüglich der in dem Puffer gespeicherten Daten eine Synchronisationsoperation für den Host sicherzustellen:
    • 1. Eine Bandkassette oder ein Bandlaufwerk wird mit einem neuen temporären nicht flüchtigen Speicherbereich versehen. Durch das Bereitstellen des nicht flüchtigen Speicherbereichs erhält die Bandkassette oder das Bandlaufwerk ein Zugriffsmerkmal, um die Synchronisationsoperationen zu verringern. Zu Beispielen für den nicht flüchtigen Speicherbereich zählen unter anderem ein nicht flüchtiger Speicher wie beispielsweise ein Flash-Speicher, der an der Kassette oder dem Laufwerk angebracht ist, ein spezieller Speicherbereich auf einem Bandmedium und dergleichen.
    • 2. In dem Bandlaufwerk werden angefügte Daten vorübergehend in dem nicht flüchtigen Speicherbereich gespeichert, um eine anfügende Schreiboperation auf dem Band bis zu dem ursprünglich angestrebten Ende der Schreibdaten (physisches Datenende [EOD]) auf dem Band zu verzögern. Davon getrennt wird zu einer geeigneten Zeit eine Neuschreiboperation an dem ursprünglich angestrebten Datenende (EOD) auf dem Band gestartet.
    • (1) Der nicht flüchtige Speicherbereich wird dazu verwendet, sicherzustellen, dass Daten nach dem Senden einer Beendigungsbenachrichtigung bezüglich der Verarbeitung als Reaktion auf eine Synchronisationsanforderung von dem Host jederzeit von der Bandkassette (oder dem Bandlaufwerk) gelesen werden können.
    • (2) Der nicht flüchtige Speicherbereich ist vor dem Host verborgen. Insbesondere, wenn eine Leseoperation nach einer Schreiboperation auftritt, werden Daten aus dem nicht flüchtigen Speicherbereich gelesen, als ob die Daten an der ursprünglich angestrebten Position geschrieben stünden.
  • Durch das Bereitstellen eines neuen nicht flüchtigen Speicherbereichs empfängt das Bandlaufwerk eine Reihe von von dem Host gesendeten Befehlen, darunter gemischte Lese- und Schreibbefehle. Im Allgemeinen wird ein Lesebefehl häufig ausgeführt, nachdem eine Leseposition angegeben wurde. In ähnlicher Weise wird ein Schreibbefehl für anfügendes Schreiben ausgeführt, nachdem eine Schreibposition als das EOD festgelegt wurde. Die Leseposition und die Schreibposition stehen jedoch häufig nicht in Beziehung zueinander. Wenn eine Schreiboperation (wesentliche Synchronisationsoperation) an einer Zielposition (physisches EOD) auf dem Band im Verlauf der Bewegung zwischen Leseoperationen als anfügendes Schreiben ausgeführt werden kann, lässt sich eine unnötige Bewegungsstrecke des Bandes verkürzen. Wenn eine Schreibposition (physisches EOD) auf dem Band zum Schreiben von in dem nicht flüchtigen Speicherbereich gespeicherten Daten zwischen zwei aus einer Mehrzahl von Bewegungspositionen für anschließende Leseoperationen vorhanden ist, steigert das Schreiben auf das Band während der Bewegung die Gesamtleistung der Reihe von Befehlen.
    • 1. Bei dem Beispiel werden gemäß einer Synchronisationsoperation im Anschluss an einen Befehl zum anfügenden Schreiben (Write) in dem Puffer gespeicherte Daten in einem nicht flüchtigen Speicherbereich gespeichert.
    • 2. Es ist erforderlich, eine Operation auszuführen, bei der die vorübergehend in dem nicht flüchtigen Speicherbereich gespeicherten Daten an eine ursprünglich angestrebte Position auf einem Band (Datenende (EOD)) geschrieben werden.
  • Eine Bewegungsstrecke bei der Neuschreiboperation steht in einer Umkehrrelation zu einer Bewegungsstrecke bei den Schreib- und Synchronisationsoperationen. Das heißt, dass eine Strecke, die durch das Entfallen der Synchronisationsoperation verkürzt wird, gleich einer Bewegungsstrecke ist, die durch die Neuschreiboperation verlängert wird. Daten werden in einem Fall neu geschrieben, wenn die Strecke oder Dauer der Bewegung kürzer sein kann als bei den herkömmlichen Operationen. Wenn beispielsweise eine Position (EOD), an der neu geschrieben werden soll (anfügendes Schreiben), während Bewegungsoperationen für eine Mehrzahl von Lesebefehlen durchlaufen werden soll, können Daten ohne eine Bewegung ausschließlich für die Neuschreiboperation neu geschrieben werden.
  • Um das Speichern von Daten für die Synchronisationsoperation der vorliegenden Erfindung sicherzustellen, ist es erforderlich, einen Zustand zu verhindern, in dem kein freier Speicherplatz in dem temporären Speicherbereich vorhanden ist. Wenn ein Synchronisationsbefehl empfangen wird, verringert sich möglicherweise ein freier Speicherplatz (ungenutzter Anteil (unused ratio)) in dem nicht flüchtigen Speicherbereich in Abhängigkeit von einer Bewegungsstrecke für ein Neuschreiben und der vorübergehend gespeicherten Datenmenge. Wenn der nicht flüchtige Speicherbereich schließlich vollständig gefüllt ist, werden Daten in dem nicht flüchtigen Speicherbereich ab dem EOD des Bandes unbedingt neu geschrieben. Nach der Neuschreiboperation wird anschließend eine normale Schreiboperation auf dem Band ausgeführt. Wenn des Weiteren der Rückspulbefehl (Rewind) oder der Ausgabebefehl für die Kassette empfangen wird, wird die Neuschreiboperation unbedingt ausgeführt, da Rückspulen und Ausgeben bedeuten, dass die Bandkassette „aufgebraucht“ ist.
  • 5 veranschaulicht eine Bewegungsstrecke zur Zeit einer anfügenden Neuschreiboperation, bei der durch Verwenden des nicht flüchtigen Speicherbereichs eine wesentliche Synchronisationsoperation sichergestellt wird. 5 veranschaulicht eine Verlängerung und Verkürzung der Bewegungsstrecke, die bei dem Beispiel durch ein Entfallen der Synchronisationsoperation und die Neuschreiboperation verursacht wird.
    • – Es wird eine Strecke in der Längsrichtung des Bandes betrachtet.
    • – Es wird davon ausgegangen, dass Neuschreiben während der Bewegung von der aktuellen Position A zu einer Bewegungs-Zielposition B (C, D, E) ausgeführt wird.
    • – Beziehungen zwischen einer Neuschreib-Startposition X, einer Beendigungsposition Y und der Bewegungs-Zielposition B (C, D, E) werden von der aktuellen Position A aus gesehen eingeordnet.
    • 1. Die Bewegungs-Zielposition B befindet sich in derselben Richtung wie die Neuschreib-Startposition X und die Beendigungsposition Y und ist weiter von der aktuellen Position A entfernt als die Neuschreib-Startposition X und die Beendigungsposition Y.
    • 2. Die Bewegungs-Zielposition C befindet sich in derselben Richtung wie die Neuschreib-Startposition X und die Beendigungsposition Y und befindet sich zwischen der Neuschreib-Startposition X und der Beendigungsposition Y.
    • 3. Die Bewegungs-Zielposition D befindet sich in derselben Richtung wie die Neuschreib-Startposition X und die Beendigungsposition Y und liegt näher bei der aktuellen Position A als die Neuschreib-Startposition X und die Beendigungsposition Y.
    • 4. Die Bewegungs-Zielposition E befindet sich in Bezug auf die aktuelle Position A in einer entgegengesetzten Richtung wie die Neuschreib-Startposition X und die Beendigungsposition Y.
    • – Ein Unterschied in der Schreibrichtung beeinflusst außerdem die Bewegungsrichtung von der Position A zu B (zu C, D, E). Es gibt zwei Schreibrichtungen: dieselbe Schreibrichtung (eine obere Figur von 5) wie die Bewegungsrichtung und eine der Bewegungsrichtung entgegengesetzte Schreibrichtung (eine untere Figur von 5).
    • – Im Folgenden werden Beziehungen in den vorstehend genannten Richtungen zwischen einer Strecke als eine Folge der Bewegungsoperation von der Position A → B (C, D, E) und einer Bewegungsstrecke von der Position A → X → Y → B (C, D, E) als eine Folge des Hinzufügens der Neuschreiboperation beschrieben.
    • 1. In dem Fall derselben Richtung verlängert sich die Bewegungsstrecke als eine Folge des Neuschreibens nicht (1-a). In dem Fall der entgegengesetzten Richtung ist die Bewegung von der Position A → B dieselbe wie die Bewegung von der Position A → X → B, und daher verlängert sich die Bewegungsstrecke um eine Strecke einer Hin- und Herbewegung zwischen den Positionen X und Y (1-b).
    • 2. In dem Fall derselben Richtung verlängert sich die Strecke um eine Differenz zwischen der Bewegung von der Position X → Y → C und der Bewegung von der Position X → C (2-a). In dem Fall der entgegengesetzten Richtung ist die Bewegung von der Position A → C dieselbe wie die Bewegung von der Position A → Y → C, und daher verlängert sich die Bewegungsstrecke um eine Strecke einer Hin- und Herbewegung zwischen den Positionen Y und X (2-b).
    • 3. In dem Fall derselben Richtung ist die Bewegung von der Position A → X dieselbe wie die Bewegung von der Position A → D → X, und daher verlängert sich die Strecke um eine Strecke einer Bewegung von der Position D → X → Y → D (3-a). In dem Fall der entgegengesetzten Richtung ist die Bewegung von der Position A → X dieselbe wie die Bewegung von der Position A → D → Y → X, und daher verlängert sich die Bewegungsstrecke um eine Strecke einer Bewegung von der Position D → Y → X → Y → D (3-b).
    • 4. In jeder der Richtungen verlängert sich die Strecke um eine Strecke einer Bewegung von der Position A → X → Y → A (4-a, 4-b).
  • Durch Entfallen der Schreib- und Synchronisationsoperation wird die Bewegungsstrecke unabhängig von der Bewegungs-Zielposition nach dem Neuschreiben gleich groß gemacht oder verkürzt. Die Bewegungsstrecke kann bei der Neuschreiboperation verkürzt werden, wenn die Bewegungsstrecke das Umkehrverhältnis zu der Bewegungsstrecke bei der Synchronisationsoperation aufweist.
  • 6 veranschaulicht eine Tabelle, die eine Beziehung bei Verlängerung oder Verkürzung einer Bewegungsstrecke zwischen dem Entfallen der Synchronisationsoperation und der anschließenden Neuschreiboperation zusammenfasst (die Fälle 1-a bis 4-b in 5).
    • 1. Wie sich herausstellt, weist die Bewegungsstrecke, die aufgrund des Entfallens der Synchronisationsoperation auf dem Bandmedium verkürzt ist, das Umkehrverhältnis zu der Bewegungsstrecke auf, die eine Folge der Neuschreiboperation ist, wie es mit Bezug auf 5 beschrieben wird.
    • 2. Wenn das Verhältnis von dem Entfallen der Synchronisationsoperation zum Auftreten der Neuschreiboperation 1:1 beträgt, tritt keine Veränderung der Gesamtbewegungsstrecke auf. Bei der vorliegenden Erfindung werden bei der Synchronisationsoperation alle in dem Puffer gespeicherten Daten in einem nicht flüchtigen Speicherbereich (nicht flüchtiger Speicher) gespeichert. Durch Speichern der Daten in dem nicht flüchtigen Speicher kann eine Neuschreiboperation mit Bandbewegung entfallen. Wenn die Bewegung für die Neuschreiboperation entfallen kann, lässt sich die Gesamtbewegungsstrecke verkürzen. Bei dem Fall 1-a handelt es sich um einen Fall, bei dem die Bewegungsstrecke für die Neuschreiboperation vollständig entfallen kann. In dem Fall 1-a befindet sich die Neuschreibposition (physisches EOD) auf dem Band innerhalb der Bewegungsstrecke zwischen zwei Lesebefehlen (Bewegung von der Datenende-Position für den ersten Lesebefehl zum Lesen des Bandes zu der Datenanfangs-Position für den zweiten Lesebefehl zum Lesen des Bands). In dem Fall 1-a werden die mithilfe der Synchronisationsoperation in dem nicht flüchtigen Speicher gespeicherten Daten im Verlauf der anschließenden Bewegung neu auf das Band geschrieben.
    • 3. Wenn eine Mehrzahl von Synchronisationsoperationen entfällt, und wenn eine Neuschreiboperation für in dem nicht flüchtigen Speicher gespeicherte Daten im Verlauf der Bewegung für eine Mehrzahl anschließender Leseoperationen ausgeführt werden kann, wird die Gesamtbewegungsstrecke der Reihe von Befehlen, darunter gemischte Lese- und Schreibbefehle, immer verkürzt.
  • Bei dem Beispiel der vorliegenden Erfindung wird über eine Neuschreibverarbeitung bei der Bewegungsoperation wie folgt entschieden:
    • – Bewegungsmuster: Fall 1-a
  • Vor dem Beginn der Bewegungsoperation wird über das Ausführen der Neuschreiboperation entschieden. Wenn das Bewegungsmuster so aussieht wie in dem Fall 1-a, gibt es keine Verlängerung der Bewegungsstrecke für die Neuschreiboperation. Das heißt, die Verlängerung der Bewegungsstrecke ist gleich Null. Daher wird die Neuschreiboperation während der Bewegung für die anschließende Leseoperation immer ausgeführt. Auf 5 bezogen ist dies der Fall, bei dem sich die Bandschreibposition (X → Y) zwischen zwei Bandpositionen (A → B) befindet.
    • – Bewegungsmuster: Die Fälle 1-b, 2-a und 2-b
  • Durch die Neuschreiboperation wird eine Bewegungsstrecke verlängert. Das Verlängerungsverhältnis hängt ab von einer ursprünglich angestrebten Bewegungsstrecke, der Position A → B (C, D, E), der Neuschreib-Startposition X und der Position Y in Abhängigkeit von der Menge neu zu schreibender Daten (X ←→ Y).
  • Ob die Neuschreibverarbeitung ausgeführt werden soll, wird auf der Grundlage der später beschriebenen Beziehung zwischen der Menge temporär gespeicherter Daten und der Bewegungsstrecke als einer Folge des Neuschreibens entschieden. Das Neuschreiben (X → Y) der in dem nicht flüchtigen Speicher gespeicherten Daten kann bis zur Hälfte der Schreibstrecke von der Position X nach Y ohne eine Verlängerung ausgeführt werden. In dem Fall jedoch, wenn sich die Strecke von der Position X nach Y nicht vollständig mit der Bewegungsstrecke zwischen zwei Punkten (A → C, D, E) überschneidet, verursacht die Neuschreiboperation eine Verlängerung der Strecke. Wenn die Verlängerung klein ist, kann das Neuschreiben des größten Teils der Daten innerhalb der Bewegungsstrecke ausgeführt werden. Da jedoch aufgrund der Bewegung für einen gewissen Teil des Schreibens auf Band eine Verlängerung auftritt, bietet das Schreiben zwischen Lesebefehlen in diesem Fall keinen großen Vorteil.
    • – Bewegungsmuster: Die Fälle 3-a, 3-b, 4-a und 4-b
  • Da die Bewegungsoperation für die Neuschreiboperation die Bewegungsstrecke im Vergleich zu der ursprünglich angestrebten Bewegungsstrecke stark verlängert, wird das Neuschreiben nicht ausgeführt. Dies ist offensichtlich ein Fall, in dem sich Positionen von zu schreibenden Daten (X → Y) im Verlauf der Bewegung für eine anschließende Mehrzahl von Lesebefehlen nicht überschneiden, und daher entsteht kein Vorteil bei der gesamten Reihe von Befehlen.
  • Wenn der Befehl zum anfügenden Schreiben und der Synchronisationsbefehl empfangen werden, sind die folgenden zwei Operationen vorstellbar:
    • 1. Es wird keine Bewegungsoperation ausgeführt, aber neue Benutzerdaten werden in den temporären Speicherbereich geschrieben. (Vorteil:) Da keine Bewegung für die Schreibverarbeitung ausgeführt wird, lässt sich die Bewegungsstrecke verkürzen. (Nachteil:) In dem temporären Speicherbereich könnte während des Schreibens ein Mangel an Speicherplatz auftreten.
    • 2. Schreiben in den temporären Speicherbereich wird nicht ausgeführt, aber es wird eine Neuschreiboperation ausgeführt, und anschließend wird eine Schreiboperation an der ursprünglich angestrebten Position ausgeführt. (Vorteil:) Der temporäre Speicherbereich kann beibehalten werden. (Nachteil:) Es ist erforderlich, eine Bewegung zu der Neuschreib-Startposition X auszuführen und anschließend eine Neuschreiboperation auszuführen.
  • Der Vorteil und Nachteil von jeder der zwei vorstehenden Operationen sind mit den folgenden zwei Punkten korreliert. Insbesondere wird über diese beiden Operationen auf der Grundlage der Menge (Nutzungsverhältnis, use ratio) von in dem temporären nicht flüchtigen Speicherbereich gespeicherten Daten und einer Bewegungsstrecke von der aktuellen Position zu der Neuschreib-Startposition entschieden. Wenn beispielsweise in den Fällen des vorstehend erwähnten Bewegungsmusters 1-b, 2-a und 2-b eine Bewegung zwischen zwei Punkten zum Lesen eine große Verlängerung beinhaltet, wird im Prinzip entschieden, dass die Neuschreiboperation nicht auf dem Band ausgeführt wird. Des Weiteren kann, selbst wenn eine Neuschreiboperation zwischen Leseoperationen eine gewisse Verlängerung der Bewegungsstrecke beinhaltet, die Verkürzung der Strecke als eine Folge des Schreibens in den temporären Speicherbereich größer als die Verlängerung sein. In diesem Fall ist es möglich, eine Entscheidung für das Ausführen der Neuschreiboperation während der Bewegung für den Lesebefehl zu treffen.
  • 7 veranschaulicht den Fall 1-a, bei dem ein EOD, der die Position für anfügendes Schreiben darstellt, im Verlauf der Bewegung vorhanden ist. Die in dem Puffer gespeicherten Daten werden nicht mithilfe von anfügendem Schreiben auf das Band geschrieben, sondern in dem nicht flüchtigen Speicherbereich gespeichert. In dem Fall einer Bewegung von der Position A nach B für einen Lesebefehl beinhaltet der Bewegungsverlauf eine Schreibposition für anfügendes Schreiben auf das Band (physisches EOD) für eine normale Synchronisationsoperation und eine Strecke zum Schreiben (Strecke X - Y). Die Richtung (X → Y) des Schreibens von Daten auf das Band ist dieselbe wie die Bewegungsrichtung für den Lesebefehl (A → B). Wie vorstehend beschrieben, sind bei der Bewegung im Anschluss an einen Synchronisationsbefehl die Position für anfügendes Schreiben (physisches EOD) und die Schreiblänge auf dem Band (die Datenmenge) in der Bewegungsstrecke enthalten. Wenn die Leserichtung mit der Neuschreibrichtung übereinstimmt, ist es vorteilhaft während der Bewegung die Operation des Neuschreibens der in dem nicht flüchtigen Speicherbereich gespeicherten Daten auszuführen.
  • 8 veranschaulicht Modi, in denen Daten in dem Fall auf das Band geschrieben werden, wenn kein freier Speicherplatz in dem nicht flüchtigen Speicherbereich vorhanden ist.
    • – In dem Fall, in dem während des Schreibens in den temporären Speicherbereich der temporäre Speicherbereich knapp wird, wird die Neuschreiboperation unbedingt ausgeführt. Wenn die Neuschreiboperation nicht auf dem Band ausgeführt wird, kann eine Schreiboperation nicht fortgesetzt werden, da in dem nicht flüchtigen Speicherbereich kein freier Speicherplatz vorhanden ist. Nach der Neuschreiboperation kann fortlaufend eine normale Operation des Schreibens auf das Band ausgeführt werden.
    • – Das Folgende zeigt einen Unterschied in der Bewegungsstrecke zu den normalen Schreib- und Synchronisationsoperationen.
  • Die Daten10 und die DM10 sind bereits in dem temporären Speicherbereich vorhanden.
  • In dem Fall, in dem während des erneuten Empfangs der Daten11 der temporäre Speicherbereich knapp wird, ändert sich die Bewegungsstrecke nicht, wenn die Bewegungsrichtung von der aktuellen Position A zu der Neuschreib-Startposition X dieselbe ist wie die Schreibrichtung (eine obere Figur, Fall 1-a). Wenn die Bewegungsrichtung von der aktuellen Position A zu der Neuschreib-Startposition X entgegengesetzt zu der Schreibrichtung (eine untere Figur, Fall 1-b) verläuft, tritt eine Verlängerung um eine Strecke einer Hin- und Herbewegung zwischen den Positionen Y und X auf. Die Verlängerung der Strecke ist normalerweise kleiner als die Verkürzung der Strecke als eine Folge des Schreibens in den temporären Speicherbereich, und daher kann das anfügende Schreiben der vorliegenden Erfindung ausgeführt werden.
  • Wenn der Rückspulbefehl (Rewind) oder der Ausgabebefehl (Unload) für die Kassette empfangen wird, wird die Neuschreiboperation unbedingt ausgeführt, da Rückspulen und Ausgeben bedeuten, dass die Bandkassette „aufgebraucht“ ist. In diesem Zustand ist das Bewegungsziel von der Position B oder E der BA (Bandanfang). Die Positionen C und D (5) können nicht die Bewegungsziele sein, d.h. der BA. Die entsprechenden Bewegungsmuster sind 1-a, 1-b, 4-a und 4-b. Durch die Neuschreiboperation kann eine beträchtliche Verlängerung der Bewegungsstrecke verursacht werden. Diesem Fall entsprechen beispielsweise die Bewegungsmuster 4-a und 4-b. Eine Neuschreiboperation ist erforderlich, um Datenschutz sicherzustellen und die Kassette auf normale Weise zu verwenden, wenn die Kassette erneut bereitgestellt wird. Die Verlängerung der Bewegungsstrecke wird durch die Verkürzung der Strecke durch Schreiben in den temporären Speicherbereich ausgeglichen, außer in einem Fall, in dem das Bewegungsmuster 4-a in einem Zustand wiederholt wird, bei dem sich die aktuelle Position A näher dem BA befindet als die Neuschreib-Startposition X.
  • Das Beispiel der vorliegenden Erfindung beruht auf dem linearen Aufzeichnungsverfahren, bei dem Positionierungsbewegungen für Lese- und Schreibbefehle rückwärts und vorwärts in Längsrichtung eines Bandmediums ausgeführt werden. Anfügendes Schreiben während einer Bewegung auf dem Band in dem Bandlaufwerk wird in einem Fall angewendet, wenn Daten sequenziell von dem Band gelesen oder auf dieses geschrieben werden. Das Beispiel der vorliegenden Erfindung wird auf einen Fall angewendet, in dem eine Reihe von Befehlen, darunter gemischte Lese- und Schreibbefehle, in dem Fall, dass eine einzige Kassette in das Bandlaufwerk eingelegt ist, von einer Einheit einer übergeordneten Ebene (Host) empfangen werden. Die gemischten Lese- und Schreibbefehle aus der von dem Host ausgegebenen Reihe von Befehlen werden ausgeführt. Nachfolgend wird ein Ablaufplan von Operationen für den Befehl zum anfügenden Schreiben (Write), den Lesebefehl (Read) und den für den Lesebefehl vorausgesetzten Bewegungsbefehl (Position) beschrieben.
  • 9 veranschaulicht einen Ablauf von Operationen beim anfügenden Schreiben (Write) von Daten.
    • 1. Das Bandlaufwerk empfängt an der Bandposition A (5) einen Schreibbefehl von dem Host. Von dem Host gesendete Daten, die anfügend auf das Band geschrieben werden sollen, werden in dem Puffer gespeichert. Die Bandposition (physisches EOD), an der Daten anfügend auf das Band geschrieben werden sollen, ist die Position X (5). Nach dem anfügenden Schreiben ist die Position Y (X → Y) das EOD. Ein Positionierungsbefehl bewirkt die Bewegung zu der Position X. Das EOD nach dem anfügenden Schreiben ist die Position Y. Die Bewegung von der Position Y beispielsweise zu der Position B wird mithilfe eines Bewegungsbefehls (Befehl „Position“) ausgeführt. Bei der vorliegenden Erfindung wird davon ausgegangen, dass in dem Fall, wenn nach einem Lesebefehl die aktuelle Position des Bandes A ist, für den nächsten Lesebefehl eine direkte Bewegung zu einer Zielposition B ausgeführt wird. Obwohl dies später beschrieben wird, befindet sich bei dieser Bewegung der Abschnitt X bis Y in demselben Wrap, und daher werden Daten in dem nicht flüchtigen Speicher gespeichert, um Daten anfügend auf das Band zu schreiben (12).
    • 2. Es wird geprüft, ob die Daten in einen NV-Cachespeicher (nicht flüchtiger Speicher) geschrieben werden können. Wenn in dem NV-Cachespeicher kein freier Speicherplatz vorhanden ist, muss das Schreiben auf normale Weise ausgeführt werden.
    • 3. Wenn freier Speicherplatz vorhanden ist, werden die Daten in dem NV-Cachespeicher gespeichert.
    • 4. Wenn kein freier Speicherplatz vorhanden ist, ist das Schreiben der Daten auf normale Weise auszuführen.
    • 5. In jedem der vorstehenden zwei Fälle wird eine Beendigungsbenachrichtigung an den Host gesendet.
  • Der Schreibbefehl wurde vorstehend nur in Bezug auf anfügendes Schreiben beschrieben. Bei dem anfügenden Schreibverfahren wird das Datenende (EOD) von Schreibdaten auf einem Band mithilfe eines sequenziellen Bewegungsverfahrens des Bandlaufwerks sequenziell zurückverlegt.
  • Das Schreibverfahren des Bandlaufwerks beinhaltet jedoch zusätzlich zu dem anfügenden Schreiben auch Überschreiben (Over Write). Der Befehl „Over Write“ wird zum Überschreiben von auf ein Band geschriebenen Daten (zum Beispiel eines Datensatzes) verwendet, die mithilfe des anfügenden Schreibens mit neuen Daten überschrieben werden. Bei der Überschreiboperation wird das Ende der Überschreibdaten zum Datenende (EOD) des Bands, und die anschließenden Schreibdaten werden als nicht vorhandene Schreibdaten behandelt.
  • 10 veranschaulicht einen Ablauf, bei dem bei gemischten Operationen des Lesens und anfügenden Schreibens sowohl Überschreibbefehle als auch Befehle zum anfügenden Schreiben empfangen werden. Im Folgenden wird jeder der Schritte 1 bis 100 in 10 beschrieben:
    • 1. Das Bandlaufwerk empfängt einen Schreibbefehl (Write) bei den gemischten Lese- und Schreiboperationen. Es ist wahrscheinlich, dass die meisten der während der gemischten Operationen empfangenen Schreibbefehle Befehle zum anfügenden Schreiben sind. Bei der vorliegenden Erfindung wird außerdem davon ausgegangen, dass das Bandlaufwerk während der gemischten Operationen einen Überschreibbefehl empfängt.
    • 10. Das Bandlaufwerk prüft, ob der empfangene Schreibbefehl ein Überschreibbefehl oder ein Befehl zum anfügenden Schreiben ist. Wenn es ein Befehl zum anfügenden Schreiben ist, wird bei Schritt 7 anfügendes Schreiben (entsprechend den Schritten 2 bis 5 in 9) ausgeführt.
    • 2. Wenn das Bandlaufwerk den Überschreibbefehl empfängt, schreitet die Verarbeitung zu Schritt 3 oder 5 fort.
    • 3. Dieser Schritt wird für einen Fall bereitgestellt, in dem das Bandlaufwerk den Überschreibbefehl empfängt und Daten auf dem Band überschrieben werden sollen.
  • Das Datenende, das sich an der physischen Position des Bandes befindet, die für das Schreiben von Daten mithilfe des Überschreibbefehls angegeben ist, wird aktualisiert und als das Datenende (EOD) für anfügendes Schreiben auf das Band gespeichert. Zu diesem Zeitpunkt werden an der angegebenen physischen Position des Bandes keine Daten geschrieben. Bei dem anschließenden Schritt 7 werden Daten vorübergehend in dem nicht flüchtigen Speicher (NV-Cachespeicher) gespeichert. Schließlich werden zu einem optimalen Zeitpunkt (Schritte 10 → 11 → 12 in 12) während einer anschließenden Bewegungsoperation die in dem NV-Cachespeicher gespeicherten Daten an der angegebenen physischen Position des Bandes geschrieben. Bei dem Überschreibverfahren werden die Daten nach dem EOD auf dem Band als ungültig (mit anderen Worten: leer) behandelt. Darüber hinaus werden auch Daten als ungültig behandelt, die für den vor dem Überschreibbefehl empfangenen Befehl zum anfügenden Schreiben verwendet werden sollen, und die vorübergehend in dem NV-Cachespeicher gespeichert sind, aber noch nicht auf das Band verschoben wurden. Das EOD wird vorübergehend in einem nicht flüchtigen Speicher wie beispielsweise einem NV-Cachespeicher, einem Kassettenspeicher (KS: ein nicht flüchtiger Speicher in der Bandkassette) oder einem Datensatz (Daten auf dem Band) gespeichert.
    • 5. Dieser Schritt wird für einen Fall bereitgestellt, in dem das Bandlaufwerk den Überschreibbefehl empfängt und Daten in dem NV-Cachespeicher überschrieben werden sollen.
  • In manchen Fällen sind Daten vorhanden, die für den vor dem Überschreibbefehl empfangenen Befehl zum anfügenden Schreiben verwendet werden sollen, und die vorübergehend in dem NV-Cachespeicher gespeichert sind, aber noch nicht auf das Band verschoben wurden. Die Daten in dem NV-Cachespeicher werden überschrieben. Das Ende der Überschreibdaten in dem Cachespeicher wird als das Ende angefügter Daten in dem Cachespeicher (EOD in dem Cachespeicher) angesehen, und das Datenende wird aktualisiert und in dem nicht flüchtigen Speicher gespeichert. Die Daten nach dem EOD in dem NV-Cachespeicher werden als ungültig (mit anderen Worten: leer) behandelt. Schließlich werden Daten bis zu dem aktualisierten EOD in dem Cachespeicher ab dem Ende angefügter Daten (EOD) auf dem Band zu einem optimalen Zeitpunkt (Schritte 10 → 11 → 12 in 12) während der anschließenden Bewegungsoperation geschrieben.
    • 6. Als eine Folge des Überschreibens werden das Ende angefügter Daten auf dem Band (EOD auf dem Band) und das Ende angefügter Daten in dem NV-Cachespeicher (EOD in dem Cachespeicher) als logische EODs gespeichert. Die Einheit einer übergeordneten Ebene (Host) erkennt nicht, ob die angefügten Daten in dem NV-Cachespeicher oder auf dem Band vorhanden sind.
    • 7. Dieser Schritt ist Überschreibbefehlen und Befehlen zum anfügenden Schreiben gemeinsam.
  • Wie bereits in Bezug auf den Ablauf von anfügendem Schreiben beschrieben wurde (9), entspricht dieser Schritt dem Ablauf der Schritte 2 → (3 oder 4) → 5 in 9. Bei dem Beispiel der vorliegenden Erfindung werden bei Schritt 3 aus 9 Daten für den Überschreibbefehl vorübergehend in dem NV-Cachespeicher gespeichert. Außer, wenn die Daten in dem NV-Cachespeicher gespeichert werden können, wird dieselbe Verarbeitung wie bei Schritt 4 in 9 ausgeführt.
    • 100: Wenn die Überschreibdaten in dem NV-Cachespeicher gespeichert werden, wird eine Beendigungsbenachrichtigung für die Schreiboperation an den Host gesendet.
  • 11 veranschaulicht einen Operationsablauf eines Synchronisationsbefehls (Sync).
    • 1. Das Bandlaufwerk empfängt einen Synchronisationsbefehl (Sync) von dem Host. Alternativ kann der Schreibbefehl eine Synchronisationsoperation beinhalten. Außerdem kann das Bandlaufwerk eine Synchronisationsanforderung empfangen, die implizit durch einen Befehl zum Verschieben der Position in einem Zustand festgelegt wird, in dem als Folge eines Schreibbefehls Daten in dem Puffer verbleiben.
    • 2. Es wird überprüft, ob bereits Daten auf das Band geschrieben wurden.
    • 3. Wenn Daten geschrieben wurden, wird auf dem Band das übliche anfügende Schreiben mithilfe der üblichen Synchronisationsverarbeitung ausgeführt.
    • 4. Wenn keine Daten geschrieben wurden, wird geprüft, ob Daten in den NV-Cachespeicher geschrieben werden können. Mit anderen Worten: Die Prüfung wird ausgeführt, indem ermittelt wird, ob der nachfolgende Bereich vorhanden ist.
    • 5. Wenn sich in dem NV-Cachespeicher ein freier Speicherplatz befindet, werden die Daten in dem NV-Cachespeicher gespeichert, und anschließend wird bezüglich der Synchronisation eine Beendigungsbenachrichtigung an den Host gesendet (8).
    • 6. Wenn sich in dem NV-Cachespeicher kein freier Speicherplatz befindet, wird normales Schreiben ausgeführt (3), und anschließend wird bezüglich der Synchronisation eine Beendigungsbenachrichtigung an den Host gesendet (8).
  • 12 veranschaulicht einen Ablauf einer Bewegungsoperation in dem Fall, in dem eine Bewegung zwischen zwei Positionen eine Schreibposition vorhanden ist.
    • 1. Ein Bewegungsbefehl wird von dem Host empfangen.
    • 2. Ist es eine Bewegung zu einem logischen EOD?
  • Ein logisches EOD ist eine Position, an der das Schreiben von Daten als ein EOD für den Host abgeschlossen ist, und an der das Bandlaufwerk dem Host die Position meldet. Ein physisches EOD ist ein internes Ende der Daten des Laufwerks. Das physische EOD ist eine Position, an der das Laufwerk das Schreiben von Daten auf das Band abschließt. In einem Zustand, in dem Daten in den nicht flüchtigen Speicher geschrieben werden, sind zwei physische EODs vorhanden, ein „EOD auf dem Band“ und ein „EOD in dem nicht flüchtigen Speicher“. In einem Zustand, in dem Daten nicht in den nicht flüchtigen Speicher geschrieben werden, ist nur ein physisches EOD vorhanden, ein „EOD auf dem Band“. Das logische EOD entspricht in diesem Fall dem EOD auf dem Band.
    • 3. Wenn die aktuelle Position das EOD (das EOD auf dem Band oder das EOD in dem NV-Cachespeicher) ist, ist eine Bewegung nicht erforderlich. Eine Beendigungsbenachrichtigung für die Bewegung wird an den Host gesendet (4). Der Ablauf der Schreiboperation (6, 9 oder 10) und anschließend der Ablauf des Synchronisationsbefehls (7, 11) werden ausgeführt.
    • 8. Wenn die aktuelle Position nicht das logische EOD ist (2), wird geprüft, ob Daten in dem NV-Cachespeicher vorhanden sind.
    • 9. Wenn in dem NV-Cachespeicher keine Daten vorhanden sind, wird ein von dem Host gesendeter Bewegungsbefehl (A → B) für einen Lesebefehl ausgeführt.
  • Anschließend wird eine Beendigungsbenachrichtigung für die Bewegung an den Host gesendet (13).
    • 10. Wenn in dem NV-Cachespeicher Daten vorhanden sind, wird entschieden, ob während der Bewegung eine Schreiboperation ausgeführt werden sollte. Wenn beispielsweise ein EOD für das Schreiben von Daten während der Bewegung auf dem Weg vorhanden ist, wird entschieden, dass die Schreiboperation ausgeführt wird.
    • 11. Wenn die Daten geschrieben werden sollen, werden die Daten in dem NV-Cachespeicher ab dem EOD auf dem Band neu auf das Band geschrieben (12).
    • 12. Es wird eine normale Bewegung ausgeführt (9). Wenn bei dem Schritt 10 entschieden wird, dass die Daten während der Bewegung nicht geschrieben werden sollen, wird einfach eine Bewegung (A → B) ausgeführt (9). Anschließend wird eine Beendigungsbenachrichtigung für die Bewegung an den Host gesendet (13).
  • Das vorstehende Beispiel wurde hauptsächlich in Bezug auf die Bewegung zwischen Lesebefehlen in der Reihe von Befehlen mit gemischten Schreib- und Lesebefehlen beschrieben. Der Schutzbereich der vorliegenden Erfindung ist nicht auf dieses Beispiel beschränkt, das ausgehend von der Annahme angeführt wird, dass das Beenden einer Synchronisationsoperation beim Schreiben in einen nicht flüchtigen Speicherbereich sichergestellt ist. Der Schutzbereich der vorliegenden Erfindung beinhaltet Schreiben von in dem nicht flüchtigen Speicherbereich gespeicherten Daten auf das Band in beträchtlichem Ausmaß, wenn eine Möglichkeit besteht, bei einer anschließenden Bewegung auf dem Band auf eine Ziel-Bandposition zu treffen. Im Allgemeinen empfängt bei einem hierarchischen Speichermanagementsystem ein Bandarchiv auf der untersten Ebene eine Reihe von Befehlen, darunter gemischte Lese- und Schreibbefehle. Bei dem Bandlaufwerk, in das eine einzige Kassette eingelegt ist, gibt es zahlreiche Möglichkeiten, bei denen sich Band-Schreibpositionen für die Schreib- und Synchronisationsbefehle beim Bewegen für anschließende Lesebefehle überschneiden. Sofern ein neuer nicht flüchtiger Speicherbereich auf dem Bandlaufwerk oder der Kassette bereitgestellt wird und eine vorgegebene Kapazität (zum Beispiel 100 MB oder mehr) dafür sichergestellt ist, ist es möglich, die Leistung der Operation der Reihe von Befehlen als ein Ganzes durch Zurückstellen von anfügendem Schreiben auf das Band zu garantieren.
  • Wie vorstehend beschrieben, übt das Archivsystem der vorliegenden Erfindung eine vorteilhafte Wirkung aus, indem ein Austausch vermieden wird, bei dem eine Kassette ausschließlich für Schreiben oder Lesen entnommen oder eingelegt wird. Das System der vorliegenden Erfindung hat eine vorteilhafte Wirkung, indem durch Minimieren der mit dem Schreiben von Daten verbundenen Bewegungsoperation eine Beschleunigung als Ganzes erreicht wird, selbst in dem Fall, in dem eine Überschreiboperation in gemischte Lese- und Schreiboperationen einbezogen wird.
  • Bezugszeichenliste
  • 10
    Bandlaufwerk
    11
    Host-SS
    12
    Puffer
    13
    Kanal
    14a
    Schreibkopf
    14b
    Lesekopf
    15
    Motor
    16
    Controller
    17
    Kopfpositions-Steuerungssystem
    18
    Motortreiber
    19
    KS-SS
    20
    Kassette
    30
    Archiv-Steuerungsmechanismus
    40
    Zugriffsmechanismus
    50
    Kassettenfach
    100
    Bandlaufwerk
    200
    Host

Claims (6)

  1. Bandaufzeichnungseinheit (10) zum Ausführen von Operationen einer Positionierungsbewegung, von Lesen und Schreiben an einem Bandmedium (23), rückwärts und vorwärts in einer Längsrichtung des Bandmediums (23), wobei die Einheit (10) mit einer einzigen in die Einheit eingelegten Bandkassette (20) mit dem Bandmedium (23) versehen ist und eine Reihe von Befehlen von einer Einheit (200) einer übergeordneten Ebene empfängt (von denen jeder in eine Bandposition bewegt, die von einem Bewegungsbefehl, d.h. „Position“, angegeben wird), wobei die Reihe von Befehlen gemischte Befehle zum Lesen, Überschreiben und anfügenden Schreiben enthält und die Mehrzahl von Lesebefehlen erste, zweite, ... m-te, n-te ... (m, n = m + 1) Lesebefehle in dieser Reihenfolge enthält, wobei die Bandaufzeichnungseinheit (10) aufweist: einen Puffer (12) zum Speichern von Daten, die mit dem Lesen und Schreiben in Zusammenhang stehen; ein Band (23) zum Aufzeichnen der in dem Puffer (12) gespeicherten Daten; einen Lese-/Schreibkopf (14a, 14b) zum Lesen der Daten von dem Band (23) in den Puffer (12) und Schreiben der Daten aus dem Puffer (12) auf das Band (23); Steuerungsmittel (16) zum Lesen von Daten von der angegebenen Position des Bandes (23) und Speichern der Daten in dem Puffer (12) als Reaktion auf einen Lesebefehl und zum Schreiben der in dem Puffer (12) gespeicherten Daten von einer Datenende-Position angefügter Daten des Bandes (23) (EOD) als Reaktion auf einen Befehl zum anfügenden Schreiben, und einen nicht flüchtigen Speicher zum Speichern der in dem Puffer (12) gespeicherten Daten als Reaktion auf einen Schreibbefehl, wobei das Steuerungsmittel (16) Folgendes ausführt: (a) beim Empfang des Befehls zum anfügenden Schreiben Speichern der in dem Puffer (12) gespeicherten Daten ab einer Datenende-Position angefügter Daten in dem nicht flüchtigen Speicher (EOD in dem Speicher); (b) Senden einer Beendigungsbenachrichtigung für den Befehl zum anfügenden Schreiben an die Einheit (200) einer übergeordneten Ebene, wenn die Daten in dem Puffer (12) in den nicht flüchtigen Speicher geschrieben wurden; (c) Bestimmen, ob die vorübergehend in dem nicht flüchtigen Speicher gespeicherten Daten zu Daten auf dem Band verschoben werden sollen, und anschließendes Bewegen zu einer Band-Schreibposition (EOD), wo die vorübergehend in dem nicht flüchtigen Speicher gespeicherten Daten geschrieben werden sollen, um anfügendes Schreiben auf der Grundlage eines vorgegebenen Kriteriums auszuführen, um eine Bewegungsstrecke zu minimieren, um die sich das Band im Verhältnis zu dem Kopf (14a, 14b) bewegt, wenn es sich nach dem Empfangen des Befehls zum anfügenden Schreiben von einer Endposition von Lesedaten für den m-ten Lesebefehl auf dem Band zu einer Lese-Startposition für den n-ten Lesebefehl bewegt, und (d) in dem Fall des Empfangens eines Überschreibbefehls für Daten an einer vorgegebenen Position auf dem Band (23) zwischen den gemischten Befehlen in der Reihe von Befehlen, Aktualisieren der Position zum Überschreiben von Daten als eine Datenende-Position (EOD) angefügter Daten, wenn die Bandposition zum Überschreiben der Daten einen kleineren Wert aufweist als die Datenende-Position angefügter Daten des Bandes (EOD), und Aktualisieren der Position zum Überschreiben von Daten als eine Datenende-Position angefügter Daten in dem nicht flüchtigen Speicher (EOD in dem Speicher), wenn die Bandposition zum Überschreiben der Daten einen größeren Wert aufweist als die Datenende-Position angefügter Daten des Bandes (23) (EOD).
  2. Einheit (10) nach Anspruch 1, wobei das Kriterium erfüllt ist, wenn die Datenende-Position des Bandes (23) (EOD), an der die Daten geschrieben werden sollen, sich innerhalb der Bewegungsstrecke befindet, das heißt zwischen der Endposition und der Startposition.
  3. Einheit (10) nach Anspruch 1, wobei das Steuerungsmittel (16) die aktualisierte Datenende-Position (EOD) in dem nicht flüchtigen Speicher speichert.
  4. Einheit (10) nach Anspruch 1, wobei das Steuerungsmittel (16) die aktualisierte Datenende-Position (EOD) in dem nicht flüchtigen Speicher der Kassette (20) mit dem Band (23) speichert.
  5. Anfügendes Schreibverfahren zum Schreiben auf eine Bandaufzeichnungseinheit (10), die einen Puffer (12) zum vorübergehenden Speichern von Daten enthält, die mit Lesen und anfügendem Schreiben in Zusammenhang stehen; ein Band (23) zum Aufzeichnen der in dem Puffer (12) gespeicherten Daten; einen Lese-/Schreibkopf (14a, 14b) zum Lesen der Daten von dem Band (23) in den Puffer (12) und zum Schreiben der Daten aus dem Puffer (12) auf das Band (23) sowie Steuerungsmittel (16) zum Lesen von Daten von einer angegebenen Position des Bandes (23) und zum Speichern der Daten in dem Puffer (12) als Reaktion auf einen Lesebefehl und zum Schreiben der in dem Puffer (12) gespeicherten Daten ab einer Datenende-Position angefügter Daten des Bandes (23) (EOD) als Reaktion auf einen Befehl zum anfügenden Schreiben und das Operationen der Positionierungsbewegung, des Lesens und Schreibens auf dem Band (23) rückwärts und vorwärts in einer Längsrichtung des Bandmediums (23) ausführt, in dem Fall, in dem eine einzige Bandkassette (20) mit dem Bandmedium (23) in die Bandaufzeichnungseinheit (10) eingelegt ist und die Bandaufzeichnungseinheit (10) eine Reihe von Befehlen, darunter gemischte Befehle zum Lesen, Überschreiben und anfügendem Schreiben von einer Einheit einer übergeordneten Ebene (200) empfängt, wobei die Mehrzahl von Lesebefehlen erste, zweite, ... m-te, n-te ... (m, n = m + 1) Lesebefehle in dieser Reihenfolge enthält, wobei die Bandaufzeichnungseinheit (10) oder die Kassette (20) mit einem nicht flüchtigen Speicher zum Speichern der in dem Puffer (12) gespeicherten Daten als Reaktion auf einen Schreibbefehl versehen ist, und wobei das Verfahren folgende Schritte aufweist: (a) beim Empfangen (1) des Befehls zum anfügenden Schreiben (3) Speichern der in dem Puffer (12) gespeicherten Daten an einer Datenende-Position angefügter Daten in dem nicht flüchtigen Speicher (EOD in dem Speicher); (b) Senden (100) einer Beendigungsbenachrichtigung für den Befehl zum anfügenden Schreiben an die Einheit (10) einer übergeordneten Ebene (200), wenn die Daten in dem Puffer (12) in den nicht flüchtigen Speicher geschrieben wurden; (c) bestimmen, ob die vorübergehend in dem nicht flüchtigen Speicher gespeicherten Daten zu Daten auf dem Band verschoben werden sollen, und anschließendes Bewegen an eine Band-Schreibposition (EOD), wo die vorübergehend in dem nicht flüchtigen Speicher gespeicherten Daten geschrieben werden sollen, um anfügendes Schreiben auf der Grundlage eines vorgegebenen Kriteriums auszuführen, um eine Bewegungsstrecke zu minimieren, um die sich das Band (23) im Verhältnis zu dem Kopf (14a, 14b) bewegt, wenn es sich von einer Endposition von für den m-ten Lesebefehl gelesenen Daten auf dem Band (23) zu einer Lese-Startposition für den anschließenden n-ten Lesebefehl bewegt, und (d) in dem Fall des Empfangens eines Überschreibbefehls für Daten an einer vorgegebenen Position auf dem Band (23) zwischen den gemischten Befehlen in der Reihe von Befehlen, Aktualisieren der Position zum Überschreiben von Daten als eine Datenende-Position (EOD) angefügter Daten, wenn die Bandposition zum Überschreiben der Daten einen kleineren Wert aufweist als die Datenende-Position angefügter Daten des Bandes (23) (EOD), und Aktualisieren der Position zum Überschreiben von Daten als eine Datenende-Position angefügter Daten in dem nicht flüchtigen Speicher (EOD in dem Speicher), wenn die Bandposition zum Überschreiben der Daten einen größeren Wert aufweist als die Datenende-Position angefügter Daten des Bandes (EOD).
  6. Programm zum Schreiben auf eine Bandaufzeichnungseinheit (10), die einen Puffer (12) zum vorübergehenden Speichern von Daten enthält, die mit Lesen und anfügendem Schreiben in Zusammenhang stehen; ein Band (23) zum Aufzeichnen der in dem Puffer (12) gespeicherten Daten; einen Lese/Schreibkopf (14a, 14b) zum Lesen der Daten von dem Band (23) in den Puffer (12) und zum Schreiben der Daten aus dem Puffer (12) auf das Band und Steuerungsmittel (16) zum Lesen von Daten von einer angegebenen Position des Bandes (23) und zum Speichern der Daten in dem Puffer (12) als Reaktion auf einen Lesebefehl und zum Schreiben der in dem Puffer (12) gespeicherten Daten von dem Band (23) als Reaktion auf einen Schreibbefehl und das Operationen der Positionierungsbewegung, des Lesens und Schreibens rückwärts und vorwärts auf einem Bandmedium in einer Längsrichtung des Bandmediums ausführt, in dem Fall, dass eine einzige Bandkassette (20) mit dem Bandmedium (23) in die Bandaufzeichnungseinheit (10) eingelegt ist und die Bandaufzeichnungseinheit (10) eine Reihe von Befehlen, darunter gemischte Befehle zum Lesen, Überschreiben und anfügenden Schreiben, von einer Einheit (200) einer übergeordneten Ebene empfängt, wobei die Mehrzahl von Lesebefehlen erste, zweite, ... m-te, n-te ... (m, n = m + 1) Lesebefehle in dieser Reihenfolge enthält, wobei die Bandaufzeichnungseinheit (10) oder die Kassette (20) mit einem nicht flüchtigen Speicher zum Speichern der in dem Puffer (12) gespeicherten Daten als Reaktion auf einen Schreibbefehl versehen ist, und wobei das Programm einen Computer zum Ausführen folgender Schritte veranlasst: (a) beim Empfangen des Befehls zum anfügenden Schreiben Speichern der in dem Puffer (12) gespeicherten Daten an einer Datenende-Position angefügter Daten in dem nicht flüchtigen Speicher (EOD in dem Speicher); (b) Senden einer Beendigungsbenachrichtigung für den Befehl zum anfügenden Schreiben an die Einheit (200) einer übergeordneten Ebene, wenn die Daten in dem Puffer (12) in den nicht flüchtigen Speicher geschrieben wurden; (c) Bestimmen, ob die vorübergehend in dem nicht flüchtigen Speicher gespeicherten Daten zu Daten auf dem Band verschoben werden sollen, und anschließendes Bewegen an eine Band-Schreibposition (EOD), wo die vorübergehend in dem nicht flüchtigen Speicher gespeicherten Daten geschrieben werden sollen, um anfügendes Schreiben auf der Grundlage eines vorgegebenen Kriteriums auszuführen, um eine Bewegungsstrecke zu minimieren, um die sich das Band im Verhältnis zu dem Kopf (14a, 14b) bewegt, wenn es sich von einer Endposition von für den m-ten Lesebefehl gelesenen Daten auf dem Band (23) zu einer Lese-Startposition für den anschließenden n-ten Lesebefehl bewegt, und (d) in dem Fall, dass ein Überschreibbefehl für Daten an einer vorgegebenen Position auf dem Band (23) zwischen den gemischten Befehlen der Reihe von Befehlen empfangen wird, Aktualisieren der Datenende-Position der Überschreibdaten als eine Datenende-Position (EOD) angefügter Daten, wenn die Bandposition für das Überschreiben der Daten einen kleineren Wert aufweist als die Datenende-Position angefügter Daten des Bandes (23) (EOD) und Aktualisieren der Datenende-Position der Überschreibdaten als eine Datenende-Position (EOD) angefügter Daten in dem nicht flüchtigen Speicher (EOD in dem Speicher), wenn die Bandposition zum Überschreiben der Daten einen größeren Wert aufweist als die Datenende-Position angefügter Daten des Bandes (EOD).
DE112012002622.5T 2011-06-24 2012-04-13 Aufzeichnungseinheit für lineare Aufzeichnung zum Ausführen optimalen Schreibens beim Empfangen einer Reihe von Befehlen, darunter gemischte Lese- und Schreibbefehle, sowie Verfahren und Programm für dessen Ausführung Active DE112012002622B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2011-141259 2011-06-24
JP2011141259 2011-06-24
JPJP-2011-141259 2011-06-24
PCT/JP2012/060139 WO2012176539A1 (ja) 2011-06-24 2012-04-13 読出し及び書込み命令の混在するコマンド列を受け取った場合の最適な書込みを実行するリニア記録方式の装置、その方法、及びプログラム

Publications (2)

Publication Number Publication Date
DE112012002622T5 DE112012002622T5 (de) 2014-04-17
DE112012002622B4 true DE112012002622B4 (de) 2017-01-26

Family

ID=47422386

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112012002622.5T Active DE112012002622B4 (de) 2011-06-24 2012-04-13 Aufzeichnungseinheit für lineare Aufzeichnung zum Ausführen optimalen Schreibens beim Empfangen einer Reihe von Befehlen, darunter gemischte Lese- und Schreibbefehle, sowie Verfahren und Programm für dessen Ausführung

Country Status (6)

Country Link
US (3) US8929020B2 (de)
JP (1) JP5552195B2 (de)
CN (1) CN103534759B (de)
DE (1) DE112012002622B4 (de)
GB (1) GB2506555B (de)
WO (1) WO2012176539A1 (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103534759B (zh) 2011-06-24 2016-05-25 国际商业机器公司 用于执行最优写入的线性记录设备及其执行方法
US9268676B2 (en) 2013-01-04 2016-02-23 International Business Machines Corporation Data storage mechanism using storage system determined write locations
JP5932877B2 (ja) * 2014-04-15 2016-06-08 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation テープメディアへファイルを書き込む所要時間の低減
US10719236B2 (en) * 2015-11-20 2020-07-21 Arm Ltd. Memory controller with non-volatile buffer for persistent memory operations
US9847133B2 (en) * 2016-01-19 2017-12-19 Ememory Technology Inc. Memory array capable of performing byte erase operation
US11175853B2 (en) * 2017-05-09 2021-11-16 Samsung Electronics Co., Ltd. Systems and methods for write and flush support in hybrid memory
CN110018784B (zh) * 2018-01-09 2023-01-10 阿里巴巴集团控股有限公司 数据处理方法、装置及计算设备
US11386925B2 (en) 2020-08-25 2022-07-12 Western Digital Technologies, Inc. Data storage device compensating for head/tape wear
US11823709B2 (en) 2021-08-12 2023-11-21 International Business Machines Corporation Write performance by enabling host data transfer immediately after a reposition command
US11809731B2 (en) 2021-09-28 2023-11-07 International Business Machines Corporation Appending data to a tape cartridge during recall operations
US11853580B1 (en) 2022-06-30 2023-12-26 International Business Machines Corporation Data migration management based on data location
US12087331B2 (en) * 2022-12-19 2024-09-10 International Business Machines Corporation Retaining high resolution tape directory in overwritten end of data set

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6763427B1 (en) * 1998-08-03 2004-07-13 Fujitsu Limited Optimizing the execution sequence in a tape apparatus in order to minimize tape traveling distance
JP2011134413A (ja) * 2009-12-25 2011-07-07 Internatl Business Mach Corp <Ibm> 読出し及び書込み命令の混在するコマンド列を受け取った場合の最適な書込みを実行するリニア記録方式の装置、その方法、及びプログラム。

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6715033B2 (en) * 2001-03-06 2004-03-30 Hewlett-Packard Development Company, L.C. Method of and apparatus for tracking appended data on storage medium
US6839801B2 (en) * 2003-01-06 2005-01-04 International Business Machines Corporation Deferred writing of data to be synchronized on magnetic tape employing a non-volatile store
JP4675881B2 (ja) 2006-12-27 2011-04-27 株式会社東芝 磁気ディスク装置およびその制御方法
JP5022240B2 (ja) * 2008-01-08 2012-09-12 インターナショナル・ビジネス・マシーンズ・コーポレーション テープ媒体へのデータの上書き方法、及びその方法を具備した磁気テープ装置
JP2009294309A (ja) 2008-06-03 2009-12-17 Canon Inc 画像形成装置及びその制御方法、プログラムおよび記憶媒体
JP5325078B2 (ja) * 2009-11-26 2013-10-23 インターナショナル・ビジネス・マシーンズ・コーポレーション テープ記録装置およびテープ記録方法
JP5325128B2 (ja) * 2010-01-15 2013-10-23 インターナショナル・ビジネス・マシーンズ・コーポレーション データの書込みを制御する装置及び方法
JP5618813B2 (ja) * 2010-12-24 2014-11-05 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 記憶装置、記録媒体、およびデータの長期保存方法
CN103534759B (zh) 2011-06-24 2016-05-25 国际商业机器公司 用于执行最优写入的线性记录设备及其执行方法
JP2015005229A (ja) * 2013-06-21 2015-01-08 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation テープカートリッジのファイルを複製する方法、プログラム及びテープドライブ

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6763427B1 (en) * 1998-08-03 2004-07-13 Fujitsu Limited Optimizing the execution sequence in a tape apparatus in order to minimize tape traveling distance
JP2011134413A (ja) * 2009-12-25 2011-07-07 Internatl Business Mach Corp <Ibm> 読出し及び書込み命令の混在するコマンド列を受け取った場合の最適な書込みを実行するリニア記録方式の装置、その方法、及びプログラム。

Also Published As

Publication number Publication date
US9135949B2 (en) 2015-09-15
US20150098148A1 (en) 2015-04-09
GB2506555B (en) 2019-02-06
CN103534759B (zh) 2016-05-25
CN103534759A (zh) 2014-01-22
JP5552195B2 (ja) 2014-07-16
GB201400356D0 (en) 2014-02-26
US9330713B2 (en) 2016-05-03
US20150370714A1 (en) 2015-12-24
GB2506555A (en) 2014-04-02
WO2012176539A1 (ja) 2012-12-27
DE112012002622T5 (de) 2014-04-17
US20140226236A1 (en) 2014-08-14
US8929020B2 (en) 2015-01-06
JPWO2012176539A1 (ja) 2015-02-23

Similar Documents

Publication Publication Date Title
DE112012002622B4 (de) Aufzeichnungseinheit für lineare Aufzeichnung zum Ausführen optimalen Schreibens beim Empfangen einer Reihe von Befehlen, darunter gemischte Lese- und Schreibbefehle, sowie Verfahren und Programm für dessen Ausführung
DE69714324T2 (de) Bandvorformatierung
DE112018005316B4 (de) Schnelle Lokalisierung unter Verwendung von Nachahmungslesevorgängen auf Bandlaufwerken
DE112010004958B4 (de) Vorrichtung und Verfahren zum Steuern der Transportvorgänge eines Bandmediums
US9619147B2 (en) Reading order search method and program for recording
US9601141B2 (en) Linear recording device for executing optimum writing upon receipt of series of commands including mixed read and write commands and a method for executing the same
DE112012004297B4 (de) Verfahren zum Erkennen von Datenmanipulationen in einem Bandlaufwerk und Dateisystem
DE112011102139B4 (de) Bandspeichereinheit und Schreibverfahren dafür
DE102013209528A1 (de) Benutzergesteuerte Replikation in einem System für synchronisierte Objektreplikationen
CH629901A5 (de) Verfahren zum steuern einer textverarbeitungseinrichtung beim speichern und lesen von text.
DE112009004503T5 (de) Optimierung der zugriffszeit von auf speichern gespeicherten dateien
DE69318970T2 (de) Inhaltverzeichnisformat eines datenaufzeichnungssystem
DE68908907T2 (de) Datenspeicherverfahren auf ein Aufzeichnungsband.
DE112018003585B4 (de) Verfahren, Computerprogrammprodukt und Speicherbandlaufwerk-Hardwareeinheit zum Verbessern der Deduplizierung eines Bandlaufwerkspeichers
DE112020003331B4 (de) Hochgeschwindigkeits-Dateikopie von einem Band unter Verwendung von Blockgruppierung
DE69719696T2 (de) Videoschnittverfahren, nicht-lineares Videoschnittgerät und Speichermedium für Videoschnittprogramm
DE69318967T2 (de) Aufzeichnungssystem für daten mit verbesserten eigenschaften der longitudinal- und schraegspursuche
DE69325831T2 (de) Transparente Dateimarkierung
DE69528507T2 (de) Methoden und gerät zum aufzeichnen von daten und zusatzinformationen
DE2801982A1 (de) Verfahren zum austausch von information zwischen einem externen speicher und einem arbeitsspeicher in einem textverarbeitungssystem
DE112021005198T5 (de) Hochauflösendes Bandverzeichnis für bandgestützte Speicherung
DE69314477T2 (de) Longitudinalspurformat für schrägspurdatenaufzeichnungssystem
DE102012101405B4 (de) Steuervorrichtung zum Steuern eines Datenlesens und - schreibens von und zu einem Flash-Speicher
DE112010004369T5 (de) Vorrichtung und Verfahren zum Steuern von Datenschreib-Vorgängen
EP3129891B1 (de) Verfahren zum verbesserten zugriff auf einen hauptspeicher eines computersystems, entsprechendes computersystem sowie computerprogramm-produkt

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: SPIES DANNER & PARTNER PATENTANWAELTE PARTNERS, DE

Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

R082 Change of representative

Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

R082 Change of representative

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R082 Change of representative

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

R084 Declaration of willingness to licence
R020 Patent grant now final