[go: up one dir, main page]

DE3907662A1 - Method and device to balance the load on data transmission paths - Google Patents

Method and device to balance the load on data transmission paths

Info

Publication number
DE3907662A1
DE3907662A1 DE3907662A DE3907662A DE3907662A1 DE 3907662 A1 DE3907662 A1 DE 3907662A1 DE 3907662 A DE3907662 A DE 3907662A DE 3907662 A DE3907662 A DE 3907662A DE 3907662 A1 DE3907662 A1 DE 3907662A1
Authority
DE
Germany
Prior art keywords
input
control
units
output
control units
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.)
Ceased
Application number
DE3907662A
Other languages
German (de)
Inventor
Akira Yamamoto
Toshiaki Tsuboi
Tatsuo Namba
Akira Kurano
Takashi Doi
Hiroyuki Kitajima
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 Microcomputer System Ltd
Hitachi Ltd
Original Assignee
Hitachi Ltd
Hitachi Microcomputer Engineering 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, Hitachi Microcomputer Engineering Ltd filed Critical Hitachi Ltd
Publication of DE3907662A1 publication Critical patent/DE3907662A1/en
Ceased 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
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0682Tape device

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)
  • Feedback Control In General (AREA)

Abstract

The data transmission system includes at least two control units (23, 24), each with a buffer memory, to execute data transmissions via data transmission channels (21, 22), and a number of magnetic tape units (25), which are connected to the control units. The magnetic tape units are in each case under the control of one of the control units, in such a way that data is only transmitted to and from this control unit. If it is necessary to switch magnetic tape units from one control unit to the other control unit to balance the input/output loads between the control units, the input/output loads for the groups of magnetic tape units which are controlled by the respective control units are pre-calculated, after the magnetic tape units are switched, from collected input/output activity information for the respective magnetic tape units, using an analytical model. The respective magnetic tape units are switched between the control units according to a switching pattern which corresponds to the pre-calculated result, so that the input/output loads are optimally balanced in accordance with the result of the pre-calculation. <IMAGE>

Description

Die Erfindung betrifft ein Verfahren und eine Vorrichtung zum Ausgleichen der Belastung von Datenübertragungswegen zwischen einer Gruppe von Steuereinheiten.The invention relates to a method and a device to balance the load on data transmission paths between a group of control units.

In der US-PS 4 403 286 (JP-A-57-157 68) ist ein System zum Ausgleichen von Belastungen beschrieben, bei dem eine Anzahl von Magnetbandkassetteneinheiten (im folgenden auch kurz als Kassetten bezeichnet) mit zwei Steuereinheiten mit jeweils einem Pufferspeicher über Datenübertragungswege verbunden sind. Die Pufferspeicher in den Steuereinheiten werden als Zwischenspeicher benutzt, so wie die jeweiligen Steuerein­ heiten dazu verwendet werden, den Datentransfer zwischen Hostsystemen und den Pufferspeichern und den Datentransfer zwischen den Puffernspeichern und den Kassetten parallel auszuführen. Wenn eine der Kassetten mit einer der Steuer­ einheiten Daten austauscht, können die anderen Kassetten keine Datenübertragung mit dieser Steuereinheit beginnen. Die Steuereinheiten laden anfänglich bzw. schreiben aufein­ anderfolgend Mehrfach-Datenblöcke in die jeweiligen Puffer­ speicher und Kassetten. Ein Block ist dabei als die Daten­ einheit definiert, die zwischen einem Hostsystem und einem Pufferspeicher übertragen wird. Die aus einer Kassette aus­ gelesenen Daten oder die in eine Kassette eingeschriebenen Daten werden davor bewahrt, auf die Pufferspeicher der Steuereinheiten verteilt zu werden, und eine Kassette ist jeweils unter die Kontrolle einer bestimmten Steuereinheit gestellt, und nur deren Pufferspeicher wird benutzt. Wenn eine der Kassetten aus der Gruppe von Kassetten, die sich unter der Kontrolle einer bestimmten Steuereinheit befinden, eine Datenübertragung zwischen einem Übertragungskanal und der bestimmten Steuereinheit beginnt, können die übrigen Kassetten der Gruppe nicht in einen Datentransfer zwischen dem Übertragungskanal und dieser Steuereinheit eintreten. Wenn eine Kassette einen Datentransfer zu einem Pufferspei­ cher beginnt, können die verbleibenden Kassetten gleicher­ maßen keine Datenübertragung beginnen. Wenn ein Ungleich­ gewicht zwischen den Ein/Ausgabebelastungen der jeweiligen Gruppen von Kassetten unter der Kontrolle der jeweiligen Steuereinheiten auftritt, bleibt daher ein Datenübertra­ gungsweg unbelegt, und die Leistungsfähigkeit des Gesamt­ systems ist herabgesetzt. Die Ein/Ausgabebelastungen werden daher zwischen den jeweiligen Steuereinheiten durch geeig­ netes Verschieben oder Umschalten der Kassetten zwischen den Steuereinheiten ausgeglichen.In U.S. Patent 4,403,286 (JP-A-57-157 68) is a system for Balancing loads described in a number of magnetic tape cassette units (hereinafter also briefly as Cassettes) with two control units each a buffer memory connected via data transmission paths are. The buffer memories in the control units are called Buffer used, like the respective tax units can be used to transfer data between Host systems and the buffers and data transfer parallel between the buffer stores and the cartridges to execute. If one of the cassettes with one of the tax units exchanges data, the other cartridges can do not start data transmission with this control unit. The control units initially load or write on subsequently multiple data blocks in the respective buffers memory and cassettes. One block is there as the data unit defined between a host system and a Buffer memory is transferred. That from a cassette read data or the data written in a cassette Data is saved from being stored in the buffer memory of the  Control units to be distributed, and a cassette is each under the control of a specific control unit set, and only their buffer memory is used. If one of the cassettes from the group of cassettes that are are under the control of a particular control unit, a data transmission between a transmission channel and the particular control unit begins, the rest The group cartridges are not in a data transfer between enter the transmission channel and this control unit. When a cartridge is transferring data to a buffer memory starts, the remaining cassettes can be the same no data transmission begin. If an unequal weight between the input / output loads of the respective Groups of cassettes under the control of each Control units occurs, therefore, remains a data transfer unoccupied, and the overall performance systems is degraded. The input / output loads are therefore appropriate between the respective control units netes moving or switching the cassettes between the Control units balanced.

Die oben erwähnte US-Patentschrift betrifft die Auswahl der umzuschaltenden Kassetten. Bei diesem bekannten Verfahren wird die Häufigkeit der vergeblichen Versuche jeder der Kas­ setten festgestellt, eine Datenübertragung zu beginnen, sei es, weil eine andere Kassette unter der Kontrolle der Steu­ ereinheit bereits die Datenübertragung begonnen hat oder aus einem anderen Grund, wenn die Steuereinheit eine Ein/Ausga­ beanforderung von der ersterwähnten Kassette erhält. Diese Häufigkeiten werden für die Kassetten in der jeweiligen Gruppe summiert. Wenn der Unterschied zwischen zwei Gesamt­ häufigkeiten einen gegebenen Wert übersteigt, wird festge­ stellt, daß die Ein/Ausgabebelastungen zwischen den Steuer­ einheiten nicht ausgeglichen sind, und es erfolgt eine Um­ schaltung der Kassetten zwischen den Steuereinheiten. Die Kassette, die umgeschaltet wird, ist diejenige, deren Häu­ figkeit der vergeblichen Versuche, eine Datenübertragung zu beginnen, nahe an der Hälfte des Unterschiedes zwischen den jeweiligen Häufigkeitssummen solcher vergeblicher Versuche der Kassetten für den Beginn einer Datenübertragung der jeweiligen Steuereinheiten liegt. Es ist offensichtlich, daß eine Steuereinheit mit einer größeren Summe an erfolglosen Versuchen für den Beginn einer Datenübertragung eine höhere Belastung aufweist. Aber auch wenn die Kassette umgeschaltet wird, deren Häufigkeit für erfolglose Versuche nahe an der Hälfte des erwähnten Unterschiedes ist, ist es sehr unwahr­ scheinlich, daß die Belastungen dann ausgeglichen sind.The above-mentioned US patent relates to the selection of the cassettes to be switched. In this known method the frequency of unsuccessful attempts by each of the cas set to start a data transfer it because another cassette is under control of tax unit has already started or is off another reason when the control unit has an input / output request from the first-mentioned cassette. These Frequencies are shown for the cassettes in each Group sums up. If the difference between two total frequencies exceed a given value, is determined represents the I / O charges between the taxes units are not balanced and there is an order  switching the cassettes between the control units. The Cassette that is switched is the one whose skin of unsuccessful attempts to transfer data start close to half the difference between the two respective frequency sums of such unsuccessful attempts of the cassettes for the start of a data transmission of the respective control units. It is obvious that a control unit with a larger sum of unsuccessful Try a higher one to start a data transfer Has load. But also when the cassette switched whose frequency for unsuccessful attempts is close to the Half of the difference mentioned is very untrue apparently that the burdens are then balanced.

Aufgabe der Erfindung ist es, ein Verfahren und eine Vor­ richtung zum Ausgleichen der Eingabe/Ausgabebelastungen zu schaffen, das bzw. die die Ein/Ausgabeeinheiten wie Magnet­ bandkassetteneinheiten derart zuordnet und steuert, daß die Belastung der einzelnen Steuereinheiten ausgeglichen ist.The object of the invention is to provide a method and a direction to balance the input / output loads create that the input / output units like magnet assigns and controls tape cassette units so that the Load of the individual control units is balanced.

Die Erfinder haben festgestellt, daß das zuverlässigste Ver­ fahren zur Lösung dieser Aufgabe darin besteht, den Bela­ stungszustand der einzelnen Steuereinheiten nach einer Neu­ zuordnung der Ein/Ausgabeeinheiten vorherzubestimmen. Das heißt, daß die erfindungsgemäße Lösung obiger Aufgabe darauf beruht, daß die Voraussage über einen Wartewert wie einer Ein/Ausgabe-Wartezeit mit einem Ausmaß an Berechnungen mög­ lich ist, die durch die Verwendung analytischer Modelle nicht erheblich sind. Erfindungsgemäß wird daher die mitt­ lere Wartezeit, die Auslastung, die Ein/Ausgabe-Ansprechzeit usw. berechnet, die sich in dem Fall ergibt, daß Ein/Ausga­ beeinheiten wie Magnetbandkassetten unter der Kontrolle einer Steuereinheit mit hoher Belastung neu einer Steuerein­ heit mit geringerer Belastung zugeordnet werden, wobei die Berechnung für diejenigen Kombinationen aller Ein/Ausgabe­ einheiten erfolgt, die umgeschaltet werden können. Es werden dann diejenigen Ein/Ausgabeeinheiten umgeschaltet, die das vorausbestimmte Ergebnis eines optimalen Ausgleiches erbrin­ gen.The inventors have found that the most reliable ver driving to accomplish this task is the Bela condition of the individual control units after a new one Predetermine the assignment of the input / output units. The means that the solution of the above object is based on it is based on the prediction of a waiting value like one I / O waiting time with an amount of calculations possible is by using analytical models are not significant. According to the invention, the mitt lesser waiting time, the load, the input / output response time etc. calculated, which results in the case that input / output units such as magnetic tape cassettes under control a control unit with high load a control unit unit with a lower load, the  Calculation for those combinations of all inputs / outputs units that can be switched. It will then switched those input / output units that the predetermined result of an optimal compensation gene.

Das erfindungsgemäße Steuerverfahren schließt zwei Vorgänge ein. Der erste Vorgang betrifft die Sammlung von Daten, bei­ spielsweise die für das Übertragen von Daten zwischen einem Übertragungskanal und einem Pufferspeicher erforderliche Zeit, oder das Zeitintervall vom Abschluß einer Anforderung einer Ein/Ausgabeeinheit an eine Steuereinheit bis zum Er­ halt der nächsten Anforderung, die für die Vorausberechnung während des Ein/Ausgabetriebes von Ein/Ausgabeeinheiten wie Magnetbandkassetten erforderlich sind. Der zweite Vorgang betrifft die Berechnung zur Vorhersage des Belastungszu­ standes nach einem Umschalten der Ein/Ausgabeeinheiten ent­ sprechend diesen gesammelten Daten und die Auswahl eines Schaltmusters, mit dem das vorhergesagte Ergebnis mit aus­ geglichenen Eingabe/Ausgabebelastungen erhalten wird.The control method according to the invention closes two processes a. The first process concerns the collection of data, at for example the one for transferring data between one Transmission channel and a buffer memory required Time, or the time interval from the completion of a request an input / output unit to a control unit until Er stop the next requirement for the pre-calculation during the input / output operation of input / output units such as Magnetic tape cartridges are required. The second process concerns the calculation for predicting the load increase after switching the input / output units speaking of this collected data and choosing one Switching pattern with which the predicted result with off equal input / output loads is obtained.

Ausführungsbeispiele für den Ausgleich der Belastungen auf Datenübertragungswegen werden im folgenden anhand der Zeichnung näher erläutert. Es zeigen:Embodiments for balancing the loads Data transmission paths are described below using the Drawing explained in more detail. Show it:

Fig. 1 ein Flußdiagramm für den Hauptvorgang beim Ausgleich der Belastung; Figure 1 is a flow chart for the main process in balancing the load.

Fig. 2 eine schematische Darstellung einer Rechneranordnung; Fig. 2 is a schematic representation of a computer arrangement;

Fig. 3 ein Blockschaltbild von Steuereinheiten für Magnet­ bandeinheiten; Fig. 3 is a block diagram of control units for magnetic tape units;

Fig. 4 eine Darstellung der Informationen in einer Magnet­ bandeinheit; Fig. 4 is a representation of the information in a magnetic tape unit;

Fig. 5 ein Flußdiagramm für den Vorgang beim Erhalt einer Ein/Ausgabeanforderung; Fig. 5 is a flowchart for the process of receiving an input / output request;

Fig. 6 ein Flußdiagramm für den Vorgang, der beim Beginn einer Datenübertragung ausgeführt wird; Fig. 6 is a flowchart of the process performed at the start of a data transfer;

Fig. 7 ein Flußdiagramm für den Vorgang, der beim Abschluß einer Datenübertragung ausgeführt wird; Fig. 7 is a flowchart of the process performed upon completion of a data transfer;

Fig. 8 eine Darstellung der Informationen in einer Steuer­ einheit; und Figure 8 is a representation of the information unit in a control. and

Fig. 9 ein Flußdiagramm für den Vorgang, der bei der Über­ tragung der Informationen ausgeführt wird, die für eine andere Steuereinheit zur Annahme einer umzu­ schaltenden Magnetbandeinheit erforderlich sind. Fig. 9 is a flowchart for the process that is carried out in the transmission of the information that is required for another control unit to accept a magnetic tape unit to be switched.

Es wird nun ein Ausführungsbeispiel für den Ausgleich der Belastung von Datenübertragungswegen erläutert. Die Fig. 2 ist eine schematische Darstellung eines Rechnersystems, bei dem der Ausgleich ausgeführt wird. Das System weist eine Zentraleinheit (CPU) 20, Übertragungskanäle A, B 21 bzw. 22, Steuereinheiten A, B 23 bzw. 24 und eine Anzahl Magnetband­ kassetteneinheiten 25 1, 25 2,... 25 n auf. Die Ein/Ausgabe­ einheiten sind bei dieser Ausführungsform die Magnetband­ kassetteneinheiten, es können jedoch auch andere Ein/Ausga­ beeinheiten verwendet werden. Die Kassetten 25 1 bis 25 n sind mit den Steuereinheiten A 23 und B 24 verbunden, so daß sie physikalisch Daten zu beiden Steuereinheiten A, B 23 und 24 senden und davon erhalten können. Die jeweiligen Kassetten befinden sich jedoch dabei derart unter der Kontrolle einer der Steuereinheiten, daß sie nur mit einer dieser Steuerein­ heiten eine Datenübertragung ausführen.An exemplary embodiment for balancing the load on data transmission paths is now explained. Fig. 2 is a schematic representation of a computer system in which the compensation is carried out. The system has a central processing unit (CPU) 20 , transmission channels A , B 21 and 22 , control units A , B 23 and 24 and a number of magnetic tape cassette units 25 1, 25 2 , ... 25 n . In this embodiment, the input / output units are the magnetic tape cassette units, but other input / output units can also be used. The cassettes 25 1 to 25 n are connected to the control units A 23 and B 24 so that they can physically send and receive data from both control units A , B 23 and 24 . However, the respective cassettes are under the control of one of the control units in such a way that they carry out data transmission only with one of these control units.

Die Steuereinheit, die mit einer Kassette 25 Daten austau­ schen kann, wird diejenige Steuereinheit genannt, die das Kontrollrecht über die Kassette 25 hat. Zum Ausgleich der Ein/Ausgabebelastung zwischen den Steuereinheiten A 23 und B 24 wird daher das Kontrollrecht über die Kassette 25 zwi­ schen den Steuereinheiten ausgetauscht. The control unit that can exchange data with a cassette 25 is called the control unit that has the right of control over the cassette 25 . To compensate for the input / output load between the control units A 23 and B 24 , the control right over the cassette 25 is therefore exchanged between the control units.

Die Fig. 3 zeigt die Steuereinheiten A 23 und B 24 genauer. Ein Prozessor A 300 steuert die Datenübertragung der Kasset­ ten, die sich unter der Kontrolle der Steuereinheit A 23 be­ finden. Ein Pufferspeicher A 302 speichert anfänglich gela­ dene bzw. aufeinanderfolgend eingeschriebene Daten der Kas­ setten 25, die sich unter der Kontrolle der Steuereinheit A 23 befinden. Der Prozessor A 300 sammelt die Informationen, die zum Umschalten des Kontrollrechts über die Kassetten 25 erforderlich sind, mittels einer Funktion (einem Programm) A 313 zur Sammlung von Informationen für die Vorhersage und bestimmt mittels einer Funktion (einem Programm) A 315 zur Berechnung der Vorhersage, wie das Kontrollrecht über die Kassetten 25 umzuschalten ist. Die anderen Funktionen des Prozessors A 300 außer der Funktion A 313 zur Sammlung von Informationen über die Vorhersage und der Funktion A 315 zur Berechnung der Vorhersage sind in der eingangs erwähnten US-PS 4 403 286 erläutert und werden hier nicht mehr be­ schrieben. Eine Datenübertragungseinheit CA 304 überträgt Daten zwischen dem Pufferspeicher A 302 und dem Übertra­ gungskanal A 21 oder B 22 für die Kassetten 25, die sich unter der Kontrolle der Steuereinheit A 23 befinden. Eine Datenübertragungseinheit DA 306 führt die Datenübertragungen zwischen dem Pufferspeicher 302 und den Kassetten 25 aus, die sich unter der Kontrolle der Steuereinheit A 23 befin­ den. Ein Prozessor B 301, ein Pufferspeicher B 303, eine Datenübertragungseinheit CB 305 und eine Datenübertragungs­ einheit DB 307 führen die entsprechenden Vorgänge für die Kassetten 25 aus, die sich unter der Kontrolle der Steuer­ einheit B 24 befinden (der Prozessor B 301 führt auch die Funktion B 314 zur Sammlung von Informationen zur Vorhersage und die Funktion B 316 zur Berechnung der Vorhersage aus). Steuertabellen A 308 und B 309 enthalten Daten der in der Fig. 8 gezeigten Art, über die die entsprechenden Steuerein­ heiten verfügen. Kassettentabellen A 310 und B 311 beinhal­ ten Daten der in der Fig. 4 gezeigten Art, über die jede Kassette 25 verfügt. In diesem Fall sind die Daten, über die jede Kassette 25 verfügt, in der Kassettentabelle A 310 oder der Kassettentabelle B 311 in der Steuereinheit gespeichert, die die jeweilige Kassette 25 kontrolliert. Ein Datenweg (Bus) 312 für Steuerinformationen wird dazu verwendet, Steu­ erinformationen zwischen den Prozessoren A 300 und B 301 auszutauschen. Fig. 3 shows the control units A 23 and B 24 in more detail. A processor A 300 controls the data transmission of the cassettes th, which are under the control of the control unit A 23 be. A buffer memory A 302 stores initially loaded or sequentially written data of the Kas set 25 , which are under the control of the control unit A 23 . The processor A 300 collects the information required to switch the right of control over the cassettes 25 by means of a function (a program) A 313 for collecting information for the prediction and determines by means of a function (a program) A 315 for calculating the Prediction of how the control right over the cassettes 25 is to be switched. The other functions of the processor A 300 besides the function A 313 for collecting information about the prediction and the function A 315 for calculating the prediction are explained in the aforementioned US Pat. No. 4,403,286 and are no longer described here. A data transfer unit CA 304 transfers data between the buffer memory A 302 and the transfer channel A 21 or B 22 for the cassettes 25 , which are under the control of the control unit A 23 . A data transfer unit DA 306 carries out the data transfers between the buffer memory 302 and the cassettes 25 , which are under the control of the control unit A 23 . A processor B 301 , a buffer memory B 303 , a data transfer unit CB 305 and a data transfer unit DB 307 carry out the corresponding operations for the cassettes 25 , which are under the control of the control unit B 24 (the processor B 301 also performs the function B 314 for collecting information about the prediction and the function B 316 for calculating the prediction). Control tables A 308 and B 309 contain data of the type shown in FIG. 8, which the corresponding control units have. Cassette tables A 310 and B 311 contain data of the type shown in FIG. 4 that each cassette 25 has. In this case, the data which each cassette 25 has are stored in the cassette table A 310 or the cassette table B 311 in the control unit which controls the respective cassette 25 . A data path (bus) 312 for control information is used to exchange control information between processors A 300 and B 301 .

Zur Erläuterung wird nun ein einfacher Vorgang beschrieben. Wenn der Prozessor A 300 eine Ein/Ausgabeanforderung vom Übertragungskanal A 21 erhält, prüft er, ob die Ein/Ausgabe­ anforderung für eine Kassette 25 ausgegeben ist, die unter der Kontrolle der Steuereinheit A 23 steht, und zwar durch Vergleich mit den Kontrollrechten für alle Kassetten, die sich unter der Kontrolle der Steuereinheit A 23 befinden. Wenn ja, so prüft der Prozessor A 300, ob die Datenübertra­ gungseinheit CA 304 eine Datenübertragung über den Übertra­ gungskanal B 22 ausführt. Wenn die Datenübertragungseinheit A 304 keine Datenübertragung ausführt, kann der Prozessor A 300 sofort in die Übertragung von Daten für die Ein/Ausgabe­ anforderung eintreten, die er gerade erhalten hat. Wenn die Datenübertragungseinheit CA 304 bereits eine Datenübertra­ gung begonnen hat, wird die Bearbeitung der erhaltenen Ein/ Ausgabeanforderung hinausgeschoben. Wenn die Bearbeitung verzögert wird, gibt der Prozessor A 300 vorübergehend die Verbindung mit dem Kanal A 21 frei. Wenn die Steuereinheit A 23 feststellt oder erkennt, daß die Ein/Ausgabeanforderung, die von dem Kanal A 21 erhalten wurde, für eine Kassette 25 ausgegeben wurde, die sich unter der Kontrolle der Steuer­ einheit B 24 befindet, übermittelt der Prozessor A 300 diese Anforderung an den Prozessor B 301 über den Weg 312 für Steuerinformationen. A simple process will now be described for explanation. When the processor A 300 receives an input / output request from the transmission channel A 21 , it checks whether the input / output request is issued for a cassette 25 which is under the control of the control unit A 23 , by comparison with the control rights for all Cassettes that are under the control of the A 23 control unit. If so, processor A 300 checks whether data transmission unit CA 304 is carrying out data transmission via transmission channel B 22 . If the data transfer unit A 304 does not perform data transfer, the processor A 300 can immediately start transferring data for the input / output request that it has just received. If the data transfer unit CA 304 has already started a data transfer, the processing of the received input / output request is postponed. If processing is delayed, processor A 300 temporarily releases connection to channel A 21 . If the control unit A 23 determines or detects that the input / output request received from the channel A 21 has been issued for a cassette 25 which is under the control of the control unit B 24 , the processor A 300 transmits this request to processor B 301 via path 312 for control information.

Wenn eine Ein/Ausgabeanforderung für eine Kassette 25 ausge­ geben wird, die sich über den Kanal B 22 unter der Kontrolle der Steuereinheit A 23 befindet, erhält zuerst die Steuer­ einheit B 24 diese Anforderung, woraufhin die Anforderung über den Weg 312 für Steuerinformationen an die Steuerein­ heit A 23 gegeben wird. Wenn die Steuereinheit A 23 die An­ forderung erhält, prüft sie, ob die Datenübertragungseinheit CA 304 Daten über den Kanal A 21 überträgt. Wenn nicht, be­ ginnt die Steuereinheit A 23 sofort mit der Datenübertra­ gung. Wenn die Datenübertragungseinheit CA 304 bereits einen Datentransfer begonnen hat, muß die Bearbeitung der erhalte­ nen Ein/Ausgabeanforderung hinausgeschoben werden.When an I / O request is issued for a cassette 25 which is under control of the control unit A 23 via the channel B 22 , the control unit B 24 first receives this request, whereupon the request is sent via path 312 for control information to the Control unit A 23 is given. When control unit A 23 receives the request, it checks whether data transmission unit CA 304 is transmitting data over channel A 21 . If not, the control unit A 23 starts the data transfer immediately. If the data transfer unit CA 304 has already started a data transfer, the processing of the received input / output request must be postponed.

Wenn die Ein/Ausgabebelastungen für die jeweiligen Gruppen von Kassetten unter der Kontrolle der entsprechenden Steuer­ einheiten nicht ausgeglichen sind, so braucht nur der Daten­ transfer in der Gruppe der Kassetten 25 verzögert zu werden, die sich unter der Kontrolle einer Steuereinheit befinden. Die Ein/Ausgabebelastungen sind daher zwischen den Steuer­ einheiten A 23 und B 24 durch Austausch des Kontrollrechts für die Kassetten 25 auszugleichen.If the input / output loads for the respective groups of cassettes are not balanced under the control of the corresponding control units, then only the data transfer need be delayed in the group of cassettes 25 which are under the control of a control unit. The input / output loads are therefore to be balanced between the control units A 23 and B 24 by exchanging the control right for the cassettes 25 .

Bei der vorliegenden Ausführungsform werden die Kontroll­ rechte für die Kassetten geeignet umgeschaltet, um die Be­ lastung der Steuereinheiten A 23 und B 24 auszugleichen.In the present embodiment, the control rights for the cassettes are switched appropriately to compensate for the load on the control units A 23 and B 24 .

Das Verfahren dafür wird nun genauer erläutert. Eine quanti­ tative Definition der auszugleichenden Belastungen beinhal­ tet den Ausgleich von Lastfaktoren wie Datenübertragungs­ wartezeiten, Datenübertragungsansprechzeiten, Datenausnut­ zung und den Durchsatz für jede der beiden Steuereinheiten. Die folgende Ausführungsform ist auf eine Vergleichmäßigung der Datenübertragungswartezeiten bezogen. In diesem Fall werden daher die mittleren Datenübertragungswartezeiten der jeweiligen Gruppen von Kassetten 25 unter der Kontrolle der Steuereinheiten A 23 und B 24 gemessen. Wenn diese Wartezei­ ten unterschiedlich sind, wird das Kontrollrecht für geeig­ nete Kassetten 25 zwischen den Steuereinheiten zum Ausgleich der Belastung ausgetauscht. Das Problem liegt daher darin, wie die Belastungen zu verschieben sind, um die mittleren Datenübertragungswartezeiten für die Gruppen von Kassetten 25 unter der Kontrolle der beiden Steuereinheiten auszuglei­ chen. Wenn eine Verschiebung ausgeführt wird, können die mittleren Datenübertragungswartezeiten für die Gruppen von Kassetten 25 unter der Kontrolle der jeweiligen Steuerein­ heiten, die sich aus der Verschiebung der Belastung ergibt, vorhergesagt werden. Es gibt mehrere bekannte Prozeduren zur Vorherbestimmung der mittleren Wartezeit usw. mittels analy­ tischer Modelle. Bei der vorliegenden Ausführungsform werden die zur Vorhersage der mittleren Wartezeiten erforderlichen Daten während des Betriebs einer jeden Kassette 25 gemessen, und es wird vorherbestimmt, wie lange die mittlere Wartezeit für die jeweilige Gruppe von Kassetten 25 für den Fall sein wird, daß das Kontrollrecht über die Kassetten 25 zwischen den Steuereinheiten ausgetauscht wird. Als Ergebnis wird ein Umschaltmuster gewählt, bei dem der Unterschied zwischen den vorbestimmten Ergebnissen für die mittlere Datenübertra­ gungswartezeit der jeweiligen Gruppen von Kassetten 25 unter der Kontrolle der jeweiligen Steuereinheiten minimal ist.The procedure for this will now be explained in more detail. A quantitative definition of the loads to be balanced includes the balancing of load factors such as data transmission waiting times, data transmission response times, data utilization and the throughput for each of the two control units. The following embodiment relates to an equalization of the data transmission waiting times. In this case, therefore, the average data transmission waiting times of the respective groups of cassettes 25 are measured under the control of the control units A 23 and B 24 . If these waiting times are different, the control right for suitable cassettes 25 is exchanged between the control units to compensate for the load. The problem is therefore how to shift the loads to compensate for the average data transfer latencies for the groups of cartridges 25 under the control of the two control units. When a shift is carried out, the average data transfer waiting times for the groups of cartridges 25 can be predicted under the control of the respective control units resulting from the shift of the load. There are several known procedures for predicting the mean waiting time, etc. using analytical models. In the present embodiment, the data required to predict the average waiting times is measured during the operation of each cartridge 25 , and it is predetermined how long the average waiting time will be for the respective group of cartridges 25 in the event that the right of control over the Cassettes 25 is exchanged between the control units. As a result, a switching pattern is selected in which the difference between the predetermined results for the average data transmission waiting time of the respective groups of cassettes 25 is minimal under the control of the respective control units.

Die für die Berechnung zur Vorhersage der mittleren Warte­ zeiten erforderlichen Daten sind in Abhängigkeit von dem jeweiligen analytischen Modell verschieden. Da die Kassetten 25 gewöhnlich mit einem einzigen Programm belegt sind, soll­ te ein analytisches Modell der Art verwendet werden, bei der die Anzahl der Fortsetzungsanforderungen in dem Modell gleich der Anzahl aktiver Kassetten und damit eine Konstante ist, um die Eigenschaften der Kassetten wiederzugeben. Solche Arten analytischer Modelle sind etwa asymptotische Modelle und Maschinenreparaturmodelle. Wenn diese Modelle verwendet werden, ist die mittlere Wartezeit, die mittlere Ansprechzeit, der Durchsatz, die Auslastung usw. durch Mes­ sen der Anzahl aktiver Kassetten 25, der jeweiligen Zeit­ intervalle zwischen dem Abschluß und der Ankunft von Ein/ Ausgabeanforderungen der Kassetten 25 und der mittleren Datenübertragungszeit vorhersagbar. Beispielsweise kann ge­ mäß dem asymptotischen Modell die mittlere Wartezeit, die mittlere Ansprechzeit, die Auslastung und der Durchsatz über die folgenden Gleichungen erhalten werden, die dem Artikel der Erfinder "Bottleneck Analysis of Multiprogrammed Com­ puter Systems with Scheduling Disciplines" in "Transaction on Information Processing" (Japan), Band 23, Nr. 5, Seiten 562 bis 569 (1982) entnommen sind:
Mittlere Wartezeit = MAX (0, (Anzahl der Kassetten - 1) × (mittlere Datenübertragungszeit) - (mittleres Zeit­ intervall zwischen der Beendigung und der Ankunft einer Ein/Ausgabeanforderung));
mittlere Ansprechzeit = MAX (mittlere Datenübertra­ gungszeit, (Anzahl der Kassetten) × (mittlere Daten­ übertragungszeit)- (mittleres Zeitintervall zwischen der Beendigung und der Ankunft einer Ein/Ausgabeanfor­ derung));
Auslastung = MIN ((Anzahl von Kassetten) × (mittlere Datenübetragungszeit)/(mittleres Zeitintervall zwischen der Beendigung und der Ankunft einer Ein/Ausgabeanfor­ derung + mittlere Datenübertragungszeit), 1); und
Durchsatz = MIN (Anzahl der Kassetten)/(mittleres Zeit­ intervall zwischen der Beendigung und der Ankunft einer Ein/Ausgabeanforderung + mittlere Datenübertragungs­ zeit), 1/(mittlere Datenübertragungszeit)).
The data required for the calculation to predict the mean waiting times differ depending on the respective analytical model. Since the cartridges 25 are usually populated with a single program, an analytical model of the type in which the number of continuation requests in the model is equal to the number of active cartridges and thus a constant to reflect the properties of the cartridges should be used. Such types of analytical models are, for example, asymptotic models and machine repair models. When these models are used, the average waiting time, the average response time, the throughput, the load, etc. is measured by measuring the number of active cartridges 25 , the respective time intervals between the completion and arrival of input / output requests of the cartridges 25 and mean data transmission time predictable. For example, according to the asymptotic model, the mean waiting time, the mean response time, the load and the throughput can be obtained via the following equations, which are described in the inventors' article "Bottleneck Analysis of Multiprogrammed Computer Systems with Scheduling Disciplines" in "Transaction on Information Processing.""(Japan), Volume 23, No. 5, pages 562 to 569 (1982) are taken from:
Average waiting time = MAX (0, (number of cartridges - 1) × (average data transfer time) - (average time interval between completion and arrival of an input / output request));
average response time = MAX (average data transfer time, (number of cartridges) × (average data transfer time) - (average time interval between completion and arrival of an input / output request));
Utilization = MIN ((number of cartridges) × (average data transfer time) / (average time interval between completion and arrival of an input / output request + average data transfer time), 1); and
Throughput = MIN (number of cassettes) / (average time interval between the completion and arrival of an input / output request + average data transfer time), 1 / (average data transfer time)).

Wenn die obigen Gleichungen einen negativen Wert annehmen, ist die mittlere Wartezeit gleich Null. Wenn das asymptoti­ sche Näherungsmodell verwendet und die mittlere Datenüber­ tragungszeit sowie das mittlere Zeitintervall zwischen der Beendigung und dem Erhalt einer Ein/Ausgabeanforderung der jeweiligen Kassetten 25 gemessen werden, können die mitt­ leren Datenübertragungswartezeiten für die jeweiligen Grup­ pen von Kassetten, die neu unter die Kontrolle einer der Steuereinheiten gestellt wurden, vorhergesagt werden, da die Anzahl der Kassetten 25, die sich anfänglich unter der Kon­ trolle der jeweiligen Steuereinheiten befinden, bekannt sind.If the above equations take a negative value, the mean wait time is zero. If the asymptotic approximation model is used and the average data transfer time and the average time interval between the completion and receipt of an input / output request of the respective cartridges 25 are measured, the average data transfer waiting times for the respective groups of cartridges can be newly under control one of the control units were predicted, since the number of cassettes 25 , which are initially under the control of the respective control units, are known.

Es werden nun die Vorgänge beschrieben, die bei der vorlie­ genden Ausführungsform ablaufen, wobei als Beispiel ein analytisches Modell in der Art des asymptotischen Modells oder des Reparaturmodelles verwendet wird, wobei die mitt­ lere Datenübertragungswartezeit der Kassetten 25 durch Be­ stimmen der Anzahl der Kassetten 25, der Datenübertragungs­ zeit und dem mittleren Zeitintervall zwischen der Beendigung und der Ankunft einer Ein/Ausgabeanforderung für die Kasset­ ten vorausberechnet wird.There will now be described the operations that take place in the present embodiment, using an analytical model such as the asymptotic model or the repair model as an example, the mean data transfer waiting time of the cassettes 25 by determining the number of the cassettes 25 , the data transmission time and the mean time interval between the completion and arrival of an input / output request for the cassettes is calculated in advance.

Die Fig. 8 zeigt das Format der Steuertabellen A 308 und B 309, die die Anzahl 80 der Kassetten 25 speichern, die der­ zeit aktiv sind und sich unter der Kontrolle der jeweiligen Steuereinheit befinden. Kontrolldaten 81 bezeichnen die Gruppe von Kassetten, die sich derzeit unter der Kontrolle der jeweiligen Steuereinheit befinden. Die Fig. 4 zeigt das Format der Kassettentabellen A 310 und B 311, deren Daten in der jeweiligen Steuereinheit gespeichert sind, die diese Tabellen kontrolliert. Ein Abschnitt 40 für die Ein/Ausgabe­ verarbeitungsabschlußzeit speichert Daten über den Zeit­ punkt, an dem die letzte Übertragung der verarbeiteten Ein/Ausgabedaten beendet wurde. Ein Abschnitt 41 für die Datenübertragungsstartzeit speichert den Zeitpunkt, an dem die Datenübertragung begonnen wurde. Ein Datenübertragungs­ wartebit 42 geht auf einen hohen Pegel, wenn die zugehörige Steuereinheit, die von einer Kassette 25 unter ihrer Kon­ trolle eine Ein/Ausgabeanforderung erhält, die Datenübertra­ gung nicht beginnen kann, da die Steuereinheit bereits eine Datenübertragung mit einer anderen Kassette begonnen hat, und/oder da keine Anfangsdaten geladen sind usw. Ein Ab­ schnitt 43 für die Datenübertragungswartezeit speichert Daten über den Zeitpunkt, zu dem das Bit 42 auf den hohen Pegel geht. Fig. 8 shows the format of control tables A 308 and B 309 store the number 80 of the cassette 25, which are the active time and are under the control of the respective control unit. Control data 81 designate the group of cassettes which are currently under the control of the respective control unit. Fig. 4 shows the format of the cassette tables A 310 and B 311 , the data of which are stored in the respective control unit which controls these tables. A section 40 for the I / O processing completion time stores data about the time when the last transfer of the processed I / O data was completed. A data transfer start time section 41 stores the time at which the data transfer was started. A data transfer wait bit 42 goes high when the associated control unit, which receives an input / output request from a cassette 25 under its control, cannot start the data transfer because the control unit has already started data transfer with another cassette, and / or since no initial data is loaded, etc. A data transfer wait time section 43 stores data about when the bit 42 goes high.

Ein Abschnitt 44 über die Anzahl von Ein/Ausgabeanforde­ rungen speichert Daten über die gesamte Anzahl von Ein/Aus­ gabeanforderungen, die zu jeder Kassette 25 ausgegeben wur­ den, nachdem die letzte Vorausberechnung erfolgt ist. Ein Abschnitt 45 für die akkumulierte Datenübertragungswarte­ zeit, ein Abschnitt 46 für die akkumulierte Datenübertra­ gungszeit und ein Abschnitt 47 für das akkumulierte Ein/Aus­ gabegenerationszeitintervall stellen die jeweiligen akkumu­ lierten Werte für die Datenübertragungswartezeit, die Daten­ übertragungszeit und das Zeitintervall zwischen der Beendi­ gung und dem Erhalt einer Ein/Ausgabeanforderung für die Kassette dar, nachdem die Vorausberechnung ausgeführt worden ist.A section 44 on the number of I / O requests stores data on the total number of I / O requests issued to each cartridge 25 after the last prediction has been made. A section 45 for the accumulated data transmission waiting time, a section 46 for the accumulated data transmission time and a section 47 for the accumulated on / off output generation time interval set the respective accumulated values for the data transmission waiting time, the data transmission time and the time interval between the completion and the Receiving an I / O request for the cartridge after the prediction has been performed.

Anhand der Fig. 5 bis 7 wird nun das Sammeln dieser Daten unter Verwendung der Vorhersageinformations-Sammelfunktionen (Programmen) A 313 und A 314 beschrieben. Die Fig. 5 zeigt den Ablauf der Vorgänge, die ausgeführt werden, wenn eine Steuereinheit eine Ein/Ausgabeanforderung erhält. Zuerst wird im Schritt 500 die Ein/Ausgabeabschlußzeit 40 einer Kassette 25, an die eine Ein/Ausgabeanforderung ausgegeben wird, von der gegenwärtigen Zeit subtrahiert, und diese subtrahierte Zeit wird zu dem akkumulierten Ein/Ausgabe­ abgabezeitintervall 47 für diese Kassette addiert. Im Schritt 501 wird die Anzahl der Ein/Ausgabeanforderungen 44 um eins erhöht. Im Schritt 502 wird geprüft, ob diese Ein/ Ausgabeanforderung in eine Datenübertragung übergeführt werden kann. Wenn ja, wird der Vorgang angeschlossen, ohne daß eine weitere Verarbeitung stattfindet. Wenn nicht, wird im Schritt 503 das Datentransfer-Wartebit 42 auf den hohen Pegel gebracht und die gegenwärtige Zeit in den Abschnitt 43 für die Datenübertragungswartezeit gegeben.Collecting these data using the predictive information collection functions (programs) A 313 and A 314 will now be described with reference to FIGS. 5 to 7. Fig. 5 shows the flow of the operations which are carried out when a control unit receives an input / output request. First, in step 500, the I / O completion time 40 of a cartridge 25 to which an I / O request is issued is subtracted from the current time, and this subtracted time is added to the accumulated I / O delivery time interval 47 for that cartridge. In step 501 , the number of input / output requests 44 is increased by one. In step 502 it is checked whether this input / output request can be converted into a data transmission. If so, the process is connected without further processing taking place. If not, in step 503 the data transfer wait bit 42 is brought high and the current time is given in section 43 for the data transfer wait time.

Die Fig. 6 zeigt ein Flußdiagramm für den Vorgang, wenn eine Datenübertragung begonnen wird. Im Schritt 600 wird geprüft, ob das Datenübertragungswartebit 42 für die Kassette 25, die eine Datenübertragung beginnt, auf dem hohen Pegel ist. Wenn nicht, wird zu dem Schritt 603 weitergegangen. Wenn ja, wird im Schritt 601 die Datenübertragungswartezeit 43 von der gegenwärtigen Zeit subtrahiert, und die subtrahierte Zeit wird dann zu dem akkumulierten Ein/Ausgabegenerationszeit­ intervall 47 für diese Kassette addiert. Im Schritt 602 wird das Datenübertragungswartebit 42 auf den niedrigen Pegel ge­ setzt. Im Schritt 604 werden Daten über die gegenwärtige Zeit im Abschnitt 41 für die Datenübertragungsstartzeit ge­ speichert und es wird der Vorgang abgeschlossen. Fig. 6 shows a flow chart for the process when data transfer is started. In step 600 it is checked whether the data transfer waiting bit 42 for the cassette 25 , which is starting a data transfer, is at the high level. If not, go to step 603 . If so, in step 601 the data transfer waiting time 43 is subtracted from the current time, and the subtracted time is then added to the accumulated I / O generation time interval 47 for this cartridge. In step 602 , the data transfer wait bit 42 is set to the low level. At step 604 , current time data is stored in the data transfer start time section 41, and the process is completed.

Die Fig. 7 zeigt ein Flußdiagramm für den Vorgang, wenn die Datenübertragung abgeschlossen wird. Im Schritt 700 wird die Datenübertragungsstartzeit 41 für eine Kassette 25 von der gegenwärtigen Zeit subtrahiert, wenn die Kassette 25 die Da­ tenübertragung abgeschlossen hat, und die subtrahierte Datenübertragungszeit wird zu der akkumulierten Datenüber­ tragungszeit 46 dieser Kassette addiert. Im Schritt 701 wird die gegenwärtige Zeit in den Abschnitt 40 für die Ein/Aus­ gabeverarbeitungsabschlußzeit eingegeben. Fig. 7 shows a flowchart for the process when the data transfer is completed. At step 700 , the data transfer start time 41 for a cartridge 25 is subtracted from the current time when the cartridge 25 has completed data transfer, and the subtracted data transfer time is added to the accumulated data transfer time 46 of that cartridge. In step 701 , the current time is input to the section 40 for the input / output processing completion time.

Die Vorgänge für die Vorausberechnungsfunktionen A 315 und B 316, über die eine umzuschaltende Kassette 25 auf der Basis dieser Daten ausgewählt wird, werden nun beschrieben. Die Steuereinheit A 23 oder die Steuereinheit B 24 kann das Kon­ trollrecht der umzuschaltenden Kassette auswählen. Unter dem Gesichtspunkt des Belastungsausgleiches usw. können die Steuereinheiten A 23 und B 24 abwechselnd verwendet werden. Die in den Fig. 8 und 4 gezeigten Daten sollten alle in der Steuereinheit gesammelt werden, die das Kontrollrecht über die umzuschaltende Kassette 25 übernimmt.The operations for the prediction functions A 315 and B 316 , by which a cartridge 25 to be switched over is selected on the basis of this data, will now be described. The control unit A 23 or the control unit B 24 can select the control right of the cassette to be switched. From the point of view of load balancing etc., the control units A 23 and B 24 can be used alternately. The data shown in FIGS. 8 and 4 should all be collected in the control unit which assumes the right of control over the cassette 25 to be switched .

Die Fig. 1 zeigt den Ablauf der Vorgänge für die Steuerein­ heit, die das Kontrollrecht der umzuschaltenden Kassete 25 übernimmt. Diese Vorgänge werden ausgeführt, wenn eine vor­ bestimmte Zeit verstrichen ist. Eine solche periodische be­ stimmte Zeit wird als Steuerzyklus bezeichnet. Fig. 1 shows the sequence of operations for the Steuerein unit, which takes over the control right of the cassette 25 to be switched . These operations are performed when a certain time has elapsed. Such a periodic be certain time is called a control cycle.

Im Schritt 100 gibt eine Empfangssteuerung an eine Sende­ steuerung eine Anforderung aus, mit der die Übertragung von Daten angefordert wird, die für die Übernahme des Kontroll­ rechtes über die umzuschaltende Kassette 25 erforderlich sind. Danach wartet im Schritt 101 die Empfangssteuerung die Ankunft dieser Daten von der anderen Steuereinheit ab. Die übertragenen Daten schließen die Anzahl 80 der Kassetten, die Anzahl von Ein/Ausgabeanforderungen 44, die akkumulierte Datenübertragungswartezeit 45, die akkumulierte Datenüber­ tragungszeit 46 und das akkumulierte Ein/Ausgabegenerations­ zeitintervall 47 der jeweiligen Kassetten 25 ein. Im Schritt 102 wird geprüft, ob die Ein/Ausgabebelastungen für die Kas­ setten 25 unter der Kontrolle der beiden Steuereinheiten zwischen den Steuereinheiten ausgeglichen sind. Zuerst wird die betreffende Anzahl von Ein/Ausgabeanforderungen 44 und die betreffenden akkumulierten Datenübertragungswartezeiten 45 für die Kassetten 25 der jeweiligen Gruppe unter der Kon­ trolle der entsprechenden Steuereinheiten getrennt aufad­ diert. Die sich ergebende Gesamt-Datenübertragungswartezeit 45 für die jeweiligen Gruppen von Kassetten wird durch die entsprechende Gesamtzahl von Ein/Ausgabeanforderungen 44 dividiert, um für die jeweiligen Gruppen die mittlere Daten­ übertragungswartezeit zu erhalten. Wenn der Unterschied zwischen den beiden mittleren Datenübertragungswartezeiten kleiner als ein vorgegebener Wert ist, so wird die Belastung als ausgeglichen betrachtet, und die Kontrollrechte über die Kassetten 25 werden nicht umgeschaltet.In step 100 , a reception controller issues a request to a transmission controller with which the transmission of data is requested, which are required for the transfer of the control right over the cassette 25 to be switched. Then in step 101, the reception controller waits for the arrival of this data from the other control unit. The transferred data include the number 80 of cartridges, the number of input / output requests 44 , the accumulated data transfer waiting time 45 , the accumulated data transfer time 46, and the accumulated input / output generation time interval 47 of the respective cartridges 25 . In step 102 it is checked whether the input / output loads for the cassette 25 are balanced between the control units under the control of the two control units. First, the respective number of input / output requests 44 and the respective accumulated data transfer waiting times 45 for the cassettes 25 of the respective group are added separately under the control of the corresponding control units. The resulting total data transfer latency 45 for the respective groups of cartridges is divided by the corresponding total number of input / output requests 44 to obtain the average data transfer latency for the respective groups. If the difference between the two mean data transfer waiting times is less than a predetermined value, the load is considered to be balanced and the control rights over the cassettes 25 are not switched.

Es wird nun der Fall beschrieben, daß die Kontrollrechte über die Kassetten umgeschaltet werden. Im allgemeinen sollten zum vollständigen Ausgleich der mittleren Datenüber­ tragungswartezeiten für beide Steuereinheiten die Kontroll­ rechte über die Kassetten 25 umgeschaltet werden. Wenn je­ doch eine Umschaltung der Kontrollrechte von n Kassetten vorausgesetzt wird, steigt die Anzahl von Umschaltmustern schnell an, so daß sich das Problem ergibt, daß der Gesamt­ aufwand für die Vorausberechnungen zu groß wird. Es wird daher im folgenden Beispiel der Fall betrachtet, daß die Anzahl der umzuschaltenden Kontrollrechte gleich eins ist. In diesem Fall wird aus der Gruppe von Kassetten 25 unter der Kontrolle einer Steuereinheit, die eine größere mittlere Datenwartezeit aufweist, eine einzige Kassette 25 ausge­ wählt. Das Kontrollrecht über diese Kassette 25 wird dann umgeschaltet. Im Schritt 103 der Fig. 1 wird eine Magnet­ bandkassette aus einer Gruppe von Kassetten 25 unter der Kontrolle einer Steuereinheit mit einer größeren mittleren Datenwartezeit ausgewählt, um eine Voraussageberechnung auszuführen. Im Schritt 104 werden die jeweiligen mittleren Datenübertragungswartezeiten der Gruppen von Kassetten 25 unter der Kontrolle der betreffenden Steuereinheiten für den Fall berechnet, daß das Kontrollrecht über eine solche Kas­ sette umgeschaltet wird, und der Unterschied zwischen beiden mittleren Wartezeiten wird festgestellt. Da die Anzahl von Ein/Ausgabeanforderungen 44, die akkumulierte Datenübertra­ gungszeit 46 und das akkumulierte Ein/Ausgabegenerations­ zeitintervall 47 für jede Kassette 25 vorher bekannt sind, können die mittlere Datenübertragungszeit und das mittlere Ein/Ausgabegenerationszeitintervall für die jeweiligen Grup­ pen von Kassetten 25 unter der Kontrolle der beiden Steuer­ einheiten nach der Umschaltung berechnet werden. Der erste Wert wird durch Dividieren der Summe der jeweiligen akkumu­ lierten Übertragungszeiten der betreffenden Gruppen von Kassetten 25 durch die Summe der Anzahl von Ein/Ausgabean­ forderungen für diese Gruppe erhalten. Der zweite Wert wird durch Dividieren der Summe der jeweiligen akkumulierten Ein/Ausgabeanforderungsausgabezeitintervalle für die jewei­ ligen Gruppen von Kassetten 25 durch die Summe der Anzahl von Ein/Ausgabeanforderungen für diese Gruppe erhalten. Da die jeweilige Anzahl von Kassetten, die nach der Umschaltung des Kontrollrechts zu den entsprechenden Gruppen gehören, aus der Anzahl 80 von Kassetten bekannt ist, kann die mitt­ lere Datenübertragungswartezeit durch Verwendung des asymp­ totischen Modells oder des Reparaturmodells wie oben erwähnt berechnet werden.The case where the control rights are switched over the cassettes will now be described. In general, the control rights should be switched over the cassettes 25 to completely balance the average data transmission waiting times for both control units. However, if a switchover of the control rights of n cassettes is required, the number of switchover patterns increases rapidly, so that the problem arises that the total expenditure for the precalculations becomes too great. It is therefore considered in the following example that the number of control rights to be switched is equal to one. In this case, a single cassette 25 is selected from the group of cassettes 25 under the control of a control unit which has a longer mean data waiting time. The control right over this cassette 25 is then switched. In step 103 of FIG. 1, a magnetic tape cassette is selected from a group of cassettes 25 under the control of a control unit having a larger mean data waiting time to perform a prediction calculation. In step 104 , the respective average data transmission waiting times of the groups of cassettes 25 are calculated under the control of the respective control units in the event that the control right is switched over such a cassette, and the difference between the two average waiting times is determined. Since the number of I / O requests 44 , the accumulated data transfer time 46, and the accumulated I / O generation time interval 47 for each cartridge 25 are known in advance, the average data transfer time and the average I / O generation time interval for the respective groups of cartridges 25 may be less than that Control of the two control units can be calculated after the switchover. The first value is obtained by dividing the sum of the respective accumulated transfer times of the respective groups of cassettes 25 by the sum of the number of input / output requests for that group. The second value is obtained by dividing the sum of the respective accumulated I / O request issue time intervals for the respective groups of cartridges 25 by the sum of the number of I / O requests for that group. Since the respective number of cassettes that belong to the corresponding groups after the change of control rights is known from the number 80 of cassettes, the mean data transmission waiting time can be calculated by using the asympic model or the repair model as mentioned above.

Im Schritt 105 wird geprüft, ob es Kassetten 25 gibt, bei denen eine Vorausberechnung eine größere mittlere Datenüber­ tragungswartezeit ergibt, wenn keine Umschaltung der Kon­ trollrechte erfolgt. Wenn ja, kehrt der Prozeß zum Schritt 103 zurück. Wenn für alle Kassetten 25 die Vorausberech­ nungen erfolgt sind, wird das Kontrollrecht für die Kassette 25, für die der Unterschied zwischen dem vorhergesagten Er­ gebnis der mittleren Datenübertragungswartezeit am kleinsten ist, als dasjenige Kontrollrecht ausgewählt, das im Schritt 106 umzuschalten ist. Im Schritt 107 wird die Anzahl der Ein/Ausgabeanforderungen 44, die akkumulierte Datenübertra­ gungszeit 45, die akkumulierte Datenübertragungswartezeit 46 und das akkumulierte Ein/Ausgabegenerationszeitintervall 47 für jede Kassette gelöscht. Danach beginnt die Umschaltung des Steuerrechtes für die ausgewählte Kassette 25. Diese Umschaltung kann wie beim oben genannten Stand der Technik ausgeführt werden. Wenn der Vorgang beendet ist, wird die Tabelle, die die Anzahl 80 der Kassetten und die Anzahl 81 der kontrollierten Kassetten anzeigt, erneuert.In step 105 , it is checked whether there are cassettes 25 in which a pre-calculation results in a longer average data transmission waiting time if the control rights are not switched. If so, the process returns to step 103 . When the predictions have been made for all of the cassettes 25 , the control right for the cassette 25 for which the difference between the predicted result of the average data transfer waiting time is smallest is selected as the control right to be switched in step 106 . At step 107 , the number of input / output requests 44 , the accumulated data transfer time 45 , the accumulated data transfer waiting time 46, and the accumulated input / output generation time interval 47 for each cartridge are cleared. Thereafter, the switching of the tax law for the selected cassette 25 begins. This switchover can be carried out as in the prior art mentioned above. When the process is finished, the table showing the number of 80 cartridges and the number of 81 cartridges checked is updated.

Die Fig. 9 ist ein Flußdiagramm für die Steuereinheit, die nicht das Kontrollrecht der umzuschaltenden Kassette 25 übernimmt. Dieser Vorgang wird ausgeführt, wenn diese Steu­ ereinheit eine Anforderung zum Übertragen der Daten, die zur Übernahme des Kontrollrechtes über eine umzuschaltende Kas­ sette 25 erforderlich sind, von der anderen Steuereinheit erhält. Im Schritt 900 sendet die erste Steuereinheit Daten über die Anzahl 80 von Kassetten, die Anzahl von Ein/Ausga­ beanforderungen 44, die akkumulierte Datenübertragungswarte­ zeit 45, die akkumulierte Datenübertragungszeit 46 und das akkumulierte Ein/Ausgabegenerationszeitintervall 47 für die Kassetten 25, die sich unter der Kontrolle dieser Steuerein­ heit befinden, zu der zweiten Steuereinheit, die das Kon­ trollrecht über die umzuschaltende Kassette 25 übernimmt. Im Schritt 901 werden die Daten über die Anzahl der Ein/Ausga­ beanforderungen 44, die akkumulierte Datenübertragungswarte­ zeit 45, die akkumulierte Datenübertragungszeit 46 und das akkumulierte Ein/Ausgabegenerationszeitintervall 47 ge­ löscht. Danach erfolgt eine Umschaltung der Kassette 25 entsprechend dem Ergebnis der Vorausberechnung. Wenn diese Umschaltung ausgeführt ist, werden die Werte für die Anzahl 80 an Kassetten und die Anzahl 81 der kontrollierten Kasset­ ten erneuert. Fig. 9 is a flowchart for the control unit which does not take control of the cassette 25 to be switched . This process is carried out when this control unit receives a request from the other control unit for the transfer of the data which are necessary for taking over control rights via a cassette 25 to be switched . In step 900 , the first control unit sends data about the number 80 of cartridges, the number of input / output requests 44 , the accumulated data transfer waiting time 45 , the accumulated data transfer time 46 and the accumulated input / output generation time interval 47 for the cartridges 25 , which are under the Control this Steuerein unit are to the second control unit, which takes over the control right over the cassette 25 to be switched . In step 901 , the data on the number of input / output requests 44 , the accumulated data transfer waiting time 45 , the accumulated data transfer time 46 and the accumulated input / output generation time interval 47 are deleted. The cassette 25 is then switched over in accordance with the result of the preliminary calculation. When this switching is carried out, the values for the number of 80 cassettes and the number 81 of the checked cassettes are renewed.

Claims (18)

1. Verfahren zum Ausgleichen von Ein/Ausgabebelastungen zwi­ schen einer Anzahl von Steuereinheiten (23, 24) mit jeweils einem Pufferspeicher (302, 303), wobei Daten über einen Übertragungskanal (21, 22) zu und von einer Anzahl von Ein/Ausgabeeinheiten (25) übermittelt werden, die mit den Steuereinheiten derart verbunden sind, daß jede Ein/Ausgabe­ einheit sich individuell unter der Kontrolle einer der Steuereinheiten befindet und Datenübertragungen nur mit der Steuereinheit ausgeführt werden, unter deren Kontrolle sich die jeweilige Ein/Ausgabeeinheit befindet, gekennzeichnet durch die Verfahrensschritte
  • (a) des Sammelns von Ein/Ausgabeaktivitätsinformationen über die Ein/Ausgabeeinheiten;
  • (b) des Vorausberechnens des Ein/Ausgabebelastungszustandes der jeweiligen Gruppen von Ein/Ausgabeeinheiten, die sich unter der Kontrolle der jeweiligen Steuereinheiten befinden werden, auf der Basis der gesammelten Ein/Aus­ gabeaktivitätsinformationen unter der Annahme, daß wenigstens eine Ein/Ausgabeeinheit von einer Steuerein­ heit zu einer anderen Steuereinheit umgeschaltet wird;
  • (c) des Bestimmens eines Umschaltmusters in Übereinstimmung mit dem Ergebnis der Vorausberechnung; und
  • (d) des erneuten Anordnens der jeweiligen Gruppen von Ein/ Ausgabeeinheiten, die sich unter der Kontrolle der je­ weiligen Steuereinheiten befinden, zwischen den Steuer­ einheiten entsprechend dem Umschaltmuster.
1. Method for balancing input / output loads between a number of control units ( 23 , 24 ), each with a buffer memory ( 302 , 303 ), data being transmitted to and from a number of input / output units ( 21 , 22 ) 25 ) are transmitted, which are connected to the control units in such a way that each input / output unit is individually under the control of one of the control units and data transfers are carried out only with the control unit under whose control the respective input / output unit is located, characterized by the procedural steps
  • (a) collecting I / O activity information about the I / O devices;
  • (b) predicting the input / output load status of the respective groups of input / output units that will be under the control of the respective control units based on the collected input / output activity information assuming that at least one input / output unit is from a control unit is switched to another control unit;
  • (c) determining a switching pattern in accordance with the result of the prediction; and
  • (d) the rearrangement of the respective groups of input / output units, which are under the control of the respective control units, between the control units according to the switching pattern.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß beim Schritt des Bestimmens des Umschaltmusters das Um­ schaltmuster derart festgelegt wird, daß sich ein voraus­ gesagtes Ergebnis mit einem vorbestimmten Gleichgewicht zwischen den Ein/Ausgabebelastungen ergibt.2. The method according to claim 1, characterized in that at the step of determining the switching pattern, the um Switching pattern is set so that there is an advance said result with a predetermined balance  between the input / output loads. 3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß das vorausbestimmte Gleichgewicht so festgelegt ist, daß die Ein/Ausgabebelastungen zwischen den Steuereinheiten optimal ausgeglichen sind.3. The method according to claim 2, characterized in that the predetermined balance is determined so that the I / O loads between the control units optimal are balanced. 4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß der Schritt des Vorausberechnens die Verwendung eines ana­ lytischen Modells einschließt.4. The method according to claim 1, characterized in that the step of precalculating the use of an ana lytic model. 5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Schritte des Sammelns von Ein/Ausgabeaktivitätsinfor­ mationen und der Berechnung durch die jeweiligen Steuer­ einheiten ausgeführt werden.5. The method according to claim 1, characterized in that the steps of collecting input / output activity information mations and the calculation by the respective tax units are executed. 6. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß das analytische Modell ein asymptotisches Modell ist.6. The method according to claim 4, characterized in that the analytical model is an asymptotic model. 7. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß das analytische Modell ein Maschinenreparaturmodell ist.7. The method according to claim 4, characterized in that the analytical model is a machine repair model. 8. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die als zur Vorausberechnung erforderlichen Daten gesammel­ ten Ein/Ausgabeaktivitätsinformationen eine mittlere Daten­ übertragungszeit für die Ein/Ausgabeeinheiten, ein mittleres Zeitintervall für den Abschluß der Ein/Ausgabeverarbeitung der jeweiligen Ein/Ausgabeeinheiten bis zum Erhalt der näch­ sten Ein/Ausgabeanforderung, und die Anzahl von Ein/Ausgabe­ einheiten, die sich unter der Kontrolle der jeweiligen Steuereinheiten befinden, einschließen.8. The method according to claim 1, characterized in that collect the data required for the pre-calculation I / O activity information is medium data transfer time for the input / output units, a medium one Time interval for the completion of the input / output processing of the respective input / output units until receipt of the next most I / O request, and the number of I / O units that are under the control of each Control units. 9. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das Ergebnis der Vorausberechnung eine mittlere Wartezeit vom Erhalt von Ein/Ausgabeanforderungen bis zum Beginn eines angeforderten Ein/Ausgabevorganges für die Gruppe der Ein/ Ausgabeeinheiten unter der Kontrolle der entsprechenden Steuereinheiten nach dem Umschalten einschließt, wodurch die Ein/Ausgabeeinheiten unter der Kontrolle der jeweiligen Steuereinheiten zwischen den Steuereinheiten entsprechend einem Umschaltmuster umgeschaltet werden, bei dem die be­ rechneten mittleren Wartezeiten optimal ausgeglichen sind.9. The method according to claim 1, characterized in that the result of the prediction is an average waiting time  from receipt of input / output requests to the start of a requested input / output process for the group of input / Output units under the control of the appropriate Control units after switching, which includes the Input / output units under the control of the respective Control units between the control units accordingly a switching pattern can be switched, in which the be calculated average waiting times are optimally balanced. 10. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das Ergebnis der Vorausberechnung den Unterschied in den mittleren Ansprechzeiten vom Erhalt von Ein/Ausgabeanfor­ derungen bis zur Beendigung eines angeforderten Ein/Ausgabe­ vorganges für die Gruppe der Ein/Ausgabeeinheiten unter der Kontrolle der entsprechenden Steuereinheiten nach dem Um­ schalten einschließt, wodurch die Ein/Ausgabeeinheiten unter der Kontrolle der jeweiligen Steuereinheiten zwischen den Steuereinheiten entsprechend einem Umschaltmuster umgeschal­ tet werden, bei dem die berechneten mittleren Ansprechzeiten optimal ausgeglichen sind.10. The method according to claim 1, characterized in that the result of the forecast the difference in the Average response times from receipt of input / output requests changes until the completion of a requested input / output process for the group of input / output units under the Control of the corresponding control units after the order switch includes, causing the input / output units under the control of the respective control units between the Control units switched according to a switching pattern at which the calculated average response times are optimally balanced. 11. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß eine einzige Ein/Ausgabeeinheit umgeschaltet wird, über die ein vorherbestimmtes Ergebnis erhalten wurde, bei dem die Ein/Ausgabebelastungen optimal ausgeglichen sind, wenn die Umschaltung auf eine Ein/Ausgabeeinheit beschränkt ist.11. The method according to claim 1, characterized in that a single input / output unit is switched over which a predetermined result has been obtained in which the Input / output loads are optimally balanced when the Switching to an input / output unit is limited. 12. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das Ergebnis der Vorausberechnung die Durchsätze der jewei­ ligen Steuereinheiten nach dem Umschalten einschließt, wo­ durch die Ein/Ausgabeeinheiten unter der Kontrolle der je­ weiligen Steuereinheiten zwischen den Steuereinheiten ent­ sprechend einem Umschaltmuster umgeschaltet werden, bei dem die Durchsätze optimal ausgeglichen sind. 12. The method according to claim 1, characterized in that the result of the pre-calculation of the throughputs of each control units after switching includes where through the input / output units under the control of each because control units between the control units ent are switched according to a switching pattern in which the throughputs are optimally balanced.   13. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das Ergebnis der Vorausberechnung die Auslastung der jewei­ ligen Steuereinheiten nach dem Umschalten einschließt, wo­ durch die Ein/Ausgabeeinheiten unter der Kontrolle der je­ weiligen Steuereinheiten zwischen den Steuereinheiten ent­ sprechend einem Umschaltmuster umgeschaltet werden, bei dem die Auslastung optimal ausgeglichen ist.13. The method according to claim 1, characterized in that the result of the calculation of the utilization of the respective control units after switching includes where through the input / output units under the control of each because control units between the control units ent are switched according to a switching pattern in which the utilization is optimally balanced. 14. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Schritte des Bestimmens des Umschaltmusters und der er­ neuten Anordnung eine Ein/Ausgabeeinheit während eines Steuerzyklusses, in dem die Umschaltung periodisch ausge­ führt wird, auswählt und umschaltet.14. The method according to claim 1, characterized in that the steps of determining the switching pattern and he new arrangement of an input / output unit during a Control cycle in which the switchover periodically leads, selects and switches. 15. Verfahren zum Ausgleichen von Ein/Ausgabebelastungen zwischen wenigstens zwei Steuereinheiten (23, 24) mit je­ weils einem Pufferspeicher (302, 303), wobei Daten über einen Übertragungskanal (21, 22) zu und von einer Anzahl von Ein/Ausgabeeinheiten (25) in der Art von Magnetbandeinheiten übermittelt werden, die mit den Steuereinheiten derart ver­ bunden sind, daß jede Ein/Ausgabeeinheit sich individuell unter der Kontrolle einer der Steuereinheiten befindet und Datenübertragungen nur mit der Steuereinheit ausgeführt werden, unter deren Kontrolle sich die jeweilige Ein/Ausga­ beeinheit befindet, gekennzeichnet durch die Verfahrensschritte
  • (a) des Sammelns von Ein/Ausgabeaktivitätsinformationen über die Ein/Ausgabeeinheiten;
  • (b) des Vorausberechnens des Ein/Ausgabebelastungszustandes der jeweiligen Gruppen von Ein/Ausgabeeinheiten, die sich unter der Kontrolle der jeweiligen Steuereinheiten befinden werden, auf der Basis der gesammelten Ein/Aus­ gabeaktivitätsinformationen unter der Annahme, daß eine Ein/Ausgabeeinheit von einer Steuereinheit zu einer anderen Steuereinheit umgeschaltet wird;
  • (c) der Auswahl einer in jedem Steuerzyklus umzuschaltenden Ein/Ausgabeeinheit in Übereinstimmung mit dem Ergebnis der Vorausberechnung und des Bestimmens eines Umschalt­ musters; und
  • (d) des erneuten Anordnens der jeweiligen Gruppen von Ein/ Ausgabeeinheiten, die sich unter der Kontrolle der je­ weiligen Steuereinheiten befinden, zwischen den Steuer­ einheiten entsprechend dem Umschaltmuster.
15. A method for compensating I / O loads between at least two control units (23, 24) each weils a buffer memory (302, 303), wherein data over a transmission channel (21, 22) to and from a number of input / output units (25 ) are transmitted in the manner of magnetic tape units, which are connected to the control units in such a way that each input / output unit is individually under the control of one of the control units and data transfers are carried out only with the control unit, under whose control the respective input / output is unit is located, characterized by the process steps
  • (a) collecting I / O activity information about the I / O devices;
  • (b) predicting the input / output load state of the respective groups of input / output units that will be under the control of the respective control units based on the collected input / output activity information assuming that an input / output unit is from a control unit another control unit is switched;
  • (c) selecting an input / output unit to be switched in each control cycle in accordance with the result of the prediction and the determination of a switching pattern; and
  • (d) the rearrangement of the respective groups of input / output units, which are under the control of the respective control units, between the control units according to the switching pattern.
16. Verfahren zum Ausgleichen von Belastungen auf Datenüber­ tragungswegen zwischen einer Anzahl von Magnetbandeinheiten (25) und einer Anzahl Steuereinheiten (23, 24), ge­ kennzeichnet durch die Verfahrensschritte
  • - des Steuerns der Anzahl von Steuereinheiten derart, daß die Anzahl von Magnetbandeinheiten sich jeweils unter der Kontrolle einer Steuereinheit befinden und Datenübertra­ gungen mit dieser einen Steuereinheit ausführen;
  • - des Vorausberechnens der Ein/Ausgabebelastungszustände von Gruppen der Ein/Ausgabeeinheiten unter der Kontrolle der jeweiligen Steuereinheiten unter Verwendung eines analyti­ schen Modells unter der Annahme, daß geeignete Ein/Ausga­ beeinheiten zu anderen Steuereinheiten umgeschaltet wer­ den, um die Ein/Ausgabebelastungen der jeweiligen Steuer­ einheiten auszugleichen; und
  • - des Auswählens einer Magnetbandeinheit entsprechend einem Umschaltmuster, das ein vorausbestimmtes Ergebnis anzeigt, bei dem ein optimaler Ausgleich der Ein/Ausgabebelastungen erreicht wird, durch Sammeln von Informationen für die Vorausberechnung.
16. A method for balancing loads on data transmission paths between a number of magnetic tape units ( 25 ) and a number of control units ( 23 , 24 ), characterized by the method steps
  • - The control of the number of control units such that the number of magnetic tape units are each under the control of a control unit and data transmissions with this control unit;
  • - Predicting the input / output load states of groups of the input / output units under the control of the respective control units using an analytical model, assuming that suitable input / output units are switched to other control units, to the input / output loads of the respective tax equalize units; and
  • - The selection of a magnetic tape unit according to a switching pattern, which indicates a predetermined result in which an optimal compensation of the input / output loads is achieved, by collecting information for the pre-calculation.
17. Vorrichtung zur Datenverarbeitung mit einer Anzahl von Steuereinheiten (23, 24) mit jeweils einem Pufferspeicher (302, 303), wobei Daten über einen Übertragungskanal (21, 22) zu und von einer Anzahl von Ein/Ausgabeeinheiten (25) übermittelt werden, die mit den Steuereinheiten derart ver­ bunden sind, daß jede Ein/Ausgabeeinheit sich individuell unter der Kontrolle einer der Steuereinheiten befindet und Datenübertragungen nur mit der Steuereinheit ausgeführt werden, unter deren Kontrolle sich die jeweilige Ein/Ausga­ beeinheit befindet, dadurch gekennzeichnet, daß wenigstens eine der Steuereinheiten aufweist
  • (a) eine Einrichtung (310, 311, 313, 314) zum Sammeln von Ein/Ausgabeaktivitätsinformationen über die Ein/Aus­ gabeeinheiten;
  • (b) eine Einrichtung (315, 316) zum Vorausberechnen des Ein/Ausgabebelastungszustandes der jeweiligen Gruppen von Ein/Ausgabeeinheiten, die sich unter der Kontrolle der jeweiligen Steuereinheiten befinden werden, auf der Basis der gesammelten Ein/Ausgabeaktivitätsinformationen unter der Annahme, daß wenigstens eine Ein/Ausgabeein­ heit von einer Steuereinheit zu einer anderen Steuer­ einheit umgeschaltet wird;
  • (c) eine Einrichtung (308, 309) zum Bestimmen eines Um­ schaltmusters in Übereinstimmung mit dem Ergebnis der Vorausberechnung; und
  • (d) eine Einrichtung (310, 311) zum erneuten Anordnen der jeweiligen Gruppen von Ein/Ausgabeeinheiten, die sich unter der Kontrolle der jeweiligen Steuereinheiten be­ finden, zwischen den Steuereinheiten entsprechend dem Umschaltmuster, so daß die Belastungen von Datenübertra­ gungswegen zwischen den Steuereinheiten ausgeglichen sind.
17. Device for data processing with a number of control units ( 23 , 24 ), each with a buffer memory ( 302, 303 ), data being transmitted to and from a number of input / output units ( 25 ) via a transmission channel ( 21 , 22 ), which are connected to the control units in such a way that each input / output unit is individually under the control of one of the control units and data transfers are carried out only with the control unit under whose control the respective input / output unit is located, characterized in that at least one which has control units
  • (a) means ( 310 , 311 , 313 , 314 ) for collecting input / output activity information about the input / output units;
  • (b) means ( 315 , 316 ) for predicting the I / O load state of the respective groups of I / O units that will be under the control of the respective control units based on the collected I / O activity information assuming that at least one Input / output unit is switched from one control unit to another control unit;
  • (c) means ( 308 , 309 ) for determining a switching pattern in accordance with the result of the prediction; and
  • (d) means ( 310 , 311 ) for rearranging the respective groups of input / output units, which are under the control of the respective control units, between the control units according to the switching pattern, so that the loads on data transmission paths between the control units are balanced are.
18. Vorrichtung nach Anspruch 17, dadurch gekennzeichnet, daß die Ein/Ausgabeaktivitätsinformationen eine mittlere Datenübertragungszeit für die Ein/Ausgabeeinheiten, ein mittleres Zeitintervall von der Beendigung der Ein/Ausgabe­ vorgänge der Ein/Ausgabeeinheiten bis zum Erhalt der nächsten Ein/Ausgabeanforderung, und die Anzahl von Ein/Ausgabeeinheiten unter der Kontrolle der jeweiligen Steuereinheiten beinhalten, wobei die Einrichtung zur Vorausberechnung die Ein/Ausgabeaktivitätsinformationen von der Sammeleinrichtung unter Verwendung eines vorbestimmten analytischen Modells einschließlich eines asymptotischen Näherungsmodells oder eines Maschinenreparaturmodells ver­ arbeitet, wenigstens einen Wert für die mittlere Wartezeit vom Erhalt einer Ein/Ausgabeanforderung bis zum Start des angeforderten Ein/Ausgabevorganges für die Gruppe der Ein/ Ausgabeeinheiten unter der Kontrolle der entsprechenden Steuereinheiten nach dem Umschalten berechnet, die mittlere Ansprechzeit vom Erhalt von Ein/Ausgabeanforderungen bis zum Abschluß der angeforderten Ein/Ausgabeanforderungen für die Gruppen der Ein/Ausgabeeinheiten unter der Kontrolle der entsprechenden Steuereinheiten nach dem Umschalten bis zur Beendigung der Datenübertragung, die Durchsätze der jewei­ ligen Steuereinheiten nach dem Umschalten, und die Aus­ lastung der jeweiligen Steuereinheiten nach dem Umschalten berechnet und das Ergebnis an die das Umschaltmuster be­ stimmende Einrichtung ausgibt.18. The apparatus according to claim 17, characterized in that the input / output activity information is medium  Data transfer time for the input / output units, on average time interval from the end of the input / output operations of the input / output units until receipt of the next I / O request, and the number of Input / output units under the control of the respective Control units include, the device for Predict the I / O activity information of the collector using a predetermined one analytical model including an asymptotic Approximation model or a machine repair model ver works, at least one value for the mean waiting time from receipt of an input / output request to the start of the requested input / output process for the group of input / Output units under the control of the appropriate Control units calculated after switching, the middle Response time from receipt of input / output requests to Completion of the requested input / output requests for the Groups of input / output units under the control of the corresponding control units after switching to Termination of data transmission, the throughputs of each control units after switching, and the off load of the respective control units after switching calculated and the result to which the switching pattern be issues tuning facility.
DE3907662A 1988-03-09 1989-03-09 Method and device to balance the load on data transmission paths Ceased DE3907662A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63053527A JPH01229351A (en) 1988-03-09 1988-03-09 Load balance control method

Publications (1)

Publication Number Publication Date
DE3907662A1 true DE3907662A1 (en) 1989-09-28

Family

ID=12945282

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3907662A Ceased DE3907662A1 (en) 1988-03-09 1989-03-09 Method and device to balance the load on data transmission paths

Country Status (2)

Country Link
JP (1) JPH01229351A (en)
DE (1) DE3907662A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4403286A (en) * 1981-03-06 1983-09-06 International Business Machines Corporation Balancing data-processing work loads
US4697232A (en) * 1984-11-30 1987-09-29 Storage Technology Corporation I/O device reconnection in a multiple-CPU, dynamic path allocation environment
GB2192078A (en) * 1986-06-30 1987-12-31 Hitachi Ltd Scheduling method for input/output units

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4403286A (en) * 1981-03-06 1983-09-06 International Business Machines Corporation Balancing data-processing work loads
US4697232A (en) * 1984-11-30 1987-09-29 Storage Technology Corporation I/O device reconnection in a multiple-CPU, dynamic path allocation environment
GB2192078A (en) * 1986-06-30 1987-12-31 Hitachi Ltd Scheduling method for input/output units

Also Published As

Publication number Publication date
JPH01229351A (en) 1989-09-13

Similar Documents

Publication Publication Date Title
DE69322985T2 (en) Input / output control system and input / output control method in the system
DE68924954T2 (en) Transmission system for distributed databases.
DE69825355T2 (en) ATM cell allocation method
DE69716565T2 (en) Storage system with the ability to move data
DE69423834T2 (en) PRODUCTION CONTROL SYSTEM THAT CHOOSES AN OPTIMUM ALLOCATION RULE
DE69417874T2 (en) PROCESS ASSIGNMENT BETWEEN TWO ARMS USED ON THE SAME MAGNETIC DISK ON A SINGLE DISK DRIVE
DE69523386T2 (en) Buffering for load balancing in on-demand video servers
DE69619213T2 (en) System and method for load balancing a file server
DE3300263C2 (en)
DE3200761C2 (en)
DE3300260C2 (en)
DE69327892T2 (en) Method and system for searching data in a data processing system
DE69114763T2 (en) Distributed database system.
DE69724846T2 (en) Multi-way I / O storage systems with multi-way I / O request mechanism
DE2912738A1 (en) SYSTEM WITH DIRECT TRANSFER BETWEEN SUBSYSTEMS
DE2917441A1 (en) MULTIPROCESSOR SYSTEM
DE19607531A1 (en) Multi-cluster computer system
DE3642324A1 (en) MULTIPROCESSOR SYSTEM WITH PROCESSOR ACCESS CONTROL
DE69130935T2 (en) Information service system and procedure for responding to an inquiry
DE112010003594T5 (en) Dynamic resource allocation for distributed group storage networks
DE68920028T2 (en) Method and device for multiple access with cyclical reservation in a communication system.
DE10234138A1 (en) Manage storage competition in automated storage systems
EP0141247B1 (en) Multiprocessor controller, especially a multiprocessor control unit of a telephone switching unit
DE3907662A1 (en) Method and device to balance the load on data transmission paths
DE19901792C2 (en) Data processing device and data processing method

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8128 New person/name/address of the agent

Representative=s name: STREHL, P., DIPL.-ING. DIPL.-WIRTSCH.-ING. SCHUEBE

8131 Rejection