-
HINTERGRUND
DER ERFINDUNG
-
GEBIET DER
ERFINDUNG
-
Die
vorliegende Erfindung bezieht sich auf ein Steuerverfahren und eine
Steuervorrichtung für ein
externes Speicherteilsystem und insbesondere auf ein Verfahren und
eine Vorrichtung zur Datenübertragung
für ein
externes Speicherteilsystem, das zum Umwandeln von Daten in einem
Format mit variabler Datensatzlänge
in Daten in einem Format mit fester Datensatzlänge zum Speichern in einer
rotierenden Speichervorrichtung geeignet ist.
-
Der
Begriff „rotierende
Speichervorrichtung" bezeichnet
eine Speichervorrichtung zum Schreiben und Lesen von Daten auf und
von einem Speichermedium (z. B. einer Diskette, Festplatte oder CD-ROM)
mit spiralförmig
darauf ausgebildeten Aufzeichnungsspuren.
-
Im
Allgemeinen erfordert eine Plattenspeichervorrichtung zum Aufzeichnen
von Daten in dem Format mit variabler Datensatzlänge ein Format-Schreiben, um
Steuerinformationen auf eine Spur einer Diskette/Platte zu schreiben,
wenn neue Daten auf die Spur mit bereits darin eingeschriebenen
Daten geschrieben werden sollen.
-
Der
Begriff „Format-Schreiben" bezieht sich auf
das Schreiben oder Aktualisieren von Zählfeldinformationen, Schlüsseln und
Daten im CKD-Format (Count, Key, Data).
-
Nach
dem Format-Schreiben erfolgt auf einen Befehl von einer Steuereinheit
ein Löschen,
um zuvor geschriebene Daten (bis zum Ende der Spur) zu löschen. Beim
Löschen
werden eigentlich Löschdaten
(mit dem Wert 0) auf die Spur geschrieben. Auf diese Weise werden
die zuvor geschriebenen Daten ungültig gemacht, so dass die Platteneinheit
und die Steuereinheit durch Lesen der Löschdaten erkennen können, dass
sich nach dem Format-Schreiben keine gültigen Daten in dem Spurbereich
befinden.
-
Wenn
andererseits die Löschdaten
nicht geschrieben werden, bleiben die zuvor geschriebenen Steuerinformationen,
das heißt
die Zählfeldinformationen,
erhalten, und die den verbleibenden Zählfeldinformationen entsprechenden
Daten können
fälschlicherweise
als gültige
Daten erkannt werden.
-
Die
vorstehenden Daten sind auf der Spur in Datensatzeinheiten (Datensätze) unterteilt,
und jedem Datensatz ist eine laufende Nummer zugewiesen. Wenn Daten über einen
Cache-Speicher in die Platteneinheit geschrieben werden sollen,
ist das Datenschreibverfahren dasselbe wie vorstehend beschrieben.
-
Nach
dem Stand der Technik erfolgt das Löschen nach dem Format-Schreiben
unmittelbar nach dem Format-Schreiben. Wenn daher das Format-Schreiben
durchgeführt
werden soll, um einen neuen Datensatz auf eine Spur zu schreiben,
für die das
Löschen
nach dem Format-Schreiben einmal ausgeführt worden ist, wird das Löschen unmittelbar nach
dem Format-Schreiben
für den
zuvor gelöschten
Bereich erneut ausgeführt.
-
Daher
wird das Löschen
für denselben
Bereich derselben Spur laufend ausgeführt, und das zweite Löschen ist überflüssig, wodurch
Prozesszeit verschwendet wird. Ein Ansatz zur Lösung dieses Problems ist in
JP-A-61-241824 beschrieben, das US-4.814.904 entspricht. Nach diesem
Stand der Technik ist eine Tabelle zum Aufzeichnen von Informationen über das
Löschen
nach dem Format-Schreiben für
jede Spur der Platteneinheit in einem Speicher in der Platteneinheit
vorgesehen, und die Tabelle wird beim Format-Schreiben auf die Spur dynamisch
unter Bezug genommen, um festzustellen, ob das Löschen für die betreffende Spur bereits ausgeführt worden
ist. Wenn festgestellt wird, dass das Löschen bereits ausgeführt worden
ist, wird nur das Format-Schreiben durchgeführt, nicht aber das Löschen. Wenn
andererseits festgestellt wird, dass das Löschen nicht ausgeführt worden
ist, wird das Löschen
nach dem Format-Schreiben ausgeführt. Auf
diese Weise entfällt
das unnötige
Löschen,
das in der Vergangenheit am Ende jedes Format-Schreibens ausgeführt worden
ist, und es wird ein effizientes Format-Schreiben erreicht.
-
Als
eine Verbesserung gegenüber
der Technik in JP-A-61-241824
ist eine in JP-A-2-79266 beschriebene Technik bekannt. In JP-A-2-79266
ist ein nicht flüchtiger
Speicher zum Speichern von Positionsinformationen vorgesehen, die
einen gültigen
Datensatzbereich eines Datensatzes für eine einzelne Spur in der
Platteneinheit angeben, und nach dem Format-Schreiben zum Initialisieren
der Spur wird der Bereich, für
den das Format-Schreiben nicht ausgeführt worden ist, aus dem gültigen Bereich
entfernt, und nur der gültige
Datensatzbereich des Datensatzes in der Spur wird im Speicher gespeichert.
Auf diese Weise wird das Löschen
zum Ungültigmachen
des verbleibenden Bereichs der Spur mit Ausnahme des gültigen Datensatzbereichs
der Spur überflüssig. Im Einzelnen
kann durch Bezug nehmen auf die Positionsinformationen, die den
gültigen
Datensatzbereich in dem Speicher angeben, festgestellt werden, dass nach
dem Format-Schreiben
keine gültigen
Daten in dem Spurbereich vorliegen, so dass das Löschen nach
dem Format-Schreiben nicht nötig
ist. Dementsprechend ist es nicht erforderlich, dass die Platteneinheit
oder die Steuereinheit den gültigen
Datenbereich anhand der auf der Spur aufgezeichneten Löschdaten
erkennen müssen.
-
Mit
den beiden zuvor erwähnten
Beispielen für
den Stand der Technik kann das unnötige Löschen beseitigt werden. Aus
EP-A-0 559 142 ist zum Beispiel der Aufbau eines Speichersystems
aus Magnetplatten bekannt, auf denen Daten in einem Format fester
Länge gespeichert
werden, und das Vorsehen eines Wandlers, damit von einem Host-Computer
in einem Format mit variabler Datensatzlänge wie etwa dem CKD-Format
auf das System zugegriffen werden kann. Nehmen wir jedoch an, dass
eine Steuereinheit nach der zuvor erwähnten Referenz an eine handelsübliche Platteneinheit
(zum Beispiel eine handelsübliche
SCSI-Festplatte) angeschlossen ist. Die SCSI-Festplatte schreibt
Daten in dem Format mit fester Datensatzlänge. Andererseits überträgt die Verarbeitungseinheit
Daten in dem Format mit variabler Datensatzlänge. Wenn daher die Verarbeitungseinheit
mit mehreren Platteneinheiten verbunden ist (zum Beispiel mehreren
SCSI-Festplatten) und ein System (Disk-Array-System) zum Speichern
einer logischen Spur auf demselben logischen Laufwerk, das die Verarbeitungseinheit
erkennen kann, verteilt auf mehreren Platteneinheiten gespeichert
ist, die Daten in dem Format mit fester Datensatzlänge aufzeichnen,
ist es nicht möglich,
die Steuertabelle zum Speichern der Positionsinformationen nach
den zitierten Referenzen (1) und (2) im Speicher in der Platteneinheit
vorzusehen. Dies liegt daran, dass das logische Laufwerk und die
logische Spur, die von der Verarbeitungseinheit erkannt werden,
die die Daten in dem Format mit variabler Datensatzlänge überträgt, und
die physikalische Spur in der Platteneinheit (physikalisches Laufwerk),
die Daten in dem Format mit fester Datensatzlänge aufzeichnet, nicht identisch
sind.
-
Wenn
die Steuertabelle zum Speichern der Positionsinformationen absolut
in der Platteneinheit vorgesehen werden muss, kann ein Bereich zum Speichern
der Positionsinformationen auf dem Medium/Datenträger in der
Platteneinheit vorgesehen werden. In diesem Fall müssen vor
dem Zugreifen auf jeden Datenbereich die Positionsinformationen auf
dem Medium zuerst unter Bezug genommen werden, um zu erkennen, ob
sie in dem gültigen
Datenbereich sind, und erst dann kann auf die Daten in dem gültigen Bereich
zugegriffen werden. Bei einer solchen Folge von Abläufen ist
es jedoch notwendig, auf die Positionsinformationen auf dem Spurmedium Bezug
zu nehmen, um auf die Zieldaten in dem Datenbereich zuzugreifen.
Um auf den Zieldatenbereich zuzugreifen, ist ein zweimaliges Positionieren
eines Kopfes auf dem Medium (Platte) nötig. In Anbetracht der Drehung
der Platte führen
die beiden Kopfpositioniervorgänge
zu einer Erhöhung
der Drehwartezeit, wodurch ein ernstes Leistungsproblem entsteht. Folglich
sollte der Ansatz mit dem Vorsehen der Steuertabelle zum Speichern
der Positionsinformationen in der Platteneinheit vermieden werden.
-
Wenn
die Steuertabelle in der Steuereinheit anstatt in der Platteneinheit
vorgesehen ist, müssen die
Steuerinformationen für
alle logischen Spuren, die in allen Platteneinheiten gespeichert
werden können,
die an die Steuereinheit angeschlossen sind, in der Tabelle gespeichert
werden. Die Steuerinformationen für alle logischen Spuren weisen
jedoch ein sehr großes
Volumen auf, und die Kapazität
der Steuertabelle nimmt zu, und ein Halbleiterspeicher für die Steuertabelle
zum Speichern der Steuerinformationen in der Steuereinheit muss
erweitert werden.
-
Wenn
die Steuertabelle zum Speichern der Positionsinformationen für jede Spur
nicht in der Platteneinheit oder der Steuereinheit vorgesehen werden kann,
ist es aus diesen Gründen
nicht möglich,
die Grundsätze
nach JP-A-2-79266 umzusetzen, um das Löschen zum Ungültigmachen
des restlichen Spurbereichs zu beseitigen.
-
Wenn
dies der Fall ist, müssen
die Platteneinheit und die Steuereinheit basierend auf den Löschdaten
erkennen, dass in dem Spurbereich nach dem Format-Schreiben keine
gültigen
Daten vorliegen, wie nach dem bisherigen Stand der Technik. Das
heißt,
nach dem Format-Schreiben muss das Löschen der Spur in der Platteneinheit
mindestens einmal erfolgen. In diesem Fall gilt, je kleiner der Bereich
ist, der bei einem Löschvorgang
ungültig
gemacht wird, desto geringer ist die Übertragung von überflüssigen Löschdaten
und desto höher
ist die Effizienz.
-
JP-A-6-180
671 beschreibt einen Speicher-Controller, der ein Format mit variabler
Datensatzlänge
(CKD) auf einer Host-Computerseite mit einem festen Blockformat
(SCSI) auf einer Plattenseite des Controllers verbindet. Die Umwandlung
bzw. Konvertierung zwischen den beiden Formaten wird erreicht, indem
ein Cache-Speicher so organisiert wird, dass er jede CKD-Spur einer
Anzahl von Blöcken
auf den SCSI-Platten zuordnet. Wenn Daten von dem Host-Computer
mit einem Format-Schreibbefehl in den Cache-Speicher geschrieben
werden, löscht
der Controller automatisch CKD-Datensätze nach dem zuletzt geschriebenen
CKD-Datensatz in einer CKD-Spur in dem Cache-Speicher. Alle Blöcke, die
so aktualisiert worden sind, werden dann in einem Ausspeichervorgang
aus dem Cache-Speicher an die Plattenlaufwerke übertragen. Dieses Verfahren löst nicht
das vorstehend genannte Problem der Vermeidung des unnötigen Schreibens
von Löschdaten auf
die Platten.
-
Daher
ist ein Ziel der Erfindung die Bereitstellung eines Speicherteilsystems
und eines Verfahrens und einer Vorrichtung zur Steuerung des Speicherteilsystems,
die die beim Stand der Technik auftretenden Probleme lösen.
-
Dieses
Ziel wird mit dem Verfahren nach Anspruch 1, der Vorrichtung nach
Anspruch 7 und dem Speicherteilsystem nach Anspruch 12 gelöst. Die
Unteransprüche
beziehen sich auf bevorzugte Ausführungsformen der Erfindung.
-
Eine
Ausführungsform
der vorliegenden Erfindung stellt ein Steuerverfahren und eine Steuervorrichtung
für das
externe Speicherteilsystem bereit, die den Durchsatz der Datenübertragung
zwischen einer Verarbeitungseinheit und einer rotierenden Speichervorrichtung
durch Minimieren eines zu löschenden
Bereichs und der Häufigkeit
der Ausführung
verbessern können.
-
Eine
andere Ausführungsform
der vorliegenden Erfindung stellt ein Steuerverfahren und eine Steuervorrichtung
für das
externe Speicherteilsystem bereit, die den Durchsatz der Datenübertragung
zwischen der Verarbeitungseinheit und der rotierenden Speichervorrichtung
durch Minimieren des zu löschenden
Bereichs und der Häufigkeit
der Ausführung
verbessern können,
ohne die Zuverlässigkeit der
Daten und des Betriebs zu beeinträchtigen.
-
Eine
weitere Ausführungsform
der vorliegenden Erfindung stellt ein Steuerverfahren und eine Steuervorrichtung
für das
externe Speicherteilsystem bereit, die den Durchsatz der Datenübertragung
zwischen der Verarbeitungseinheit und der rotierenden Speichervorrichtung
durch Minimieren des zu löschenden
Bereichs und der Häufigkeit
der Ausführung
mit weniger Ressourcen verbessern können.
-
Um
die vorstehenden Ziele zu erreichen, werden bei den Ausführungsformen
(1) Steuerinformationen nur über
die mit dem Format-Schreiben verbundenen Daten (Format-Schreibdaten),
die auf eine logische Spur in einem Cache-Speicher geschrieben sind,
in einen Speicher (Steuertabelle) einer Steuereinheit und eine Endposition
der Format-Schreibdaten in der logischen Spur in dem Cache-Speicher
als die Steuerinformationen gespeichert, und (2) wenn Daten aus
dem Cache-Speicher gelesen und in die rotierende Speichervorrichtung (Platteneinheit)
geschrieben werden, wird das Löschen
selektiv basierend auf den Steuerinformationen ausgeführt.
-
Entsprechend
dem Merkmal (1) kann daher die Kapazität der Steuertabelle gering
sein, weil die Steuerinformationen nur über die auf die logische Spur
in dem Cache-Speicher geschriebenen Format-Schreibdaten in der Steuertabelle
der Steuereinheit gespeichert sind.
-
Entsprechend
den Merkmalen (1) und (2) wird, wenn die Daten aus dem Cache-Speicher
gelesen und in die rotierende Speichervorrichtung (Platteneinheit)
geschrieben werden, auf der Grundlage der Steuerinformationen bestimmt,
ob das Löschen notwendig
ist oder nicht, und das Löschen
wird nur ausgeführt,
wenn es notwendig ist (wenn die Endposition der Format-Schreibdaten
in der logischen Spur des Cache-Speichers sich vom Ende der logischen Spur
unterscheidet). Daher wird die Häufigkeit
der Ausführung
des Löschvorgangs
auf ein erforderliches Minimum reduziert.
-
Vorzugsweise
wird jedes Mal beim Schreiben von neuen Schreibdaten in die logische
Spur in dem Cache-Speicher die Endposition der Schreibdaten in der
logischen Spur mit der Endposition der logischen Spur verglichen,
und wenn die Endpositionen unterschiedlich sind, wird ein Flag,
das angibt, dass das Löschen
notwendig ist, in der Steuertabelle in der Steuereinheit gesetzt,
und wenn die Daten aus der logischen Spur des Cache-Speichers gelesen und
in die rotierende Speichervorrichtung (Platteneinheit) geschrieben
werden, wird das der logischen Spur entsprechende Flag unter Bezug
genommen, um zu bestimmen, ob das Löschen notwendig ist oder nicht,
und wenn das Löschen
notwendig ist, wird das Löschen
ausgeführt.
-
Nach
einer Ausführungsform
der vorliegenden Erfindung wird ein Verfahren zur Steuerung der Datenübertragung
in einem externen Speicherteilsystem bereitgestellt, das eine rotierende
Speichervorrichtung und eine zwischen der rotierenden Speichervorrichtung
und einer Host-Verarbeitungseinheit befindliche Steuereinheit mit
einem Cache-Speicher zur vorübergehenden
Aufnahme von Daten, die zwischen der Verarbeitungseinheit und der
rotierenden Speichervorrichtung übertragen
werden, aufweist, wobei der Cache-Speicher einen Speicherbereich
in Form mehrerer logischer Spuren entsprechend den logischen Spuren
der rotierenden Speichervorrichtung aufweist, wobei das Verfahren
folgende Schritte umfasst: a) Schreiben von Schreibdaten, die aus
der Verarbeitungseinheit übertragen
werden und an die rotierende Speichervorrichtung übertragen
werden sollen, auf eine der logischen Spuren des Cache-Speichers
entsprechend den Schreibdaten, b) Speichern einer Endposition gültiger Schreibdaten
in der logischen Spur in einen Steuerspeicher in der Steuereinheit
für jede
der logischen Spuren des Cache-Speichers mit darin eingeschriebenen
Schreibdaten, c) beim Lesen der Schreibdaten aus einer der logischen
Spuren des Cache-Speichers Bezug nehmen auf die Endposition der
gültigen
Schreibdaten in einer der logischen Spuren in dem Steuerspeicher, Lesen
der Daten von der Kopfposition bis zur Endposition der gültigen Schreibdaten
in einer der logischen Spuren und Übertragen der Daten an die
rotierende Speichervorrichtung, und d) Übertragen der angegebenen Daten
in gleicher Menge wie die Daten von der Position unmittelbar nach
der Endposition der gültigen
Schreibdaten bis zur Endposition in einer der in Schritt c) gelesenen
logischen Spuren an die rotierende Speichervorrichtung als Löschdaten
zur Ausführung
des Löschens.
-
Vorzugsweise
umfasst das Verfahren zur Steuerung der Datenübertragung weiter die folgenden
Schritte: e) für
jede der logischen Spuren im Cache-Speicher, auf die Schreibdaten
geschrieben wurden, Setzen eines Flags, das angibt, ob das Löschen in
Schritt d) beim Übertragen
der aus jeder der logischen Spuren gelesenen Schreibdaten an die
rotierende Speichervorrichtung notwendig ist, in dem Steuerspeicher,
basierend auf der Endposition der gültigen Schreibdaten in jeder
logischen Spur und der Endposition in jeder logischen Spur, und
f) beim Lesen der Schreibdaten aus einer der logischen Spuren des
Cache-Speichers Bezug nehmen auf das der einen logischen Spur des
Cache-Speichers entsprechende Flag im Steuerspeicher und Durchführen von Schritt
d), wenn das unter Bezug genommene Flag angibt, dass das Löschen in
Schritt d) notwendig ist.
-
Vorzugsweise
setzt Schritt e) in dem Verfahren zur Steuerung der Datenübertragung
ein Flag, das angibt, dass das Löschen
beim Lesen der Schreibdaten in jeder der logischen Spuren notwendig
ist oder nicht, wenn die Endposition der gültigen Schreibdaten in jeder
logischen Spur und die Endposition jeder logischen Spur übereinstimmen
bzw. nicht übereinstimmen.
-
Vorzugsweise
umfasst das Verfahren zur Steuerung der Datenübertragung einen weiteren Schritt:
Wenn eine Zugriffsanforderung zum Aktualisieren oder Lesen von Daten
für die
Daten in einer der logischen Spuren des Cache-Speichers von der Verarbeitungseinheit
an den Cache-Speicher ausgegeben wird, Gewähren der Zugriffsanforderung
lediglich dann, wenn die Position der Daten für den Zugriff in der einen
logischen Spur, wie mit der Zugriffsanforderung angegeben, gegenüber der
Endposition der gültigen
Schreibdaten in der einen logischen Spur des Cache-Speichers zum
Kopf der einen logischen Spur hin liegt.
-
Nach
einer Ausführungsform
der vorliegenden Erfindung werden die Endpositionsinformationen des
letzten Format-Schreibens
und das Flag, das angibt, ob das Löschen notwendig ist oder nicht,
in der Steuertabelle zur Steuerung der logischen Spur in dem Cache-Speicher
in der Steuereinheit gespeichert, und wenn die logische Spur aus
dem Cache-Speicher
gelesen und in die Platteneinheit geschrieben wird, werden die Endpositionsinformationen
des letzten Format-Schreibens und das Flag, das angibt, ob das Löschen notwendig
ist oder nicht, unter Bezug genommen, um zu bestimmen, ob das Löschen für den Bereich
unmittelbar nach der Endposition des letzten Format-Schreibens in
der logischen Spur ausgeführt
werden muss, und das Löschen
wird nur ausgeführt,
wenn es notwendig ist.
-
Wenn
von einem Host-Prozessor eine Zugriffsanforderung wie z. B. zum
Aktualisieren der Schreibdaten oder zum Lesen der Daten, für die kein Format-Schreiben
notwendig ist, auf Daten in der logischen Spur des Cache-Speichers
ausgegeben wird, werden die mit der Zugriffsanforderung angegebenen
Positionsinformationen in der logischen Spur mit den Endpositionsinformationen
des letzten Format-Schreibens verglichen, die in der Steuertabelle der
Steuereinheit gespeichert sind. Je nach dem Ergebnis des Vergleichs
wird das Gewähren
oder Nicht-Gewähren
der Zugriffsanforderung, das heißt der gültige Datenbereich in der logischen
Spur bestimmt.
-
Die
Steuertabelle hat die erforderliche Mindestkapazität entsprechend
der Anzahl der logischen Spuren in dem Cache-Speicher, die zum Schreiben in
die Platteneinheit bereit sind, und kann als Teil eines Halbleiterspeichers,
der den Cache-Speicher bildet, oder als Teil eines Halbleiterspeichers,
der von dem Cache-Speicher unabhängig
ist, ausgebildet sein.
-
Wenn
die Daten in der logischen Spur in den Cache-Speicher geschrieben werden sollen,
kann die logische Spur mehrere Steuereinheiten (Blöcke) in
dem Cache-Speicher um fassen. Beim neuen oder zusätzlichen Schreiben in die logische
Spur, für
das ein Aktualisieren der Schreibdaten oder Format-Schreiben mit
Ausnahme der gelesenen Daten erforderlich ist, wird die Blocknummer
des Blocks, dem die Endposition des Format-Schreibens fortlaufend
vom Kopf der logischen Spur zugewiesen ist, als die Endpositionsinformationen
des letzten Format-Schreibens in der Steuertabelle gespeichert.
So kann der Netto- oder gültige
Datenbereich in der logischen Spur identifiziert werden. Wenn die
Blocknummer als die Endpositionsinformationen des letzten Format-Schreibens sich von
der letzten freien Blocknummer in der logischen Spur unterscheidet,
das heißt
wenn nach der aktuellen Endposition des letzten Format-Schreibens
ein freier Block folgt, wird ein Flag gesetzt, das angibt, dass
das Löschen
erforderlich ist. Dementsprechend ist das Löschen zur Unterscheidung des
ungültigen
Bereichs in der logischen Spur erst notwendig, wenn die logische
Spur in dem Cache-Speicher
in die Platteneinheit geschrieben wird, und wenn das zusätzliche
oder neue Schreiben, das mit dem Format-Schreiben in dem Cache-Speicher verbunden
ist, erfolgt, müssen
nur die Blocknummer als die Endpositionsinformationen des letzten
Format-Schreibens und der Flag-Status aktualisiert werden.
-
Wenn
die logische Spur in dem Cache-Speicher in die Platteneinheit geschrieben
wird, wird das Flag unter Bezug genommen, und nur wenn das Löschen erforderlich
ist (wenn nicht die gesamte logische Spur mit den gültigen Daten
gefüllt
ist), wird das Löschen
für den
ungültigen
Bereich durchgeführt. Dementsprechend
wird das Löschen
nur ausgeführt, wenn
die logische Spur in die Platteneinheit geschrieben wird und ein
ungültiger
Datenbereich in der logischen Spur vorhanden ist, wobei der Löschbereich und
die Häufigkeit
des Löschens
auf das erforderliche Minimum beschränkt werden.
-
Bei
der Zugriffsanforderung wie z. B. zum Aktualisieren oder Lesen der
vorhandenen Daten in der logischen Spur, das nicht mit dem Format-Schreiben
verbunden ist, wird die Zugriffsanforderung lediglich gewährt, wenn
die Positionsinformationen (Blocknummer) in der mit der Zugriffsanforderung
angegebenen logischen Spur kleiner als die Blocknummer für die Endpositionsinformationen
des letzten Format-Schreibens
ist, so dass das fehlerhafte Lesen der ungültigen Daten auf der Rückseite
der logischen Spur oder die Verarbeitung als die zu aktualisierenden
und zu schreibenden Daten verhindert wird.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
1 zeigt
ein Blockdiagramm einer Konfiguration für ein Datenverarbeitungssystem
nach einer Ausführungsform
des Steuerverfahrens und der Steuervorrichtung für die Datenübertragung in dem externen
Speicherteilsystem nach der vorliegenden Erfindung.
-
2 zeigt
ein Format einer Steuerinformationentabelle in der in 1 gezeigten
Steuereinheit.
-
3A und 3B zeigen
die Zusammenhänge
zwischen Daten mit variabler Länge
und Daten mit fester Länge.
-
4A und 4B zeigen
das Speicherformat von Daten in dem Cache-Speicher in der in 1 gezeigten
Steuereinheit.
-
5 zeigt
ein Ablaufdiagramm zur Illustration eines Format-Schreibvorgangs
in den Cache-Speicher in der Ausführungsform des Steuerverfahrens
für die
Datenübertragung
in dem externen Speicherteilsystem nach der vorliegenden Erfindung.
-
6 zeigt
ein Ablaufdiagramm zur Illustration eines Löschvorgangs in der Ausführungsform
des Steuerverfahrens für
die Datenübertragung
in dem externen Speicherteilsystem nach der vorliegenden Erfindung.
-
7 zeigt
ein Ablaufdiagramm zur Illustration eines Zugriffsanforderungsvorgangs
in der Ausführungsform
des Steuerverfahrens für
die Datenübertragung
in dem externen Speicherteilsystem nach der vorliegenden Erfindung.
-
BESCHREIBUNG
DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
-
Die
bevorzugten Ausführungsformen
der vorliegenden Erfindung werden nachstehend ausführlich anhand
der anliegenden Zeichnungen erläutert.
-
1 zeigt
ein Blockdiagramm einer Konfiguration für ein Datenverarbeitungssystem,
bei dem das Steuerverfahren und die Steuervorrichtung für das externe
Speicherteilsystem nach einer Ausführungsform der vorliegenden
Erfindung angewandt werden. 2 zeigt
eine schematische Darstellung eines Formats einer Steuerinformationentabelle
in der in 1 gezeigten Steuereinheit, und 4A und 4B zeigen
schematische Darstellungen eines Datenspeicherformats in einem Cache-Speicher in
der in 1 gezeigten Steuereinheit. 5, 6 und 7 zeigen
Ablaufdiagramme des Steuerverfahrens für das externe Speicherteilsystem
nach der vorliegenden Erfindung.
-
Das
in 1 gezeigte Datenverarbeitungssystem umfasst eine
Verarbeitungseinheit 10 zum Ausführen von Operationen an Daten
oder Informationen, einen Kanal 11 für die Ein-/Ausgabesteuerung wie
z. B. die Datenübertragung,
mehrere Platteneinheiten (Disk-Array) 13 und eine zwischen
der Platteneinheit 13 und dem Kanal 11 angeordnete
Steuereinheit 12 zur Steuerung des Austauschs von Daten
und Befehlen. Über
den Kanal 11 und die Steuereinheit 12 zeichnet
es Daten in der Platteneinheit 13 auf und gibt nach einem
Befehl von der Verarbeitungseinheit 10 Daten von der Platteneinheit 13 wieder.
Die Teile ohne die Verarbeitungseinheit in 1 bilden
das externe Speicherteilsystem. Bei der in 1 gezeigten Ausführungsform
ist das Teilsystem direkt mit einer Verarbeitungseinheit verbunden,
obwohl ein ähnliches
Verfahren auch angewendet werden kann, wenn es mit mehreren Verarbeitungseinheiten
verbunden ist.
-
Die
aufzuzeichnenden und wiederzugebenden Daten werden nach logischen
Spureinheiten aufgezeichnet, wenn sie auf die Platteneinheit 13 geschrieben
werden. Die logische Spur entspricht nicht immer direkt einer physikalischen
Spur auf der Platteneinheit 13. Die Daten sind in Datensatzeinheiten, sog.
Datensätze,
auf der logischen Spur unterteilt, und Informationen zur Angabe
einer Position ihres eigenen Datensatzes auf der logischen Spur
(nachstehend als Segmentnummer bezeichnet) und einer Datensatzlänge werden
in ein Steuerinformationenfeld oder ein CKD-Format-Zählfeld am
Kopf jedes Datensatzes geschrieben. Die Segmentnummer wird den Teilabschnitten
der logischen Spur fortlaufend vom Kopf der Spur zugewiesen.
-
Die
Steuereinheit 12 nach der vorliegenden Ausführungsform
umfasst eine Datenübertragungseinheit
A 124 zum Eingeben in die Steuereinheit 12 und
Ausgeben an eine Host-Einheit der von der Host-Einheit (oder der
Verarbeitungseinheit) übertragenen
Schreibdaten und der an die Host-Einheit zu übertragenden Lesedaten, eine
Steuereinheit A 121 zur Steuerung der Datenübertragung
zwischen der Host-Einheit und dem Cache-Speicher 126 über die Datenübertragungseinheit
A 124, eine Datenübertragungseinheit
B 125 zum Eingeben in einen Cache-Speicher 126 und
Ausgaben an die Platteneinheit 13 der von dem Cache-Speicher 126 an
die Platteneinheit 13 übertragenen
Schreibdaten und der von der Platteneinheit 13 an den Cache-Speicher 126 übertragenen
Lesedaten, eine Steuereinheit B 122 zur Steuerung der Datenübertragung
zwischen dem Cache-Speicher 126 und der Platteneinheit 13 über die
Datenübertragungseinheit
B 125 und einen Steuerinformationenspeicher 123.
-
Der
Steuerinformationenspeicher 123 weist eine logische Spur-Steuertabelle 127 zum
Speichern, nach logischen Spureinheiten, der Steuerinformationen
zur Steuerung der Schreibdaten und der Lesedaten wie z. B. der Position
in dem Cache-Speicher 126, an der die Steuereinheit A 121 die
Schreibdaten schreibt, der Position in dem Cache-Speicher 126,
an der die Steuereinheit B 122 die Lesedaten liest, und
der Nummer der Platteneinheit entsprechend den Lesedaten sowie anderer
darin gespeicherter Steuerinformationen auf.
-
Wenn
das Format-Schreiben von der Host-Einheit angewiesen wird, das heißt wenn
ein Befehl zum Aktualisieren des Steuerfelds ausgegeben wird, bestimmt
die Steuereinheit A 121 den Löschbereich, und die Datenverarbeitungseinheit
A 124 löscht
den Bereich, so dass die Datenübertragung
an den Cache-Speicher 126 bereit ist. Wenn andererseits
die Daten aus dem Cache-Speicher 126 ohne Löschen auf
der Datenübertragungseinheit
A 124 an die Platteneinheit 13 übertragen
werden, bestimmt die Steuereinheit B 122 den Löschbereich, und
die Datenübertragungseinheit
B 125 löscht
den betreffenden Bereich, so dass die Datenübertragung an die Platteneinheit 13 bereit
ist.
-
In
der Steuereinheit 12 nach der vorliegenden Ausführungsform
ist, wie in 2 gezeigt, ein Bereich 20 in
der logischen Spur-Steuertabelle 127 vorgesehen, um ein
Lösch-Flag 21,
das angibt, ob das Löschen
nach dem Format-Schreiben für
jede logische Spur erforderlich ist oder nicht, und Positionsinformationen 22 zu
speichern, die den Endblock des letzten Format-Schreibens in jeder
logischen Spur angeben. Für
die Endpositionsinformationen 22 des letzten Format-Schreibens
wird ein anhand der Segmentnummer des Datensatzes für das letzte
Format-Schreiben und dessen Datensatzlänge berechneter Wert in eine
von mehreren Blocknummern umgewandelt, die die logische Spur in
dem Cache-Speicher
bilden, und gespeichert.
-
Die
Entsprechung zwischen den in 3A gezeigten
Daten mit variabler Länge
und den in 3B gezeigten Daten mit fester
Länge (entsprechend
der logischen Spur), wenn erstere in letztere umgewandelt bzw. konvertiert
werden, wird nachstehend erläutert.
Aus der Segmentnummer der Steuerinformationen der Daten mit variabler
Länge (Ren) wird
die Position Pa (3B) des Datensatzes auf der
logischen Spur bestimmt. Unter der Annahme, dass die Daten(satz)länge aus
der Datensatzlänge der
Steuerinformationen mit DLe bestimmt wird, wird die Datenlänge DLe
durch die Länge
LB eines Blocks (Datensatz mit fester Länge) der
Daten mit fes ter Länge
geteilt, um die Anzahl der Blöcke
(Versatz) der Daten mit fester Länge
entsprechend den Daten mit variabler Länge zu erhalten. Dementsprechend
wird durch Addieren der Endposition der vorherigen Daten mit variabler
Länge (Ren – 1) in
den in 3B gezeigten Daten mit fester
Länge,
d. h. der für
die Kopfposition (Blocknummer) der aktuellen Daten mit variabler
Länge Ren
hergeleitete Anzahl der Blöcke DLe/LB, die Schreib-Endposition (Blocknummer x)
Pb für
die Daten mit variabler Länge
Ren erhalten. Wenn die Daten mit variabler Länge Ren die dem Befehl für das letzte
Format-Schreiben
entsprechenden Schreibdaten sind, gibt die erhaltene Blocknummer Pb
den letzten Schreib-Endblock an. Folglich wird die Blocknummer x
als die Endpositionsinformationen des letzten Format-Schreibens
in der Steuertabelle 127 für die entsprechende logische
Spurnummer gespeichert. Daher bilden die Blöcke y bis e den Löschbereich.
-
Der
Datenblock i mit fester Länge
gibt die Datenübertragungs-Startblocknummer
für den
letzten Format-Schreibdatensatz an.
-
4A zeigt
ein Beispiel für
das Datensatzformat im Cache-Speicher nach der vorliegenden Ausführungsform.
Der Cache-Speicher 126 wird gesteuert, indem er in mehrere
logische Spuren unterteilt wird, wobei jede Spur n mehrere Blöcke 30 umfasst.
Jeder Spur wird von oben nach unten in aufsteigender Reihenfolge
eine Spurnummer zugewiesen, wie in 4B gezeigt.
Die Blöcke 30 (Blöcke y bis
e) unmittelbar nach dem Endblock des letzten Format-Schreibens (der
Block x im vorliegenden Beispiel) in der logischen Spur liegen in
dem Löschbereich 31.
Die Steuereinheit A 121 vergleicht die Endpositionsinformationen 22 des
letzten Format-Schreibens der logischen Spur mit den letzten Blocknummern
in den Blöcken
der logischen Spur in dem Cache-Speicher;
stimmen sie nicht überein,
wird das Lösch-Flag 21 auf „1" gesetzt.
-
Die
Funktionen der verschiedenen Einheiten beim Löschen nach dem Format-Schreiben
werden nachstehend erläutert.
-
Wenn
von der Verarbeitungseinheit 10 ein Befehl zum Format-Schreiben
ausgegeben wird und die Schreibdaten über den Kanal 11 an
die Steuereinheit 12 übertragen
werden, erkennt die Steuereinheit A 121 in der Steuereinheit 12 die
logische Spurnummer aus den Steuerinformationen am Kopf des Datensatz,
um zu bestimmen, ob die entsprechende logische Spur-Steuertabelle 127 vorhanden
ist oder nicht. Ist die entsprechende logische Spur-Steuertabelle 127 nicht
vorhanden, wird eine neue logische Spur-Steuertabelle 127 angelegt,
und mehrere Blöcke
in dem Cache-Speicher 126, der die gesamte logische Spur
einschließlich
der Schreibdaten speichern kann, werden gesichert. Die Steuereinheit
A 121 berechnet die Datenübertragungs-Startblocknummer
aus der Segmentnummer des Datensatzes, der Gegenstand des Format-Schreibens ist. Wenn andererseits
die entsprechende logische Spurformattabelle 127 vorhanden
ist, werden die Blöcke
in dem Cache-Speicher nicht gesichert, und die Datenübertragungs-Startblocknummer
wird sofort berechnet.
-
Dann
weist die Steuereinheit A 121 die Datenübertragungseinheit so an, dass
die Datenübertragungseinheit
A 124 die Schreibdaten aus dem Kanal 11 eingibt
und danach nacheinander die eingegebenen Schreibdaten ab der Position
der berechneten Datenübertragungs-Startblocknummer überträgt. Wenn
sich der nächste
Befehl zum Format-Schreiben an den vorstehenden Befehl zum Format-Schreiben
anschließt,
berechnet die Steuereinheit A 121 die Datenübertragungs-Startblocknummer
aus dem Segment des Datensatzes, der Gegenstand des nächsten Format-Schreibens
ist und überträgt nacheinander
die Daten ab der Position der Blocknummer in den Cache-Speicher 126.
Wenn mehrere Befehle zum Format-Schreiben
fortlaufend verkettet sind, wird dasselbe Verfahren wiederholt.
Wenn der Befehl zum Format-Schreiben des Kanals 11 abgeschlossen
ist, berechnet die Steuereinheit A 121 den Offset oder
Versatzwert für
die Blocknummer aus der Datensatzlänge des Datensatzes, der Gegenstand
des letzten Format-Schreibens ist, addiert ihn zu der Daten übertragungs-Startblocknummer
des Datensatzes, der Gegenstand des letztes Format-Schreibens ist,
und speichert ihn als die Endpositionsinformationen (Blocknummer) 22 des
letzten Format-Schreibens. Die Steuereinheit A 121 vergleicht
die Endpositionsinformationen (Blocknummer) 22 des letzten Format-Schreibens
der logischen Spur, für
die das Format-Schreiben ausgeführt
worden ist, mit der letzten Blocknummer (Endblocknummer des logischen Blocks)
der Blöcke,
die die entsprechende logische Spur in dem Cache-Speicher bilden;
stimmen sie nicht überein,
wird das Lösch-Flag 21 auf „1" gesetzt.
-
Die
Abläufe
bei dem Versuch der Steuereinheit A 121 oder B 122,
die Daten einer logischen Spur aus dem Cache-Speicher 126 in die Platteneinheit 13 zu
schreiben, werden nachstehend erläutert. Die Steuereinheit B 122 bestimmt
zuerst durch Bezugnahme auf das Lösch-Flag 21 in der
logischen Spur-Steuertabelle 127 entsprechend der logischen Spur,
ob die Daten der logischen Spur das Löschen nach dem Format-Schreiben
erfordern oder nicht. Ist das Lösch-Flag 21 gesetzt,
zieht die Steuereinheit A 121 oder B 122 die Endpositionsinformationen 22 des
letzten Format-Schreibens in der entsprechenden logischen Spur-Steuertabelle 127 heran
und überträgt die Daten
von der Kopfposition der logische Spur bis zur Endposition des letzten
Format-Schreibens (d. h. die Daten in dem gültigen Bereich) aus dem Cache-Speicher 126 an
die Platteneinheit 13, und die Steuereinheit B 122 setzt
die Löschdaten
(z. B. Nulldaten) auf der Datenübertragungseinheit
B 125 und überträgt die Löschdaten
in der Menge ab dem Block unmittelbar nach der durch die Endpositionsinformationen 22 des
letzten Format-Schreibens angegebenen Position, die durch Bezugnahme
auf die Tabelle 127 erhalten wurde, bis zum letzten Block an
die Platteneinheit 13.
-
Anstelle
des vorstehenden Verfahrens kann das Löschen auch wie folgt ausgeführt werden.
Die Steuereinheit B 122 setzt die Löschdaten auf der Datenübertragungseinheit
B 125 und überträgt die Daten
ab dem Block unmittelbar nach der durch die Endpositionsinformationen 22 des
letzten Format-Schreibens
angegebenen Position bis zur letzten Blocknummer und schreibt die
Daten ab dem Block unmittelbar nach der Endposition des letzten Format-Schreibens
in der entsprechenden logischen Spur bis zum Endblock. Danach werden
die Daten der logischen Spur aus dem Cache-Speicher 126 vom
Kopf der Spur bis zum Endblock über
die Datenübertragungseinheit
B 125 an die Platteneinheit 13 übertragen,
um das Löschen
durchzuführen.
-
Auf
diese Weise bereitet die Steuereinheit 122 die Löschdaten
asynchron zur Datenübertragung
aus dem Cache-Speicher 126 an
die Platteneinheit 13 vor und überträgt sie an den Cache-Speicher 126;
danach werden die Daten aus dem Cache-Speicher 126 an die
Platteneinheit 13 übertragen.
-
5 und 6 zeigen
Ablaufdiagramme der vorstehenden Vorgänge. Wenn die Verarbeitungseinheit 10 in 5 einen
Befehl ausgibt, umfasst die Steuereinheit 121 einen Schritt 400,
um festzustellen, ob der Befehl der Befehl zum Format-Schreiben
ist oder nicht, einen Schritt 401 zum Erkennen, wenn die
Entscheidung in Schritt 400 „ja" lautet, der logischen Spurnummer aus
den Steuerinformationen am Kopf des Datensatzes durch die Steuereinheit
A 121 in der Steuereinheit 12 und einen Schritt 402,
um zu bestimmen, ob die der logischen Spurnummer entsprechende logische
Spur-Steuertabelle
vorhanden ist oder nicht. Sie umfasst weiter einen Schritt 403 zum
Anlegen der logischen Spur-Steuertabelle, wenn die Entscheidung
in Schritt 402 „nein" lautet, einen Schritt 404 zum
Sichern der Blöcke
in dem Cache-Speicher
zum Schreiben der Daten, einen Schritt 405 zum Berechnen
der Datenübertragungs-Startblocknummer
in dem Cache-Speicher 126, an der das Übertragen der Schreibdaten beginnt,
aus der Segmentnummer des Datensatzes, der die Schreibdaten darstellt,
einen Schritt 406 zum Eingeben der Schreibdaten aus der
Verarbeitungseinheit 10 in die Datenübertragungseinheit A 124 und einen
Schritt 407 zum Über tragen
der in die Datenübertragungseinheit
A 124 eingegebenen Schreibdaten an den Cache-Speicher 126 und
zum Schreiben der Daten ab dem in Schritt 405 bestimmten
Datenübertragungs-Startblock.
Sie weist weiter einen Schritt 408 auf, um zu bestimmen,
ob die nächste
Anweisung von der Verarbeitungseinheit 10 der Befehl zum Format-Schreiben
ist oder nicht, einen Schritt 409 zum Speichern der Endpositionsinformationen 22 des
letzten Format-Schreibens, wenn die Entscheidung in Schritt 408 „nein" lautet, einen Schritt 410 zum
Vergleichen der in Schritt 409 gespeicherten Endpositionsinformationen 22 des
letzten Format-Schreibens mit der Endblocknummer in der logischen
Spur für
die Blöcke 30,
die die logische Spur in dem Cache-Speicher bilden, einen Schritt 411 zum Setzen
des Lösch-Flags
auf „1", wenn die Entscheidung
in Schritt 410 eine Nichtübereinstimmung ergibt, und
einen Schritt 412 zum Setzen des Lösch-Flags auf „0", wenn die Entscheidung
in Schritt 410 eine Übereinstimmung
ergibt.
-
Das
Verfahren zum Bestimmen dessen, ob der Befehl zum Format-Schreiben
der Befehl für
das letzte Format-Schreiben ist oder nicht, ist nachstehend beschrieben.
In Schritt 407 in 5 überträgt die Steuereinheit 121 die
Daten in den Cache-Speicher 126 und informiert danach die
Verarbeitungseinheit 10 über den Abschluss der Datenübertragung. Wenn
der nächste
von der Verarbeitungseinheit 10 gesendete Befehl nicht
der Befehl zum Format-Schreiben ist, wird dann festgestellt, dass
der vorherige Befehl zum Format-Schreiben (in Schritt 400)
von der Verarbeitungseinheit 10 der Befehl für das letzte
Format-Schreiben ist, und die Endposition des letzten Format-Schreibens
wird in Schritt 409 in der Steuertabelle 127 gespeichert.
-
6 umfasst
einen Schritt 50 zum Bestimmen dessen, ob die Steuereinheit
A 121 oder B 122 sich selbst anweist, Daten einer
logischen Spur aus dem Cache-Speicher 126 an die Platteneinheit 13 zu schreiben
oder nicht, einen Schritt 51 zur Bezugnahme auf die logische
Spur-Steuer tabelle der in die Platteneinheit 13 zu schreibende
logischen Spur, wenn die Entscheidung in Schritt 50 „ja" lautet, einen Schritt 52 zum
Bestimmen, ob das in Schritt 51 unter Bezug genommene Lösch-Flag
gesetzt ist oder nicht, einen Schritt 53 zum Übertragen
der Daten ab der Kopfposition der logischen Spur bis zu der in Schritt 51 unter
Bezug genommenen Endposition des letzten Format-Schreibens an die
Platteneinheit 13, wenn die Entscheidung in Schritt 52 „ja" lautet (das Flag
ist gesetzt), einen Schritt 54 zum Setzen der Löschdaten
auf der Datenübertragungseinheit
B 125 und einen Schritt 55 zum Übertragen
der Daten ab dem Block unmittelbar nach den in Schritt 51 unter Bezug
genommenen Endpositionsinformationen 22 des letzten Format-Schreibens bis zu
dem Endblock an die Platteneinheit 13. 5 bezieht
sich auf die Verarbeitung mit der Verarbeitungseinheit A 121 und 6 auf
die Verarbeitung mit der Verarbeitungseinheit B 122.
-
Wenn
in Schritt 52 festgestellt wird, dass das Lösch-Flag nicht gesetzt
ist, wird die normale Datenverarbeitung ausgeführt. Das heißt, die
Daten ab der Kopfposition der logischen Spur bis zur Endposition werden
aus dem Cache-Speicher
an die Platteneinheit übertragen.
-
Die
Funktionen der verschiedenen Einheiten, wenn nur die Daten in dem
gültigen
Bereich gelesen und geschrieben werden dürfen, werden nachstehend erläutert.
-
Wenn
die Verarbeitungseinheit 10 eine Zugriffsanforderung wie
z. B. eine Leseanforderung für Daten
in einer logischen Spur oder eine Schreibanforderung ohne das Format-Schreiben an die
Steuereinheit ausgibt, erkennt die Steuereinheit A 121 die logische
Spurnummer aus den Zugriffsinformationen von der Verarbeitungseinheit 10 und
bestimmt, ob die der logischen Spur entsprechende logische Spur-Steuertabelle 127 im
Steuerinformationenspeicher 123 vorhanden ist oder nicht.
Wenn sie nicht vorhanden ist, entspricht dies nicht dem Betrieb
nach der vorliegenden Ausführungsform,
weshalb auf eine Erläuterung
verzichtet wird.
-
Wenn
die logische Spur-Steuertabelle 127 für die logische Spur vorhanden
ist, wird das Lösch-Flag 21 in
der logischen Spur-Steuertabelle 127 unter Bezug genommen,
und wenn das Flag gesetzt ist, werden die Endpositionsinformationen 22 des
letzten Format-Schreibens in der logischen Spur-Steuertabelle 127 unter
Bezug genommen. Die Rückumwandlung
der Endpositionsinformationen 22 des letzten Format-Schreibens
in die Segmentnummer wird mit der Segmentnummer des Zugriffsfelds verglichen,
das anhand der Zugriffsinformationen von der Verarbeitungseinheit 10 ermittelt
wird. Ist die Segmentnummer des Zugriffsfelds kleiner als die Segmentnummer
für die
Endposition des letzten Format-Schreibens, d. h. wenn das Zugriffsfeld
vor der Endposition des letzten Format-Schreibens liegt (zum Kopf
der logischen Spur hin), wird das Vorliegen des Datensatzes gemeldet,
und der Zugriff wird gewährt.
Anderenfalls wird das Fehlen des Datensatzes, auf den zugegriffen
werden soll, an die Verarbeitungseinheit 10 gemeldet, und
der Zugriff auf den Block in dem Bereich, der durch die Segmentnummer für den Zugriff
durch die Zugriffsinformationen angegeben ist, wird nicht gewährt.
-
Dies
ist in dem Ablaufdiagramm in 7 gezeigt. 7 umfasst
einen Schritt 60 zum Erkennen der logischen Spurnummer
für den
Zugriff aus den Zugriffsinformationen von der Verarbeitungseinheit 10,
einen Schritt 61 zum Bestimmen, ob die der in Schritt 60 erkannten
logischen Spur entsprechende logische Spur-Steuertabelle 127 vorhanden
ist oder nicht, einen Schritt 62 zum Bestimmen, ob das Lösch-Flag 21 gesetzt
ist oder nicht, wenn die Entscheidung in Schritt 61 „ja" lautet, einen Schritt 63 zum
Bestimmen, ob die Endposition des letzten Format-Schreibens hinter
der Position des Datensatzes für
den Zugriff entsprechend den Zugriffsinformationen von der Verarbeitungseinheit 10 liegt
oder nicht, wenn die Entscheidung in Schritt 62 „ja" lautet, einen Schritt 64 zum
Melden des Vorhandenseins des Datensatzes für den Zugriff an die Verarbeitungseinheit 10 und
zum Gewähren
der Zugriffsanforderung, wenn die Entscheidung in Schritt 63 „ja" lautet, und einen
Schritt 65 zum Melden des Fehlens des Datensatzes für den Zugriff
an die Verarbeitungseinheit und zum Nichtgewähren der Zugriffsanforderung,
wenn die Entscheidung in Schritt 63 „nein" lautet.
-
Nach
der vorliegenden Ausführungsform sind
das Lösch-Flag 21 und
die Endpositionsinformationen 22 des letzten Format-Schreibens
für jede
logische Spur in der logischen Spur-Steuertabelle 127 enthalten,
die durch die logische Spureinheit des Cache-Speichers 126 festgelegt
wird, und zum Schreiben oder Hinzufügen des neuen Datensatzes,
der mit dem Format-Schreiben verbunden ist, in die logische Spur,
ist nur das Aktualisieren der Endpositionsinformationen 22 des
letzten Format-Schreibens, die den gültigen Datenbereich in der
logischen Spur angeben, und das Lösch-Flag 21, das die Notwendigkeit des
Löschens
angibt, erforderlich, und das Löschen wird
nicht ausgeführt.
Erfolgt das Schreiben aus dem Cache-Speicher 126 in die
Platteneinheit 13 durch die logische Spureinheit, wird
das der logischen Spur entsprechende Lösch-Flag 21 unter
Bezug genommen, und das Löschen
wird nur bei Bedarf ausgeführt.
Wenn daher die Platteneinheit 13, auf der die Daten im
Format mit fester Datensatzlänge
aufgezeichnet werden, in dem System mit der Verarbeitungseinheit 10,
die die Daten in dem Format mit variabler Datensatzlänge verarbeitet,
an die Steuereinheit 12 angeschlossen ist, können der
Löschbereich und
die Häufigkeit
der Ausführung
minimiert werden.
-
Bei
der Zugriffsanforderung wie z. B. zum Aktualisieren oder Lesen des
vorhandenen Datensatzes in der logischen Spur, die nicht mit dem
Format-Schreiben verbunden ist, wird die mit der Zugriffsanforderung
angegebene Segmentnummer mit den Endpositionsinformationen 22 des
letzten Format-Schreibens verglichen, und der Zugriff auf den ungültigen Bereich
ab der durch die Endpositionsinformationen 22 des letzten
Format-Schreibens in der logischen Spur angege benen Position bis
zum Spurende wird zurückgewiesen,
so dass das fehlerhafte Lesen der Daten, die gelöscht werden sollen, oder ihre
Verarbeitung als die zu überschreibenden
Daten verhindert wird.
-
Weil
die Anzahl der logischen Spur-Steuertabellen 127 im Höchstfall
gleich der Anzahl der logischen Spuren in dem Cache-Speicher 126 ist,
kann Kapazität
des Steuerinformationenspeichers 123, in dem die logische
Spur-Steuertabelle 127 eingerichtet ist, gegenüber der
Situation eingespart werden, bei der die Informationen zur Steuerung
des Löschens der
Spur auf der Platteneinheit 13 wie nach dem Stand der Technik
bereitgestellt werden.
-
Obwohl
die bevorzugte Ausführungsform
der vorliegenden Erfindung ausdrücklich
und ausführlich beschrieben
worden ist, ist zu beachten, dass die vorliegende Erfindung nicht
auf die vorstehende Ausführungsform
beschränkt
ist und dass verschiedene Modifikationen derselben möglich sind,
ohne vom Gedanken der Erfindung abzuweichen.
-
Bei
der vorliegenden Erfindung sind zum Beispiel die Positionsinformationen
in der logischen Spur, die in der Steuereinheit verarbeitet werden, nicht
auf die Segmentnummer und die Blocknummer beschränkt, wie in der Ausführungsform
gezeigt, sondern die Datenlänge
an sich kann ebenfalls verwendet werden.
-
Bei
dem Steuerverfahren und der Steuervorrichtung für das externe Speicherteilsystem
nach der vorliegenden Ausführungsform
sind der Löschbereich
und die Häufigkeit
der Ausführung
minimiert und der Durchsatz der Datenübertragung zwischen der Verarbeitungseinheit
und der rotierenden Speichervorrichtung ist optimiert.
-
Insbesondere
sind der Löschbereich
und die Häufigkeit
der Ausführung
minimiert, ohne die Zuverlässigkeit
der Daten zu beeinträchtigen.
-
Weiter
sind der Löschbereich
und die Häufigkeit
der Ausführung
mit weniger Ressourcen minimiert.