JPH05189345A - 動的入出力データバッファ操作方式 - Google Patents
動的入出力データバッファ操作方式Info
- Publication number
- JPH05189345A JPH05189345A JP4001487A JP148792A JPH05189345A JP H05189345 A JPH05189345 A JP H05189345A JP 4001487 A JP4001487 A JP 4001487A JP 148792 A JP148792 A JP 148792A JP H05189345 A JPH05189345 A JP H05189345A
- Authority
- JP
- Japan
- Prior art keywords
- buffer
- data
- storage device
- secondary storage
- processing
- 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
Links
Abstract
(57)【要約】
【目的】 高速アルゴリズムでの一括化による高速化を
図りつつ、かつ連続領域が少ない場合であっても速度が
低下しない入出力データバッファ操作方法を提供を目的
とする。 【構成】 2次記憶処理待ちキュー上のバッファの状態
に応じて、一括化処理をすべきか否かを判定する判定ス
テップと、一括化すべきとの判定の場合は連続性のある
バッファを一括化し、一括化しないとの判定の場合には
バッファの一括化処理をしない一括化処理ステップとか
らなる。これにより主記憶装置−ディスク装置間のデー
タ入出力の高速化が維持され、他方、これにより、バッ
ファデータが少ない場合でも、バッファ処理速度が低下
せず、データ入出力の速度低下も解消できる。
図りつつ、かつ連続領域が少ない場合であっても速度が
低下しない入出力データバッファ操作方法を提供を目的
とする。 【構成】 2次記憶処理待ちキュー上のバッファの状態
に応じて、一括化処理をすべきか否かを判定する判定ス
テップと、一括化すべきとの判定の場合は連続性のある
バッファを一括化し、一括化しないとの判定の場合には
バッファの一括化処理をしない一括化処理ステップとか
らなる。これにより主記憶装置−ディスク装置間のデー
タ入出力の高速化が維持され、他方、これにより、バッ
ファデータが少ない場合でも、バッファ処理速度が低下
せず、データ入出力の速度低下も解消できる。
Description
【0001】
【産業上の利用分野】本発明は、計算機システムの主記
憶装置と2次記憶装置間でデータの書き込み/読み出し
を行うための入出力データバッファ操作方式に関する。
憶装置と2次記憶装置間でデータの書き込み/読み出し
を行うための入出力データバッファ操作方式に関する。
【0002】
【従来の技術】第1図は通常の計算機システムの構成例
を示す。同図において従来技術による主記憶装置と2次
記憶装置間でデータの入出力(書き込み/読み出し)す
る際のバッファ操作方式について、その動作を説明す
る。中央処理装置1は、入出力制御装置4を介してディ
スク制御装置5に入出力命令を与える。ここでいう入出
力制御装置4とは、入出力装置4−ディスク制御装置5
間が中央処理装置1のシステムバスである場合(第1
図)は、 DMAコントローラである。また、入出力制御装
置4−ディスク制御装置5間がSCSIバスである場合(第
1図と接続関係は異なる)は主記憶装置側のSCSIコント
ローラであり、DMAコントローラを包含するものであっ
てもよい。この場合ディスク制御装置5はディスク装置
6のSCSIコントローラを包含する。
を示す。同図において従来技術による主記憶装置と2次
記憶装置間でデータの入出力(書き込み/読み出し)す
る際のバッファ操作方式について、その動作を説明す
る。中央処理装置1は、入出力制御装置4を介してディ
スク制御装置5に入出力命令を与える。ここでいう入出
力制御装置4とは、入出力装置4−ディスク制御装置5
間が中央処理装置1のシステムバスである場合(第1
図)は、 DMAコントローラである。また、入出力制御装
置4−ディスク制御装置5間がSCSIバスである場合(第
1図と接続関係は異なる)は主記憶装置側のSCSIコント
ローラであり、DMAコントローラを包含するものであっ
てもよい。この場合ディスク制御装置5はディスク装置
6のSCSIコントローラを包含する。
【0003】中央処理装置1からの入出力命令により、
主記憶装置2上のデータ3は2次記憶装置であるディス
ク装置6に書き込まれ、あるいはディスク装置6上のデ
ータは主記憶装置2上に読み込まれる。主記憶装置上の
データを2次記憶装置に書き込み、又は2次記憶装置上
のデータを主記憶装置に読み出す従来技術の方法とし
て、通常計算機システムでは、一定の大きさのバッファ
を複数設定し、バッファを単位として書き込み/読み出
しを行なっている。
主記憶装置2上のデータ3は2次記憶装置であるディス
ク装置6に書き込まれ、あるいはディスク装置6上のデ
ータは主記憶装置2上に読み込まれる。主記憶装置上の
データを2次記憶装置に書き込み、又は2次記憶装置上
のデータを主記憶装置に読み出す従来技術の方法とし
て、通常計算機システムでは、一定の大きさのバッファ
を複数設定し、バッファを単位として書き込み/読み出
しを行なっている。
【0004】第2図は主記憶装置上のデータ格納用バッ
ファを示した図である。7は管理テーブルで、各バッフ
ァの先頭アドレスとサイズが登録される。8はバッファ
で、データを格納するデータ部9と、データに関する情
報を格納するデータ情報部10からなる。中央処理装置
1は、主記憶装置2内に複数のバッファ8を獲得し、各
バッファの先頭のアドレスとサイズを主記憶装置2内に
設けた管理テーブル7に登録して管理する。この管理テ
ーブルと各バッファは連結して管理される。中央処理装
置1は、管理テーブル7の先頭を参照してバッファ8を
取り出し、データを2次記憶装置に書き込みむ場合は、
バッファ8に必要なデータとデータ情報を保持させて該
バッファを後述する2次記憶装置処理待ちキューの最後
に接続する。またデータを2次記憶装置から読み出す場
合は、バッファ8に必要なデータ情報を格納し同様に2
次記憶装置処理待ちキューの最後に接続する。
ファを示した図である。7は管理テーブルで、各バッフ
ァの先頭アドレスとサイズが登録される。8はバッファ
で、データを格納するデータ部9と、データに関する情
報を格納するデータ情報部10からなる。中央処理装置
1は、主記憶装置2内に複数のバッファ8を獲得し、各
バッファの先頭のアドレスとサイズを主記憶装置2内に
設けた管理テーブル7に登録して管理する。この管理テ
ーブルと各バッファは連結して管理される。中央処理装
置1は、管理テーブル7の先頭を参照してバッファ8を
取り出し、データを2次記憶装置に書き込みむ場合は、
バッファ8に必要なデータとデータ情報を保持させて該
バッファを後述する2次記憶装置処理待ちキューの最後
に接続する。またデータを2次記憶装置から読み出す場
合は、バッファ8に必要なデータ情報を格納し同様に2
次記憶装置処理待ちキューの最後に接続する。
【0005】第4図aに主記憶装置上に設けた2次記憶
装置処理待ちキューの様子を示す。11は処理ヘッダ
で、2次記憶装置処理待ちキューの先頭を示し、0個〜
複数個のバッファ12が接続されていく。中央処理装置
1は、2次記憶処理待ちキューの先頭のバッファ12を
取り出し、バッファ12のデータ情報部に格納された入
出力処理に関する情報を読みだしてそれに応じた入出力
命令を作成し、入出力制御装置4を介してディスク制御
装置5に対してその命令を発行する。ディスク制御装置
5が入出力命令を受け取ると、主記憶装置2上のバッフ
ァ〜ディスク装置6間でデータのやりとり(書き込み/
読みだし)が実行される。上記処理が終了するとディス
ク制御装置5は中央処理装置1に動作終了を通知し中央
処理装置1はバッファ12をもとの管理テーブル7に戻
す。 2次記憶処理待ちキューに他のバッファが接続さ
れていれば、中央処理装置1は同様の動作を繰り返し、
2次記憶装置処理待ちキュー上にバッファがなくなれ
ば、データのやりとり(書き込み/読みだし)が終了す
る。
装置処理待ちキューの様子を示す。11は処理ヘッダ
で、2次記憶装置処理待ちキューの先頭を示し、0個〜
複数個のバッファ12が接続されていく。中央処理装置
1は、2次記憶処理待ちキューの先頭のバッファ12を
取り出し、バッファ12のデータ情報部に格納された入
出力処理に関する情報を読みだしてそれに応じた入出力
命令を作成し、入出力制御装置4を介してディスク制御
装置5に対してその命令を発行する。ディスク制御装置
5が入出力命令を受け取ると、主記憶装置2上のバッフ
ァ〜ディスク装置6間でデータのやりとり(書き込み/
読みだし)が実行される。上記処理が終了するとディス
ク制御装置5は中央処理装置1に動作終了を通知し中央
処理装置1はバッファ12をもとの管理テーブル7に戻
す。 2次記憶処理待ちキューに他のバッファが接続さ
れていれば、中央処理装置1は同様の動作を繰り返し、
2次記憶装置処理待ちキュー上にバッファがなくなれ
ば、データのやりとり(書き込み/読みだし)が終了す
る。
【0006】以上が基本的なバッファ操作であるが、連
続領域のデータを複数のバッファに分割している場合に
は、さらに高速化するため独自のアルゴリズムを用い
て、新たな大容量のバッファを用いて一括し、これを単
位として書き込み/読み出しを行う方式がある(以下、
高速アルゴリズムという)。第4図bは、高速アルゴリ
ズムにより2次記憶装置処理待ちキューに接続されたバ
ッファ列に対して変更を加えたようすを示した図であ
る。
続領域のデータを複数のバッファに分割している場合に
は、さらに高速化するため独自のアルゴリズムを用い
て、新たな大容量のバッファを用いて一括し、これを単
位として書き込み/読み出しを行う方式がある(以下、
高速アルゴリズムという)。第4図bは、高速アルゴリ
ズムにより2次記憶装置処理待ちキューに接続されたバ
ッファ列に対して変更を加えたようすを示した図であ
る。
【0007】この方法は、2次記憶装置処理待ちキュー
上のバッファが複数個存在し、バッファ上のデータに連
続性がある場合に、複数個のバッファ13上のデータお
よびデータ情報を、別領域に確保した大容量のバッファ
14にコピーし、該複数個のバッファ13を2次記憶装
置処理待ちキューから分離し、大容量バッファ14をか
わりに2次記憶装置処理待ちキューに接続する方法であ
る。ただし、バッファ内のデータの連続性とは次の場合
を指す。 2次記憶装置処理待ちキュー上で2つ以上
の隣あったバッファ13が主記憶装置2上で連続した領
域のもので、かつディスク装置6上の連続領域にデータ
が書き出される場合、または2次記憶装置処理待ちキ
ュー上で隣あったバッファ13が主記憶装置2上で連続
した領域もので、かつディスク装置6上の連続した領域
からデータが読み込まれる場合である。
上のバッファが複数個存在し、バッファ上のデータに連
続性がある場合に、複数個のバッファ13上のデータお
よびデータ情報を、別領域に確保した大容量のバッファ
14にコピーし、該複数個のバッファ13を2次記憶装
置処理待ちキューから分離し、大容量バッファ14をか
わりに2次記憶装置処理待ちキューに接続する方法であ
る。ただし、バッファ内のデータの連続性とは次の場合
を指す。 2次記憶装置処理待ちキュー上で2つ以上
の隣あったバッファ13が主記憶装置2上で連続した領
域のもので、かつディスク装置6上の連続領域にデータ
が書き出される場合、または2次記憶装置処理待ちキ
ュー上で隣あったバッファ13が主記憶装置2上で連続
した領域もので、かつディスク装置6上の連続した領域
からデータが読み込まれる場合である。
【0008】これを実現するため、中央処理装置1は、
主記憶装置2−ディスク装置6間のデータ入出力に先立
ち、2次記憶装置処理待ちキュー上の全バッファに対し
て主記憶装置2上の先頭アドレス、データサイズ、処理
内容(書き込み/読み出し)、ディスク装置上のアドレ
スを調査し、さらに次のバッファについても同様に調査
し、両バッファの連続性(上記、)を判断して、連
続している場合であれば、バッファ内容を新たな大容量
のバッファに一括化し、その大容量バッファを代わりに
2次記憶装置処理待ちキューに接続する。
主記憶装置2−ディスク装置6間のデータ入出力に先立
ち、2次記憶装置処理待ちキュー上の全バッファに対し
て主記憶装置2上の先頭アドレス、データサイズ、処理
内容(書き込み/読み出し)、ディスク装置上のアドレ
スを調査し、さらに次のバッファについても同様に調査
し、両バッファの連続性(上記、)を判断して、連
続している場合であれば、バッファ内容を新たな大容量
のバッファに一括化し、その大容量バッファを代わりに
2次記憶装置処理待ちキューに接続する。
【0009】基本的なバッファ操作(第4図a)では、
中央処理装置1は、2次装置処理待ちキュー上の各バッ
ファについて毎回入出力制御装置4を介してディスク制
御装置5に対して入出力命令を発行する必要がある。こ
れに対して、上記方法(第4図b)では、複数個の連続
領域のバッファを1つにまとめることによって、複数回
必要であった入出力命令を1回に削減し、毎入出力命令
実行時に発生するディスク装置6上の時間損失を削減す
ることによって、高速化を実現している。
中央処理装置1は、2次装置処理待ちキュー上の各バッ
ファについて毎回入出力制御装置4を介してディスク制
御装置5に対して入出力命令を発行する必要がある。こ
れに対して、上記方法(第4図b)では、複数個の連続
領域のバッファを1つにまとめることによって、複数回
必要であった入出力命令を1回に削減し、毎入出力命令
実行時に発生するディスク装置6上の時間損失を削減す
ることによって、高速化を実現している。
【0010】
【発明が解決しようとする課題】しかしながら、従来技
術の高速アルゴリズムによれば、2次記憶装置処理待ち
キュー上で連続領域のバッファ数が少ない状態ではバッ
ファ一括化の効果が少なく、一括化によってかえってバ
ッファ処理速度の低下を招くことからデータの入出力が
遅くなるという問題点がある。
術の高速アルゴリズムによれば、2次記憶装置処理待ち
キュー上で連続領域のバッファ数が少ない状態ではバッ
ファ一括化の効果が少なく、一括化によってかえってバ
ッファ処理速度の低下を招くことからデータの入出力が
遅くなるという問題点がある。
【0011】すなわち、2次記憶装置処理待ちキュー上
の全バッファに対して主記憶装置上の先頭アドレス、デ
ータサイズ、処理内容(書き込み/読み出し)、ディス
ク装置上のアドレスを調査し、さらに次のバッファにつ
いても同様に調査し、両バッファの連続性を判断しなけ
ればならないので、それだけバッファの処理速度が低下
し、バッファの連続性が少ない場合は一括化がなされな
いので、かえって入出力データのやりとりが遅くなると
いう問題点がある。
の全バッファに対して主記憶装置上の先頭アドレス、デ
ータサイズ、処理内容(書き込み/読み出し)、ディス
ク装置上のアドレスを調査し、さらに次のバッファにつ
いても同様に調査し、両バッファの連続性を判断しなけ
ればならないので、それだけバッファの処理速度が低下
し、バッファの連続性が少ない場合は一括化がなされな
いので、かえって入出力データのやりとりが遅くなると
いう問題点がある。
【0012】本発明は、上記問題点に鑑み、高速アルゴ
リズムでの一括化による高速化を図りつつ、かつ連続領
域が少ない場合であっても速度が低下しない入出力デー
タバッファ操作方法を提供を目的とする。
リズムでの一括化による高速化を図りつつ、かつ連続領
域が少ない場合であっても速度が低下しない入出力デー
タバッファ操作方法を提供を目的とする。
【0013】
【問題点を解決するための手段】 上記問題点を解決す
るため、本発明の動的入出力データバッファ操作方式
は、計算機システムの主記憶装置と2次記憶装置間でデ
ータの入出力を行うに先立って、入出力すべきデータを
格納するバッファ全部を並べた2次記憶装置処理待ちキ
ューを主記憶装置上に構築し、該2次記憶装置処理待ち
キューのバッファ単位に一括化処理を実行するデータ入
出力方式において、前記2次記憶装置処理待ちキューの
状態評価として所定のパラメータを計算する計算ステッ
プと、その計算値が所定のしきい値より大きければ一括
化処理をすべきであると判定し、しきい値以下であれば
一括化処理をしないと判定する判定ステップと、一括化
処理をすべきであるとの判定が下されたときのみ、一括
化処理を実行するる一括化処理ステップとからなってい
る。
るため、本発明の動的入出力データバッファ操作方式
は、計算機システムの主記憶装置と2次記憶装置間でデ
ータの入出力を行うに先立って、入出力すべきデータを
格納するバッファ全部を並べた2次記憶装置処理待ちキ
ューを主記憶装置上に構築し、該2次記憶装置処理待ち
キューのバッファ単位に一括化処理を実行するデータ入
出力方式において、前記2次記憶装置処理待ちキューの
状態評価として所定のパラメータを計算する計算ステッ
プと、その計算値が所定のしきい値より大きければ一括
化処理をすべきであると判定し、しきい値以下であれば
一括化処理をしないと判定する判定ステップと、一括化
処理をすべきであるとの判定が下されたときのみ、一括
化処理を実行するる一括化処理ステップとからなってい
る。
【0014】
【作用】 計算ステップの計算結果に基づいて判定ステ
ップは、2次記憶処理待ちキュー上のバッファの状態に
応じて、一括化処理をすべきか否かを判定する。一括化
すべしとの判定の場合は、一括化処理ステップにより、
連続性のあるバッファが一括化される。これにより主記
憶装置−ディスク装置間のデータ入出力の高速化が維持
される。他方、一括化しないとの判定の場合には、バッ
ファの一括化処理をしない。これにより、バッファデー
タが少ない場合でも、バッファ処理速度が低下せず、ひ
いては主記憶装置−ディスク装置間のデータ入出力の速
度低下も解消できる。
ップは、2次記憶処理待ちキュー上のバッファの状態に
応じて、一括化処理をすべきか否かを判定する。一括化
すべしとの判定の場合は、一括化処理ステップにより、
連続性のあるバッファが一括化される。これにより主記
憶装置−ディスク装置間のデータ入出力の高速化が維持
される。他方、一括化しないとの判定の場合には、バッ
ファの一括化処理をしない。これにより、バッファデー
タが少ない場合でも、バッファ処理速度が低下せず、ひ
いては主記憶装置−ディスク装置間のデータ入出力の速
度低下も解消できる。
【0015】
【実施例】以下本発明の動的入出力データバッファ操作
方法の一実施例について説明する。本実施例の動的入出
力データバッファ操作方法は、従来例と同じく第1図の
計算機システムにおいて実行される。第3図は本発明の
実施例における動的入出力データバッファ操作方法のを
説明するフローチャートでである。第3図(a) は初期化
ルーチンで、システム起動時に主記憶装置2上に第2図
に示したように管理テーブル7と複数のバッファ8を確
保し連結する。同時に複数の大容量バッファも確保す
る。この点は従来例と同じである。第3図(b) は動的デ
ータ管理アルゴリズムで、入出力データバッファを動的
に管理するためのメインルーチンである。第3図(c) は
連続データのスキャンアルゴリズムで、第3図(b) のメ
インルーチンのうち連続領域データの一括化処理を行う
部分である。
方法の一実施例について説明する。本実施例の動的入出
力データバッファ操作方法は、従来例と同じく第1図の
計算機システムにおいて実行される。第3図は本発明の
実施例における動的入出力データバッファ操作方法のを
説明するフローチャートでである。第3図(a) は初期化
ルーチンで、システム起動時に主記憶装置2上に第2図
に示したように管理テーブル7と複数のバッファ8を確
保し連結する。同時に複数の大容量バッファも確保す
る。この点は従来例と同じである。第3図(b) は動的デ
ータ管理アルゴリズムで、入出力データバッファを動的
に管理するためのメインルーチンである。第3図(c) は
連続データのスキャンアルゴリズムで、第3図(b) のメ
インルーチンのうち連続領域データの一括化処理を行う
部分である。
【0016】以下その動作を説明する。まず、第1図の
中央処理装置1は、システム起動時に主記憶装置2上に
第2図に示したように各バッファの先頭アドレスとサイ
ズを格納する管理テーブル7と複数のバッファ8を確保
し連結する。同時に複数の大容量バッファも確保する
(ステップa1)。これが初期化ルーチン(第3図(a)
)である。
中央処理装置1は、システム起動時に主記憶装置2上に
第2図に示したように各バッファの先頭アドレスとサイ
ズを格納する管理テーブル7と複数のバッファ8を確保
し連結する。同時に複数の大容量バッファも確保する
(ステップa1)。これが初期化ルーチン(第3図(a)
)である。
【0017】次に、中央処理装置1は、主記憶装置2と
2次記憶装置間でデータ入出力実行の要求があれば、動
的データ管理アルゴリズム(第3図(b) )を開始する。
入出力要求が発生すると中央処理装置1は、入出力要求
登録処理を行う、すなわち、第1図の主記憶装置2上に
存在する第2図に示した管理テーブル7に連結された先
頭のバッファ8をとりだし必要なデータやデータ情報を
格納し、第1図の主記憶装置2上にある2次記憶装置処
理待ちキューの最後にバッファ8を連結する(ステップ
b1)。次いで中央処理装置1は、2次記憶装置処理待
ちキュー上のデータ量計算、つまり、第2図の主記憶装
置2上の2次記憶装置処理待ちキューに接続された全バ
ッファのデータ情報部に格納されたデータ量の総和を計
算する(ステップb2)。その計算結果について、中央
処理装置1は、データ量が所定の値(しきい値)より大
きいか否かを判定し(ステップb3)、しきい値より大
きい場合は連続領域データのバッファ一括化処理を行っ
て(ステップb4)からステップb5に進み、また、し
きい値以下の場合は、連続領域データのバッファ一括化
処理をしないでステップb5に進む。なお、しきい値の
決定については後述する。
2次記憶装置間でデータ入出力実行の要求があれば、動
的データ管理アルゴリズム(第3図(b) )を開始する。
入出力要求が発生すると中央処理装置1は、入出力要求
登録処理を行う、すなわち、第1図の主記憶装置2上に
存在する第2図に示した管理テーブル7に連結された先
頭のバッファ8をとりだし必要なデータやデータ情報を
格納し、第1図の主記憶装置2上にある2次記憶装置処
理待ちキューの最後にバッファ8を連結する(ステップ
b1)。次いで中央処理装置1は、2次記憶装置処理待
ちキュー上のデータ量計算、つまり、第2図の主記憶装
置2上の2次記憶装置処理待ちキューに接続された全バ
ッファのデータ情報部に格納されたデータ量の総和を計
算する(ステップb2)。その計算結果について、中央
処理装置1は、データ量が所定の値(しきい値)より大
きいか否かを判定し(ステップb3)、しきい値より大
きい場合は連続領域データのバッファ一括化処理を行っ
て(ステップb4)からステップb5に進み、また、し
きい値以下の場合は、連続領域データのバッファ一括化
処理をしないでステップb5に進む。なお、しきい値の
決定については後述する。
【0018】しきい値より大きい場合(2次記憶装置処
理待ちキューのデータ量が所定の値(しきい値)より大
きい場合)の一括化処理である連続領域データのスキャ
ンアルゴリズム(第3図(c) )を説明する。中央処理装
置1は、ステップa1で確保した大容量バッファについ
て空きがあるか否かを判定し(ステップc1)、空きが
ない場合にはそのまま終了する。また、空きがある場合
は、処理ヘッダに接続されているバッファを先頭から順
に数えるための番号Nを1に設定し(ステップc2)、
N番目のバッファに対して主記憶上の先頭アドレス、デ
ータサイズ、処理内容(書き込み/読み出し)、ディス
ク装置上のアドレスを調査をし(ステップc3)、N+
1番目のバッファに対しても同様に調査し(ステップc
4)、N番目のバッファとN+1番目のバッファとの連
続性を判定する(ステップc5)。ここでいう連続性と
は、2次記憶装置処理待ちキュー上のN番目とN+1番
目のバッファが、主記憶装置2上で連続した領域のも
ので、かつ、ディスク装置6上の連続領域にデータが書
き出される場合、または主記憶装置2上で連続した領
域もので、かつディスク装置6上の連続した領域からデ
ータが読み込まれる場合に該当することである。
理待ちキューのデータ量が所定の値(しきい値)より大
きい場合)の一括化処理である連続領域データのスキャ
ンアルゴリズム(第3図(c) )を説明する。中央処理装
置1は、ステップa1で確保した大容量バッファについ
て空きがあるか否かを判定し(ステップc1)、空きが
ない場合にはそのまま終了する。また、空きがある場合
は、処理ヘッダに接続されているバッファを先頭から順
に数えるための番号Nを1に設定し(ステップc2)、
N番目のバッファに対して主記憶上の先頭アドレス、デ
ータサイズ、処理内容(書き込み/読み出し)、ディス
ク装置上のアドレスを調査をし(ステップc3)、N+
1番目のバッファに対しても同様に調査し(ステップc
4)、N番目のバッファとN+1番目のバッファとの連
続性を判定する(ステップc5)。ここでいう連続性と
は、2次記憶装置処理待ちキュー上のN番目とN+1番
目のバッファが、主記憶装置2上で連続した領域のも
ので、かつ、ディスク装置6上の連続領域にデータが書
き出される場合、または主記憶装置2上で連続した領
域もので、かつディスク装置6上の連続した領域からデ
ータが読み込まれる場合に該当することである。
【0019】判定の結果、連続性がなければステップc
10に進み、連続性があればステップc7に分岐する。
連続性がある場合、中央処理装置1は、N番目とN+1
番目のバッファを大容量バッファにコピーし(ステップ
c7)、N番目のバッファの代わりに大容量バッファを
接続し、N+2番目のバッファを大容量バッファに接続
する。これにより処理待ちキューを大容量バッファに入
替えN+2番目以降のバッファを一つ前に進めたことに
なる(ステップc8)。一括化によりバッファが1つ減
ったので番号を合わせるためにNから1を減ずる(ステ
ップc9)。
10に進み、連続性があればステップc7に分岐する。
連続性がある場合、中央処理装置1は、N番目とN+1
番目のバッファを大容量バッファにコピーし(ステップ
c7)、N番目のバッファの代わりに大容量バッファを
接続し、N+2番目のバッファを大容量バッファに接続
する。これにより処理待ちキューを大容量バッファに入
替えN+2番目以降のバッファを一つ前に進めたことに
なる(ステップc8)。一括化によりバッファが1つ減
ったので番号を合わせるためにNから1を減ずる(ステ
ップc9)。
【0020】さらに、N+2番目のバッファが存在する
か否かを判定し(ステップc10)、存在しなければス
テップb4は終了しステップb5に進む。N+2番目の
バッファが存在する場合は、Nに1を加え(ステップc
11)ステップc3に戻る。このようにして全てのバッ
ファについて連続性が判定され、一括化が終わればステ
ップb5に進む。
か否かを判定し(ステップc10)、存在しなければス
テップb4は終了しステップb5に進む。N+2番目の
バッファが存在する場合は、Nに1を加え(ステップc
11)ステップc3に戻る。このようにして全てのバッ
ファについて連続性が判定され、一括化が終わればステ
ップb5に進む。
【0021】その後2次記憶装置処理待ちキューの先頭
のバッファの入出力処理が行われる(ステップb5)。
すなわち、中央処理装置1は、バッファのデータ格納部
の入出力情報に従って入出力制御装置4を介してディス
ク制御装置5に対して入出力命令を発行し、主記憶装置
2とディスク装置の間でデータのやりとり(書き込み/
読みだし)を実行させ、 データのやりとりが終了する
と、通常のバッファの場合は主記憶装置2上の管理テー
ブルの最後に戻し、大容量のバッファの場合はそのデー
タ部とデータ情報部の内容を消去し、使用したバッファ
を元の状態に戻す。 1つのバッファ処理が終わると、
それが最後のバッファであるか否かを判定し(ステップ
b6)、最後のバッファであれば終了し、最後のバッフ
ァでなければステップb2に戻る。こうして中央処理装
置1は、主記憶装置2上の2次記憶装置処理待ちキュー
にバッファがなくなるまで上記動作を繰り返す。
のバッファの入出力処理が行われる(ステップb5)。
すなわち、中央処理装置1は、バッファのデータ格納部
の入出力情報に従って入出力制御装置4を介してディス
ク制御装置5に対して入出力命令を発行し、主記憶装置
2とディスク装置の間でデータのやりとり(書き込み/
読みだし)を実行させ、 データのやりとりが終了する
と、通常のバッファの場合は主記憶装置2上の管理テー
ブルの最後に戻し、大容量のバッファの場合はそのデー
タ部とデータ情報部の内容を消去し、使用したバッファ
を元の状態に戻す。 1つのバッファ処理が終わると、
それが最後のバッファであるか否かを判定し(ステップ
b6)、最後のバッファであれば終了し、最後のバッフ
ァでなければステップb2に戻る。こうして中央処理装
置1は、主記憶装置2上の2次記憶装置処理待ちキュー
にバッファがなくなるまで上記動作を繰り返す。
【0022】以上のように、本実施例の動的入出力デー
タバッファ操作方式は、2次記憶装置処理待ちキュー上
に主記憶装置とディスク装置の双方で連続領域にあるデ
ータを格納したバッファが存在し、それがしきい値を越
える場合に限ってバッファの一括化処理を行う。 第5
図は、時間の経過に対して2次記憶装置処理待ちキュー
上のバッファのデータ量が変化する様子(上の図)、及
び本実施例によるバッファ一括化処理が動的に制御され
る様子(下の図)を示す。2次記憶装置処理待ちキュー
上のバッファのデータ量がしきい値(上の図)より大き
い場合は高速アルゴリズムによるバッファの一括化処理
が行われ(下の図中ON)、しきい値(上の図)以下の
場合は行われない(下の図中OFF)。
タバッファ操作方式は、2次記憶装置処理待ちキュー上
に主記憶装置とディスク装置の双方で連続領域にあるデ
ータを格納したバッファが存在し、それがしきい値を越
える場合に限ってバッファの一括化処理を行う。 第5
図は、時間の経過に対して2次記憶装置処理待ちキュー
上のバッファのデータ量が変化する様子(上の図)、及
び本実施例によるバッファ一括化処理が動的に制御され
る様子(下の図)を示す。2次記憶装置処理待ちキュー
上のバッファのデータ量がしきい値(上の図)より大き
い場合は高速アルゴリズムによるバッファの一括化処理
が行われ(下の図中ON)、しきい値(上の図)以下の
場合は行われない(下の図中OFF)。
【0023】こうすることで2次記憶装置処理待ちキュ
ー上に多数の連続領域バッファが存在する場合は従来ど
うりのバッファ一括化アルゴリズムを用いることでバッ
ファの処理速度を向上させ、また、2次記憶装置処理待
ちキュー上に連続領域バッファが少数しか存在しない場
合はバッファ一括化アルゴリズムを使用しないことでバ
ッファ処理速度の悪化を解消できる。
ー上に多数の連続領域バッファが存在する場合は従来ど
うりのバッファ一括化アルゴリズムを用いることでバッ
ファの処理速度を向上させ、また、2次記憶装置処理待
ちキュー上に連続領域バッファが少数しか存在しない場
合はバッファ一括化アルゴリズムを使用しないことでバ
ッファ処理速度の悪化を解消できる。
【0024】第6図は本発明による効果の説明図であ
り、左図はシーケンシャル(連続)データの書き込みの
場合、右図はランダムデータの書き込みの場合の従来技
術、高速アルゴリズムを用いた従来技術、本発明それぞ
れによる処理時間を示す。シーケンシャル(連続)デー
タを書き込むときは、高速アルゴリズム(バッファ一括
化)を用いた従来技術と同様の高速化が図られ、ランダ
ムデータを書き込むときは、高速アルゴリズム(バッフ
ァ一括化)を用いた従来技術で悪化していた処理時間が
改善されていることを示している。
り、左図はシーケンシャル(連続)データの書き込みの
場合、右図はランダムデータの書き込みの場合の従来技
術、高速アルゴリズムを用いた従来技術、本発明それぞ
れによる処理時間を示す。シーケンシャル(連続)デー
タを書き込むときは、高速アルゴリズム(バッファ一括
化)を用いた従来技術と同様の高速化が図られ、ランダ
ムデータを書き込むときは、高速アルゴリズム(バッフ
ァ一括化)を用いた従来技術で悪化していた処理時間が
改善されていることを示している。
【0025】なお、しきい値は、バッファの容量、大容
量バッファの容量、計算機システムで扱うデータの種類
(文字データ、画像データ、イメージデータ等)、主記
憶装置とディスク装置間の入出力の頻度、主記憶装置の
容量、ディスク装置の容量等を考慮して適正な値が決定
される。たとえば、通常バッファ容量は、8KB〜64
KB程度であり、仮にバッファ容量が8KB、大容量バ
ッファが64KBである場合、しきい値として64KB
と決定する等が考えられる。
量バッファの容量、計算機システムで扱うデータの種類
(文字データ、画像データ、イメージデータ等)、主記
憶装置とディスク装置間の入出力の頻度、主記憶装置の
容量、ディスク装置の容量等を考慮して適正な値が決定
される。たとえば、通常バッファ容量は、8KB〜64
KB程度であり、仮にバッファ容量が8KB、大容量バ
ッファが64KBである場合、しきい値として64KB
と決定する等が考えられる。
【0026】
【発明の効果】以上説明したように、本発明によればバ
ッファの処理待ちキューの量が所定のしきい値を超える
ときのみ、高速アルゴリズム(バッファ一括化)を行う
ことにより、高速アルゴリズムによる高速化と共に、バ
ッファが少ない場合であってもバッファ処理の速度低下
を招くことないという効果がある。その結果、バッファ
処理の速度が向上し計算機システムの効率を高めること
ができる。
ッファの処理待ちキューの量が所定のしきい値を超える
ときのみ、高速アルゴリズム(バッファ一括化)を行う
ことにより、高速アルゴリズムによる高速化と共に、バ
ッファが少ない場合であってもバッファ処理の速度低下
を招くことないという効果がある。その結果、バッファ
処理の速度が向上し計算機システムの効率を高めること
ができる。
【図1】本発明の実施例および従来例における計算機シ
ステムの構成図である。
ステムの構成図である。
【図2】本発明の実施例および従来例における主記憶装
置上のバッファ管理の方法を説明図である。
置上のバッファ管理の方法を説明図である。
【図3】本発明の実施例における動的入出力データバッ
ファ操作方法を示すフローチャートである。
ファ操作方法を示すフローチャートである。
【図4】(a) 本発明の実施例および従来例における主記
憶装置上の2次記憶装置処理待ちキューに並ぶバッファ
の様子を示す図である。 (b) 本発明の実施例および従来例における同図(a) の連
続するバッファが高速アルゴリズムにより一括化される
様子を示す図である。
憶装置上の2次記憶装置処理待ちキューに並ぶバッファ
の様子を示す図である。 (b) 本発明の実施例および従来例における同図(a) の連
続するバッファが高速アルゴリズムにより一括化される
様子を示す図である。
【図5】本発明の実施例における時間の経過に対して2
次記憶装置処理待ちキュー上のバッファのデータ量が変
化する様子(上の図)、及び本実施例によるバッファ一
括化処理が動的に制御される様子(下の図)を示す。
次記憶装置処理待ちキュー上のバッファのデータ量が変
化する様子(上の図)、及び本実施例によるバッファ一
括化処理が動的に制御される様子(下の図)を示す。
【図6】本発明の実施例における効果の説明図であり、
左図はシーケンシャル(連続)データの書き込みの場
合、右図はランダムデータの書き込みの場合の従来技
術、高速アルゴリズムを用いた従来技術、本発明それぞ
れによる処理時間を示す。
左図はシーケンシャル(連続)データの書き込みの場
合、右図はランダムデータの書き込みの場合の従来技
術、高速アルゴリズムを用いた従来技術、本発明それぞ
れによる処理時間を示す。
1 中央処理装置 2 主記憶装置 3 主記憶装置上のデータ 4 入出力制御装置 5 ディスク制御装置 6 ディスク装置 7 主記憶装置上のバッファ管理テーブル 8 バッファ 9 バッファのデータ部 10 バッファのデータ情報部
Claims (2)
- 【請求項1】 計算機システムの主記憶装置と2次記憶
装置間でデータの入出力を行うに際して、入出力すべき
データを格納するバッファ全部を並べた2次記憶装置処
理待ちキューを主記憶装置上に構築し、該2次記憶装置
処理待ちキューのバッファ単位に一括化処理を実行する
データ入出力方式において、 前記2次記憶装置処理待ちキューの状態評価として所定
のパラメータを計算する計算ステップと、 その計算値が所定のしきい値より大きければ一括化処理
をすべきであると判定し、しきい値以下であれば一括化
処理をしないと判定する判定ステップと、 一括化処理をすべきであるとの判定が下されたときの
み、一括化処理を実行するる一括化処理ステップとから
なることを特徴とする動的入出力データバッファ操作方
式。 - 【請求項2】 前記計算ステップは、所定のパラメータ
の計算として、2次記憶装置処理待ちキューの各バッフ
ァが有するデータ量の総和を計算することを特徴とする
請求項1記載の動的入出力データバッファ操作方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4001487A JPH05189345A (ja) | 1992-01-08 | 1992-01-08 | 動的入出力データバッファ操作方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4001487A JPH05189345A (ja) | 1992-01-08 | 1992-01-08 | 動的入出力データバッファ操作方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05189345A true JPH05189345A (ja) | 1993-07-30 |
Family
ID=11502800
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4001487A Pending JPH05189345A (ja) | 1992-01-08 | 1992-01-08 | 動的入出力データバッファ操作方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05189345A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1165772A (ja) * | 1997-08-20 | 1999-03-09 | Fujitsu Ltd | データ転送システムおよびデータ転送方法 |
KR20150010462A (ko) * | 2013-07-19 | 2015-01-28 | 삼성전자주식회사 | 모바일 장치 및 그것의 제어 방법 |
-
1992
- 1992-01-08 JP JP4001487A patent/JPH05189345A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1165772A (ja) * | 1997-08-20 | 1999-03-09 | Fujitsu Ltd | データ転送システムおよびデータ転送方法 |
KR20150010462A (ko) * | 2013-07-19 | 2015-01-28 | 삼성전자주식회사 | 모바일 장치 및 그것의 제어 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6393519B1 (en) | Disk array controller with connection path formed on connection request queue basis | |
JP2545482B2 (ja) | インタ―フェイス装置の転送パラメ―タ設定方法 | |
US7284082B2 (en) | Controller apparatus and method for improved data transfer | |
JPH09259033A (ja) | バッファ書き込み方法 | |
US20070016732A1 (en) | Data transfer arbitration apparatus and data transfer arbitration method | |
KR102334473B1 (ko) | 적응형 딥러닝 가속 장치 및 방법 | |
JPH06161846A (ja) | ファイル管理装置 | |
JPH05189345A (ja) | 動的入出力データバッファ操作方式 | |
JP2001014212A (ja) | メモリ制御装置及び方法とそれを用いた描画装置及び印刷装置 | |
CN112767978B (zh) | 一种ddr命令调度方法、装置、设备及介质 | |
JPH08147115A (ja) | 文書処理装置 | |
JPH0991098A (ja) | デバイスドライバアクセス方式 | |
JP2000227895A (ja) | 画像データ転送装置および画像データ転送方法 | |
JPH05134810A (ja) | デイスク装置のコマンドリオーダリング方法 | |
JP2024127317A (ja) | 情報処理装置および情報処理方法 | |
JP3182279B2 (ja) | データ転送方法 | |
JPH06290000A (ja) | ディスクコントローラ | |
JPH05334012A (ja) | 大容量化ディスク制御装置 | |
JPH1011351A (ja) | コンピュータシステム | |
JPH1196107A (ja) | リクエスト管理回路 | |
JPH0520264A (ja) | バツフア制御方法 | |
JPH06250792A (ja) | 低速デバイスのファイルアクセス制御装置 | |
JPH03204052A (ja) | メモリアクセス制御方式 | |
JPH07164677A (ja) | 文字発生装置 | |
JP2000207133A (ja) | メモリアクセスシステム及びメモリアクセス方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EXPY | Cancellation because of completion of term |