JP2002183079A - Input/output data transferring method - Google Patents

Input/output data transferring method

Info

Publication number
JP2002183079A
JP2002183079A JP2000381622A JP2000381622A JP2002183079A JP 2002183079 A JP2002183079 A JP 2002183079A JP 2000381622 A JP2000381622 A JP 2000381622A JP 2000381622 A JP2000381622 A JP 2000381622A JP 2002183079 A JP2002183079 A JP 2002183079A
Authority
JP
Japan
Prior art keywords
input
data
output
length
address
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.)
Pending
Application number
JP2000381622A
Other languages
Japanese (ja)
Inventor
Futoshi Ochi
太 越智
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2000381622A priority Critical patent/JP2002183079A/en
Publication of JP2002183079A publication Critical patent/JP2002183079A/en
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide technique capable of transferring a large capacity of data efficiently in the case of transferring data between a main storage device and an input/output device. SOLUTION: An input/output data transferring method for transferring data between the main storage device and the input/output device has a step for securing a data area for inputting and outputting data, a step for assigning real storage to the secured data area, a step for deciding whether continuous real storage is assigned or not as the result of the assignment, a step for generating an input/output command setting the DMA length of the length and the indirect data address of the data area to which the continuous real storage is assigned when the continuous real storage is assigned, a step for generating the input/output command setting only the indirect data address when the continuous real storage is not assigned and a step for carrying out the generated input/output command to transfer the input/output data.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は主記憶装置と入出力
装置の間で入出力データを転送する入出力データ転送方
法に関し、特にコンピュータシステムにおいて効率の良
い入出力データの転送を行う入出力データ転送方法に適
用して有効な技術に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an input / output data transfer method for transferring input / output data between a main storage device and an input / output device, and particularly to an input / output data transfer method for efficiently transferring input / output data in a computer system. The present invention relates to a technology effective when applied to a transfer method.

【0002】[0002]

【従来の技術】一般にコンピュータシステムにおいて主
記憶装置と入出力装置の間でデータ転送を行う場合、主
記憶装置のアドレスを指定した入出力コマンドを生成
し、これを入出力制御装置が実行することでデータ転送
を行っている。
2. Description of the Related Art Generally, when data is transferred between a main storage device and an input / output device in a computer system, an input / output command specifying an address of the main storage device is generated and executed by an input / output control device. Is performing data transfer.

【0003】入出力制御装置は、主記憶装置のデータを
中央処理装置の介在なしにアクセスする。これを直接メ
モリアクセス(DMA)と呼ぶ。この時使用する主記憶
のアドレスは非連続であることも考慮して、間接データ
アドレスを指定することができる様になっている。この
場合、間接データアドレスで指定されたデータの転送長
は固定されている。したがって間接データアドレスで指
定されたデータを転送する時は、指定された間接データ
アドレスの個数回のDMA処理が実行されることにな
る。
An input / output control device accesses data in a main storage device without intervention of a central processing unit. This is called direct memory access (DMA). In consideration of the fact that the addresses of the main memory used at this time are non-contiguous, an indirect data address can be specified. In this case, the transfer length of the data specified by the indirect data address is fixed. Therefore, when data specified by the indirect data address is transferred, DMA processing is performed several times of the specified indirect data address.

【0004】データのアドレスが全て連続している場合
には、間接データアドレスを指定する必要はないが、一
部でも不連続アドレスがある場合には、間接データアド
レスを指定しなければならない。この時、ある程度連続
しているアドレスのデータは、指定された間接データア
ドレスの個数回のDMA処理を実行することになり、デ
ータ転送の効率が低下することとなる。
When all data addresses are continuous, it is not necessary to specify an indirect data address. However, if there is any discontinuous address, an indirect data address must be specified. At this time, the data of the address which is continuous to some extent is subjected to the DMA processing for the number of times of the designated indirect data address, and the data transfer efficiency is reduced.

【0005】このDMA処理の回数を削減する従来技術
として、例えば、特公平6−5520号公報に記載され
た技術が知られている。この従来技術では、システム内
に予め最大DMA転送長を定義しておき、間接データア
ドレスで指定した入出力コマンドを実行する前に間接デ
ータアドレスの内容を読み取り、間接データアドレスが
連続している場合に間接データアドレス毎のDMA長を
拡張する。最大DMA転送長を越えるか、間接データア
ドレスを指定した入出力コマンドがなくなるか、間接デ
ータアドレスが不連続になるまでこの拡張を行う。この
様にこの技術では、最大DMA転送長のDMA処理を行
うことでDMA処理の回数を削減している。
[0005] As a conventional technique for reducing the number of times of the DMA processing, for example, a technique described in Japanese Patent Publication No. 6-5520 is known. In this conventional technique, the maximum DMA transfer length is defined in advance in the system, and the content of the indirect data address is read before executing the input / output command specified by the indirect data address. The DMA length for each indirect data address is extended. This expansion is performed until the maximum DMA transfer length is exceeded, there is no input / output command specifying the indirect data address, or the indirect data address becomes discontinuous. As described above, in this technique, the number of times of the DMA processing is reduced by performing the DMA processing of the maximum DMA transfer length.

【0006】[0006]

【発明が解決しようとする課題】前述の公報に記載され
た技術では、間接データアドレスの連続している個数か
ら与えられるDMA長と、予め定められた最大DMA転
送長のどちらか小さい方のDMA長を使用しているた
め、最大DMA転送長を超えるデータ転送は行われてお
らず、データ転送効率の向上の効果はあまり高くないと
いう問題点を有している。
In the technique described in the above-mentioned publication, the DMA length given from the continuous number of indirect data addresses or the predetermined maximum DMA transfer length, whichever is smaller, is used. Since the length is used, data transfer exceeding the maximum DMA transfer length is not performed, and there is a problem that the effect of improving the data transfer efficiency is not so high.

【0007】また、前述の公報に記載された技術では、
データアドレスが連続している時でも間接データアドレ
ス指定の入出力コマンドを生成するため、アドレスの連
続した大容量のデータ転送を行う場合、多量の間接デー
タアドレス格納領域を必要とするという問題点を有して
いる。
In the technology described in the above-mentioned publication,
In order to generate I / O commands for specifying indirect data addresses even when data addresses are continuous, a large amount of indirect data address storage area is required when performing large-capacity data transfer with continuous addresses. Have.

【0008】本発明の目的は上記問題を解決し、主記憶
装置と入出力装置の間でデータ転送を行う場合に大容量
データを効率良く転送することが可能な技術を提供する
ことにある。
An object of the present invention is to solve the above-mentioned problem and to provide a technique capable of efficiently transferring a large amount of data when data is transferred between a main storage device and an input / output device.

【0009】[0009]

【課題を解決するための手段】本発明は、主記憶装置と
入出力装置の間で入出力データを転送する入出力データ
転送方法において、連続実記憶が割り当てられたデータ
領域の長さのDMA長によって入出力データ転送を行う
ものである。
According to the present invention, there is provided an input / output data transfer method for transferring input / output data between a main storage device and an input / output device, wherein a DMA having a length of a data area to which continuous real storage is allocated is provided. Input / output data transfer is performed by length.

【0010】本発明の入出力データ転送方法では、まず
入出力を行う為のデータ領域を確保し、そのデータ領域
に実記憶を割り当てる。そして前記割り当ての結果、連
続実記憶が割り当てられたかを判定し、連続実記憶が割
り当てられた場合には、その連続実記憶が割り当てられ
たデータ領域の長さのDMA長と間接データアドレスを
設定した入出力コマンドを生成する。また連続実記憶が
割り当てられなかった場合には、間接データアドレスの
みを設定した入出力コマンドを生成する。
In the input / output data transfer method of the present invention, first, a data area for input / output is secured, and real storage is allocated to the data area. Then, it is determined whether or not continuous real storage is allocated as a result of the allocation. If continuous real storage is allocated, the DMA length and the indirect data address of the length of the data area to which the continuous real storage is allocated are set. Generates input / output commands. If continuous real storage is not assigned, an input / output command in which only an indirect data address is set is generated.

【0011】前記の様にして入出力コマンドが生成され
ると、その生成された入出力コマンドを実行し、その入
出力コマンドに前記連続実記憶が割り当てられたデータ
領域の長さのDMA長が設定されている場合には、その
DMA長の入出力データについて主記憶装置と入出力装
置の間で転送を行う。
When the input / output command is generated as described above, the generated input / output command is executed, and the DMA length of the data area to which the continuous real storage is allocated is assigned to the input / output command. If set, input / output data of the DMA length is transferred between the main storage device and the input / output device.

【0012】以上の様に本発明の入出力データ転送方法
によれば、連続実記憶が割り当てられたデータ領域の長
さのDMA長によって入出力データ転送を行うので、主
記憶装置と入出力装置の間でデータ転送を行う場合に大
容量データを効率良く転送することが可能である。
As described above, according to the input / output data transfer method of the present invention, the input / output data transfer is performed according to the DMA length of the data area to which the continuous real storage is allocated. It is possible to efficiently transfer a large amount of data when performing data transfer between.

【0013】[0013]

【発明の実施の形態】以下に主記憶装置と入出力装置の
間で入出力データを転送する一実施形態の入出力データ
転送方法について説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS An input / output data transfer method according to an embodiment for transferring input / output data between a main storage device and an input / output device will be described below.

【0014】図1〜図3は、本実施形態による主記憶装
置20と入出力装置40との間でデータ転送を行う為の
入出力コマンド群の例を示す図である。入出力処理を行
う為には、動作要求ブロック(ORB)、チャネルコマ
ンド語(CCW)、間接データアドレス語(IDAW)
を作成する必要がある。
FIGS. 1 to 3 are diagrams showing examples of input / output command groups for performing data transfer between the main storage device 20 and the input / output device 40 according to the present embodiment. To perform input / output processing, an operation request block (ORB), a channel command word (CCW), an indirect data address word (IDAW)
Need to be created.

【0015】図1は本実施形態のORBに間接データア
ドレス用のデータ転送長(DMA長)を設定した入出力
コマンド群の概要を示す図である。図1に示す様に、O
RB100の間接データアドレス拡張フラグ101がO
Nの場合(“1”の場合)は入出力コマンドにDMA長
が指定されていることを表しており、DMA設定フラグ
102が“00”の場合はDMA長が入出力コマンド群
に共通であることを示している。
FIG. 1 is a diagram showing an outline of an input / output command group in which a data transfer length (DMA length) for an indirect data address is set in the ORB of this embodiment. As shown in FIG.
The indirect data address extension flag 101 of the RB 100 is O
N (in the case of "1") indicates that the DMA length is specified in the input / output command, and when the DMA setting flag 102 is "00", the DMA length is common to the input / output command group. It is shown that.

【0016】図2は本実施形態のCCWに間接データア
ドレス用のデータ転送長を設定した入出力コマンド群の
概要を示す図である。図2に示す様に、ORB110の
間接データアドレス拡張フラグ111がONの場合は入
出力コマンドにDMA長が指定されていることを表して
おり、DMA設定フラグ112が“10”の場合はDM
A長がCCW210毎に指定されていることを示してい
る。
FIG. 2 is a diagram showing an outline of an input / output command group in which a data transfer length for an indirect data address is set in the CCW of this embodiment. As shown in FIG. 2, when the indirect data address extension flag 111 of the ORB 110 is ON, it indicates that the DMA length is specified in the input / output command, and when the DMA setting flag 112 is “10”, the DM length is specified.
This indicates that the A length is specified for each CCW 210.

【0017】図3は本実施形態のIDAWに間接データ
アドレス用のデータ転送長を設定した入出力コマンド群
の概要を示す図である。図3に示す様に、ORB120
の間接データアドレス拡張フラグ121がONの場合は
入出力コマンドにDMA長が指定されていることを表し
ており、DMA設定フラグ122が“01”の場合はD
MA長がIDAW320毎に指定されていることを示し
ている。
FIG. 3 is a diagram showing an outline of an input / output command group in which a data transfer length for an indirect data address is set in the IDAW of this embodiment. As shown in FIG.
When the indirect data address extension flag 121 is ON, it indicates that the DMA length is specified in the input / output command, and when the DMA setting flag 122 is “01”,
This indicates that the MA length is specified for each IDAW 320.

【0018】図4は従来の技術による主記憶装置20と
入出力装置40との間でデータ転送を行う為の入出力コ
マンド群の概要を示す図である。図4に示す様に、OR
B130の間接データアドレス拡張フラグ131がOF
Fの場合(“0”の場合)は入出力コマンドにDMA長
が指定されていないことを表している。
FIG. 4 is a diagram showing an outline of a group of input / output commands for performing data transfer between the main storage device 20 and the input / output device 40 according to the prior art. As shown in FIG.
B130 indirect data address extension flag 131 is OF
The case of F (in the case of “0”) indicates that the DMA length is not specified in the input / output command.

【0019】図5は本実施形態の入出力データ転送方法
の概略構成を示す図である。図5に示す様に本実施形態
のコンピュータシステムは、入出力コマンド生成処理部
21と、入出力データ転送処理部31とを有している。
FIG. 5 is a diagram showing a schematic configuration of the input / output data transfer method of the present embodiment. As shown in FIG. 5, the computer system of this embodiment has an input / output command generation processing unit 21 and an input / output data transfer processing unit 31.

【0020】入出力コマンド生成処理部21は、入出力
を行う為のデータ領域に連続実記憶が割り当てられた場
合にその連続実記憶が割り当てられたデータ領域の長さ
のDMA長と間接データアドレスを設定した入出力コマ
ンドを生成し、連続実記憶が割り当てられなかった場合
に間接データアドレスのみを設定した入出力コマンドを
生成する処理部である。入出力データ転送処理部31
は、前記生成された入出力コマンドを実行して入出力デ
ータ転送を行う処理部である。
When continuous real storage is allocated to a data area for performing input / output, the input / output command generation processing unit 21 determines the DMA length of the data area to which the continuous real storage is allocated and the indirect data address. Is a processing unit that generates an input / output command in which only an indirect data address is set when continuous real storage is not allocated. I / O data transfer processing unit 31
Is a processing unit that executes the generated input / output command to transfer input / output data.

【0021】コンピュータシステムを入出力コマンド生
成処理部21及び入出力データ転送処理部31として機
能させる為のプログラムは、CD−ROM等の記録媒体
に記録され磁気ディスク等に格納された後、メモリにロ
ードされて実行されるものとする。なお前記プログラム
を記録する記録媒体はCD−ROM以外の他の記録媒体
でも良い。
A program for causing the computer system to function as the input / output command generation processing unit 21 and the input / output data transfer processing unit 31 is recorded on a recording medium such as a CD-ROM, stored on a magnetic disk or the like, and then stored in a memory. It shall be loaded and executed. The recording medium for recording the program may be a recording medium other than the CD-ROM.

【0022】図5に示す様に、中央処理装置10、主記
憶装置20、入出力制御装置30は、システムバス50
によって接続されており、入出力制御装置30、入出力
装置40は、I/Oバス60によって接続されている。
As shown in FIG. 5, the central processing unit 10, the main storage device 20, and the input / output control device 30 include a system bus 50.
The input / output control device 30 and the input / output device 40 are connected by an I / O bus 60.

【0023】本実施形態のコンピュータシステムは、主
記憶装置20に格納されたオペレーティングシステムや
アプリケーションプログラムを実行し、データの更新を
行い、必要であれば入出力制御装置30を介して主記憶
装置20と入出力装置40との間のデータ転送を行う。
The computer system of the present embodiment executes an operating system and application programs stored in the main storage device 20, updates data, and, if necessary, via the input / output control device 30. And data transfer between the input and output device 40.

【0024】以下に本実施形態において、間接データア
ドレスに対するデータ転送長を指定する入出力コマンド
を生成して入出力データ転送を行う処理について説明す
る。
In the present embodiment, a process of generating an input / output command for designating a data transfer length for an indirect data address and performing input / output data transfer will be described below.

【0025】図6は本実施形態の主記憶装置20と入出
力装置40との間でデータ転送を行う為の入出力コマン
ド群を生成する処理の処理手順を示すフローチャートで
ある。ステップ1000で本実施形態の入出力コマンド
生成処理部21は、最初に、入出力を行う為のデータ領
域を仮想記憶上に確保し、ステップ1100では、前記
仮想記憶上に確保したデータ領域に実記憶を割り当てる
処理を呼び出す。
FIG. 6 is a flowchart showing a processing procedure of processing for generating an input / output command group for performing data transfer between the main storage device 20 and the input / output device 40 according to the present embodiment. In step 1000, the input / output command generation processing unit 21 of the present embodiment first secures a data area for input / output on virtual storage, and in step 1100, stores the data area in the data area secured on the virtual storage. Call the process to allocate memory.

【0026】ステップ1200では、前記実記憶の割り
当て結果として返された連続実記憶有りフラグの内容を
調べ、連続した実記憶が前記仮想記憶上のデータ領域に
割り当てられたかを判定し、連続実記憶有りフラグがO
Nの場合、すなわち前記データ領域に連続実記憶が割り
当てられた場合にはステップ1300へ進み、連続実記
憶有りフラグがOFFの場合、すなわち連続実記憶が割
り当てられなかった場合にはステップ1400へ進む。
In step 1200, the contents of the continuous real storage presence flag returned as the result of the real storage allocation are checked to determine whether continuous real storage has been allocated to the data area on the virtual storage. Yes flag is O
If N, that is, if continuous real storage is allocated to the data area, the process proceeds to step 1300. If the continuous real storage presence flag is OFF, that is, if continuous real storage is not allocated, the process proceeds to step 1400. .

【0027】ステップ1300では、間接データアドレ
スに対するデータ転送長を複数の入出力コマンドに共通
で指定するか、間接データアドレスに対するデータ転送
長を入出力コマンド毎に指定するか、または、間接デー
タアドレスに対するデータ転送長を間接データアドレス
毎に指定して入出力コマンドを生成するかを示す定義情
報を参照し、どの形式の入出力コマンドを生成するかを
判定する。ここで前記定義情報は、入出力コマンド生成
処理部21のインストール時に予め設定されているもの
とする。
In step 1300, the data transfer length for the indirect data address is specified in common for a plurality of input / output commands, the data transfer length for the indirect data address is specified for each input / output command, or the data transfer length for the indirect data address is specified. By referring to definition information indicating whether an input / output command is to be generated by designating a data transfer length for each indirect data address, it is determined which type of input / output command to generate. Here, it is assumed that the definition information is set in advance when the input / output command generation processing unit 21 is installed.

【0028】前記判定の結果、間接データアドレスに対
するデータ転送長を複数の入出力コマンドに共通で指定
する場合には、予め前記定義情報に定義されていた8K
B等のDMA長をORBに設定し、IDAWのアドレス
をCCWに設定し、その間接データアドレスをIDAW
に設定する。
As a result of the determination, when the data transfer length for the indirect data address is commonly specified for a plurality of input / output commands, the 8K data defined in advance in the definition information is used.
B, etc., the DMA length is set to ORB, the IDAW address is set to CCW, and the indirect data address is set to IDAW.
Set to.

【0029】前記判定の結果、間接データアドレスに対
するデータ転送長を入出力コマンド毎に指定する場合に
は、前記実記憶の割り当て結果として連続実記憶有りフ
ラグと共に実記憶割り当て処理から返された、連続実記
憶が割り当てられたデータ領域の長さを示す情報を参照
し、その連続実記憶の長さのDMA長とIDAWのアド
レスをCCWに設定し、その間接データアドレスをID
AWに設定する。
As a result of the determination, when the data transfer length for the indirect data address is designated for each input / output command, the continuous memory returned from the real memory allocation process together with the continuous real memory presence flag as the real memory allocation result. The information indicating the length of the data area to which the real storage is allocated is referred to, the DMA length of the continuous real storage length and the address of IDAW are set to CCW, and the indirect data address is set to ID.
Set to AW.

【0030】前記判定の結果、間接データアドレスに対
するデータ転送長を間接データアドレス毎に指定して入
出力コマンドを生成する場合には、IDAWのアドレス
をCCWに設定し、前記連続実記憶が割り当てられたデ
ータ領域の長さのDMA長とその間接データアドレスを
IDAWに設定する。
As a result of the determination, when an input / output command is generated by designating the data transfer length for the indirect data address for each indirect data address, the IDAW address is set to CCW and the continuous real storage is allocated. The DMA length corresponding to the length of the data area and its indirect data address are set in IDAW.

【0031】ステップ1400では、従来の2KB等の
DMA長毎のIDAWについて、そのIDAWのアドレ
スをCCWに設定し、そのDMA長単位の間接データア
ドレスをIDAWに設定する。
In step 1400, for the conventional IDAW for each DMA length such as 2 KB, the address of the IDAW is set to CCW, and the indirect data address of the DMA length unit is set to IDAW.

【0032】ステップ1500では、生成された入出力
コマンドを入出力制御装置30に発行し、入出力データ
転送処理部31によりその入出力コマンドを実行して入
出力データ転送を行う。
In step 1500, the generated input / output command is issued to the input / output control device 30, and the input / output data transfer processor 31 executes the input / output command to transfer the input / output data.

【0033】以下に前記ステップ1100の実記憶割り
当て処理について説明する。ステップ1600では、実
記憶ページの内で置き換えの対象となっている連続した
実記憶ページを検索し、前記仮想記憶上に確保されたデ
ータ領域に割り当てることが可能で、従来のDMA長よ
りも長い連続実記憶領域があるかどうかを調べる。
The real storage allocation process in the step 1100 will be described below. In step 1600, a continuous real storage page to be replaced is searched for in the real storage page, and can be allocated to the data area secured on the virtual storage, which is longer than the conventional DMA length. Check if there is a continuous real storage area.

【0034】ステップ1700では、前記仮想記憶上の
データ領域に割り当て可能な連続実記憶領域が見つかっ
たか否かを判定し、前記割り当て可能な連続実記憶領域
が見つかった場合にはステップ1800へ進み、前記割
り当て可能な連続実記憶領域が見つからなかった場合に
はステップ1900へ進む。
In step 1700, it is determined whether or not a continuous real storage area that can be allocated to the data area on the virtual storage is found. If the continuous real storage area that can be allocated is found, the process proceeds to step 1800. If the assignable continuous real storage area is not found, the process proceeds to step 1900.

【0035】ステップ1800では、前記見つかった連
続実記憶領域に前記仮想記憶上のデータ領域を割り当て
た後、連続実記憶有りフラグをONに設定し、その連続
実記憶有りフラグと前記連続実記憶が割り当てられたデ
ータ領域の長さを呼び出し元へ返す。
In step 1800, after allocating the data area on the virtual storage to the found continuous real storage area, the continuous real storage existence flag is set to ON, and the continuous real storage existence flag and the continuous real storage are set. Returns the length of the allocated data area to the caller.

【0036】ステップ1900では、不連続の実記憶領
域に前記仮想記憶上のデータ領域を割り当てた後、連続
実記憶有りフラグをOFFに設定し、その連続実記憶有
りフラグを呼び出し元へ返す。
In step 1900, after the data area on the virtual storage is allocated to the discontinuous real storage area, the continuous real storage existence flag is set to OFF, and the continuous real storage existence flag is returned to the caller.

【0037】前記の様にして生成された図1〜図3の入
出力コマンドは、入出力制御装置30の入出力データ転
送処理部31で以下の様な動作により実行される。
The input / output commands of FIGS. 1 to 3 generated as described above are executed by the input / output data transfer processing unit 31 of the input / output control device 30 by the following operation.

【0038】図1において、ORB100の間接データ
アドレス拡張フラグ101がONの場合はDMA長が指
定されていることを意味しており、DMA設定フラグ1
02が“00”の場合はDMA長が入出力コマンド群に
共通であることを意味している。
In FIG. 1, when the indirect data address extension flag 101 of the ORB 100 is ON, it means that the DMA length is designated, and the DMA setting flag 1
When 02 is "00", it means that the DMA length is common to the input / output command group.

【0039】そこで入出力制御装置30の入出力データ
転送処理部31は、ORB100に設定されたDMA長
103を取り込み、データ転送時のDMA長として使用
する。CCW200において、間接データアドレスフラ
グ202がONの場合はCCWに設定されたアドレスが
データアドレスではなくIDAWのアドレスであること
を意味しており、データ領域の転送長203がCCW2
00に設定され、IDAW300にはデータ領域400
のアドレスが格納されている。
Therefore, the input / output data transfer processing section 31 of the input / output control device 30 takes in the DMA length 103 set in the ORB 100 and uses it as the DMA length at the time of data transfer. In the CCW 200, when the indirect data address flag 202 is ON, it means that the address set in the CCW is not the data address but the IDAW address, and the transfer length 203 of the data area is CCW2.
00 and the IDAW 300 has the data area 400
Is stored.

【0040】本実施形態では1個のCCWで16KBの
データ転送を行うため、データ領域の転送長203には
16KBの値が格納される。データ領域400には8K
Bの連続領域が2個あるため、ORB100のDMA長
103には8KBの値が格納され、IDAW300は2
個作成されている。
In this embodiment, since 16 KB of data is transferred by one CCW, a value of 16 KB is stored in the transfer length 203 of the data area. 8K in the data area 400
Since there are two continuous areas of B, a value of 8 KB is stored in the DMA length 103 of the ORB 100, and 2 bytes are stored in the IDAW 300.
Have been created.

【0041】図2において、ORB110の間接データ
アドレス拡張フラグ111がONの場合はDMA長が指
定されていることを意味しており、DMA設定フラグ1
12が“10”の場合はDMA長が入出力コマンド毎に
指定されていることを意味している。
In FIG. 2, when the indirect data address extension flag 111 of the ORB 110 is ON, it means that the DMA length is specified, and the DMA setting flag 1
When 12 is "10", it means that the DMA length is specified for each input / output command.

【0042】そこで入出力制御装置30の入出力データ
転送処理部31は、CCW210に設定されたDMA長
211を取り込み、データ転送時のDMA長として使用
する。CCW210において、間接データアドレスフラ
グ212がONの場合はCCWに設定されたアドレスが
データアドレスではなくIDAWのアドレスであること
を意味しており、データ領域の転送長213がCCWに
設定され、IDAW310にはデータ領域410のアド
レスが格納されている。
Therefore, the input / output data transfer processing unit 31 of the input / output control device 30 takes in the DMA length 211 set in the CCW 210 and uses it as the DMA length at the time of data transfer. In the CCW 210, when the indirect data address flag 212 is ON, it means that the address set in the CCW is not the data address but the IDAW address, the transfer length 213 of the data area is set in the CCW, and the IDAW 310 Indicates the address of the data area 410.

【0043】本実施形態では1個のCCWで16KBの
データ転送を行うため、データ領域の転送長213には
16KBの値が格納される。データ領域410には4K
Bの連続領域が4個あるため、CCW210のDMA長
211には4KBの値が格納され、IDAW310は4
個作成されている。
In this embodiment, since 16 KB of data is transferred by one CCW, a value of 16 KB is stored in the transfer length 213 of the data area. 4K in the data area 410
Since there are four continuous areas of B, a value of 4 KB is stored in the DMA length 211 of the CCW 210, and the IDAW 310 has a value of 4 KB.
Have been created.

【0044】図3において、ORB120の間接データ
アドレス拡張フラグ121がONの場合はDMA長が指
定されていることを意味しており、DMA設定フラグ1
22が“01”の場合はDMA長が間接データアドレス
毎に指定されていることを意味している。
In FIG. 3, when the indirect data address extension flag 121 of the ORB 120 is ON, it means that the DMA length is designated, and the DMA setting flag 1
When 22 is "01", it means that the DMA length is specified for each indirect data address.

【0045】そこで入出力制御装置30の入出力データ
転送処理部31は、IDAW320に設定されたDMA
長321を取り込み、データ転送時のDMA長として使
用する。CCW220において、間接データアドレスフ
ラグ222がONの場合はCCWに設定されたアドレス
がデータアドレスではなくIDAWのアドレスであるこ
とを意味しており、データ領域の転送長223がCCW
に設定され、IDAW320にはデータ領域420のア
ドレスが格納されている。
Therefore, the input / output data transfer processing unit 31 of the input / output control device 30
The length 321 is fetched and used as the DMA length at the time of data transfer. In the CCW 220, when the indirect data address flag 222 is ON, it means that the address set in the CCW is not the data address but the IDAW address, and the transfer length 223 of the data area is the CCW.
, And the address of the data area 420 is stored in the IDAW 320.

【0046】本実施形態では1個のCCWで16KBの
データ転送を行うため、データ領域の転送長223には
16KBの値が格納される。データ領域420は4K
B、8KB、4KBの連続領域があるため、IDAW3
20のDMA長321にはそれぞれ4KB、8KB、4
KBの値が格納され、IDAW320は3個作成されて
いる。
In this embodiment, since 16 KB of data is transferred by one CCW, a value of 16 KB is stored in the transfer length 223 of the data area. Data area 420 is 4K
Since there is a continuous area of B, 8 KB and 4 KB, IDAW3
20 DMA lengths 321 are 4 KB, 8 KB, 4
The value of KB is stored, and three IDAWs 320 are created.

【0047】本実施形態の入出力データ転送処理部31
は、この様にして連続実記憶が有る場合にDMA長が設
定された入出力コマンドを実行して入出力データの転送
を行うことにより、DMA処理の回数を削減して入出力
データ転送を効率的に行うことができる。また、間接デ
ータアドレス格納領域を削減することができる。
The input / output data transfer processing unit 31 of this embodiment
In this way, when there is continuous real storage in this way, the I / O data with the DMA length set is executed to transfer the I / O data, thereby reducing the number of DMA processes and improving the efficiency of the I / O data transfer. Can be done Further, the indirect data address storage area can be reduced.

【0048】次に、本実施形態において、前記の様な連
続実記憶のDMA長が設定されていない従来の入出力コ
マンドを実行する際に、その間接データアドレスの連続
状態からデータ転送長を求めて入出力データ転送を行う
処理について説明する。
Next, in the present embodiment, when executing the conventional input / output command in which the DMA length of the continuous real storage is not set as described above, the data transfer length is obtained from the continuous state of the indirect data address. The process of performing input / output data transfer will now be described.

【0049】図4において、ORB130の間接データ
アドレス拡張フラグ131がOFFの場合はDMA長が
指定されていないこと、つまり、その入出力コマンドが
従来技術によって作成された入出力コマンドであること
を意味している。
In FIG. 4, when the indirect data address extension flag 131 of the ORB 130 is OFF, it means that the DMA length is not specified, that is, the input / output command is an input / output command created by the prior art. are doing.

【0050】間接データアドレスフラグ232がONの
場合はCCWに設定されたアドレスがデータアドレスで
はなくIDAWのアドレスであることを意味しており、
データ領域の転送長233がCCWに設定され、IDA
W330にはデータ領域430のアドレスが格納されて
いる。
When the indirect data address flag 232 is ON, it means that the address set in the CCW is not a data address but an IDAW address.
The transfer length 233 of the data area is set to CCW, and IDA
The address of the data area 430 is stored in W330.

【0051】本実施形態では1個のCCWで16KBの
データ転送を行うため、データ領域の転送長233には
16KBの値が格納される。IDAW330には、デー
タ領域430のアドレス連続の有無に関係なく、固定D
MA長の2KB単位にデータアドレスが格納されてい
る。
In this embodiment, since 16 KB of data is transferred by one CCW, a value of 16 KB is stored in the transfer length 233 of the data area. The IDAW 330 has a fixed D
Data addresses are stored in units of 2 KB of the MA length.

【0052】図7は本実施形態において間接データアド
レスが連続している場合に各々の最適な転送長を生成す
る処理の処理手順を示すフローチャートである。
FIG. 7 is a flowchart showing a processing procedure of processing for generating each optimum transfer length when indirect data addresses are consecutive in this embodiment.

【0053】図7のステップ2000において入出力制
御装置30の入出力データ転送処理部31は、各種情報
の初期設定として、IDAWの位置iに1を設定し、D
MA処理回数jに1を設定し、最小DMA長kに204
8を設定する。
In step 2000 of FIG. 7, the input / output data transfer processing section 31 of the input / output control device 30 sets 1 to the position i of the IDAW as an initial setting of various information,
Set the number of MA processes j to 1 and set the minimum DMA length k to 204
Set 8.

【0054】次にステップ2100では、DMA処理時
に使用する情報として、DMA長L j、先頭データアド
レスEjを設定する。
Next, in step 2100, when the DMA processing
DMA length L as information used for j, First data address
Less EjSet.

【0055】ステップ2200では、IDAWに格納さ
れたデータアドレス(Ai)を求める。ステップ230
0では、以降のIDAWが存在するかチェックし、以降
のIDAWが存在する場合にはステップ2400へ進
み、そのIDAWに格納されたデータアドレス
(Ai+1)を求める。
In step 2200, the data address (A i ) stored in the IDAW is obtained. Step 230
At 0, it is checked whether or not the subsequent IDAW exists. If the subsequent IDAW exists, the process proceeds to step 2400, and the data address (A i + 1 ) stored in the IDAW is obtained.

【0056】ステップ2500では、データアドレスが
連続しているか否かを判定するため、Ai+1と、Aiに最
小DMA長kを加算した値を比較し、比較した結果、等
しい場合はデータアドレスが連続していることを意味し
ているのでステップ2600へ進み、IDAWの位置i
に1を加算しDMA長Ljに最小DMA長kを加算す
る。そして、次のIDAWを参照するステップ2200
の処理に戻る。
[0056] At step 2500, for determining whether data address are consecutive, and A i + 1, compares a value obtained by adding the minimum DMA length k to A i, the result of the comparison, if equal data Since it means that the addresses are continuous, the process proceeds to step 2600, and the IDAW position i
Adding the minimum DMA length k to DMA length L j by adding 1 to. Step 2200 for referring to the next IDAW
Return to the processing of

【0057】ステップ2500で比較した結果、Ai+1
とAiに最小DMA長kを加算した値とが等しくない場
合はデータアドレスが連続していないことを意味してい
るのでステップ2700へ進み、IDAWの位置iに1
を加算し、DMA処理回数jに1を加算する。そして、
ステップ2100のDMA処理情報設定処理に戻る。
As a result of the comparison in step 2500, A i + 1
If the value obtained by adding the minimum DMA length k to A and A i is not equal, it means that the data addresses are not continuous, so the process proceeds to step 2700, and 1 is added to the position i of the IDAW.
And 1 is added to the number of times of DMA processing j. And
The process returns to the DMA processing information setting processing of step 2100.

【0058】ステップ2300で以降のIDAWが存在
しない場合はステップ2800へ進み、これまでに処理
してきた先頭データアドレスE1 j、DMA長L1 j
用いてI/O処理を行う。
[0058] the process proceeds to step 2800 if the subsequent IDAW does not exist in step 2300, and performs I / O processing by using top data address E 1 ~ j, the DMA length L 1 ~ j, which has been processed so far.

【0059】図8は本実施形態のデータ及びIDAWの
状態を示す図である。図8を用いて上記の処理の具体例
を詳細に説明する。
FIG. 8 is a diagram showing the state of data and IDAW in this embodiment. A specific example of the above processing will be described in detail with reference to FIG.

【0060】(1)iに1を設定する。 (2)jに1を設定する。 (3)kに2048を設定する。 (4)L1に2048を設定する。 (5)E1にIDAW1の内容X‘4000’を設定す
る。 (6)A1にIDAW1の内容X‘4000’を設定す
る。 (7)IDAW2のX‘1800’は存在する。 (8)A2にIDAW2の内容X‘1800’を設定す
る。 (9)A2の内容X‘1800’と、A1の内容X‘40
00’に2048を加算した値X‘4800’を比較す
る。 (10)等しくないので、iに1を加算して2を設定す
る。 (11)jに1を加算して2を設定する。
(1) Set 1 to i. (2) Set 1 to j. (3) Set 2048 to k. (4) setting the L 1 to 2048. (5) to set the contents X'4000 'of E 1 to IDAW1. (6) to set the contents X'4000 'of A 1 to IDAW1. (7) X'1800 'of IDAW2 exists. (8) set the contents X'1800 'of A 2 to IDAW2. (9) with the contents of the A 2 X'1800 ', the contents of the A 1 X'40
A value X'4800 'obtained by adding 2048 to 00' is compared. (10) Since they are not equal, 1 is added to i and 2 is set. (11) 2 is set by adding 1 to j.

【0061】(12)L2に2048を設定する。 (13)E2にIDAW2の内容X‘1800’を設定
する。 (14)A2にIDAW2の内容X‘1800’を設定
する。 (15)IDAW3のX‘2000’は存在する。 (16)A3にIDAW3の内容X‘2000’を設定
する。 (17)A3の内容X‘2000’と、A2の内容X‘1
800’に2048を加算した値X‘2000’を比較
する。 (18)等しいので、iに1を加算して3を設定する。 (19)L2に2048を加算して4096を設定す
る。
(12) 2048 is set to L 2 . (13) set the contents X'1800 'of E 2 to IDAW2. (14) set the contents X'1800 'of A 2 to IDAW2. (15) X'2000 'of IDAW3 exists. (16) set the contents X'2000 'of A 3 to IDAW3. (17) the contents of the A 3 X'2000 ', the contents of the A 2 X'1
A value X'2000 'obtained by adding 2048 to 800' is compared. (18) Since they are equal, 1 is added to i and 3 is set. (19) by adding the L 2 in 2048 to set 4096.

【0062】(20)A3にIDAW3の内容X‘20
00’を設定する。 (21)IDAW4のX‘3800’は存在する。 (22)A4にIDAW4の内容X‘3800’を設定
する。 (23)A4の内容X‘3800’と、A3の内容X‘2
000’に2048を加算した値X‘2800’を比較
する。 (24)等しくないので、iに1を加算して4を設定す
る。 (25)jに1を加算して3を設定する。
[0062] (20) the contents of the A 3 to IDAW3 X'20
Set 00 '. (21) X'3800 'of IDAW4 exists. (22) set the contents X'3800 'in A 4 to IDAW4. (23) the contents of the A 4 X'3800 ', the contents of the A 3 X'2
A value X'2800 'obtained by adding 2048 to 000' is compared. (24) Since they are not equal, 1 is added to i and 4 is set. (25) Add 1 to j to set 3.

【0063】(26)L3に2048を設定する。 (27)E3にIDAW4の内容X‘3800’を設定
する。 (28)A4にIDAW4の内容X‘3800’を設定
する。 (29)IDAW5のX‘5800’は存在する。 (30)A5にIDAW5の内容X‘5800’を設定
する。 (31)A5の内容X‘5800’と、A4の内容X‘3
800’に2048を加算した値X‘4000’を比較
する。 (32)等しくないので、iに1を加算して5を設定す
る。 (33)jに1を加算して4を設定する。
[0063] (26) to set the L 3 in 2048. (27) set the contents X'3800 'of E 3 to IDAW4. (28) set the contents X'3800 'of A 4 to IDAW4. (29) X'5800 'of IDAW5 exists. (30) set the contents X'5800 'of A 5 to IDAW5. (31) with the contents of the A 5 X'5800 ', the contents of the A 4 X'3
A value X'4000 'obtained by adding 2048 to 800' is compared. (32) Since they are not equal, 1 is added to i and 5 is set. (33) Add 1 to j to set 4.

【0064】(34)L4に2048を設定する。 (35)E4にIDAW5の内容X‘5800’を設定
する。 (36)A5にIDAW5の内容X‘5800’を設定
する。 (37)IDAW6のX‘6000’は存在する。 (38)A6にIDAW6の内容X‘6000’を設定
する。 (39)A6の内容X‘6000’と、A5の内容X‘5
800’に2048を加算した値X‘6000’を比較
する。 (40)等しいので、iに1を加算して6を設定する。 (41)L4に2048を加算して4096を設定す
る。
[0064] (34) to set the L 4 in 2048. (35) set the contents X'5800 'of E 4 to IDAW5. (36) set the contents X'5800 'of A 5 to IDAW5. (37) X'6000 'of IDAW6 exists. (38) set the contents X'6000 'of A 6 to IDAW6. (39) the contents of the A 6 X'6000 ', the contents of the A 5 X'5
A value X'6000 'obtained by adding 2048 to 800' is compared. (40) Since they are equal, 1 is added to i, and 6 is set. (41) by adding the L 4 2048 set 4096.

【0065】(42)A6にIDAW6の内容X‘60
00’を設定する。 (43)IDAW7のX‘6800’は存在する。 (44)A7にIDAW7の内容X‘6800’を設定
する。 (45)A7の内容X‘6800’と、A6の内容X‘6
000’に2048を加算した値X‘6800’を比較
する。 (46)等しいので、iに1を加算して7を設定する。 (47)L4に2048を加算して6144を設定す
る。
[0065] (42) the contents of the A 6 to IDAW6 X'60
Set 00 '. (43) X'6800 'of IDAW7 exists. (44) set the contents X'6800 'of A 7 to IDAW7. And (45) the contents of the A 7 X'6800 ', the contents of the A 6 X'6
A value X'6800 'obtained by adding 2048 to 000' is compared. (46) Since they are equal, 1 is added to i and 7 is set. (47) to set the 6144 by adding the L 4 in 2048.

【0066】(48)A7にIDAW7の内容X‘68
00’を設定する。 (49)IDAW8のX‘7000’は存在する。 (50)A8にIDAW8の内容X‘7000’を設定
する。 (51)A8の内容X‘7000’と、A7の内容X‘6
800’に2048を加算した値X‘7000’を比較
する。 (52)等しいので、iに1を加算して8を設定する。 (53)L4に2048を加算して8192を設定す
る。 (54)A8にIDAW8の内容X‘7000’を設定
する。 (55)IDAW9は存在しない。 (56)E1、L1(X‘4000’、2048)、
2、L2(X‘1800’、4096)、E3、L3(X
‘3800’、2048)、E4、L4(X‘580
0’、8192)を使用してI/Oを行う。
[0066] (48) the contents of the A 7 to IDAW7 X'68
Set 00 '. (49) X'7000 'of IDAW8 exists. (50) set the contents X'7000 'of the A 8 IDAW8. (51) the contents of A 8 X'7000 ', the contents of A 7 X'6
A value X'7000 'obtained by adding 2048 to 800' is compared. (52) Since they are equal, 1 is added to i, and 8 is set. (53) by adding the L 4 2048 set 8192. (54) set the contents X'7000 'of the A 8 IDAW8. (55) IDAW9 does not exist. (56) E 1, L 1 (X'4000 ', 2048),
E 2 , L 2 (X′1800 ′, 4096), E 3 , L 3 (X
'3800', 2048), E 4 , L 4 (X'580
0 ', 8192).

【0067】この様にして、従来技術によって作成され
た入出力コマンドでも各々の連続したデータ毎に転送長
を求めることでDMA回数を削減し入出力データ転送を
効率的に行うことができる。
As described above, even for the input / output command created by the conventional technique, the transfer length is obtained for each continuous data, so that the number of DMAs can be reduced and the input / output data transfer can be performed efficiently.

【0068】前記の様に本実施形態によれば、間接デー
タアドレス及び転送長を指定した入出力コマンドを実行
して入出力データ転送を効率的に行うことができる。ま
た、本実施形態によれば、大容量のデータ転送を行う場
合、間接データアドレス格納領域を削減することができ
る。更に、本実施形態によれば、従来技術のオペレーテ
ィングシステムが生成した入出力コマンドについて、連
続したデータ毎に転送長を求めて実行するので、互換性
を保証すると共に入出力データ転送を効率的に行うこと
ができる。
As described above, according to the present embodiment, the input / output data transfer can be efficiently performed by executing the input / output command specifying the indirect data address and the transfer length. Further, according to the present embodiment, when performing large-capacity data transfer, the indirect data address storage area can be reduced. Further, according to the present embodiment, the input / output command generated by the operating system of the prior art is executed by obtaining the transfer length for each continuous data, and thus the compatibility is ensured and the input / output data transfer is efficiently performed. It can be carried out.

【0069】以上説明した様に本実施形態の入出力デー
タ転送方法によれば、連続実記憶が割り当てられたデー
タ領域の長さのDMA長によって入出力データ転送を行
うので、主記憶装置と入出力装置の間でデータ転送を行
う場合に大容量データを効率良く転送することが可能で
ある。
As described above, according to the input / output data transfer method of the present embodiment, input / output data transfer is performed according to the DMA length of the length of the data area to which continuous real storage is allocated. When data is transferred between output devices, large-capacity data can be transferred efficiently.

【0070】[0070]

【発明の効果】本発明によれば連続実記憶が割り当てら
れたデータ領域の長さのDMA長によって入出力データ
転送を行うので、主記憶装置と入出力装置の間でデータ
転送を行う場合に大容量データを効率良く転送すること
が可能である。
According to the present invention, since the input / output data transfer is performed by the DMA length of the length of the data area to which the continuous real storage is allocated, the data transfer between the main storage device and the input / output device is performed. It is possible to efficiently transfer a large amount of data.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本実施形態のORBに間接データアドレス用の
データ転送長(DMA長)を設定した入出力コマンド群
の概要を示す図である。
FIG. 1 is a diagram illustrating an outline of an input / output command group in which a data transfer length (DMA length) for an indirect data address is set in an ORB according to an embodiment.

【図2】本実施形態のCCWに間接データアドレス用の
データ転送長を設定した入出力コマンド群の概要を示す
図である。
FIG. 2 is a diagram illustrating an outline of an input / output command group in which a data transfer length for an indirect data address is set in a CCW according to the embodiment;

【図3】本実施形態のIDAWに間接データアドレス用
のデータ転送長を設定した入出力コマンド群の概要を示
す図である。
FIG. 3 is a diagram illustrating an outline of an input / output command group in which a data transfer length for an indirect data address is set in an IDAW of the embodiment;

【図4】従来の技術による主記憶装置20と入出力装置
40との間でデータ転送を行う為の入出力コマンド群の
概要を示す図である。
FIG. 4 is a diagram showing an outline of an input / output command group for performing data transfer between a main storage device 20 and an input / output device 40 according to a conventional technique.

【図5】本実施形態の入出力データ転送方法の概略構成
を示す図である。
FIG. 5 is a diagram illustrating a schematic configuration of an input / output data transfer method according to the embodiment;

【図6】本実施形態の主記憶装置20と入出力装置40
との間でデータ転送を行う為の入出力コマンド群を生成
する処理の処理手順を示すフローチャートである。
FIG. 6 illustrates a main storage device 20 and an input / output device 40 according to the present embodiment.
9 is a flowchart showing a processing procedure of a process of generating an input / output command group for performing data transfer between the server and the server;

【図7】本実施形態において間接データアドレスが連続
している場合に各々の最適な転送長を生成する処理の処
理手順を示すフローチャートである。
FIG. 7 is a flowchart showing a processing procedure of processing for generating each optimum transfer length when indirect data addresses are consecutive in the embodiment.

【図8】本実施形態のデータ及びIDAWの状態を示す
図である。
FIG. 8 is a diagram illustrating a state of data and IDAW according to the present embodiment.

【符号の説明】[Explanation of symbols]

100…ORB、101…間接データアドレス拡張フラ
グ、102…DMA設定フラグ、103…DMA長、2
00…CCW、202…間接データアドレスフラグ、2
03…転送長、300…IDAW、400…データ領
域、110…ORB、111…間接データアドレス拡張
フラグ、112…DMA設定フラグ、210…CCW、
211…DMA長、212…間接データアドレスフラ
グ、213…転送長、310…IDAW、410…デー
タ領域、120…ORB、121…間接データアドレス
拡張フラグ、122…DMA設定フラグ、220…CC
W、222…間接データアドレスフラグ、223…転送
長、320…IDAW、321…DMA長、420…デ
ータ領域、130…ORB、131…間接データアドレ
ス拡張フラグ、230…CCW、232…間接データア
ドレスフラグ、233…転送長、330…IDAW、4
30…データ領域、10…中央処理装置、20…主記憶
装置、30…入出力制御装置、40…入出力装置、50
…システムバス、60…I/Oバス、21…入出力コマ
ンド生成処理部、31…入出力データ転送処理部。
100: ORB, 101: indirect data address extension flag, 102: DMA setting flag, 103: DMA length, 2
00: CCW, 202: Indirect data address flag, 2
03: transfer length, 300: IDAW, 400: data area, 110: ORB, 111: indirect data address extension flag, 112: DMA setting flag, 210: CCW,
211 DMA length, 212 indirect data address flag, 213 transfer length, 310 IDAW, 410 data area, 120 ORB, 121 indirect data address extension flag, 122 DMA setting flag, 220 CC
W, 222: indirect data address flag, 223: transfer length, 320: IDAW, 321: DMA length, 420: data area, 130: ORB, 131: indirect data address extension flag, 230: CCW, 232: indirect data address flag 233: transfer length, 330: IDAW, 4
30 data area, 10 central processing unit, 20 main storage device, 30 input / output control device, 40 input / output device, 50
... System bus, 60 I / O bus, 21 input / output command generation processing unit, 31 input / output data transfer processing unit

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 主記憶装置と入出力装置の間で入出力デ
ータを転送する入出力データ転送方法において、 入出力を行う為のデータ領域を確保するステップと、前
記確保したデータ領域に実記憶を割り当てるステップ
と、前記割り当ての結果、連続実記憶が割り当てられた
かを判定するステップと、連続実記憶が割り当てられた
場合にその連続実記憶が割り当てられたデータ領域の長
さのDMA長と間接データアドレスを設定した入出力コ
マンドを生成するステップと、連続実記憶が割り当てら
れなかった場合に間接データアドレスのみを設定した入
出力コマンドを生成するステップと、前記生成された入
出力コマンドを実行して入出力データ転送を行うステッ
プとを有することを特徴とする入出力データ転送方法。
In an input / output data transfer method for transferring input / output data between a main storage device and an input / output device, a step of allocating a data area for performing input / output is performed, and an actual storage is performed in the allocated data area. And determining whether or not continuous real storage has been allocated as a result of the allocation. If continuous real storage has been allocated, the DMA length and the indirect length of the data area to which the continuous real storage has been allocated. Generating an input / output command in which a data address is set, generating an input / output command in which only an indirect data address is set when continuous real storage is not allocated, and executing the generated input / output command. Performing an input / output data transfer by using the input / output data transfer method.
【請求項2】 連続実記憶が割り当てられた場合に、間
接データアドレスに対するデータ転送長を複数の入出力
コマンドに共通で指定するか、間接データアドレスに対
するデータ転送長を入出力コマンド毎に指定するか、ま
たは、間接データアドレスに対するデータ転送長を間接
データアドレス毎に指定して入出力コマンドを生成する
ことを特徴とする請求項1に記載された入出力データ転
送方法。
2. When continuous real storage is allocated, a data transfer length for an indirect data address is specified in common for a plurality of input / output commands, or a data transfer length for an indirect data address is specified for each input / output command. 2. The input / output data transfer method according to claim 1, wherein the input / output command is generated by designating a data transfer length for the indirect data address for each indirect data address.
【請求項3】 間接データアドレスの連続したデータ毎
にデータ転送長を求め、その求めたデータ転送長毎にデ
ータ転送を行うことを特徴とする請求項1または請求項
2のいずれかに記載された入出力データ転送方法。
3. The data transfer method according to claim 1, wherein a data transfer length is obtained for each continuous data of the indirect data address, and data transfer is performed for each obtained data transfer length. I / O data transfer method.
JP2000381622A 2000-12-15 2000-12-15 Input/output data transferring method Pending JP2002183079A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000381622A JP2002183079A (en) 2000-12-15 2000-12-15 Input/output data transferring method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000381622A JP2002183079A (en) 2000-12-15 2000-12-15 Input/output data transferring method

Publications (1)

Publication Number Publication Date
JP2002183079A true JP2002183079A (en) 2002-06-28

Family

ID=18849589

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000381622A Pending JP2002183079A (en) 2000-12-15 2000-12-15 Input/output data transferring method

Country Status (1)

Country Link
JP (1) JP2002183079A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012504788A (en) * 2009-02-19 2012-02-23 株式会社日立製作所 Storage device and data guarantee method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012504788A (en) * 2009-02-19 2012-02-23 株式会社日立製作所 Storage device and data guarantee method

Similar Documents

Publication Publication Date Title
US7287101B2 (en) Direct memory access using memory descriptor list
US7233335B2 (en) System and method for reserving and managing memory spaces in a memory resource
JP6542909B2 (en) File operation method and apparatus
US20060136779A1 (en) Object-based storage device with low process load and control method thereof
JP6069031B2 (en) Computer and memory management method
JP2016513846A (en) Memory sharing over the network
JP2003167737A (en) Stack use method
JPH05233452A (en) Information processor
US8914571B2 (en) Scheduler for memory
CN112506823A (en) FPGA data reading and writing method, device, equipment and readable storage medium
US20050060441A1 (en) Multi-use data access descriptor
US6684267B2 (en) Direct memory access controller, and direct memory access control method
JP2008519333A (en) Implementation of bufferless DMA controller using split transaction
JP4855864B2 (en) Direct memory access controller
JP2005209206A (en) Data transfer method for multiprocessor system, multiprocessor system, and processor for executing the method
JP2003256269A (en) Control method for nonvolatile storage device, and memory device
JP2002183079A (en) Input/output data transferring method
US20060277326A1 (en) Data transfer system and method
US6378058B1 (en) Method of and apparatus for processing information, and providing medium
CN115712581A (en) Data access method, storage system and storage node
JP2933628B2 (en) Main storage device management method and computer system
JP2001051855A (en) Memory division management system
US7103705B2 (en) Computing system, and method for enabling a digital signal processor to access parameter tables through a central processing unit
JP4204405B2 (en) Memory management method
JPH09319658A (en) Memory managing system for variable page size