DE3721576A1 - CONTROL PROCEDURE FOR INPUT / OUTPUT UNITS - Google Patents

CONTROL PROCEDURE FOR INPUT / OUTPUT UNITS

Info

Publication number
DE3721576A1
DE3721576A1 DE19873721576 DE3721576A DE3721576A1 DE 3721576 A1 DE3721576 A1 DE 3721576A1 DE 19873721576 DE19873721576 DE 19873721576 DE 3721576 A DE3721576 A DE 3721576A DE 3721576 A1 DE3721576 A1 DE 3721576A1
Authority
DE
Germany
Prior art keywords
planning
input
unit
prefetch
rewrite
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.)
Withdrawn
Application number
DE19873721576
Other languages
German (de)
Inventor
Akira Yamamoto
Miho Motoyama
Hiroyuki Kitajima
Mikito Ogata
Toshifumi Nishimura
Takashi Doi
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of DE3721576A1 publication Critical patent/DE3721576A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/122Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer
    • 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
    • G06F2003/0697Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Communication Control (AREA)

Abstract

In an input/output (I/O) scheduling method wherein I/O units (14) perform pre-processes of fixed time interval off-line from a controller (13) before data transfer processes, wherein a plurality of blocks are prefetched/postwritten between the I/O units and a buffer (21) disposed within the controller, and wherein a schedule process for determining a prefetch/postwrite data amount and a prefetch/postwrite data transfer start time of one I/O unit is executed at one schedule point, a next 28 schedule point is set to be earlier by the pre-process time interval than a time at which a prefetch/postwrite data transfer process scheduled at a present schedule point ends, and whether the transfer process of the I/O unit scheduled at the present point is executed or that of another I/O unit is executed is further determined depending upon an operating situation at the next schedule point. Allowance is thus made for e.g. the (off-line) start/stop/repositioning intervals of magnetic tape units. <IMAGE>

Description

Die Erfindung betrifft ein Steuerverfahren für Eingabe/Ausgabeeinheiten und insbesondere ein Vorabruf/Nachschreibplanungsverfahren für die Steuerung mehrerer Eingabe/Ausgabeeinheiten bei denen nicht nur vor dem Datenübertragungsvorgang sogenannte Vorabrufprozesse off-line von einem Steuergerät durchgeführt werden, sondern auch die Startverarbeitungszeiten und Stopzeiten der jeweiligen Eingabe/Ausgabeeinheiten ungleichmäßig verteilt sein können. Eine übliche Magnetplatteneinheit enthält eine Unterdruckkammer und kann deshalb ihr Magnetband sehr schnell mit Hilfe der Unterdruckkammer starten. Dagegen ist bei einer Kassettenmagnetbandeinheit keine Unterdruckkammer vorgesehen, um Gewicht und Platz zu sparen, weshalb hier zum Start des Magnetbandes eine längere Zeit nötig ist. Deshalb hat man schon ein ähnliches Steuerverfahren wie bei Platteneinheiten vorgeschlagen, bei dem der Startvorgang off-line ausgeführt wird und nach dem Start die Magnetbandeinheit erneut in einem Stadium, in dem eine Datenübertragung möglich wurde, mit einem Steuergerät verbunden wird.The invention relates to a control method for input / output units and in particular a pre-fetch / post-planning process for controlling multiple input / output units where not just before the data transfer process so-called prefetch processes off-line from a control unit, but also the Start processing times and stop times of the respective Input / output units can be distributed unevenly. A common magnetic disk unit contains a vacuum chamber and can therefore use your magnetic tape very quickly start with the help of the vacuum chamber. Against is a vacuum magnetic tape unit no vacuum chamber provided to save weight and space, which is why here It takes a long time to start the magnetic tape. Therefore you already have a tax procedure similar to proposed for disk units in which the starting process is executed off-line and after starting the  Magnetic tape unit again at a stage in which a data transmission was possible, connected to a control unit becomes.

Die Kassettenmagnetbandeinheit, die die obigen Eigenschaften aufweist, hat jedoch die Schwierigkeit, daß, sobald die Datenübertragung beendet ist, erneut Verarbeitungszeit zum Anhalten und Neupositionieren nötig ist und daß die Startvorgänge sehr viel länger als bei üblichen Magnetbandeinheiten, die eine Unterdruckkammer verwenden, dauern.The cassette magnetic tape unit that has the above characteristics has the difficulty, however, that once data transfer is complete, processing time again is necessary to stop and reposition and that the Starting processes much longer than with conventional magnetic tape units, that use a vacuum chamber last.

Es ist deshalb Aufgabe der Erfindung, ein Eingabe/Ausgabeplanungsverfahren zu ermöglichen, das die oben angeführten Schwierigkeiten vermeidet und das auch in einem Fall, wo die Häufigkeit wiederholter Zugriffe zu den jeweiligen Eingabe/Ausgabeeinheiten nicht gleichförmig ist, eine sich zwischen der jeweiligen Eingabe/Ausgabeeinheit und einem Steuergerät, das diese steuert, erstreckender Datenübertragungsweg wirkungsvoll ausnutzt und den Datenvorabruf/Nachschreibvorgang mit möglichst kleiner Pufferkapazität realisiert.It is therefore an object of the invention to provide an input / output planning method to enable the above Avoids difficulties, even in a case where the frequency of repeated access to the respective Input / output units is not uniform, one itself between the respective input / output unit and one Control device that controls this extending data transmission path used effectively and the Data retrieval / rewriting process with the smallest possible Buffer capacity realized.

Das die obige Aufgabe lösende Eingabe/Ausgabeplanungsverfahren verwendet in einem Fall, wo die Eingabe/Ausgabeeinheiten off-line von einem Steuergerät vor dem Datenübertragungsvorgang eine zeitlich festgelegte Vorverarbeitung ausführen, und Vorabruf/Nachschreibverarbeitungen für eine Vielzahl von zwischen den Eingabe/Ausgabeeinheiten und einem in dem Steuergerät vorgesehenen Puffer stattfinden einen Planungsprozeß, der die Datenmenge und die Übertragungszeit für den Vorabruf/Nachschreibvorgang einer Eingabe/Ausgabeeinheit ermittelt der zu einem Planungszeitpunkt durchgeführt wird, und ist dadurch gekennzeichnet, daß ein nächster Planungszeitpunkt so festgelegt wird, daß er um die Vorverarbeitungszeitdauer vor einem Zeitpunkt, an dem der Vorabruf/Nachschreibdatenübertragungsprozeß, der zum gegenwärtigen Planungszeitpunkt geplant ist, endet, liegt, und daß beim nächsten Planungszeitpunkt weiter in Abhängigkeit von den Betriebsbedingungen bestimmt wird, ob der Vorabruf/Nachschreibplanungsprozeß für die zum gegenwärtigen Zeitpunkt geplante Eingabe/Ausgabeeinheit fortgesetzt werden soll oder ob der Vorabruf/Nachschreibplanungsprozeß einer anderen Eingabe/Ausgabeeinheit durchgeführt werden soll.The input / output planning method that solves the above task used in a case where the input / output units off-line from a control unit in front of the Data transfer process a timed preprocessing execute, and prefetch / postprocessing for a variety of between input / output units and a buffer provided in the control device  take place a planning process that the amount of data and the transmission time for the prefetch / rewriting process an input / output unit determines the one Planning time is carried out, and is characterized in that a next Planning time is determined so that it is around Preprocessing period before a time when the Prefetch / rewrite data transfer process to the current time of planning is planned ends lies, and that will continue to depend on the next planning point it is determined by the operating conditions whether the prefetch / post-scheduling process for the current one Scheduled input / output unit continued or whether the prefetch / rewrite planning process another input / output unit should.

Die Erfindung wird im folgenden anhand der Zeichnung näher beschrieben. Es zeigtThe invention will now be described with reference to the drawing described. It shows

Fig. 1 ein Verarbeitungsflußdiagramm eines erfindungsgemäßen Ausführungsbeispiels; FIG. 1 shows a processing flow of an embodiment of the invention;

Fig. 2 Die Rechnerarchitektur als Grundlage des erfindungsgemäßen Verfahrens; Fig. 2, the computer architecture as the basis of the inventive method;

Fig. 3 ein Blockschaltbild eines Steuergeräts im System; Fig. 3 is a block diagram of a control unit in the system;

Fig. 4 eine Formattabelle für Steuergerätverwaltungsinformation; Fig. 4 is a table format for controller management information;

Fig. 5 eine Formattabelle für Magnetbandverwaltungsinformation; Fig. 5 is a format table for magnetic tape management information;

Fig. 6 eine Formattabelle einer Vorabruf/Nachschreibsteuerschlange; Fig. 6 is a format table of a prefetch / Nachschreibsteuerschlange;

Fig. 7 ein das Grundprinzip der Erfindung darstellendes Diagramm; Fig. 7 is a basic principle of the invention, illustrative diagram;

Fig. 8 ein Diagramm, das ein Verfahren zum Festsetzen des nächsten Planungszeitpunktes erläutert; und Fig. 8 is a diagram explaining a method of setting the next planning time; and

Fig. 9 ein Flußdiagramm mit Einzelheiten eines Teilprozesses von Fig. 1. Fig. 9 is a flowchart showing details of a subprocess of FIG. 1,.

Zunächst wird das Prinzip, das der Erfindung zugrundeliegt, beschrieben.First, the principle on which the invention is based, described.

In einem Fall, bei dem derVorabruf/Nachschreibplanungsprozeß einer bestimmten Magnetbandeinheit gestartet wurde, wird zunächst eine Startanforderung für diese Magnetbandeinheit ausgegeben. Das heißt, daß diese Magnetbandeinheit den Neupositionierungsvorgang beendet haben muß. Nachstehend wird die Magnetbandeinheit auch kurz mit MT-Einheit bezeichnet.In a case where the prefetch / rewrite planning process a certain magnetic tape unit was started, will first be a start request for this magnetic tape unit  spent. That is, this magnetic tape unit must have completed the repositioning process. Below the magnetic tape unit is also called MT unit for short.

Diese Magnetbandeinheit erfüllt entweder die Bedingung (Bedingung 1), daß seit dem letzten Planungszeitpunkt des letzten Vorabruf/Nachschreibprozesses dieser Magnetbandeinheit die Summe aus der Zeitdauer der Datenübertragung durch andere Magnetbandeinheiten über die Kanäle und der Leerlaufzeitdauer für einen Datenübertragungsweg über die Kanäle die Gesamtzeitdauer der für den Bandstop, das Neupositionieren und die Startvorgänge dieser bestimmten Magnetbandeinheit nötigen Zeiten überschreitet, oder die Bedingung (Bedingung 2), daß die von der geplanten MT-Einheit selbst mit dem Kanal ausgetauschte Datenmenge seit dem zuvor genannten Zeitpunkt einen vorbestimmten Wert überschreitet.This magnetic tape unit either fulfills the condition (condition 1 ) that since the last planning point in time of the last pre-call / rewriting process of this magnetic tape unit, the sum of the time period of data transmission by other magnetic tape units via the channels and the idle time period for a data transmission path via the channels the total time period for the Tape stop, the repositioning and the start-up times of this particular magnetic tape unit exceeds the necessary times, or the condition (condition 2 ) that the amount of data exchanged by the planned MT unit itself with the channel has exceeded a predetermined value since the aforementioned time.

Hier soll die Menge der Vorabruf/Nachschreibdaten die Menge derjenigen Daten sein, die seit dem Zeitpunkt des letzten Vorabruf/Nachschreibplanungsprozesses der Magnetbandeinheit zwischen dieser Magnetbandeinheit und dem Kanal übertragen wurde. Demgemäß kann in diesem Fall der nächste Planungszeitpunkt um die Zeitdauer des Startprozesses früher als der Endpunkt des Vorabruf/Nachschreibdatenübertragungsprozesses, der zum gegenwärtigen Planungspunkt geplant ist, festgesetzt werden.Here the amount of the pre-call / post-write data should be the Amount of data that has been available since the time of the last pre-call / post-planning process of the Magnetic tape unit between this magnetic tape unit and was transmitted to the channel. Accordingly, in this case the next planning time around the duration of the start process earlier than the end point of the prefetch / rewrite data transfer process, the current one Planning point is planned to be set.

Genauer wird der Vorabruf/Nachschreibdatenübertragungsprozeß, der zum gegenwärtigen Planungspunkt geplant ist, um die Zeitdauer des Startprozesses nach dem gegenwärtigen Planungszeitpunkt gestartet, so daß der nächste Planungszeitpunkt zu einem Zeitpunkt festgesetzt werden kann, der um die für den geplanten Vorabruf/Nachschreibdatenübertragungsprozeß nach dem gegenwärtigen Planungspunkt kommt. Wenn zum gegenwärtigen Planungspunkt die oben genannte Bedingung 1 erfüllt ist, werden die Daten einer anderen Magnetbandeinheit beim nächsten Planungspunkt der Vorabruf/Nachschreibverarbeitung unterworfen.More specifically, the prefetch / post-update data transfer process scheduled at the current planning point is started by the period of time of the start process after the current schedule point in time, so that the next schedule time can be set at a time around that for the scheduled prefetch / post-update data transfer process after the current schedule point is coming. If the above condition 1 is satisfied at the current schedule point, the data of another magnetic tape unit is subjected to the pre-fetch / rewrite processing at the next schedule point.

Wenn im Gegensatz die oben genannte Bedingung 1 beim gegenwärtigen Planungspunkt nicht erfüllt ist, wird der Planungsprozeß der bestimmten Magnetbandeinheit auch am nächsten Planungspunkt durchgeführt. Der letzte Planungspunkt, an dem die Bedingung 1 erfüllt war, wird als letzter Planungspunkt des einzelnen Vorabruf/Nachschreibprozesses, der unter kontinuierlicher Belegung des Datenübertragungspfads durchgeführt wird, angenommen. An dem dem Erfüllungszeitpunkt der Bedingung 1 nachfolgenden Planungspunkt wird der Vorabruf/Nachschreibplanungsprozeß der anderen MT-Einheit initiiert.In contrast, if the above condition 1 is not met at the current planning point, the planning process of the specific magnetic tape unit is also carried out at the next planning point. The last planning point at which condition 1 was fulfilled is assumed to be the last planning point of the individual pre-fetching / rewriting process, which is carried out while continuously occupying the data transmission path. At the planning point following the fulfillment time of condition 1 , the pre-fetch / rewrite planning process of the other MT unit is initiated.

Im folgenden werden anhand der Zeichnung Ausführungsbeispiele gemäß der Erfindung beschrieben.The following are exemplary embodiments with reference to the drawing described according to the invention.

Fig. 2 zeigt die Architektur eines Computersystems auf das die vorliegende Erfindung gerichtet ist. Das Computersystem besteht aus einer CPU 10, einem Hauptspeicher 11, einem Kanal 12, einem Steuergerät 13 und zumindest zwei Magnetbandeinheiten (abgekürzt: MT-Einheiten) 14. Fig. 2 shows the architecture of a computer system to which the present invention is directed. The computer system consists of a CPU 10 , a main memory 11 , a channel 12 , a control device 13 and at least two magnetic tape units (abbreviated: MT units) 14 .

Fig. 3 zeigt den inneren Aufbau des Steuergeräts 13 und dessen Verbindung mit den MT-Einheiten. Ein Prozessor 20 führt die Steuerung der Datenübertragungen zwischen Kanal 12, den MT-Einheiten 14 sowie die Verwaltung eines Puffers 21 aus. Der Puffer 21 ist in mehrere Abschnitte eingeteilt, die dynamisch den MT-Einheiten 14 zugeordnet werden. Fig. 3 shows the internal structure of the control unit 13 and its connection to the MT units. A processor 20 carries out the control of the data transfers between channel 12 , the MT units 14 and the management of a buffer 21 . The buffer 21 is divided into several sections that are dynamically assigned to the MT units 14 .

In dieser Ausführungsart wird der Aufbau des Puffers 21 nicht im einzelnen beschrieben. Deshalb wird angenommen, daß die Kapazität des Puffers 21 ausreichend ist, und ein Fall bei dem der Datenübertragungsprozeß unterbrochen ist, weil keine freien Speicherplätze im Puffer 21 zur Verfügung stehen, nicht vorkommt. Außerdem ist angenommen, daß, falls innerhalb eines gegebenen Abschnittes ein freier Bereich zu klein geworden ist, die jeweilige MT-Einheit 14 die notwendige Anzahl der Abschnitte erneut sicherstellt und daß diese, falls ein bestimmter Abschnitt als ganzes belegt ist, diesen Abschnitt freigibt. Da die oben genannten Verarbeitungen zum Sicherstellen von Speicherplätzen und Freigeben von Speicherbereichen die vorliegende Erfindung nicht betreffen, werden sie auch nicht im einzelnen beschrieben. Außerdem sind solche Verfahren, die die Speicherplätze in Zuordnung zu den jeweiligen MT-Einheiten 14 und die freien Bereiche verwalten, bekannt. In this embodiment, the structure of the buffer 21 is not described in detail. Therefore, it is assumed that the capacity of the buffer 21 is sufficient, and a case in which the data transfer process is interrupted because there are no free storage spaces in the buffer 21 does not occur. In addition, it is assumed that if a free area has become too small within a given section, the respective MT unit 14 again ensures the necessary number of sections and that, if a certain section is occupied as a whole, this section is released. Since the above-mentioned processing for securing storage spaces and releasing storage areas do not relate to the present invention, they are also not described in detail. In addition, such methods are known that manage the memory locations in association with the respective MT units 14 and the free areas.

Eine Datenübertragungseinheit 22 führt die Datenübertragung zwischen dem Kanal 12 und dem Puffer 21 durch. Außerdem führt eine Datenübertragungseinheit 23 die Datenübertragung zwischen den MT-Einheiten 14 und dem Puffer 21 durch. Die oben genannten beiden Datenübertragungseinheiten 22 und 23 werden vom Prozessor 20 gesteuert.A data transmission unit 22 carries out the data transmission between the channel 12 and the buffer 21 . In addition, a data transmission unit 23 carries out the data transmission between the MT units 14 and the buffer 21 . The above-mentioned two data transmission units 22 and 23 are controlled by the processor 20 .

Ein Takt oder eine Uhr 24 gibt die vorhandene Zeit an. Ein Timer 25 setzt ein Timer-Kennzeichen 26 nach einer vom Prozessor 20 bestimmten Zeit auf "Ein". Ein Steuergerätverwaltungsinformationsteil 28 bildet einen Informationsteil, der mit dem Steuergerät 13 korrespondiert. Außerdem ist ein MT-Verwaltungsinformationsteil 27 in Korrespondenz mit den jeweiligen MT-Einheiten 14 vorgesehen.A measure or a clock 24 indicates the available time. A timer 25 sets a timer flag 26 to "on" after a time determined by the processor 20 . A control unit management information part 28 forms an information part that corresponds to the control unit 13 . In addition, an MT management information part 27 is provided in correspondence with the respective MT units 14 .

Ein Datenübertragungsweg 29 A und ein Steuerinformationsweg 29 B sind zwischen den MT-Einheiten 14 und dem Steuergerät 13 vorgesehen. Der Steuerinformationsweg 29 B wird für die Ausgabe einer Startanforderung an jede MT-Einheit 14, die Ausgabe einer Stop/Neupositionierungsanforderung, den Empfang einer Nachricht über die Beendigung eines Startprozesses sowie einer Nachricht über die Beendigung der Neupositionierung, usw. verwendet.A data transmission path 29 A and a control information path 29 B are provided between the MT units 14 and the control unit 13 . The Steuerinformationsweg 29 B is used for the output of a start request to each of MT-unit 14, the output of a Stop / Neupositionierungsanforderung, receipt of a message of the completion of a start process and a message of the completion of the repositioning, etc. are used.

Der Datenübertragungsweg 29 A wird zur Übertragung der Daten verwendet. Da der Steuerübertragungsweg 29 B und der Datenübertragungsweg 29 A unabhängig voneinander arbeiten, kann die Startanforderung für eine andere MT-Einheit 14 während der Datenübertragung mit einer bestimmten anderen MT-Einheit 14 ausgegeben werden.The data transmission path 29 A is used to transmit the data. Since the control transmission path 29 B and the data transmission path 29 A operate independently of one another, the start request for another MT unit 14 can be issued during the data transmission with a specific other MT unit 14 .

Zur Übertragung der Stop/Neupositionierungsanforderungen für die jeweiligen MT-Einheiten 14 und für den Empfang der Startendenachricht und der Neupositionierungsnachricht von der MT-Einheit 14 kann entweder der Datenübertragungsweg 29 A oder der Steuerinformationsweg 29 B eingesetzt werden. In Fig. 4 ist das Format des Steuergerätverwaltungsinformationsteils 28 dargestellt. Dieser Informationsteil speichert Informationsposten in Korrespondenz mit dem Steuergerät 13. Hier werden nur die Informationsposten beschrieben, die die vorliegende Erfindung direkt betreffen.Either the data transmission path 29 A or the control information path 29 B can be used to transmit the stop / repositioning requests for the respective MT units 14 and for receiving the start end message and the repositioning message from the MT unit 14 . In FIG. 4 the format of the controller management information part 28 is illustrated. This information part stores information items in correspondence with the control unit 13 . Only the items of information directly related to the present invention are described here.

Zuerst zeigt ein Vorabruf/Nachschreibplanungszeiger 30 auf den MT-Verwaltungsinformationsteil 27 der Kopf-MT-Einheit 14, der ein Vorabruf/Nachschreibplanungsprozeß zugeordnet ist. Ein Vorabruf/Nachschreibplanungszeiger 31 zeigt auf den MT-Verwaltungsinformationsteil 27 der End-MT-Einheit 14, der der Vorabruf/Nachschreibplanungsvorgang zugeordnet ist.First, a prefetch / rewrite scheduling pointer 30 points to the MT management information part 27 of the head MT unit 14 , which is associated with a prefetch / rewrite scheduling process. A prefetch / rewrite scheduling pointer 31 points to the MT management information part 27 of the end MT unit 14 to which the prefetch / rewrite scheduling process is assigned.

Ein Informationsteil "MT-Datenübertragungsrate" 32 gibt die Datenübertragungsprozeßrate jeder der mit dem Steuergerät 13 verbundenen MT-Einheiten 14 an. Ein Informationsteil "Datenübertragungsmöglichkeitszeit" 33 gibt die Mindestzeitdauer an, die benötigt wird, bevor die MT-Einheit 14 nach der Beendigung einer vorangegangenen Datenübertragung erneut eine Datenübertragung initiieren kann, d. h. die Gesamtzeitdauer aus Stop-, Neupositionierungs- und Startoperationszeit.An information part "MT data transfer rate" 32 indicates the data transfer process rate of each of the MT units 14 connected to the control unit 13 . An information part "data transmission possibility time" 33 specifies the minimum period of time that is required before the MT unit 14 can initiate a data transmission again after the end of a previous data transmission, ie the total period of time consisting of stop, repositioning and start operation time.

Obwohl diese Ausführung einen Fall behandelt, bei dem die Datenübertragungsraten und die Datenübertragungsmöglichkeitszeiten der jeweiligen MT-Einheiten gleich sind, ist die vorliegende Erfindung auch auf solche Fälle vorteilhaft anwendbar, wo sich die einzelnen MT-Einheiten in diesen Eigenschaften unterscheiden.Although this version deals with a case in which the Data transfer rates and the data transfer opportunity times of the respective MT units are the same the present invention is also advantageous in such cases applicable where the individual MT units are in distinguish these properties.

Außerdem wird ein Vorabruf/Nachschreibplanungskennzeichen 34 "ein"-geschaltet, wenn der nächste Vorabruf/Nachschreibplanungspunkt gesetzt wurde. Der Anfangswert des Kennzeichens 34 soll "Aus" sein.In addition, a prefetch / rewrite scheduling flag 34 is turned "on" when the next prefetch / rewrite scheduling point has been set. The initial value of the label 34 should be "off".

Fig. 5 zeigt das Format des MT-Verwaltungsinformationsteils 27. Hier sind Informationsteile gespeichert, die für die jeweiligen MT-Einheiten 14 vorgesehen sind, wobei nur solche Posten erläutert werden, die die vorliegende Erfindung betreffen. Fig. 5 shows the format of the MT-management information part 27. Here, pieces of information are stored which are provided for the respective MT units 14 , only those items which relate to the present invention being explained.

Ein Posten MTiD 40 ist die Kennzeichnungsinformation für die MT-Einheit 14 und er gibt an, zu welcher MT-Einheit 14 der vorliegende MT-Verwaltungsinformationsteil 27 gehört.An item MTiD 40 is the identification information for the MT unit 14 and indicates which MT unit 14 the present MT management information part 27 belongs to.

Ein Vorabruf/Nachschreib-Rückwärtszeiger 41 zeigt auf den MT-Verwaltungsinformationsteil 27 der MT-Einheit, die nachfolgend einer Vorabruf/Nachschreibplanungsprozedur unterworfen werden soll. Außerdem zeigt ein Vorabruf/Nachschreib-Vorwärtszeiger 42 auf den MT-Verwaltungsinformationsteil 27 der MT-Einheit, die vor der jetzigen MT-Einheit 14 einem Vorabruf/Nachschreibplanungsprozeß unterworfen ist. Diese Beziehung ist in Fig. 6 als Vorabruf/Nachschreibschlange 500 dargestellt. Der MT-Verwaltungsinformationsteil 27, den der Prozessor 20 der Vorabruf/Nachschreibplanung unterwirft, liegt am Kopf der Schlange 500. Wenn der Vorabruf/Nachschreibplanungsprozeß einer bestimmten MT-Einheit 14 beendet ist, schiebt der Prozessor 20 den MT-Verwaltungsinformationsteil 27 dieser MT-Einheit zum Ende der Schlange 500. Beim Suchen der MT-Einheit, die nachfolgend für die Vorabruf/Nachschreibplanung vorgesehen ist, wird der Zeiger, der auf die MT-Einheit, die die Bedingung erfüllt, vom Kopf der Schlange 500 an gesucht. Wenn dieser Zeiger gefunden wurde, wird der MT-Verwaltungsinformationsteil 27 dieser MT-Einheit zum Kopf der Schlange 500 verschoben.A prefetch / rewrite back pointer 41 points to the MT management information part 27 of the MT unit, which is subsequently to be subjected to a prefetch / rewrite planning procedure. In addition, a prefetch / rewrite forward pointer 42 points to the MT management information part 27 of the MT unit which is undergoing a prefetch / rewrite planning process before the current MT unit 14 . This relationship is shown in FIG. 6 as prefetch / rewrite queue 500 . The MT management information part 27 , which the processor 20 subjects to the prefetch / post-scheduling, is located at the head of the queue 500 . When the prefetch / rewrite scheduling process of a particular MT unit 14 is finished, the processor 20 pushes the MT management information part 27 of that MT unit to the end of the queue 500 . When searching for the MT unit, which is subsequently provided for the pre-fetch / rewrite planning, the pointer which points to the MT unit which fulfills the condition is searched from the head of the queue 500 . When this pointer is found, the MT management information part 27 of this MT unit is moved to the head of the queue 500 .

In der Schlange 500 sind diejenigen MT-Einheiten 14 registriert, deren Kassetten auf einem Deck befestigt sind. Allgemein wird eine Befestigungsanforderung für jede MT-Einheit 14 dynamisch ausgegeben, und wenn die MT-Einheit ihren Betrieb beendet hat, wird sie einem Rückspulvorgang unterworfen und danach ausgesondert.Those MT units 14 whose cassettes are fastened on a deck are registered in the queue 500 . Generally, an attachment request is dynamically issued for each MT unit 14 , and when the MT unit has finished operating, it is rewound and then discarded.

Entsprechend ändert sich der Satz der in der Schlange 500 registrierten MT-Einheiten dynamisch. Da jedoch diese Betriebsart die vorliegende Erfindung nicht direkt betrifft, wird sie in der Beschreibung der Ausführungsbeispiele nicht gesondert behandelt, und Fälle, wo die Steuerung 13 eine Befestigungsanforderung und eine Rückspulanforderung vom Kanal 12 empfängt, werden nicht gesondert erläutert.Accordingly, the set of MT units registered in the queue 500 changes dynamically. However, since this mode of operation is not directly related to the present invention, it is not dealt with separately in the description of the embodiments, and cases where the controller 13 receives an attachment request and a rewind request from the channel 12 are not separately explained.

Nachstehend wird ein Fall erklärt, wo eine bestimmte Anzahl MT-Einheiten, deren Kassetten befestigt sind, von Anfang an existiert, und wo der Satz dieser Einheiten unverändert betrieben wird.The following explains a case where a certain number MT units, with their cassettes attached, from Beginning exists and where the set of these units is operated unchanged.

In Fig. 5 gibt ein Lese/Schreibkennzeichen 43 an, ob diese MT-Einheit 14 unter einem Leseprozeß oder unter einem Schreibprozeß arbeitet.In Fig. 5, a read / write flag 43 indicates whether this MT unit 14 operates under a read process or under a write process.

Wenn die erste Datenübertragungsanforderung angenommen wurde, wird das Lese/Schreibkennzeichen in den Lesezustand, im Falle einer Leseanforderung und in den Schreibzustand gesetzt, falls die Anforderung eine Schreibanforderung ist.When the first data transfer request is accepted the read / write indicator is in the read state, in case of a read request and in set the write state if the request is a Write request is.

Da jedoch bei dieser Ausführung der Fall beschrieben wird, bei dem der Satz der MT-Einheiten 14 in der Planungsschlange 500 nicht geändert wird, ist weiterhin angenommen, daß das Lese/Schreibkennzeichen 43 bereits gesetzt ist.However, since this embodiment describes the case in which the set of the MT units 14 in the planning queue 500 is not changed, it is further assumed that the read / write flag 43 is already set.

Ein Informationsposten 44 gibt die Datenmenge dieser MT-Einheit 14 im Puffer an. An information item 44 indicates the amount of data of this MT unit 14 in the buffer.

Ein Informationsposten 45 gibt die Menge der Daten an, die jeweils wenn die Datenübertragung zwischen der MT-Einheit 14 und dem Kanal auftritt, addiert wird. Dieser Informationsposten wird gelöscht, wenn der Vorabruf/Nachschreibplanungsprozeß dieser MT-Einheit 14 zu einem Planungszeitpunkt durchgeführt wurde. Im Falle einer MT-Einheit, die erneut den Leseprozeß gestartet hat, muß ein anfänglicher Vorhersagewert der Vorabrufdatenmenge in diesen Bereich 45 gesetzt werden.An information item 45 indicates the amount of data that is added each time data transmission between the MT unit 14 and the channel occurs. This information item is deleted if the pre-fetch / rewrite planning process of this MT unit 14 was carried out at a planning point in time. In the case of an MT unit that has started the reading process again, an initial predictive value of the prefetch data amount must be set in this area 45 .

Wenn vor Start des nächsten Vorabrufs Vorabrufdaten zu Null wurden, wird der Informationsteils 46, der eine Vorabrufeinstelldatenmenge betrifft, zum Einstellen der Vorabrufdatenmenge beim nächsten Vorabrufen verwendet.If prefetch data has become zero before the start of the next prefetch, the information part 46 relating to a prefetch setting data amount is used to set the prefetch data amount at the next prefetch.

Vor der Erläuterung eines Informationspostens 47, der eine letzte Vorabruf/Nachschreibplanungsendzeit betrifft, wird das grundlegende Setzverfahren des erfindungsgemäßen Vorabruf/Nachschreibplanungsprozesses näher erläutert.Before the explanation of an information item 47 relating to a last pre-call / post-planning end time, the basic setting method of the pre-call / post-planning process according to the invention is explained in more detail.

Fig. 7 zeigt einen Umriß dieses Verfahrens. Bei der vorliegenden Erfindung wird die Vorabruf/Nachschreibplanung, sobald diese für eine bestimmte MT-Einheit 14 gestartet wurde, mehrmals, bis eine bestimmte Bedingung erfüllt ist, ausgeführt. Zum Planungszeitpunkt, an dem die Bedingung erfüllt ist, wird die Planung dieser MT-Einheit 14 beendet und zum Vorabruf/Nachschreibplanungsprozeß einer anderen MT-Einheit 14 umgeschaltet. Figure 7 shows an outline of this method. In the present invention, the pre-fetch / rewrite scheduling, once started for a certain MT unit 14 , is executed several times until a certain condition is met. At the time of planning when the condition is fulfilled, the planning of this MT unit 14 is ended and a switch is made to the pre-fetch / rewrite planning process of another MT unit 14 .

Die Vorabruf/Nachschreib-Datenmenge wird bei der vorliegenden Erfindung grundsätzlich auf eine Datenmenge gesetzt, die der Menge der zwischen MT-Einheit 14 und Kanal 12 seit dem letzten Planungszeitpunkt bis zum gegenwärtigen Planungszeitpunkt übertragenen Daten gleichkommt.In the present invention, the prefetch / rewrite data quantity is basically set to a data quantity which is equal to the quantity of data transmitted between the MT unit 14 and the channel 12 since the last planning time up to the current planning time.

Somit wird, wie Fig. 7 zeigt, wenn die bestimmte MT-Einheit (MTi) erneut in einen Vorabruf/Nachschreibplanungsvorgang gefallen ist (zum Punkt 6 in Fig. 7), nachdem die Vorabruf/Nachschreibplanung einmal zu einer anderen MT-Einheit 14 umgeschaltet wurde, die Vorabruf/Nachschreib-Datenmenge der bestimmten MT-Einheit 14 gleich der Menge der zwischen dieser MT-Einheit und dem Kanal 12 seit einem Planungspunkt (der nachstehend als "letzter Vorabruf/Nachschreibplanungsendpunkt" genannt und mit Ziffer 60 in Fig. 7 bezeichnet ist), der umittelbar einem Planungspunkt vorangeht, an dem die Planung zur anderen MT-Einheit 14 im letzten Vorabruf/Nachschreibplanungsprozeß umgeschaltet wurde, transferierten Daten.Thus, as shown in FIG. 7, if the determined MT unit (MTi) has again fallen into a prefetch / rewrite scheduling process (to point 6 in FIG. 7), after the pre-fetch / rewrite scheduling switches to another MT unit 14 once , the prefetch / rewrite data amount of the particular MT unit 14 is equal to the amount of time between that MT unit and the channel 12 since one planning point (hereinafter referred to as "last pre-fetch / rewrite planning end point" and designated by numeral 60 in FIG. 7) is), which immediately precedes a planning point at which planning was switched to the other MT unit 14 in the last pre-fetch / rewrite planning process, transferred data.

Wie schon oben erwähnt, kann die MT-Einheit 14, nachdem sie einmal den Datenübertragungsvorgang beendet hat, den nächsten Datenübertragungsvorgang während ihres Stop- und Neupositionsvorgangs nicht starten. Demgemäß kann der Datenübertragungsweg für eine weitere MT-Einheit, falls für diese mittlerweile ein Vorabruf/Nachschreibprozeß zulässig ist, wirksam ausgenutzt werden. As mentioned above, once the MT unit 14 has finished the data transfer process, it cannot start the next data transfer process during its stop and reposition process. Accordingly, the data transmission path for another MT unit, if a pre-fetch / rewrite process is now permitted for it, can be effectively used.

Gemäß Fig. 7 kann die Zeitdauer der Datenübertragung über den Kanal vom letzten Planungszeitpunkt bis zum gegenwärtigen Zeitpunkt in die Datenübertragungszeit dieser MT-Einheit 14 und diejenige der anderen MT-Einheit 14 eingeteilt werden. Wenn man eine Leerzeit für eine Datenübertragungszeitdauer einer (in Wirklichkeit nicht existierenden) virtuellen MT-Einheit 14 einbezieht, kann die Planung zur anderen MT-Einheit 14 umgeschaltet werden, falls die Bedingung (Bedingung 1) zutrifft, daß die Summe aus der Datenübertragungszeit der anderen MT-Einheit 14 und der Leerzeit größer als die Gesamtzeitdauern der Stop-, Neupositionierungs- und Startprozesse wird.According to FIG. 7, the time period of the data transmission over the channel from the last planning time to the present time can be divided into the data transmission time of this MT unit 14 and that of the other MT unit 14 . If one includes an idle time for a data transmission period of one (in reality not existing) virtual MT unit 14 , the planning can be switched to the other MT unit 14 if the condition (condition 1 ) applies that the sum of the data transmission time of the other one MT unit 14 and the idle time is greater than the total times of the stop, repositioning and starting processes.

Die Datenübertragungszeit der anderen MT-Einheit 14 und die Leerzeit können in Wirklichkeit durch eine Zeitdauer ersetzt werden, die durch Subtraktion der von der zu planenden MT-Einheit 14 benötigten Datenübertragungszeit von einer Zeitdauer erhalten wird, die seit dem letzten Vorabruf/Nachschreibplanungsendpunkt bis zur momentanen Zeit vergangen ist.The data transmission time of the other MT unit 14 and the idle time can actually be replaced by a period of time obtained by subtracting the data transmission time required by the MT unit 14 to be planned from a period of time since the last prefetch / rewrite planning end point to the current one Time has passed.

Bei der nachfolgenden Beschreibung wird diese Maßnahme verwendet. Falls zum gegenwärtigen Planungspunkt 62 die Bedingung 1 erfüllt ist, wird die der Menge der über den Kanal 12 seit dem letzten Vorabruf/Nachschreibplanungsendpunkt 60 übertragenen Daten gleiche Menge als Planungsdatenmenge gesetzt und der Planungsprozeß kann zur anderen MT-Einheit 14 beim nächsten Planungspunkt 63 umgeschaltet werden. This measure is used in the description below. If condition 1 is fulfilled for the current planning point 62 , the quantity equal to the quantity of data transmitted via channel 12 since the last pre-call / rewriting planning end point 60 is set as the planning data quantity and the planning process can be switched to the other MT unit 14 at the next planning point 63 .

Jedoch fällt auch die MT-Einheit 14, für die die Bedingung 1 nicht erfüllt ist, manchmal in den letzten Vorabruf/Nachschreibplanungsprozeß. Der Grund dafür besteht darin, daß die benötigte Kapazität des Puffers 21 unbestimmbar wird, es sei denn, die MT-Einheit 14, für die Bedingung 1 nicht gilt, wird der Vorabruf/Nachschreibplanung unterworfen. In diesem Fall wird die Vorabruf/Nachschreibplanung der bestimmten MT-Einheit 14 auch am nächsten Planungspunkt 63 durchgeführt.However, the MT unit 14 for which the condition 1 is not met also sometimes falls in the last prefetch / rewrite scheduling process. The reason for this is that the required capacity of the buffer 21 becomes indeterminable, unless the MT unit 14 , for which condition 1 does not apply, is subjected to the pre-fetch / rewrite planning. In this case, the pre-call / post-planning of the specific MT unit 14 is also carried out at the next planning point 63 .

Danach wird die Erfüllung der Bedingung 1 auch beim nächsten Planungspunkt 63 geprüft, und der Prozeß der Vorabruf/Nachschreibplanung dieser MT-Einheit fortgesetzt, bis die Bedingung 1 erfüllt ist. An einem Planungspunkt, der dem Planungspunkt folgt, an dem die Erfüllung der Bedingung 1 bestätigt wurde, wird der Planungsvorgang zur anderen MT-Einheit 14 umgeschaltet.Thereafter, the fulfillment of condition 1 is also checked at the next planning point 63 , and the process of prefetching / rewriting planning of this MT unit is continued until condition 1 is fulfilled. At a planning point that follows the planning point at which the fulfillment of condition 1 has been confirmed, the planning process is switched to the other MT unit 14 .

Außerdem wird der Planungspunkt, an dem die Erfüllung der Bedingung 1 bestätigt wurde, zum letzten Vorabruf/Nachschreibplanungsendpunkt zu einem Zeitpunkt, an dem der Planungsprozeß dieser MT-Einheit 14 erneut gestartet wird.In addition, the planning point at which the fulfillment of condition 1 was confirmed becomes the last pre-call / rewrite planning end point at a point in time at which the planning process of this MT unit 14 is started again.

In Fig. 5 gibt der Informationsposten 47 für die letzte Vorabruf/Nachschreibplanungsendzeit 47 eine Zeit an, die vom Takt 24 zum Vorabruf/Nachschreibplanungsendpunkt erhalten wurde. In Fig. 5, the information item 47 for the last prefetch / post-schedule end time 47 indicates a time obtained from the clock 24 to the prefetch / post-schedule end point.

Ein Datenposten 48 gibt die Datenmenge an, die über den Kanal 12 seit dem oben geannten Zeitpunkt übertragen wurde. Falls für eine MT-Einheit 14, die den Leseprozeß gestartet hat, das Vorabrufen durchgeführt wird, muß für die übertragene Datenmenge 48 ein Wert gesetzt werden, der hoch genug ist, um die Vorabruf/Nachschreibstartbedingung zu erfüllen.A data item 48 indicates the amount of data that has been transmitted over the channel 12 since the above-mentioned time. If a prefetch is performed for an MT unit 14 that started the reading process, a value must be set for the amount of data 48 transferred that is high enough to meet the prefetch / rewrite start condition.

Ein Kennzeichen 49 gibt an, daß diese MT-Einheit 14 der Stop- oder Neupositionierungsverarbeitung unterworfen ist.A flag 49 indicates that this MT unit 14 is subjected to the stop or repositioning processing.

Ein Informationsposten 50 gibt für die MT-Einheit 14 die Vorabruf/Nachschreibdatenmenge an.An information item 50 indicates the prefetch / rewrite data amount for the MT unit 14 .

Ein Wartekennzeichen 51 schaltet "Ein", wenn die MT-Einheit 14 im Leseprozeß wegen der Abwesenheit von Vorabrufdaten im Wartezustand ist.A wait flag 51 turns "on" when the MT unit 14 is in the read process in the wait state due to the absence of prefetch data.

Ein Planungsstopbedingungskennzeichen 52 wird in den "Ein"-Zustand versetzt, wenn die Bedingung 1 erfüllt war.A planning stop condition flag 52 is set to the "on" state when condition 1 was met.

Die Anfangswerte des Betriebskennzeichens 49, des Wartekennzeichens 51 und des Planungsstopbedinungskennzeichens 52 müssen dann "Aus" sein.The initial values of the operational indicator 49 , the wait indicator 51 and the planning stop condition indicator 52 must then be "off".

Anhand der Fig. 8 wird nun die Zeitbeziehung, mit der der Vorabruf/Nachschreibplanungsprozeß in der vorliegenden Erfindung und der Prozeß des geplanten Datentransfers der Vorabruf/Nachschreibdaten ausgeführt wird, beschrieben. On the basis of Fig. 8 will now be the timing relationship with the prefetch / Nachschreibplanungsprozeß in the present invention and the process is performed of the planned data transfer prefetch / Nachschreibdaten described.

Der in Fig. 8 gezeigte Planungspunkt 1 wird als der Zeitpunkt angenommen, zu dem eine andere als die MT-Einheit 14 (MTh), die zum Planungszeitpunkt 0 geplant war, geplant wird.The planning point 1 shown in FIG. 8 is assumed to be the time at which a unit other than the MT unit 14 (MTh) that was planned at the planning time 0 is planned.

Dies ist dann die MT-Einheit.This is the MT unit.

Demgemäß wird zum Planungspunkt 1 die Vorabruf/Nachschreibschlange 500 manipuliert, um die MT-Einheit 14 herauszufinden, die die Vorabruf/Nachschreibbedingung 1 erfüllt. Die nachstehende Verarbeitung gibt Inhalte an, die ausgeführt werden, wenn die MT-Einheit 14, die die Bedingung 1 erfüllt, gefunden wurde.Accordingly, at schedule point 1, the prefetch / rewrite queue 500 is manipulated to find the MT unit 14 that meets the prefetch / rewrite condition 1 . The processing below indicates contents to be executed when the MT unit 14 that satisfies condition 1 is found.

Hier ermittelt der Prozessor 20 zuerst die Vorabruf/Nachschreibdatenmenge dieser MT-Einheit 14. Danach gibt er eine Startanforderung für diese MT-Einheit 14 aus. Auf diese Weise wird der Datenübertragungsprozeß für die Vorabruf/Nachschreibdaten mit einer Zeitverzögerung entsprechend einer Startzeitdauer von den gegenwärtigen Zeitpunkt an, gestartet, wie in Fig. 8 dargestellt ist.Here, the processor 20 first determines the prefetch / rewrite data amount of this MT unit 14 . He then issues a start request for this MT unit 14 . In this way, the data transfer process for the prefetch / rewrite data is started with a time delay corresponding to a start period from the current time, as shown in FIG. 8.

Wenn dabei die Bedingung 1 zutrifft ist es, wie bereits erläutert, nötig, die Vorabruf/Nachschreibplanung einer anderen MT-Einheit 14 (MTj) durchzuführen und zu einem Planungspunkt 2 für diese eine Startanforderung auszugeben. Um deshalb den Vorabruf/Nachschreibdatenübertragungsprozeß, der zum Planungspunkt 1 geplant war und den zum Planungspunkt 2 geplanten Vorabruf/Nachschreibdatenübertragungsprozeß kontinuierlich durchzuführen, muß dieser Planungspunkt 2 um die für den Startprozeß nötige Zeitdauer früher als der Zeitpunkt gesetzt werden, an dem der zum Planungspunkt 1 geplante Vorabruf/Nachschreibdatenübertragungsprozeß endet, wie in Fig. 8 dargestellt.If condition 1 applies, it is necessary, as already explained, to carry out the pre-fetch / rewrite planning of another MT unit 14 (MTj) and to issue a start request for this at a planning point 2 . Therefore, in order to continuously carry out the pre-call / update data transfer process that was planned for planning point 1 and the pre-call / update data transfer process planned for planning point 2 , this planning point 2 must be set earlier by the time required for the start process than the time at which the planned for planning point 1 The prefetch / rewrite data transfer process ends as shown in FIG. 8.

Der zuletzt genannte Vorabruf/Nachschreibdatenübertragungsprozeß wird um die Startverarbeitungszeitdauer nach dem Planungspunkt 1 gestartet. Deshalb kann der Planungspunkt 2 um eine Zeitdauer später angesetzt werden, die zur Übertragung der Vorabruf/Nachschreibdatenmenge, die zum Planungspunkt 1 geplant war, nötig ist.The last-mentioned pre-fetch / rewrite data transfer process is started by the start processing period after the planning point 1 . Therefore, planning point 2 can be set a time later that is necessary for the transfer of the pre-call / rewriting data quantity that was planned for planning point 1 .

In einem Fall, wo die Bedingung 1 nicht erfüllt war, wird die zum Planungspunkt 1 geplante MT-Einheit 14 zum Planungspunkt 2 geplant. In diesem Fall stellt es kein besonderes Problem dar, den Planungspunkt 2 auf den selben Zeitpunkt zu setzen, wie in dem Falle, wenn die Bedingung 1 erfüllt gewesen wäre. Deshalb können dann die nächsten Planungspunkte zu denselben Zeitpunkten festgesetzt werden.In a case where condition 1 was not met, the MT unit 14 planned for planning point 1 is planned for planning point 2 . In this case, it is not a particular problem to set planning point 2 at the same time as in the case if condition 1 had been met. Therefore, the next planning points can then be set at the same times.

Nun wird der Verarbeitungsfluß des Prozessors, wie er in Fig. 1 gezeigt ist, erläutert.The processing flow of the processor as shown in Fig. 1 will now be explained.

Der Prozessor 20 beginnt zu arbeiten, sobald er vom Kanal eine Eingabe/Ausgabeverarbeitungsanforderung erhalten hat (Schritt 65), sobald er eine Übertragungsnachricht von der Datenübertragungseinheit 22 empfangen hat (Schritt 66), wenn er eine Prozeßendenachricht von der MT-Einheit 14 empfangen hat (Schritt 67), wenn er eine Übertragungsendnachricht von der Datenübertragungseinheit 23 empfangen hat (Schritt 68) oder wenn das Timer-Kennzeichen 26 "Ein" ist (Schritt 69).The processor 20 begins to work as soon as it has received an input / output processing request from the channel (step 65 ), as soon as it has received a transmission message from the data transmission unit 22 (step 66 ), when it has received a process end message from the MT unit 14 ( Step 67 ), if it has received a transmission end message from the data transmission unit 23 (step 68 ) or if the timer flag 26 is "on" (step 69 ).

Außerdem werden im Fall, wo die Planung unmittelbar ausführbar ist, wenn die MT-Einheit 14 die Vorabruf/Nachschreibstartbedingung zum gegenwärtigen Zeitpunkt erfüllt, genauer im Falle, wo das Vorabruf/Nachschreibplanungskennzeichen 34 "Aus" ist, die in Fig. 9 dargestellten Schritte zum Suchen dieser MT-Einheit 14, die die Bedingung erfüllt, ausgeführt (Schritte 70 und 71).In addition, in the case where the scheduling is immediately executable when the MT unit 14 fulfills the prefetch / rewrite start condition at the present time, more specifically, when the prefetch / rewrite schedule flag 34 is "off", the steps of FIG Searches of this MT unit 14 that meets the condition is performed (steps 70 and 71 ).

Zuerst wird der Fall beschrieben, wo der Prozessor 20 vom Kanal 12 die Eingabe/Ausgabeprozeßanforderung empfangen hat. Obwohl der Prozessor 20 vom Kanal 12 verschiedene Eingabe/Ausgabeanforderungen empfängt, werden nur die Datenübertragungsanforderungen, nämliche eine Leseanforderung und eine Schreibanforderung, die die vorliegende Erfindung betreffen, betrachtet. Außerdem wird angenommen, daß bereits auf der NT-Einheit 14, die die Datenübertragungsanforderung empfangen soll, eine Kassette befestigt ist.First, the case where the processor 20 has received the input / output process request from the channel 12 will be described. Although processor 20 receives various input / output requests from channel 12 , only the data transfer requests, namely a read request and a write request relating to the present invention are considered. In addition, it is assumed that a cassette is already mounted on the NT unit 14 which is to receive the data transfer request.

Jedoch ist die Erfindung auch in dem Fall vorteilhaft anwendbar, wo sich der Satz der MT-Einheiten 14, die befestigte Kassetten tragen, ändert, d. h., wenn der Satz der MT-Einheiten 14 in der Vorabruf/Nachschreibplanungsschlange 500 wechselt.However, the invention is also advantageously applicable in the case where the set of MT units 14 carrying attached cartridges changes, that is, when the set of MT units 14 in the prefetch / rewrite scheduling queue 500 changes.

In einem Schritt 72 werden vorgegebene Prozeduren zwischen dem Prozessor 20 und dem Kanal 12 durchgeführt. Außerdem wird in Schritt 73 zum MT-Verwaltungsinformationsteil 27 der MT-Einheit 14 zugegriffen, die das Objekt der Eingabe/Ausgabeanforderung ist, und im Schritt 74 geprüft, ob die Anforderung die Leseanforderung ist oder nicht oder ob die Datenmenge 44 innerhalb des Puffers Null ist.In a step 72 , predetermined procedures are carried out between the processor 20 and the channel 12 . In addition, in step 73, the MT management information part 27 of the MT unit 14 , which is the object of the input / output request, is accessed, and in step 74, it is checked whether the request is the read request or not or whether the amount of data 44 within the buffer is zero .

Unter diesen Bedingungen wird das Wartekennzeichen 51 in einem Schritt 75 auf "Ein" gesetzt, woraufhin der Steuerfluß zum Schritt 65 zurückkehrt.Under these conditions, the waiting flag 51 is set to "on" in step 75 , whereupon the control flow returns to step 65 .

In einem Falle, wo die obigen Bedingungen im Schritt 74 nicht erfüllt sind, sichert, falls nötig, ein Schritt 76 einem unbelegten Abschnitt im Puffer 21, im Falle der Schreibanforderung und gibt eine Datenübertragungsanforderung für die Datenübertragungseinheit 22 aus.In a case where the above conditions in step 74 are not met, if necessary, step 76 saves an unused portion in the buffer 21 in the case of the write request and issues a data transfer request to the data transfer unit 22 .

Nun wird der Fall beschrieben, wo der Prozessor 22 die Prozeßendenachricht von der Datenübertragungseinheit 22 empfangen hat. In diesem Fall empfängt der Prozessor 20 die Menge der übertragenen Daten von der Datenübertragungseinheit 22.The case where the processor 22 has received the process end message from the data transmission unit 22 will now be described. In this case, the processor 20 receives the amount of data transmitted from the data transmission unit 22 .

In einem Schritt 77 wird eine vorgegebene Prozedur zwischen dem Prozessor 20 und dem Kanal 12 durchgeführt, auf die hin verschiedene Parameter in Übereinstimmung mit der Datenübertragungsmenge aufgefrischt werden. Genauer wird dieser Wert zur Datenmenge 45 der ungeplanten Daten und zu der Datenmenge 48 der übertragenen Daten addiert. Außerdem wird im Falle der Schreibprozedur die Datenmenge 44 im Puffer um die Übertragungsdatenmenge erhöht, wohingegen beim Leseprozeß die im Puffer stehende Datenmenge um die Übertragungsdatenmenge verringert wird. Darüber hinaus wird eine Verwaltungsprozedur für den Puffer 21, die durch den Datenübertragungsprozeß nötig wird, durch ein bekanntes Verfahren durchgeführt. Danach kehrt der Steuerfluß zum Schritt 65 zurück.In a step 77 , a predetermined procedure is carried out between the processor 20 and the channel 12 , to which various parameters are refreshed in accordance with the amount of data transmission. More precisely, this value is added to the data quantity 45 of the unplanned data and to the data quantity 48 of the transmitted data. In addition, in the case of the write procedure, the amount of data 44 in the buffer is increased by the amount of transmission data, whereas during the reading process the amount of data in the buffer is decreased by the amount of transmission data. In addition, a buffer 21 management procedure required by the data transfer process is performed by a known method. The control flow then returns to step 65 .

Nun wird der Fall beschrieben, wo der Prozessor 20 eine Prozeßendenachricht von der MT-Einheit 14 empfangen hat.The case where the processor 20 has received a process end message from the MT unit 14 will now be described.

Obwohl der Prozessor 20 verschiedene Nachrichten von der MT-Einheit 14 empfängt, werden nachstehend der Empfang einer Startendenachricht und einer Neupositionierungsendnachricht, die die vorliegende Erfindung direkt betreffen, erläutert. Nebenbei werden die Endenachrichten vom Steuerinformationsweg 29 B empfangen.Although the processor 20 receives various messages from the MT unit 14 , the reception of a start end message and a reposition end message directly related to the present invention will be explained below. Incidentally, the end of messages are received from the 29 B Steuerinformationsweg.

In Schritt 78 wird entschieden, welche Art der obigen Endenachricht vorliegt. Im Falle die Neupositionierungsendnachricht empfangen wurde, fährt der Steuerfluß mit Schritt 79 fort, durch den der MT-Verwaltungsinformationsteil 27 entsprechend der MT-Einheit 14, von der die Nachricht empfangen wurde, herausgesucht wird, und das Betriebskennzeichen 49 in den "Aus"-Zustand versetzt wird, worauf der Steuerfluß zu Schritt 65 zurückkehrt.In step 78 , it is decided which type of the above end message is present. In the event that the repositioning end message is received, the control flow goes to step 79 , through which the MT management information part 27 corresponding to the MT unit 14 from which the message was received is searched, and the operation flag 49 in the "off" state is shifted, whereupon the control flow returns to step 65 .

Wenn andererseits die Startendenachricht empfangen wurde, geht der Steuerfluß mit einem Schritt 80 weiter, bei dem der MT-Verwaltungsinformationsteil 27 der MT-Einheit 14, von der diese Nachricht empfangen wurde, herausgefunden und eine vorgegebene Prozedur für die MT-Einheit 14 entsprechend des Lese/Schreib-Kennzeichens 43 durchgeführt wird, woraufhin eine Anforderung zur Übertragung von Daten eines Blocks zur Datenübertragungseinheit 23 ausgegeben wird. Danach geht der Steuerfluß zum Schritt 65 zurück.On the other hand, if the starting end message has been received, the control flow goes to step 80 , in which the MT management information part 27 of the MT unit 14 from which this message was received is found and a predetermined procedure for the MT unit 14 corresponding to the reading / Write flag 43 is performed, whereupon a request to transfer data of a block to the data transmission unit 23 is issued. Thereafter, the control flow goes back to step 65 .

Nun wird der Fall beschrieben, wo von der Datenübertragungseinheit 23 eine Prozeßendenachricht empfangen wurde. In diesem Fall wird von der Datenübertragungseinheit 23 die Menge der durch diesen Datentransfer übertragenen Daten empfangen. Im Schritt 81 werden Verarbeitungen für die Verwaltung des Puffers 21 durchgeführt, die durch diesen Datentransferprozeß nötig werden. Dies geschieht durch bekannte Verfahren. Auch wird die Vorabruf/Nachschreibdatenmenge 50 um die Datenübertragungsmenge verringert.The case where a process end message has been received from the data transmission unit 23 will now be described. In this case, the data transmission unit 23 receives the amount of data transmitted by this data transfer. In step 81 , processing for the management of the buffer 21 is carried out, which are required by this data transfer process. This is done by known methods. Also, the prefetch / rewrite data amount 50 is reduced by the data transfer amount.

In Schritt 82 wird die Datenmenge 44 im Puffer durch die oben genannte Menge im Falle des Leseprozesses erhöht, wohingegen sie um dieselbe Menge im Falle des Schreibprozesses verringert wird. In step 82 , the amount of data 44 in the buffer is increased by the above amount in the case of the read process, whereas it is decreased by the same amount in the case of the write process.

Danach wird in einem Schritt 83 entsprechend dem Wert der Vorabruf/Nachschreibdatenmenge 50 entschieden, ob der Vorabruf/Nachschreibvorgang fortgesetzt wird oder nicht.Then, in a step 83, it is decided according to the value of the prefetch / rewrite data amount 50 whether the prefetch / rewrite operation is continued or not.

Wird er fortgesetzt, führt ein Schritt 84 vorgegebene Prozeduren mit der MT-Einheit 14 aus und gibt danach eine Datenübertragungsanforderung für einen weiteren Block an die Datenübertragungseinheit 23 aus.If it is continued, a step 84 executes predetermined procedures with the MT unit 14 and then issues a data transfer request for another block to the data transfer unit 23 .

Wenn der Vorabruf/Nachschreibvorgang nicht weitergeführt wird, gibt ein Schritt 85 über den Steuerinformationsweg 29 B die Stop- und Neupositionierungsanforderungen an die MT-Einheit 14 und setzt das Betriebskennzeichen 49 in den "Ein"-Zustand.If the prefetch / rewrite operation is discontinued, a step 85 gives the stop and reposition requests to the MT unit 14 via the control information path 29 B and sets the operation flag 49 to the "on" state.

Weiterhin prüft ein Schritt 86, ob das Wartekennzeichen 51 im "Ein"-Zustand ist, oder nicht. Falls es in diesem Fall im "Ein"-Zustand ist, wartet die entsprechende MT-Einheit 14 auf die Leseanforderung. Deshalb wird im Schritt 87 das Wartekennzeichen 51 "aus"-geschaltet und eine vorgegebene Verarbeitung für den Kanal 12 ausgeführt, woraufhin die Datenübertragungseinheit 22 zur Übertragung eines Datenblockes zum Kanal gestartet wird.Furthermore, a step 86 checks whether the waiting flag 51 is in the "on" state or not. In this case, if it is in the "on" state, the corresponding MT unit 14 waits for the read request. Therefore, in step 87, the waiting indicator 51 is switched "off" and a predetermined processing is carried out for the channel 12 , whereupon the data transmission unit 22 is started to transmit a data block to the channel.

Danach werden die Betriebsschritte im Falle das Timer-Kennzeichen 26 im "Ein"-Zustand ist, beschrieben.Then, the operation steps in the case of the timer flag 26 in the "on" state will be described.

Im Schritt 88 wird der MT-Verwaltungsinformationsteil 27 der zu planenden MT-Einheit 14, die am Kopf der Vorabruf/Nachschreibplanungsschlange 500 liegt, erzeugt, und geprüft, ob das Planungsstopbedingungskennzeichen 52 "Ein" ist, oder nicht. Falls das Kennzeichen 52 "ein"-geschaltet ist, fährt der Steuerfluß mit Schritt 96 fort. Wenn das Kennzeichen 52 im "Aus"-Zustand ist, werden die nachstehenden Operationen durchgeführt.In step 88 , the MT management information part 27 of the MT unit 14 to be scheduled, which is located at the head of the prefetch / rewrite scheduling queue 500, is generated, and it is checked whether or not the schedule stop condition flag 52 is "On". If flag 52 is "on", control flow continues to step 96 . When the flag 52 is in the "off" state, the following operations are performed.

Zuerst wird in Schritt 89 geprüft, ob die folgende Beziehung (1) erfüllt ist, oder nicht:First, in step 89, it is checked whether or not the following relationship ( 1 ) is satisfied:

wobei die MT-Datenübertragungsrate einen Überhang O₁ enthält, und die Datenübertragungsunmöglichkeitszeitdauer einen Überhang O₂ enthält. Dabei wird die momentane Zeit vom Takt 24 erhalten.wherein the MT data transfer rate contains an overhang O ₁, and the data transmission impossibility period includes an overhang O ₂. The current time is obtained from clock 24 .

In einem Fall, wo die obige Beziehung (1) erfüllt ist, setzt ein Schritt 90 die momentane Zeit auf den letzten Vorabruf/Nachschreibplanungsendzeitpunkt 47 und bringt die Datenmenge 48 der übertragenen Daten auf Null. Außerdem wird das Planungsstopbedingungskennzeichen 52 in den "Ein"-Zustand versetzt.In a case where the above relation (1) is satisfied, a step 90 sets the current time to the last prefetch / post-schedule end time 47 and brings the data amount 48 of the transmitted data to zero. In addition, the planning stop condition flag 52 is set to the "on" state.

Nachfolgend wird die Vorabruf/Nachschreib-Datenmenge aufgefrischt. Dabei wird in einem Schritt 91 die ungeplante Datenmenge 45 beurteilt, und, wenn diese Null ist, muß keine Datenmenge addiert werden. Deshalb werden zwecks Umschaltung des Vorabruf/Nachschreibvorgangs zu einer anderen MT-Einheit 14 die übertragene Datenmenge 48 und die letzte Vorabruf/Nachschreibplanungsendzeit 47 in Schritt 95 aufgefrischt, dem der Schritt 96 folgt.Subsequently, the pre-fetch / rewrite data amount is refreshed. The unplanned amount of data 45 is assessed in a step 91 , and if this is zero, no amount of data has to be added. Therefore, in order to switch the prefetch / rewrite operation to another MT unit 14, the amount of data 48 transmitted and the last pre-fetch / rewrite planning end time 47 are refreshed in step 95 , which is followed by step 96 .

Andererseits wird, falls Schritt 91 beurteilt, daß die ungeplante Datenmenge 45 nicht Null ist, der Wert der ungeplanten Datenmenge 45 zu der Vorabruf/Nachschreibdatenmenge 50 im Schritt 92 addiert. Danach schaltet ein Schritt 93 das Timer-Kennzeichen 26 "aus" und startet den Timer 25, um den nächsten Planungspunkt zu setzen. Der Timer 25 wird so eingestellt, daß das Timer-Kennzeichen 26 um eine durch die folgende Beziehung (2) angegebene Zeitdauer nach der momentanen Zeit "ein"-geschaltet werden kannOn the other hand, if step 91 judges that the unplanned data set 45 is not zero, the value of the unplanned data set 45 is added to the prefetch / rewrite data set 50 in step 92 . Then a step 93 switches the timer flag 26 "off" and starts the timer 25 in order to set the next planning point. The timer 25 is set so that the timer flag 26 can be turned "on" for a period of time indicated by the following relationship (2) after the current time

wobei O₃ eine Übergangszeitdauer darstellt.where O ₃ represents a transition period.

Danach wird die ungeplante Datenmenge 45 in Schritt 94 gelöscht, woraufhin der Steuerfluß zu Schritt 65 zurückkehrt.Thereafter, the unplanned amount of data 45 is deleted in step 94 , whereupon the control flow returns to step 65 .

In Schritt 96 wird das Kennzeichen 34 für die Vorabruf/Nachschreibplanung in den "Aus"-Zustand versetzt. Außerdem wird der MT-Verwaltungsinformationsteil 27 der Einheit 14 zum Ende der Planungsschlange verschoben, und das Kennzeichen 52 für die Planungsstopbedingung "aus"-geschaltet.In step 96 , the indicator 34 for the pre-call / post-planning is set to the "off" state. In addition, the MT management information part 27 of the unit 14 is shifted to the end of the planning queue, and the flag 52 for the planning stop condition is switched "off".

Dann geht der Steuerfluß mit Schritt 71 weiter, um am Ende der Ausführung des Vorabruf/Nachschreibplanungsvorganges einer weiteren MT-Einheit 14 die MT-Einheit 14, die die Vorabruf/Nachschreibstartbedingung erfüllt, zu suchen.Then, the control flow goes to step 71 to search for the MT unit 14 that satisfies the prefetch / rewrite start condition at the end of the execution of the prefetch / rewrite scheduling process of another MT unit 14 .

Schritt 71 sucht die MT-Einheit 14, die die Vorabruf/Nachschreib-Startbedingung erfüllt und führt den Vorabruf/Nachschreib-Planungsprozeß durch. Die Einzelheiten dieser Operationen sind in Fig. 9 dargestellt.Step 71 searches the MT unit 14 that meets the prefetch / rewrite start condition and performs the pre-fetch / rewrite planning process. The details of these operations are shown in FIG. 9.

In Schritt 100 in Fig. 9 wird der MT-Verwaltungsinformationsteil am Kopf der Vorabruf/Nachschreibplanungsschlange 500 herausgenommen. Nachfolgend prüft ein Schritt 101, ob die oben angeführte Beziehung (1) gilt oder nicht. Falls die Beziehung (1) erfüllt ist, wird das Kennzeichen 52 für die Planungsstopbedingung im Schritt 102 in den "Ein"-Zustand versetzt. Dem Schritt 102 folgt dann der Schritt 106.In step 100 in FIG. 9, the MT management information portion at the head of the prefetch / re-schedule queue 500 is taken out. Subsequently, a step 101 checks whether the above-mentioned relationship (1) applies or not. If the relationship (1) is satisfied, the flag 52 for the planning stop condition is set to the "on" state in step 102 . Step 102 is then followed by step 106 .

Im Falle die Beziehung (1) im Schritt 101 nicht erfüllt ist, prüft ein Schritt 103, ob die übertragene Datenmenge 48 eine vorgegebene Größe überschreitet, oder nicht. Falls dies zutrifft, geht der Steuerfluß mit Schritt 106 weiter. Falls das obige nicht zutrifft, erfüllt die entsprechende MT-Einheit 14 die Startbedingung nicht, und somit wird die nächste MT-Einheit 14 in der Vorabruf/Nachschreibplanungsschlange 500 in Schritt 104 ausgewählt.If the relationship (1) is not fulfilled in step 101 , a step 103 checks whether the amount of data 48 transmitted exceeds a predetermined size or not. If so, control flow continues to step 106 . If the above is not true, the corresponding MT unit 14 does not meet the start condition, and thus the next MT unit 14 in the prefetch / rewrite scheduling queue 500 is selected in step 104 .

Im Falle die MT-Einheiten bis zur MT-Einheit 14, die am Ende der Schlange 500 liegt, geprüft wurden (Schritt 105), ist der Prozeß beendet. Andernfalls kehrt der Steuerfluß zu Schritt 101 zurück.If the MT units have been checked up to MT unit 14 , which is at the end of queue 500 (step 105 ), the process is ended. Otherwise, control flow returns to step 101 .

Danach wird die Verarbeitung beschrieben, falls die MT-Einheit 14, die die Bedingung erfüllt, gefunden wurde. In Schritt 106 wird der MT-Verwaltungsinformationsteil 27 dieser MT-Einheit 14 zum Kopf der Schlange 500 geschoben. Danach wird an diese MT-Einheit 14 in Schritt 107 eine Startanforderung ausgegeben.Thereafter, the processing will be described if the MT unit 14 that meets the condition is found. In step 106 , the MT management information part 27 of this MT unit 14 is pushed to the head of the queue 500 . A start request is then issued to this MT unit 14 in step 107 .

Danach setzt ein Schritt 108 die ungeplante Datenmene 45 in den Informationsteil 50 für die Vorabruf/Nachschreibdatenmenge und löscht den früheren Wert.Thereafter, a step 108 sets the unplanned data menu 45 in the information part 50 for the prefetch / rewrite data amount and deletes the previous value.

Außerdem wird in den Schritten 109 und 110 im Falle das Lese/Schreibkennzeichen 43 dieser MT-Einheit 14 die Leseanforderung betrifft und wo die Datenmenge 44 im Puffer Null ist, der Informationsteil 46, der die Vorabrufstelldatenmenge betrifft zur Vorabruf/Nachschreibdatenmenge 50 addiert. Danach wird zum Setzen des nächsten Planungspunkts durch einen Schritt 111 der Timer 25 gestartet, so daß das Timer-Kennzeichen 26 um eine Zeitdauer, die die folgende Gleichung (3) angibt, nach dem momentanen Zeitpunkt in den "Ein"-Zustand gesetzt werden kann:In addition, in steps 109 and 110, in the case where the read / write flag 43 of this MT unit 14 relates to the read request and where the amount of data 44 in the buffer is zero, the information part 46 relating to the prefetch data amount is added to the prefetch / rewrite data amount 50 . Thereafter, to set the next planning point, the timer 25 is started by a step 111 , so that the timer flag 26 can be set to the "on" state for a period of time which indicates the following equation (3) after the current time :

wobei O₄ einen Überhang angibt.where O ₄ indicates an overhang.

Schließlich wird in Schritt 112 das Vorabruf/Nachschreibplanungskennzeichen 34 in den "Ein"-Zustand versetzt und der Prozeß beendet.Finally, in step 112, the prefetch / rewrite scheduling flag 34 is set to "on" and the process ends.

Mit der obigen Ausführungsform läßt sich die Verschlechterung des Wirkungsgrads aufgrund der Erhöhung der Startzeitdauer der MT-Einheiten nahezu vollständig vermeiden und ein Wirkungsgrad gleich des der üblichen Magnetbandeinheiten mit sehr schnellem Startvorgang erzielen. Insbesondere wird bei der vorliegenden Erfindung die Leerzeit eines Datenübertragungswegs ebenfalls berücksichtigt, so daß ein hocheffizienter Vorabruf/Nachschreibprozeß durchgeführt werden kann. Außerdem reicht auch im Falle, wo die jeweiligen MT-Einheiten verschiedene Zugriffswiederholungsraten haben, eine Pufferkapazität, die sich in etwa wie folgt bestimmen läßtWith the above embodiment, the deterioration can be avoided the efficiency due to the increase in the start period avoid the MT units almost completely and an efficiency equal to that of the usual magnetic tape units with a very quick start. In particular becomes idle time in the present invention of a data transmission path is also taken into account that a highly efficient prefetch / rewrite process can be carried out. In addition, where the respective MT units have different access repetition rates have a buffer capacity that is in can be determined approximately as follows

(Gesamtzeit aus Stop-, Neupositionierungs- und Startverarbeitungszeitdauer) × MT-Datenübertragungsrate) × 2.(Total time from stop, repositioning and start processing time) × MT data transfer rate) × 2.

Obwohl bei der obigen Beschreibung als Eingabe/Ausgabeeinheiten MT-Einheiten angenommen sind, ist die Erfindung nicht darauf beschränkt, sondern ist bei allen Ein/Ausgabeeinheiten vorteilhaft einsetzbar, die Vorverarbeitungen zur Durchführung der Datenübertragungsprozesse und Nachverarbeitungen nach der Datenübertragung benötigen.Although in the above description as input / output units MT units are adopted is the invention not limited to this, but is for all input / output units can be used advantageously, the preprocessing for  Implementation of data transfer processes and post-processing need after data transfer.

Die vorliegende Erfindung weist verschiedene Leistungsmerkmale auf, die nachstehend aufgelistet sind:The present invention has various performance features listed below:

In einem Eingabe/Ausgabeplanungsverfahren, wobei in einem Falle, wo, wie bei Eingabe/Ausgabeeinheiten, die Vorverarbeitungen fester Zeitdauer off-line von einem Steuergerät vor den Datenübertragungsprozessen ausführen, mehrere Blöcke zwischen den Eingabe/Ausgabeeinheiten und einem im Steuergerät vorgesehenen Puffer vorabgerufen bzw. nachgeschrieben werden, wird ein zur Ermittlung einer Vorabruf/Nachschreibdatenmenge und einer Vorabruf/Nachschreibdatenübertragungsstartzeit eine Eingabe/Ausgabeeinheit stattfindender Planungsprozeß zu einem Planungszeitpunkt ausgeführt;In an input / output planning process, in one Case where, as with input / output units, the preprocessing fixed time off-line from a control unit execute before the data transfer processes, several Blocks between the input / output units and an im Control unit provided buffers pre-called or rewritten will be used to determine a pre-call / post-write data amount and a prefetch / post-write data transfer start time an input / output unit Planning process taking place at a planning point in time executed;

  • 1. ein nächster Planungspunkt wird um die Vorverarbeitungszeitdauer früher als ein Zeitpunkt angesetzt, an dem ein Vorabruf/Nachschreibdatenübertragungsprozeß, der zu einem gegenwärtigen Planungspunkt geplant ist, endet, und weiterhin wird abhängig von einer Betriebsbedingung am nächsten Planungspunkt ermittelt, ob der Vorabruf/Nachschreibplanungsprozeß der zum gegenwärtigen Planungspunkt geplanten Eingabe/Ausgabeeinheit ausgeführt oder ob derjenige einer anderen Eingabe/Ausgabeeinheit ausgeführt wird.1. A next planning point is around the preprocessing period scheduled earlier than a point in time which is a prefetch / rewrite data transfer process, which is planned for a current planning point, ends, and continues depending on an operating condition on next planning point determined, whether the prefetch / rewrite planning process for the current planning point planned input / output unit  executed or whether that of another Input / output unit is executed.
  • 2. In dem unter 1. angeführten Verfahren wird der Vorabruf/Nachschreibplanungsprozeß im Falle irgendeine andere Eingabe/Ausgabeeinheit, die eine Vorabruf/Nachschreibstartbedingung erfüllt, wenn eine Planung bei einem vorangehenden Planungspunkt umgeschaltet wurde, so lange nicht ausgeführt, bis die Eingabe/Ausgabeeinheit, die die Vorabruf/Nachschreibstartbedingung erfüllt, vorhanden ist.2. In the procedure mentioned under 1., the pre-fetch / post-scheduling process in the case of any other input / output unit that has a prefetch / rewrite start condition met when planning switched at a previous planning point was not executed until the input / output unit, which is the prefetch / rewrite start condition fulfilled, is present.
  • 3. In dem unter 1. angeführten Verfahren wird, falls der Vorabruf/Nachschreibplanungsprozeß, einer anderen Eingabe/Ausgabeeinheit, die sich von der Eingabe/Ausgabeeinheit, die beim letzten Planungspunkt geplant war, unterscheidet, zum gegenwärtigen Planungspunkt ausgeführt wurde, eine Vorverarbeitungsstartanforderung an diese andere Eingabe/Ausgabeeinheit ausgegeben.3. In the procedure mentioned under 1., if the Prefetch / rewrite planning process, another input / output unit, that differ from the input / output unit, that was planned at the last planning point, differs, executed at the current planning point a preprocessing start request this other input / output unit is output.
  • 4. In dem unter 1. angeführten Verfahren wird der Vorabruf/Nachschreibdatenübertragungsprozeß, der zum gegenwärtigen Planungspunkt geplanten Eingabe/Ausgabeeinheit nach einer vom gegenwärtigen Planungspunkt verzögerten Vorverarbeitungszeitdauer gestartet.4. In the procedure mentioned under 1., the prefetch / post-write data transfer process becomes the current one Planning point planned input / output unit according to one from the current planning point delayed preprocessing period started.
  • 5. Bei dem unter 1. angeführten Verfahren wird die Vorabruf/Nachschreibplanungsdatenmenge der zum gegenwärtigen Planungspunkt geplanten Eingabe/Ausgabeeinheit auf eine Datenmenge gesetzt, die von einer zwischen der Eingabe/Ausgabeeinheit und einem Kanal seit dem nächstliegenden Planungspunkt bis zum gegenwärtigen Planungspunkt unter den Planungspunkten, an denen der Vorabruf/Nachschreibplanungsprozeß dieser Eingabe/Ausgabeeinheit ausgeführt wurde, erhalten wird.5. In the procedure mentioned in 1., the pre-fetch / post-schedule data becomes the current one Planning point planned input / output unit  set to a volume of data from a between the input / output unit and a channel from the closest planning point to the current one Planning point under the planning points those of the prefetch / post-scheduling process of these Input / output unit has been received becomes.
  • 6. Bei dem unter 1. angeführten Verfahren besteht eine der Vorabruf/Nachschreibstartbedingungen darin, daß eine Datenmenge, die zwischen der vorliegenden Eingabe/Ausgabeeinheit und einem Kanal seit dem nächstliegenden Planungspunkt bis zum gegenwärtigen Planungspunkt unter den Planungspunkten, die diese Eingabe/Ausgabeeinheit geplant hatten, übertragen wurde, einen festen Wert überschreitet.6. In the procedure listed under 1. there is a the prefetch / rewrite start conditions in that an amount of data between the present input / output unit and a channel since the closest one Planning point up to the present Planning point among the planning points that this Had planned input / output unit has exceeded a fixed value.
  • 7. Bei dem unter 1. angeführten Verfahren wird eine Vorabruf/Nachschreibstartbedingung anhand der früher angeführten Beziehung (1) in Relation zu der betrachteten Eingabe/Ausgabeeinheit verwendet.7. In the procedure listed under 1. a Pre-fetch / post-write start condition based on the earlier Relationship (1) mentioned in relation to the considered Input / output unit used.
  • 8. Bei dem unter 1. angeführten Verfahren wird, falls die zwischen der Eingabe/Ausgabeeinheit und einem Kanal seit dem letzten Planungspunkt bis zum gegenwärtigen Planungspunkt übertragene Datenmenge Null ist, der Vorabruf/Nachschreibplanungsprozeß dieser Eingabe/Ausgabeeinheit ausgesetzt und ein Prozeß zum Aufsuchen einer anderen Eingabe/Ausgabeeinheit, die die Vorabruf/Nachschreibstartbedingung erfüllt, gestartet.8. In the procedure mentioned under 1., if between the input / output unit and a Channel from the last planning point to the current one Planning point transferred amount of data zero is the prefetch / rewrite planning process of this Input / output unit suspended and a process for Find another input / output device that  the prefetch / rewrite start condition is met.
  • 9. Bei dem unter 1. angeführten Verfahren wird zum gegenwärtigen Planungspunkt der Vorabruf/Nachschreibplanungsprozeß der hier geplanten Eingabe/Ausgabeeinheit, wenn diese die durch die Beziehung 1 angegebene Bedingung erfüllt, ausgesetzt und irgendeine andere Eingabe/Ausgabeeinheit, die die Vorabruf/Nachschreibstartbedingung erfüllt, für die Planung am nächsten Planungspunkt gesucht.9. In the procedure mentioned under 1. becomes the current one Planning point of the pre-call / post-planning process the input / output unit planned here, if this is the one specified by relationship 1 Condition met, suspended and any other input / output unit that the prefetch / rewrite start condition fulfilled for planning on next planning point searched.
  • 10. Bei dem unter 5. angeführten Verfahren wird die Vorabruf/Nachschreibplanungsdatenmenge in Übereinstimmung mit einer Vorabrufdatenmenge im Puffer der Eingabe/Ausgabeeinheit, die einen Leseprozeß durchführt, eingestellt.10. With the procedure mentioned under 5. the pre-call / post-planning data amount in accordance with a prefetch data amount in the buffer of the input / output unit, performing a reading process set.

Durch die Erfindung wird deshalb der bemerkenswerte Vorteil erzielt, daß ein Eingabe/Ausgabeplanungsverfahren realisiert wird, durch das auch wenn die Zugriffsraten wiederholter Zugriffe zu den jeweiligen Eingabe/Ausgabeeinheiten nicht gleichförmig sind, ein zwischen der jeweiligen Eingabe/Ausgabeeinheit und dem zur Steuerung dienenden Steuergerät liegender Datenübertragungsweg wirksam ausgenutzt wird, und daß das Vorabrufen bzw. Nachschreiben der Daten mit minimaler Pufferkapazität realisiert werden kann.The invention therefore has the remarkable advantage achieves an input / output planning process is realized by that even if the access rates repeated access to the respective input / output units are not uniform, one between each Input / output unit and the control unit Control unit lying data transmission path effective is exploited, and that the prefetching or rewriting the data can be realized with minimal buffer capacity can.

Claims (6)

1. Eingabe/Ausgabeplanungsverfahren zur Steuerung von Eingabe/Ausgabeeinheiten in Datenverarbeitungssystemen, wobei die Eingabe/Ausgabeeinheiten Vorverarbeitungen über eine feste Zeitdauer off-line von einem Steuergerät vor Datenübertragungsprozessen ausführen, und eine Vielzahl von Datenblöcken zwischen der jeweiligen Eingabe/Ausgabeeinheit und einem im Steuergerät vorgesehenen Pufferspeicher vorausgelesen bzw. nachgeschrieben werden und durch einen Planungsprozeß eine Vorabruf/Nachschreibdatenmenge sowie eine Vorabruf-Nachschreibdatenübertragungsstartzeit einer Eingabe/Ausgabeeinheit zu einem Planungspunkt durchgeführt wird, gekennzeichnet durch folgende Schritte:
  • - Setzen eines nächsten Planungspunktes um die Vorverarbeitungszeitdauer vor einem Zeitpunkt, an dem der zum gegenwärtigen Planungspunkt geplante Vorabruf/Nachschreibdatenübertragungsprozeß endet, und
  • - Ermitteln, ob der Vorabruf/Nachschreibplanungsprozeß der zum gegenwärtigen Planungspunkt geplanten Eingabe/Ausgabeeinheit oder der einer anderen Eingabe/Ausgabeeinheit ausgeführt wird, abhängig von einer beim nächsten Planungspunkt vorliegenden Betriebsbedingung.
1. Input / output planning method for controlling input / output units in data processing systems, the input / output units carrying out preprocessing for a fixed period of time off-line from a control unit before data transmission processes, and a large number of data blocks between the respective input / output unit and one provided in the control unit Buffer memory are read ahead or rewritten and a planning process carries out a pre-fetch / rewrite data quantity and a pre-fetch / rewrite data transfer start time of an input / output unit for a planning point, characterized by the following steps:
  • Setting a next planning point by the preprocessing period before a point in time at which the pre-fetch / rewriting data transfer process planned for the current planning point ends, and
  • - Determine whether the prefetch / rewrite planning process of the input / output unit planned for the current planning point or that of another input / output unit is carried out, depending on an operating condition present at the next planning point.
2. Eingabe/Ausgabeplanungsverfahren nach Anspruch 1, dadurch gekennzeichnet, daß in einem Falle, wo der Vorabruf/Nachschreibplanungsprozeß der anderen als der beim letzten Planungspunkt der Vorabruf/Nachschreibplanung unterworfenen Eingabe/Ausgabeeinheit zum gegenwärtigen Planungspunkt ausgeführt wird, eine Vorverarbeitungsstartanforderung an diese andere Eingabe/Ausgabeeinheit ausgegeben wird.2. input / output planning method according to claim 1, characterized in that in a case where the prefetch / rewrite planning process the other than that at the last planning point of the pre-call / post-planning subject input / output unit to the current planning point is running, a Preprocessing start request to this other input / output unit is issued. 3. Eingabe/Ausgabeplanungsverfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß der Vorabruf/Nachschreibdatenübertragungsprozeß der zum gegenwärtigen Planungspunkt geplanten Eingabe/Ausgabeeinheit vom gegenwärtigen Planungspunkt um die Vorverarbeitungszeitdauer verzögert gestartet wird. 3. Input / output planning method according to claim 1 or 2, characterized in that the prefetch / rewrite data transfer process of the input / output unit planned at the current planning point from the current planning point by the preprocessing period is started with a delay.   4. Eingabe/Ausgabeplanungsverfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die Vorabruf/Nachschreibplanungsdatenmenge der zum gegenwärtigen Planungspunkt geplante Eingabe/Ausgabeeinheit auf eine Datenmenge gesetzt wird, die unter Bezug auf eine Datenmenge ermittelt wird, die zwischen der Eingabe/Ausgabeeinheit und einem Kanal seit dem nächstliegenden Planungspunkt bis zum gegenwärtigen Planungspunkt unter den Planungspunkten, zu denen der Vorabruf/Nachschreibplanungsprozeß dieser Eingabe/Ausgabeeinheit durchgeführt wurde, transferiert wurde.4. Input / output planning method according to one of the claims 1 to 3, characterized in that the pre-call / post-planning data quantity for the current planning point planned input / output unit is set to a data set that is referenced on a data set that is between the input / output unit and a channel since closest planning point to the current one Planning point among the planning points to which the Prefetch / post-scheduling process of this input / output unit was carried out, was transferred. 5. Eingabe/Ausgabeplanungsverfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß eine der Vorabruf/Nachschreibstartbedingungen darin besteht, daß eine Datenmenge, die zwischen der betrachteten Eingabe/Ausgabeeinheit und einem Kanal seit dem nächstliegenden Planungspunkt bis zum gegenwärtigen Planungspunkt unter den Planungspunkten, an denen diese Eingabe/Ausgabeeinheit geplant war, übertragen wurde, einen festen Wert übersteigt.5. Input / output planning method according to one of the claims 1 to 4, characterized in that one of the prefetch / rewrite start conditions therein there is a quantity of data that lies between the considered Input / output unit and a channel since closest planning point to the current one Planning point among the planning points at which this Input / output unit was planned, was transferred, exceeds a fixed value. 6. Eingabe/Ausgabeplanungsverfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß bei einer bestimmten vorgegebenen Vorabruf/Nachschreibstartbedingung (Bedingung 1), sobald eine andere Bedingung als die Bedingung 1 erfüllt ist, und der Vorabruf/Nachschreibplanungsprozeß einer bestimmten anderen Eingabe/Ausgabeeinheit gestartet wurde, der Vorabruf/Nachschreibeingabe/ausgabeplanungsprozeß der betrachteten Eingabe/Ausgabeeinheit fortgesetzt wird, bis die Bedingung 1 erfüllt ist.6. input / output planning method according to one of claims 1 to 5, characterized in that for a certain predetermined pre-fetch / rewrite start condition (condition 1 ), as soon as a condition other than condition 1 is met, and the pre-fetch / rewrite planning process of a certain other input / Output unit has been started, the prefetch / rewrite input / output planning process of the input / output unit under consideration continues until condition 1 is fulfilled.
DE19873721576 1986-06-30 1987-06-30 CONTROL PROCEDURE FOR INPUT / OUTPUT UNITS Withdrawn DE3721576A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61153724A JPS638924A (en) 1986-06-30 1986-06-30 Input and output scheduling system

Publications (1)

Publication Number Publication Date
DE3721576A1 true DE3721576A1 (en) 1988-01-14

Family

ID=15568709

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19873721576 Withdrawn DE3721576A1 (en) 1986-06-30 1987-06-30 CONTROL PROCEDURE FOR INPUT / OUTPUT UNITS

Country Status (3)

Country Link
JP (1) JPS638924A (en)
DE (1) DE3721576A1 (en)
GB (1) GB2192078A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1434223A2 (en) * 2002-12-26 2004-06-30 Kabushiki Kaisha Toshiba Method and apparatus for data access in a video recorder with a disk drive

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01229351A (en) * 1988-03-09 1989-09-13 Hitachi Ltd System for controlling load balance
JPH08152976A (en) * 1994-11-28 1996-06-11 Fujitsu Ltd Access method for storage device
JP3881439B2 (en) 1998-01-23 2007-02-14 シャープ株式会社 Image processing device
CN104900248B (en) * 2015-05-27 2017-05-24 中国资源卫星应用中心 Method for rapidly extracting land observing satellite scene data from magnetic tape

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1105473A (en) * 1964-04-01 1968-03-06 English Electric Computers Ltd Control of peripheral devices of computer

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
US-B.: LEVY, H., ECKHOUSE, Jr. R.H., Computer Programming and Architecture The VAX-11, Digital Press, Bedford, 1980, S. 287-296 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1434223A2 (en) * 2002-12-26 2004-06-30 Kabushiki Kaisha Toshiba Method and apparatus for data access in a video recorder with a disk drive
EP1434223A3 (en) * 2002-12-26 2004-07-07 Kabushiki Kaisha Toshiba Method and apparatus for data access in a video recorder with a disk drive

Also Published As

Publication number Publication date
GB2192078A (en) 1987-12-31
GB8715221D0 (en) 1987-08-05
JPS638924A (en) 1988-01-14

Similar Documents

Publication Publication Date Title
DE19983589B4 (en) High-frequency decoupling queue pipeline design
DE69535187T2 (en) Memory controller and bus control method therefor
DE2902080C2 (en) Arrangement for controlling data transfers between a main memory and input / output units
DE4237417C2 (en) Data processing system
DE60012769T2 (en) METHOD AND SYSTEM FOR THE DYNAMIC SELECTION OF TAPE DRIVES FOR CONNECTION TO MAIN COMPUTERS
DE60033994T2 (en) Method and system for outputting and ordering commands in a hard disk drive
DE2801981C2 (en)
DE112012002622B4 (en) A linear recording recording unit for performing optimum writing while receiving a series of instructions including mixed read and write commands, and method and program for executing the same
DE2230119C2 (en) Device for electronic monitoring of the occurrence of events within certain time periods
DE102012216022A1 (en) Manage a point-in-time copy relationship for space-efficient volumes
DE2460825A1 (en) PROCESS AND ARRANGEMENT FOR DYNAMIC CONTROL OF WRITE / READ OPERATIONS BETWEEN THE CENTRAL UNIT AND PERIPHERALS OF A DATA PROCESSING SYSTEM
DE4215148A1 (en) DATA STORAGE METHOD AND DATA STORAGE DEVICE
DE60008148T2 (en) SYSTEM AND METHOD FOR UNROLLING LOOPS IN A TRACE CACHE
DE10062063A1 (en) Control method for incoming request waiting loop in client-server network has each request inserted in waiting loop entry corresponding to request priority plane
DE4029980A1 (en) On-line memory system and disc sub-system - has priority access control with buffer storage of data to be handled
DE19945993B4 (en) Disk write completion system
DE69922238T2 (en) MECHANISM FOR BLOCKING LOAD OPERATIONS ON ADDRESS GENERATION OF MEMORY COMMANDS AND UNIVERSAL DEPENDENCE VECTOR
DE1909477A1 (en) Memory control system for a multi-program data processing system
DE3721576A1 (en) CONTROL PROCEDURE FOR INPUT / OUTPUT UNITS
DE10027359A1 (en) Predicted restart time procedure for hard-disc drive system, involves host undergoing instruction for completion of tasks prior to restart of hard drive
DE3039285A1 (en) DATA STORAGE ARRANGEMENT AND DATA STORAGE METHOD
DE19533962B4 (en) A circuit for prefetching instructions / data with a prefetch cache for non-accessed instructions / data
DE4034009A1 (en) COMMAND RETRIEVEMENT METHOD
DE2720842B2 (en) Data transmission system
DE1774421B1 (en) MORE PROGRAM DATA PROCESSING SYSTEM

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8130 Withdrawal