JP4031838B2 - Data transfer processing management device - Google Patents

Data transfer processing management device Download PDF

Info

Publication number
JP4031838B2
JP4031838B2 JP18634393A JP18634393A JP4031838B2 JP 4031838 B2 JP4031838 B2 JP 4031838B2 JP 18634393 A JP18634393 A JP 18634393A JP 18634393 A JP18634393 A JP 18634393A JP 4031838 B2 JP4031838 B2 JP 4031838B2
Authority
JP
Japan
Prior art keywords
data transfer
data
time
channel
transfer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP18634393A
Other languages
Japanese (ja)
Other versions
JPH0744485A (en
Inventor
尊弘 荒川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP18634393A priority Critical patent/JP4031838B2/en
Publication of JPH0744485A publication Critical patent/JPH0744485A/en
Application granted granted Critical
Publication of JP4031838B2 publication Critical patent/JP4031838B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【産業上の利用分野】
本発明は、データ転送処理管理装置に係り、特に、バッファメモリにデータを蓄積し、チャネル装置により該データをディスク装置等の記憶装置、または、表示装置等の出力装置に転送するタイミングの制御を行う計算機におけるデータ転送処理管理装置に関する。
【0002】
近年、計算機システムでのデータ処理は、バッチ処理と言われる大量に連続するデータの処理と、計算機との対話によりデータの処理を行う離散型の処理が同時に行われる傾向にある。このような形態のデータ転送処理において、バッチ処理では全体の処理時間の短縮、また、対話型処理では応答時間の短縮が求められている。
【0003】
【従来の技術】
図6に従来のデータ転送処理管理システムの説明図を示す。従来のデータ転送処理管理システムは、バッファメモリ100、バッファメモリ管理部210、データ転送部410、及び、記憶部または出力部510で構成される。
【0004】
バッファメモリ管理部210がバッファメモリ100のデータをデータ転送部410を介して出力する場合、データ転送部410が使用可能状態になるまで、データ転送を待機する。データ転送部410が現行のデータの転送処理を完了して使用可能状態になると、バッファメモリ管理部210は、データ転送部410にバッファメモリ100からのデータ転送を指示することにより、記憶部または出力部510へのデータ転送が可能となる。
【0005】
図7は、従来のデータ転送を具体的に示す図である。同図に示すシステムは、転送前のデータを蓄積しておく共用バッファ120、共用バッファ120のデータ転送を管理する共用バッファ管理部212、転送されたデータを格納するディスク装置520、及びディスク装置520へのデータ転送を制御するチャネル装置420により構成される。
【0006】
まず、共用バッファ管理部212からチャネル装置420に対してデータ転送要求が送出される。この時、チャネル装置420の状態が未使用状態である場合には、チャネル装置420は共用バッファ管理部212に対してデータ転送許可を通知する。これにより共用バッファ管理部212は、共用バッファ120に対して所定のデータ量をディスク装置520に転送する指示を行う。共用バッファ120は、バッチ処理により蓄積されたデータをチャネル装置420を介してディスク装置520に転送する。
【0007】
一方、チャネル装置420の状態が使用状態である場合には、チャネル装置420は、共用バッファ管理部212には何の指示も通知せず待機する。これは、バッチ処理を行う場合には、共用バッファ120において一連のバッチ処理用のデータを保持し、ディスク装置520への出力回数を最小限に抑えることにより、処理時間の短縮を図ろうとするものである。
【0008】
【発明が解決しようとする課題】
しかしながら、上記の従来の方法では、チャネル装置が使用可能状態となるまでデータをバッファメモリに保持しておくため、バッチ処理の効率はよいが、対話型の情報処理においては、CPUにアクセスしてから応答がリターンするまでの応答時間が長くなるという問題がある。従って、CPUに端末装置からアクセスしている間は当該端末は他の入力等の処理が行えないため処理効率が低下する。
【0009】
本発明は上記の点に鑑みてなされたものであり、バッファメモリからのデータ転送のタイミングを制御して、離散的なデータ処理(対話型処理)における応答時間を短縮することのできるデータ転送処理管理装置を提供することを目的とする。
【0010】
【課題を解決するための手段】
図1に本発明の原理構成図を示す。
【0011】
本発明のデータ転送処理管理装置は、バッファメモリ(100)にデータを保持しておき、データ転送手段(400)によりデータを記憶手段または出力手段(500)に転送する計算機のデータ転送管理装置において、データ転送手段(400)が使用中である場合に、未使用状態に切り替わるまでの時間を求める切替え時間算出手段(200)と、切替え時間算出手段(200)により求められた時間が所定の時間より短い場合に、バッファメモリ(100)からデータを転送するデータ転送管理手段とを有する。
【0012】
【作用】
本発明は、データをバッファメモリから他の記憶装置、または、出力装置等に転送する際に、データ転送を制御するための装置(チャネル装置)が使用中であっても、データ転送終了までの時間(t1)を予測し、予め設定されている時間(t2)より短ければ(t1≦t2)、バッファメモリからのデータ転送を行うものである。
【0013】
また、終了までの時間(t1)が予め設定されている時間(t2)より長ければ(t1>t2),バッファメモリからのデータ転送は行われない。但し、バッファメモリがオーバーフローとなる様な状態では、その制限を外してデータ転送を行うことも可能である。
【0014】
【実施例】
以下、図面と共に本発明の実施例を詳細に説明する。
【0015】
図2は、本発明の一実施例のデータ転送のシステム構成図である。同図に示すデータ転送システムは、入出力装置540、CPU530、共用バッファ管理部320、チャネル監視部340、チャネル装置420、共用バッファ120、及びディスク装置520より構成される。
【0016】
同図の例では、チャネル装置420により共用バッファ120からディスク装置520にデータを出力するものとする。
【0017】
共用バッファ管理部320は、共用バッファ120から出力すべきデータの量の情報322と、共用バッファ120で蓄積できるデータの量の限界値情報324を有し、共用バッファ120を管理し、データ量の情報322が存在する場合に、チャネル監視部340に転送要求を通知すると共に、データ量限界値情報324も通知する。
【0018】
共用バッファ管理部320の出力データ量322は、ハードディスク装置520への転送単位であるブロック(1ブロックは、2048バイト)を単位とする。データ量の単位は、記憶装置または出力装置の仕様に応じて定めると都合が良く、前記ブロックに限定されるものではない。
【0019】
共用バッファ管理部320の出力データ量限界値324は、予めシステムにより設定された値であり、出力データ量322と同じくブロックを単位とする。出力データ量324は、共用バッファ120のセグメンテーションの大きさ等により決定してもよい。
【0020】
チャネル監視部340は、チャネル監視プロセス350とチャネル管理域360を有する。
【0021】
図3は、本発明の一実施例のチャネル管理域360の構成を示す図である。チャネル管理域360は、チャネル使用状態フラグ362、転送データ量364、データ転送速度366、データ転送開始時刻368、データ転送許可残り時間370、及び現在時刻372を構成データとして有する。
【0022】
チャネル使用状態フラグ362は、チャネル装置420がデータ転送中か、データ転送中ではないかのいずれかを示すための1ビット情報であり、データ転送中は”1”、データ転送中でないとき”0”の値を有する。チャネル使用状態フラグ362の値は、チャネル装置420がデータ転送中でない場合に、残りデータ転送時間の算出を行うことなくデータ出力を行い、処理時間の短縮を図るために利用する。実施例では、1ビット情報としているが1ビットの情報を表現できればよい。
【0023】
転送データ量364は、チャネル装置420が転送中のデータ量である。実施例では、ハードディスク装置520への転送の単位であるブロック(2048バイト)を単位としている。データ量の単位は、記憶装置・出力装置に応じて定めると都合がよく、前記ブロックに限定されるものではない。
【0024】
データ転送速度366は、チャネル装置420がデータを転送する速度を示している。実施例では、1msec当たりの転送ブロック数で表現している。データ転送速度366は、使用するチャネル装置420と記憶装置・出力装置の組み合わせに応じて定めることができる。
【0025】
データ転送開始時刻368は、チャネル装置420が現在転送中のデータの転送を開始した時刻である。
【0026】
データ転送許可残り時間370は、予めシステムにより設定された値であり、実施例ではmsecを単位としているが、時間間隔を表現できる単位であれば、実施例に限定されるものではない。データ転送許可残り時間370の設定は、予めシステムが設定する方法に限定されることはなく、共用バッファ管理部320が設定する等の方法に依って設定しても構わない。
【0027】
現在時刻372は、本実施例では、計算機のシステムクロックを利用しているが、時間経過を知ることができればよい。
【0028】
チャネル監視部340のチャネル監視プロセス350は、上記のチャネル管理域360の情報と共用バッファ管理部320からの情報に基づいてチャネル装置420を制御する。
【0029】
チャネル監視プロセス350は、出力データ有無の監視、チャネル装置420の使用状態の監視、切替え時間の算出、データ転送処理、データ転送完了処理等の処理を行う。以下にチャネル監視プロセス350を詳細に説明する。
【0030】
図4は、本発明の一実施例におけチャネル監視プロセス350の一連の動作を説明するフローチャートである。同処理は、共用バッファ管理部320が出力データ量322を監視している場合に、出力データ量322が≠0である場合に、チャネル監視部340に対して、データ転送要求を行った場合について説明する。
【0031】
ステップ10)チャネル監視プロセス350が共用バッファ管理部320よりデータ転送要求を受理する。
【0032】
ステップ20)出力データ量322が出力データ量限界値324を超過している場合には、ステップ80に移行する。
【0033】
ステップ30)チャネル管理域360のチャネル使用状態フラグ362を監視し、使用状態フラグ362が”0”であるとき、チャネル装置420が未使用であるので、ステップ60に移行する。
【0034】
ステップ40)使用状態フラグ362が”1”であるとき、チャネル装置420が使用状態であるので、未使用状態への切替え時間を算出する。
【0035】
切替え時間算出における残り転送時間計算は次の通り行う。
【0036】
残り転送時間(T)=転送データ量(D)/データ転送速度(R)−(現在時刻(C)−データ転送開始時刻(L))
上式において、Tは残り転送時間であり、以下各項はチャネル管理域360に設定されているデータである、Dは転送データ量364、Rはデータ転送速度366、Cは現在時刻370、および、Lはデータ転送開始時刻372をそれぞれ表している。
【0037】
転送データ量(D)364をデータ転送速度(R)366で除した値(D/R)は、チャネル装置に対して転送命令が発行されている現行データ全てを転送するのに要する時間をmsec単位で表す。
【0038】
チャネル装置420に対して転送命令が発行された時刻は、データ転送開始時刻(L)368であり、現在時刻(C)370までの経過時間は、”C−L”である。従って、前記データ全てを転送する時間(D/R)から前記の経過時間(C−L)を除いた残り時間は、チャネル装置420のデータ転送に要する残り転送時間(T)を与える。残り転送時間(T)は、経過時間の間、一定のデータ転送速度366でデータ転送を行っていることを仮定しているため、残り時間の予測値である。
【0039】
ステップ50)ステップ40における切替え時間算出結果である残り転送時間Tと所定のデータ転送許可残り時間Pを比較し、残り時間がデータ転送許可残り時間内に収まっている場合(T≦P)、ステップ80に進む。残り時間Tがデータ転送許可残り時間Pを越えている場合(T>P)、データ転送処理は行わずに、一連の動作を終了する。
【0040】
ステップ60)ステップ30の判断により、チャネル装置420が未使用状態であるので、チャネル装置420がデータ転送を完了したために未使用状態となったことを確認する。チャネル装置420からデータ転送の完了の通知がある場合、ステップ70に進む。データ転送の完了の通知がない場合は、ステップ80に進む。
【0041】
ステップ70)データ転送の完了直後であり、新しいデータ転送指令の直前であるため、転送データ量364を”0”にリセットし、ステップ75に進む。
【0042】
ステップ75)新しいデータ転送指令の直前であるため、現在時刻372をデータ転送開始時刻368にセットする。
【0043】
ステップ80)共用バッファ管理部320に対して、データ転送の許可を与える。共用バッファ管理部320は、チャネル装置420に対しデータ転送指令を発行する。データ転送処理後、ステップ90に進む。ステップ20において、出力データ量322≧出力データ量限界値324と判定された場合、強制的にデータ転送を実行し、出力データ量322の過大による共用バッファ120の領域不足を原因とする効率低下を回避することができる。
【0044】
ステップ90)共用バッファ管理部320がチャネル装置420に対して指令した転送データ量を転送データ量364に加算し、一連動作を終了する。
【0045】
一連動作は、共用バッファ120とチャネル装置420が利用可能な期間中繰り返し実行される。
【0046】
上記の実施例では、共用バッファ管理部320のデータ転送要求により、チャネル監視部340が作動するとしているが、他の実施例として、チャネル監視部340が常時動作し、チャネル装置420が所定時間以内に未使用状態になる場合に、共用バッファ管理部320に対してデータ転送を要求する形態がある。
【0047】
図5は、本発明の他の実施例であるチャネル監視プロセス350の一連の動作を示す。同処理では、チャネル監視プロセス350が常時動作し、チャネル装置420が未使用状態であるか、あるいは、チャネル装置420が使用状態であって、残り時間(T)がデータ転送許可残り時間(P)以下である場合(T≦P)、共用バッファ管理部320に対し、データ転送要求を行う場合について説明する。
【0048】
ステップ100)チャネル監視プロセス350は、チャネル管理域360のチャネル使用状態フラグ362を監視し、チャネル使用状態フラグ362が”0”であるとき、チャネル装置420が未使用であるので、ステップ106に移行する。
【0049】
ステップ102)使用状態フラグ362が”1”であるとき、チャネル装置420が使用状態であるので、未使用状態への切替え時間を算出する。
【0050】
切替え時間算出における残り転送時間計算は、前述の実施例のステップ40と同様に行う。
【0051】
ステップ104)ステップ102により得られた切替え時間算出結果である残り転送時間Tと所定のデータ転送許可残り時間Pを比較し、残り時間がデータ転送許可残り時間内に収まっている場合(T≦P)、ステップ112に進む。残り時間Tがデータ転送許可残り時間Pを越えている場合(T>P)、一連動作を終了する。
【0052】
ステップ106)ステップ100の判断により、チャネル装置420が未使用状態であるので、チャネル装置420が共用バッファ120からデータ転送を完了したために未使用状態となったことを確認する。チャネル装置420からデータ転送の完了の通知がある場合、ステップ108に進む。データ転送の完了の通知がない場合は、ステップ112に進む。
【0053】
ステップ108)データ転送の完了直後であり、新しいデータ転送指令の直前であるため、転送データ量364を”0”にリセットし、ステップ110に進む。
【0054】
ステップ110)新しいデータ転送指令の直前であるため、現在時刻372をデータ転送開始時刻368にセットする。
【0055】
ステップ112)共用バッファ管理部320に対して、データ転送の許可を与える。共用バッファ管理部320は、チャネル装置420に対しデータ転送指令を発行する。チャネル装置420は、データを転送するディスク装置520を選択し、共用バッファ120よりデータの転送を行う。
【0056】
ステップ114)共用バッファ管理部320がチャネル装置420に対して指令した転送データ量を転送データ量364に加算し、一連動作を終了する。
【0057】
本実施例においても、一連動作は、共用バッファ120とチャネル装置420が利用可能な期間中繰り返し実行される。
【0058】
実施例では、ジョブが1つであるとして説明を行っているが、計算機上の複数のジョブがデータ転送を行う場合にも、実施例と全く同様の構成で、本発明を実施することができる。
【0059】
最後に、本発明の一実施例において、対話型情報処理における応答時間を短縮するための利用方法を説明する。
【0060】
データ転送許可残り時間370を小さな値に設定すると、データ転送の待ち時間のために発生するCPUの応答時間の遅延をデータ転送許可残り時間370以内に収めることができる。従って、データ転送許可残り時間370を対話型情報処理において必要とされる応答時間以下に設定することにより、応答性のよい対話型情報処理を実現することができる。
【0061】
さらに、対話型情報処理における応答時間短縮の他に次の効果を得ることができる。
【0062】
第1に、データ転送許可残り時間370を大きな値に設定すると、データ転送1回当たりのデータ転送量が増加し、データ転送の回数が減少する。従って、バッチ処理向きのデータ転送を実現することができる。
【0063】
次に、対話型データ処理とバッチ処理を同時に行うデータ処理では、対話型データ処理に適したデータ転送許可残り時間(T1)とバッチ処理に適したデータ転送許可残り時間(T2)を対話型データ処理の占有率(O1)とバッチ処理の占有率(O2)とにより加重平均(T1×O1+T2×O2)を行った値等をデータ転送許可残り時間370とすることで、対話型データ処理とバッチ処理の両方を円滑に処理するデータ転送処理を実現できる。
【0064】
【発明の効果】
本発明により、計算機のバッファメモリのデータ転送において、データ転送のタイミングを制御することができるようになり、その結果、以下の効果を得ることができる。
【0065】
データ転送の頻度を増すことにより、対話型データ処理に必要とされる応答時間の短縮が可能である。
【0066】
また、データ転送の頻度を少なくして、1回あたりのデータ転送量を大きくすると、バッチ処理に適したデータ転送を実現することができる。
【0067】
さらに、対話型データ処理とバッチ処理とを同時に行うデータ処理において、双方の処理の比重に応じて適当なデータ転送タイミングを調整することにより、対話型データ処理とバッチ処理の双方を円滑に処理するデータ転送を実現できる。
【図面の簡単な説明】
【図1】本発明のデータ転送処理管理装置の原理構成図である。
【図2】本発明の一実施例のシステム構成図である。
【図3】本発明の一実施例のチャネル管理域の構成を説明する図である。
【図4】本発明の一実施例のチャネル監視プロセスの動作(その1)を説明する図である。
【図5】本発明の一実施例のチャネル監視プロセスの動作(その2)を説明する図である。
【図6】従来のデータ転送システムの説明図である。
【図7】従来のデータ転送システムを具体的に示す図である。
【符号の説明】
100 バッファメモリ
120 共用バッファ
200 切替え時間算出手段
210 バッファメモリ管理部
212 共用バッファ管理部
300 データ転送管理手段
320 共用バッファ管理部
322 出力データ量
324 出力データ量限界値
340 チャネル監視部
350 チャネル監視プロセス
360 チャネル管理域
362 チャネル使用状態フラグ
364 転送データ量
366 データ転送速度
368 データ転送開始時刻
370 データ転送許可残り時間
372 現在時刻
400 データ転送手段
410 データ転送部
420 チャネル装置
500 記憶手段・出力手段
510 記憶部・出力部
520 ディスク装置
530 CPU
540 入出力装置
[0001]
[Industrial application fields]
The present invention relates to a data transfer processing management device, and in particular, controls the timing of accumulating data in a buffer memory and transferring the data to a storage device such as a disk device or an output device such as a display device by a channel device. The present invention relates to a data transfer processing management apparatus in a computer to be executed.
[0002]
2. Description of the Related Art In recent years, data processing in a computer system tends to perform simultaneously a large amount of continuous data processing called batch processing and discrete processing for processing data by interaction with a computer. In such a form of data transfer processing, the batch processing is required to reduce the overall processing time, and the interactive processing is required to reduce the response time.
[0003]
[Prior art]
FIG. 6 is an explanatory diagram of a conventional data transfer processing management system. The conventional data transfer processing management system includes a buffer memory 100, a buffer memory management unit 210, a data transfer unit 410, and a storage unit or output unit 510.
[0004]
When the buffer memory management unit 210 outputs the data in the buffer memory 100 via the data transfer unit 410, the data transfer unit 410 waits for data transfer until the data transfer unit 410 becomes usable. When the data transfer unit 410 completes the current data transfer process and becomes ready for use, the buffer memory management unit 210 instructs the data transfer unit 410 to transfer data from the buffer memory 100, thereby Data transfer to the unit 510 becomes possible.
[0005]
FIG. 7 is a diagram specifically illustrating conventional data transfer. The system shown in the figure includes a shared buffer 120 that stores data before transfer, a shared buffer management unit 212 that manages data transfer of the shared buffer 120, a disk device 520 that stores transferred data, and a disk device 520. It is comprised by the channel apparatus 420 which controls the data transfer to.
[0006]
First, a data transfer request is sent from the shared buffer management unit 212 to the channel device 420. At this time, if the channel device 420 is in an unused state, the channel device 420 notifies the shared buffer management unit 212 of data transfer permission. As a result, the shared buffer management unit 212 instructs the shared buffer 120 to transfer a predetermined amount of data to the disk device 520. The shared buffer 120 transfers the data accumulated by the batch processing to the disk device 520 via the channel device 420.
[0007]
On the other hand, when the channel device 420 is in the use state, the channel device 420 waits without notifying the shared buffer management unit 212 of any instruction. When batch processing is performed, a series of batch processing data is held in the shared buffer 120, and the number of times of output to the disk device 520 is minimized, thereby reducing the processing time. It is.
[0008]
[Problems to be solved by the invention]
However, in the above conventional method, data is held in the buffer memory until the channel device becomes usable, so that batch processing is efficient. However, in interactive information processing, the CPU is accessed. There is a problem that the response time from when the response is returned to when the response is returned becomes longer. Accordingly, while the CPU is accessing the CPU from the terminal device, the terminal cannot perform other processes such as input, and the processing efficiency decreases.
[0009]
The present invention has been made in view of the above points, and can control the timing of data transfer from a buffer memory and reduce the response time in discrete data processing (interactive processing). An object is to provide a management apparatus.
[0010]
[Means for Solving the Problems]
FIG. 1 shows a principle configuration diagram of the present invention.
[0011]
A data transfer processing management apparatus according to the present invention is a data transfer management apparatus for a computer that holds data in a buffer memory (100) and transfers data to storage means or output means (500) by data transfer means (400). When the data transfer means (400) is in use, the switching time calculation means (200) for obtaining the time until switching to the unused state and the time obtained by the switching time calculation means (200) are a predetermined time. In the case where the length is shorter, the data transfer management unit transfers data from the buffer memory (100).
[0012]
[Action]
In the present invention, when data is transferred from a buffer memory to another storage device or an output device or the like, even if a device (channel device) for controlling data transfer is in use, the data transfer is completed. If the time (t1) is predicted and shorter than the preset time (t2) (t1 ≦ t2), data transfer from the buffer memory is performed.
[0013]
If the time until termination (t1) is longer than the preset time (t2) (t1> t2), data transfer from the buffer memory is not performed. However, in a state where the buffer memory overflows, it is possible to remove the restriction and perform data transfer.
[0014]
【Example】
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
[0015]
FIG. 2 is a system configuration diagram of data transfer according to an embodiment of the present invention. The data transfer system shown in the figure includes an input / output device 540, a CPU 530, a shared buffer management unit 320, a channel monitoring unit 340, a channel device 420, a shared buffer 120, and a disk device 520.
[0016]
In the example shown in the figure, data is output from the shared buffer 120 to the disk device 520 by the channel device 420.
[0017]
The shared buffer management unit 320 includes information 322 on the amount of data to be output from the shared buffer 120 and limit value information 324 on the amount of data that can be stored in the shared buffer 120, manages the shared buffer 120, When the information 322 exists, the transfer request is notified to the channel monitoring unit 340 and the data amount limit value information 324 is also notified.
[0018]
The output data amount 322 of the shared buffer management unit 320 is in units of blocks (one block is 2048 bytes) which is a transfer unit to the hard disk device 520. The unit of the data amount is conveniently determined according to the specifications of the storage device or the output device, and is not limited to the block.
[0019]
The output data amount limit value 324 of the shared buffer management unit 320 is a value set in advance by the system, and is in blocks as in the output data amount 322. The output data amount 324 may be determined according to the size of the segmentation of the shared buffer 120 or the like.
[0020]
The channel monitoring unit 340 includes a channel monitoring process 350 and a channel management area 360.
[0021]
FIG. 3 is a diagram showing the configuration of the channel management area 360 according to an embodiment of the present invention. The channel management area 360 includes a channel use state flag 362, a transfer data amount 364, a data transfer speed 366, a data transfer start time 368, a data transfer permission remaining time 370, and a current time 372 as configuration data.
[0022]
The channel use state flag 362 is 1-bit information for indicating whether the channel device 420 is transferring data or not transferring data, and is “1” during data transfer and “0” when data transfer is not in progress. ”. The value of the channel use state flag 362 is used to reduce the processing time by outputting data without calculating the remaining data transfer time when the channel device 420 is not transferring data. In the embodiment, 1-bit information is used, but it is only necessary to represent 1-bit information.
[0023]
The transfer data amount 364 is the amount of data being transferred by the channel device 420. In the embodiment, a block (2048 bytes) which is a unit of transfer to the hard disk device 520 is used as a unit. The unit of the data amount is conveniently determined according to the storage device / output device, and is not limited to the block.
[0024]
The data transfer speed 366 indicates the speed at which the channel device 420 transfers data. In the embodiment, it is expressed by the number of transfer blocks per 1 msec. The data transfer rate 366 can be determined according to the combination of the channel device 420 to be used and the storage device / output device.
[0025]
The data transfer start time 368 is the time when the channel device 420 starts transferring data that is currently being transferred.
[0026]
The data transfer permission remaining time 370 is a value set in advance by the system, and in the embodiment, msec is a unit. However, the data transfer permission remaining time 370 is not limited to the embodiment as long as the unit can express the time interval. The setting of the data transfer permission remaining time 370 is not limited to a method set in advance by the system, and may be set by a method such as a setting by the shared buffer management unit 320.
[0027]
In this embodiment, the current time 372 uses the system clock of the computer, but it is only necessary to know the passage of time.
[0028]
The channel monitoring process 350 of the channel monitoring unit 340 controls the channel device 420 based on the information in the channel management area 360 and the information from the shared buffer management unit 320.
[0029]
The channel monitoring process 350 performs processing such as monitoring of presence / absence of output data, monitoring of the usage state of the channel device 420, calculation of switching time, data transfer processing, data transfer completion processing, and the like. The channel monitoring process 350 is described in detail below.
[0030]
FIG. 4 is a flowchart illustrating a series of operations of the channel monitoring process 350 in one embodiment of the present invention. The same processing is performed when the shared buffer management unit 320 monitors the output data amount 322, and when the output data amount 322 is not 0, a data transfer request is made to the channel monitoring unit 340. explain.
[0031]
Step 10) The channel monitoring process 350 accepts a data transfer request from the shared buffer manager 320.
[0032]
Step 20) If the output data amount 322 exceeds the output data amount limit value 324, the process proceeds to Step 80.
[0033]
Step 30) The channel use state flag 362 in the channel management area 360 is monitored. When the use state flag 362 is “0”, the channel device 420 is not used, and the process proceeds to Step 60.
[0034]
Step 40) Since the channel device 420 is in use when the use state flag 362 is “1”, the switching time to the unused state is calculated.
[0035]
The remaining transfer time calculation in the switching time calculation is performed as follows.
[0036]
Remaining transfer time (T) = transfer data amount (D) / data transfer rate (R) − (current time (C) −data transfer start time (L))
In the above equation, T is the remaining transfer time, and the following items are data set in the channel management area 360, D is the transfer data amount 364, R is the data transfer rate 366, C is the current time 370, and , L represents the data transfer start time 372, respectively.
[0037]
The value (D / R) obtained by dividing the transfer data amount (D) 364 by the data transfer rate (R) 366 is the time required to transfer all the current data for which a transfer command has been issued to the channel device. Expressed in units.
[0038]
The time when the transfer command is issued to the channel device 420 is the data transfer start time (L) 368 and the elapsed time up to the current time (C) 370 is “CL”. Therefore, the remaining time obtained by subtracting the elapsed time (CL) from the time (D / R) for transferring all the data gives the remaining transfer time (T) required for the data transfer of the channel device 420. The remaining transfer time (T) is a predicted value of the remaining time because it is assumed that data transfer is performed at a constant data transfer speed 366 during the elapsed time.
[0039]
Step 50) If the remaining transfer time T, which is the result of calculating the switching time in Step 40, is compared with the predetermined data transfer permission remaining time P, and the remaining time is within the data transfer permission remaining time (T ≦ P), Step Proceed to 80. When the remaining time T exceeds the data transfer permission remaining time P (T> P), the series of operations is terminated without performing the data transfer process.
[0040]
Step 60) Since the channel device 420 is in an unused state based on the determination in Step 30, it is confirmed that the channel device 420 has become unused because the data transfer has been completed. If there is a notification of completion of data transfer from the channel device 420, the process proceeds to step 70. If there is no notification of completion of data transfer, the process proceeds to step 80.
[0041]
Step 70) Immediately after the completion of data transfer and immediately before a new data transfer command, the transfer data amount 364 is reset to “0”, and the process proceeds to Step 75.
[0042]
Step 75) Since it is immediately before the new data transfer command, the current time 372 is set to the data transfer start time 368.
[0043]
Step 80) Grant permission for data transfer to the shared buffer manager 320. The shared buffer manager 320 issues a data transfer command to the channel device 420. After the data transfer process, the process proceeds to step 90. If it is determined in step 20 that the output data amount 322 ≧ the output data amount limit value 324, the data transfer is forcibly executed, and the efficiency reduction due to the shortage of the area of the shared buffer 120 due to the excessive output data amount 322 is caused. It can be avoided.
[0044]
Step 90) The transfer data amount commanded by the shared buffer management unit 320 to the channel device 420 is added to the transfer data amount 364, and the series of operations is terminated.
[0045]
A series of operations is repeatedly executed while the shared buffer 120 and the channel device 420 are available.
[0046]
In the above embodiment, the channel monitoring unit 340 is activated in response to a data transfer request from the shared buffer management unit 320. However, as another embodiment, the channel monitoring unit 340 always operates and the channel device 420 is within a predetermined time. There is a form in which data transfer is requested to the shared buffer management unit 320 when it becomes unused.
[0047]
FIG. 5 shows a series of operations of a channel monitoring process 350 according to another embodiment of the present invention. In this processing, the channel monitoring process 350 is always operated, and the channel device 420 is not used, or the channel device 420 is in use and the remaining time (T) is the data transfer permission remaining time (P). A case where a data transfer request is made to the shared buffer management unit 320 in the following cases (T ≦ P) will be described.
[0048]
Step 100) The channel monitoring process 350 monitors the channel use state flag 362 in the channel management area 360. When the channel use state flag 362 is “0”, the channel device 420 is not used, and the process proceeds to Step 106. To do.
[0049]
Step 102) When the use state flag 362 is “1”, since the channel device 420 is in the use state, the switching time to the unused state is calculated.
[0050]
The remaining transfer time calculation in the switching time calculation is performed in the same manner as step 40 in the above-described embodiment.
[0051]
Step 104) The remaining transfer time T, which is the switching time calculation result obtained in Step 102, is compared with a predetermined data transfer permission remaining time P. If the remaining time is within the data transfer permission remaining time (T ≦ P ), Go to step 112. When the remaining time T exceeds the data transfer permission remaining time P (T> P), the series of operations is terminated.
[0052]
Step 106) Since the channel device 420 is in an unused state based on the determination in Step 100, it is confirmed that the channel device 420 has become unused because data transfer from the shared buffer 120 has been completed. If there is a notification of completion of data transfer from the channel device 420, the process proceeds to step 108. If there is no notification of completion of data transfer, the process proceeds to step 112.
[0053]
Step 108) Immediately after the completion of data transfer and immediately before a new data transfer command, the transfer data amount 364 is reset to “0” and the process proceeds to Step 110.
[0054]
Step 110) Since it is just before the new data transfer command, the current time 372 is set to the data transfer start time 368.
[0055]
Step 112) The data transfer permission is given to the shared buffer manager 320. The shared buffer manager 320 issues a data transfer command to the channel device 420. The channel device 420 selects the disk device 520 to which data is transferred, and transfers data from the shared buffer 120.
[0056]
Step 114) The transfer data amount commanded to the channel device 420 by the shared buffer management unit 320 is added to the transfer data amount 364, and the series of operations is terminated.
[0057]
Also in the present embodiment, the series of operations is repeatedly executed while the shared buffer 120 and the channel device 420 are available.
[0058]
In the embodiment, the description has been made on the assumption that there is one job, but the present invention can be implemented with the same configuration as in the embodiment even when a plurality of jobs on a computer perform data transfer. .
[0059]
Finally, in one embodiment of the present invention, a utilization method for reducing response time in interactive information processing will be described.
[0060]
If the data transfer permission remaining time 370 is set to a small value, the delay of the CPU response time caused by the data transfer waiting time can be kept within the data transfer permission remaining time 370. Therefore, by setting the data transfer permission remaining time 370 to be equal to or shorter than the response time required for interactive information processing, interactive information processing with good responsiveness can be realized.
[0061]
In addition to the response time reduction in interactive information processing, the following effects can be obtained.
[0062]
First, when the data transfer permission remaining time 370 is set to a large value, the data transfer amount per data transfer increases and the number of data transfers decreases. Therefore, data transfer suitable for batch processing can be realized.
[0063]
Next, in the data processing in which the interactive data processing and the batch processing are performed simultaneously, the data transfer permission remaining time (T1) suitable for the interactive data processing and the data transfer permission remaining time (T2) suitable for the batch processing are set to the interactive data. A value obtained by performing a weighted average (T1 × O1 + T2 × O2) based on the processing occupancy rate (O1) and the batch processing occupancy rate (O2) is set as the data transfer permission remaining time 370, so that interactive data processing and batch A data transfer process that smoothly processes both of the processes can be realized.
[0064]
【The invention's effect】
According to the present invention, the data transfer timing can be controlled in the data transfer of the buffer memory of the computer. As a result, the following effects can be obtained.
[0065]
By increasing the frequency of data transfer, the response time required for interactive data processing can be reduced.
[0066]
Further, if the frequency of data transfer is reduced and the data transfer amount per time is increased, data transfer suitable for batch processing can be realized.
[0067]
Furthermore, in data processing in which interactive data processing and batch processing are performed simultaneously, both interactive data processing and batch processing are smoothly processed by adjusting an appropriate data transfer timing according to the specific gravity of both processing. Data transfer can be realized.
[Brief description of the drawings]
FIG. 1 is a principle configuration diagram of a data transfer processing management apparatus according to the present invention.
FIG. 2 is a system configuration diagram of an embodiment of the present invention.
FIG. 3 is a diagram illustrating a configuration of a channel management area according to an embodiment of the present invention.
FIG. 4 is a diagram for explaining an operation (part 1) of a channel monitoring process according to an embodiment of the present invention;
FIG. 5 is a diagram for explaining the operation (part 2) of the channel monitoring process according to the embodiment of the present invention;
FIG. 6 is an explanatory diagram of a conventional data transfer system.
FIG. 7 is a diagram specifically illustrating a conventional data transfer system.
[Explanation of symbols]
100 buffer memory 120 shared buffer 200 switching time calculation unit 210 buffer memory management unit 212 shared buffer management unit 300 data transfer management unit 320 shared buffer management unit 322 output data amount 324 output data amount limit value 340 channel monitoring unit 350 channel monitoring process 360 Channel management area 362 Channel use state flag 364 Transfer data volume 366 Data transfer speed 368 Data transfer start time 370 Data transfer permission remaining time 372 Current time 400 Data transfer unit 410 Data transfer unit 420 Channel device 500 Storage unit / output unit 510 Storage unit Output unit 520 Disk device 530 CPU
540 I / O device

Claims (1)

バッファメモリにデータを保持しておき、データ転送手段により該データを記憶手段または出力手段に転送する計算機のデータ転送処理管理装置において、
前記データ転送手段がデータの転送処理中であるときに、データの転送処理を完了して使用可能状態になるまでの時間を予測する切替え時間算出手段と、
前記切替え時間算出手段により求められた前記使用可能状態になるまでの時間が予め設定されている所定の時間より短い場合に、前記バッファメモリに保持されているデータを前記データ転送手段が転送するためのデータ転送指令を発行するデータ転送管理手段と、
を有することを特徴とするデータ転送処理管理装置。
In a data transfer processing management device of a computer that holds data in a buffer memory and transfers the data to a storage means or an output means by a data transfer means,
When the data transfer means is in the process of transferring data, the switching time calculating means for predicting the time until the data transfer process is completed and becomes usable , and
If the time until the usable state determined by the switching time calculating means is shorter than a predetermined time set in advance, the data held in the buffer memory the data transfer means for transferring A data transfer management means for issuing a data transfer command of
A data transfer processing management device comprising:
JP18634393A 1993-07-28 1993-07-28 Data transfer processing management device Expired - Fee Related JP4031838B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18634393A JP4031838B2 (en) 1993-07-28 1993-07-28 Data transfer processing management device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18634393A JP4031838B2 (en) 1993-07-28 1993-07-28 Data transfer processing management device

Publications (2)

Publication Number Publication Date
JPH0744485A JPH0744485A (en) 1995-02-14
JP4031838B2 true JP4031838B2 (en) 2008-01-09

Family

ID=16186701

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18634393A Expired - Fee Related JP4031838B2 (en) 1993-07-28 1993-07-28 Data transfer processing management device

Country Status (1)

Country Link
JP (1) JP4031838B2 (en)

Also Published As

Publication number Publication date
JPH0744485A (en) 1995-02-14

Similar Documents

Publication Publication Date Title
JP3588485B2 (en) Process scheduling method
US5671365A (en) I/O system for reducing main processor overhead in initiating I/O requests and servicing I/O completion events
EP0656593A1 (en) Method and apparatus for bus bandwidth management
US20030187907A1 (en) Distributed control method and apparatus
JPH07146797A (en) System for controlling service requirement from peripheral equipment connected to data processor
JP3547976B2 (en) Processor resource management unit
JP2002099432A (en) System of computing processing, control method thereof, system for task control, method therefor and record medium
CN111897637B (en) Job scheduling method, device, host and storage medium
JPH10289115A (en) Processor resource management method
JPH05216842A (en) Resources managing device
JP2000056992A (en) Task scheduling system, its method and recording medium
JP4031838B2 (en) Data transfer processing management device
JP2000181853A (en) Command queue controller
CN112748883B (en) IO request pipeline processing device, method, system and storage medium
JP2008225641A (en) Computer system, interrupt control method and program
JP2007249635A (en) Data transfer unit and data transfer method
JPH06309180A (en) Interrupt controller for computer system
JPS638924A (en) Input and output scheduling system
JP2002259143A (en) Device and method for automatically controlling number of task, on-like transaction processing system and program
JP2001331293A (en) Print server
JPH05204667A (en) Task execution control device in computer system
JPS63170761A (en) Input/output controller for electronic computer
JPH05241958A (en) Virtual storage control system
JPH0399355A (en) Time sharing system
JPH0358159A (en) Channel control system

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20030603

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060712

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070913

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071022

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101026

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101026

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111026

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111026

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121026

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees