JPH0991098A - デバイスドライバアクセス方式 - Google Patents
デバイスドライバアクセス方式Info
- Publication number
- JPH0991098A JPH0991098A JP24934895A JP24934895A JPH0991098A JP H0991098 A JPH0991098 A JP H0991098A JP 24934895 A JP24934895 A JP 24934895A JP 24934895 A JP24934895 A JP 24934895A JP H0991098 A JPH0991098 A JP H0991098A
- Authority
- JP
- Japan
- Prior art keywords
- request
- input
- output
- disk device
- information block
- 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)【要約】
【課題】ディスク装置の入出力要求に対しヘッド移動を
最小限に抑え、ディスク装置のへのアクセス回数を減ら
すことにより、ディスク装置のアクセス時間を短縮し、
スループットおよびターンアランドタイムを向上させ
る。 【解決手段】ディスク装置に対して、アクセス中に受付
けた入出力要求をデータの矛盾が無く、現在のディスク
装置のヘッド移動距離が短くなる様なソーティングと、
ディスク装置の同一領域への入出力要求同士をデータの
矛盾が無くアクセスできるように1つの入出力要求へま
とめることによりディスク装置へのアクセス回数を減ら
し、ディスク装置のアクセス時間を短縮するものであ
る。 【効果】ディスク装置のヘッドシーク時間を最小限に抑
え、ディスク装置へのアクセス回数を減らし、スループ
ットの向上が図れる。
最小限に抑え、ディスク装置のへのアクセス回数を減ら
すことにより、ディスク装置のアクセス時間を短縮し、
スループットおよびターンアランドタイムを向上させ
る。 【解決手段】ディスク装置に対して、アクセス中に受付
けた入出力要求をデータの矛盾が無く、現在のディスク
装置のヘッド移動距離が短くなる様なソーティングと、
ディスク装置の同一領域への入出力要求同士をデータの
矛盾が無くアクセスできるように1つの入出力要求へま
とめることによりディスク装置へのアクセス回数を減ら
し、ディスク装置のアクセス時間を短縮するものであ
る。 【効果】ディスク装置のヘッドシーク時間を最小限に抑
え、ディスク装置へのアクセス回数を減らし、スループ
ットの向上が図れる。
Description
【0001】
【発明の属する技術分野】本発明は、デバイスドライバ
アクセス方式に関し、特にディスク装置に対しての入出
力アクセス方式に関する。
アクセス方式に関し、特にディスク装置に対しての入出
力アクセス方式に関する。
【0002】
【従来の技術】従来、この種のデバイスドライバアクセ
ス方式は、ディスク装置などのデバイスを上位プログラ
ムからの入出力要求をもとに入出力を処理するために用
いられる。
ス方式は、ディスク装置などのデバイスを上位プログラ
ムからの入出力要求をもとに入出力を処理するために用
いられる。
【0003】例えば、デバイスドライバアクセス方式の
一例として「特開平5−257614号広報」の方式で
は、ディスク装置への入出力要求を処理する時点で、デ
ィスクの同一領域へのリードとライトおよびライト同士
の順番を保持したまま、その時点のディスクのヘッド位
置をもとに、キューイングされた入出力要求が全て処理
されるまでのヘッドの移動距離が最小になるようにキュ
ーイングされた入出力要求を並び変え、並び変えられた
順番に入出力処理を行っていた。
一例として「特開平5−257614号広報」の方式で
は、ディスク装置への入出力要求を処理する時点で、デ
ィスクの同一領域へのリードとライトおよびライト同士
の順番を保持したまま、その時点のディスクのヘッド位
置をもとに、キューイングされた入出力要求が全て処理
されるまでのヘッドの移動距離が最小になるようにキュ
ーイングされた入出力要求を並び変え、並び変えられた
順番に入出力処理を行っていた。
【0004】
【発明が解決しようとする課題】上述した従来のデバイ
スドライバアクセス方式では、ディスク装置の同一領域
への入出力要求があった場合にリード同士の要求がキュ
ーイングされているときも、毎回同一データをリードし
無駄な入出力要求を実行している。また、同様に同一領
域へのライト後のリードがキューイングされているとき
も順番を保持したまま入出力要求を順番に実行している
ためディスク装置の同一領域へ無駄なリードまたはライ
トを実行するという欠点を有している。
スドライバアクセス方式では、ディスク装置の同一領域
への入出力要求があった場合にリード同士の要求がキュ
ーイングされているときも、毎回同一データをリードし
無駄な入出力要求を実行している。また、同様に同一領
域へのライト後のリードがキューイングされているとき
も順番を保持したまま入出力要求を順番に実行している
ためディスク装置の同一領域へ無駄なリードまたはライ
トを実行するという欠点を有している。
【0005】本発明の目的は、ディスク装置に対して、
アクセス中に受け付けた入出力要求をデータの矛盾が無
く、現在のディスク装置のヘッド移動距離が短くなる様
なソーティングと、ディスク装置の同一領域への入出力
要求同士をデータの矛盾が無くアクセスできるように1
つの入出力要求へまとめることによりディスク装置への
アクセス回数を減らし、ディスク装置のアクセス時間を
短縮するデバイスドライバアクセス方式を提供すること
にある。
アクセス中に受け付けた入出力要求をデータの矛盾が無
く、現在のディスク装置のヘッド移動距離が短くなる様
なソーティングと、ディスク装置の同一領域への入出力
要求同士をデータの矛盾が無くアクセスできるように1
つの入出力要求へまとめることによりディスク装置への
アクセス回数を減らし、ディスク装置のアクセス時間を
短縮するデバイスドライバアクセス方式を提供すること
にある。
【0006】
【課題を解決するための手段】第1の発明のデバイスド
ライバアクセス方式は、(A)上位プログラムからディ
スク装置への入出力要求を受付けたとき現在前記ディス
ク装置へアクセス中の入出力要求が存在しないときは前
記入出力要求を前記ディスク装置へアクセスする実行中
キューへ登録する手段と、前記ディスク装置へアクセス
中の入出力要求が存在するときは前記ディスク装置のヘ
ッドの移動が最小限になりデータの矛盾が発生しないよ
うに前記入出力要求の領域位置および入出力の種別でソ
ーティングし、受付けた前記入出力要求の領域位置が同
一の入出力要求がある場合はデータの矛盾が発生しない
ように1つの入出力要求にまとめて処理待ちキューに登
録する手段とをもつ要求受付処理部と、(B)前記ディ
スク装置から完了通知を受付け、要求元の前記上位プロ
グラムへ完了通知を行うとき、同一領域の入出力要求同
士にまとめられた入出力要求の場合は各入出力要求ごと
に入出力結果を編集し要求を受け付けた順番に前記上位
プログラムへ完了通知を行う手段と、前記完了通知を行
った入出力要求については前記実行中キューから解放
し、前記処理待ちキューに入出力要求が存在するかをチ
ェックし存在する場合は次に実行する入出力要求を前記
処理待ちキューから前記実行中キューに切替え登録する
手段とをもつ要求完了処理部と、を備えて構成されてい
る。
ライバアクセス方式は、(A)上位プログラムからディ
スク装置への入出力要求を受付けたとき現在前記ディス
ク装置へアクセス中の入出力要求が存在しないときは前
記入出力要求を前記ディスク装置へアクセスする実行中
キューへ登録する手段と、前記ディスク装置へアクセス
中の入出力要求が存在するときは前記ディスク装置のヘ
ッドの移動が最小限になりデータの矛盾が発生しないよ
うに前記入出力要求の領域位置および入出力の種別でソ
ーティングし、受付けた前記入出力要求の領域位置が同
一の入出力要求がある場合はデータの矛盾が発生しない
ように1つの入出力要求にまとめて処理待ちキューに登
録する手段とをもつ要求受付処理部と、(B)前記ディ
スク装置から完了通知を受付け、要求元の前記上位プロ
グラムへ完了通知を行うとき、同一領域の入出力要求同
士にまとめられた入出力要求の場合は各入出力要求ごと
に入出力結果を編集し要求を受け付けた順番に前記上位
プログラムへ完了通知を行う手段と、前記完了通知を行
った入出力要求については前記実行中キューから解放
し、前記処理待ちキューに入出力要求が存在するかをチ
ェックし存在する場合は次に実行する入出力要求を前記
処理待ちキューから前記実行中キューに切替え登録する
手段とをもつ要求完了処理部と、を備えて構成されてい
る。
【0007】また、第2の発明のデバイスドライバアク
セス方式は、前記処理待ちキューは前記上位プログラム
から受付けた同一領域位置の入出力要求をまとめた中間
要求情報ブロックの最終を示す最終中間要求情報ブロッ
クと、前記中間要求情報ブロックの先頭を示す先頭中間
要求情報ブロックと、未使用の前記中間要求情報ブロッ
クを示す空き中間要求情報ブロックと、実行待ちの入出
力要求(中間要求情報ブロック)の数を示す処理待ち数
とを備えて構成されている。
セス方式は、前記処理待ちキューは前記上位プログラム
から受付けた同一領域位置の入出力要求をまとめた中間
要求情報ブロックの最終を示す最終中間要求情報ブロッ
クと、前記中間要求情報ブロックの先頭を示す先頭中間
要求情報ブロックと、未使用の前記中間要求情報ブロッ
クを示す空き中間要求情報ブロックと、実行待ちの入出
力要求(中間要求情報ブロック)の数を示す処理待ち数
とを備えて構成されている。
【0008】さらに、第3の発明のデバイスドライバア
クセス方式は、前記実行中キューは前記上位プログラム
から受付けた入出力要求(中間要求情報ブロック)を前
記ディスク装置にアクセスする先頭の中間要求情報ブロ
ックを示す先頭中間要求情報ブロックと、前記中間要求
情報ブロックの最終を示す最終中間要求情報ブロック
と、未完了の前記中間要求情報ブロックの数を示す完了
待ち数とを備えて構成されている。
クセス方式は、前記実行中キューは前記上位プログラム
から受付けた入出力要求(中間要求情報ブロック)を前
記ディスク装置にアクセスする先頭の中間要求情報ブロ
ックを示す先頭中間要求情報ブロックと、前記中間要求
情報ブロックの最終を示す最終中間要求情報ブロック
と、未完了の前記中間要求情報ブロックの数を示す完了
待ち数とを備えて構成されている。
【0009】
【発明の実施の形態】次に、本発明の実施の形態につい
て図面を参照して説明する。
て図面を参照して説明する。
【0010】図1は本発明の一つの実施の形態に係るデ
バイスドライバアクセス方式の構成図である。
バイスドライバアクセス方式の構成図である。
【0011】図1において、デバイスドライバ2は上位
プログラム4からの入出力要求により、要求受付処理部
23が起動されディスク装置3をアクセスする。ディス
ク装置3の入出力動作が完了すると、要求完了処理部2
4がディスク装置3から起動され、入出力要求の完了を
上位プログラム4へ通知し入出力動作が完了する。
プログラム4からの入出力要求により、要求受付処理部
23が起動されディスク装置3をアクセスする。ディス
ク装置3の入出力動作が完了すると、要求完了処理部2
4がディスク装置3から起動され、入出力要求の完了を
上位プログラム4へ通知し入出力動作が完了する。
【0012】要求受付処理部23は、入出力要求を受付
ると、ディスク装置をアクセス中かを調べアクセス中で
なければ実行中キュー22へ受付た入出力要求をキュー
イングして、ディスク装置3をアクセスする。既にディ
スク装置3をアクセス中の場合は、ディスク装置3のヘ
ッドの移動が最小限になりかつデータの矛盾が無いよう
なソーティングおよびディスク装置3の同一領域位置の
入出力要求同士をデータの矛盾が無いように1つの入出
力要求にまとめて、処理待ちキュー21へキューイング
して、ディスク装置3からの完了通知および上位プログ
ラム4からの入出力要求を待ち合わせる。
ると、ディスク装置をアクセス中かを調べアクセス中で
なければ実行中キュー22へ受付た入出力要求をキュー
イングして、ディスク装置3をアクセスする。既にディ
スク装置3をアクセス中の場合は、ディスク装置3のヘ
ッドの移動が最小限になりかつデータの矛盾が無いよう
なソーティングおよびディスク装置3の同一領域位置の
入出力要求同士をデータの矛盾が無いように1つの入出
力要求にまとめて、処理待ちキュー21へキューイング
して、ディスク装置3からの完了通知および上位プログ
ラム4からの入出力要求を待ち合わせる。
【0013】ここでのソーティング条件は、実行中キュ
ー22の中間要求情報ブロック215のディスク物理ア
ドレス3003から今回入出力要求があった要求ブロッ
ク216のディスク物理アドレス3012を引いた値の
絶対値と、実行中キュー22の中間要求情報ブロック2
15のディスク物理アドレス3003から処理待ちキュ
ー21にキューイングされている中間要求情報ブロック
215のディスク物理アドレス3003を引いた値の絶
対値とを比較し小さい順に並ぶようにソーティングす
る。
ー22の中間要求情報ブロック215のディスク物理ア
ドレス3003から今回入出力要求があった要求ブロッ
ク216のディスク物理アドレス3012を引いた値の
絶対値と、実行中キュー22の中間要求情報ブロック2
15のディスク物理アドレス3003から処理待ちキュ
ー21にキューイングされている中間要求情報ブロック
215のディスク物理アドレス3003を引いた値の絶
対値とを比較し小さい順に並ぶようにソーティングす
る。
【0014】このとき、ディスク装置へアクセスする領
域位置が同一の入出力要求同士は下記の入出力要求まと
めの条件に従い、この条件に満たない場合はこの入出力
要求の順番を保持する。
域位置が同一の入出力要求同士は下記の入出力要求まと
めの条件に従い、この条件に満たない場合はこの入出力
要求の順番を保持する。
【0015】入出力要求まとめの条件を以下に示す。 (1)リード要求同士の場合 (2)ライト要求後のリード要求の場合 (3)ライト要求同士の場合 次に上記条件の動作を詳細に説明する。 (1)リード要求同士の場合 例えば、上位プログラム4からの入力要求を示す要求ブ
ロック216のディスク物理アドレス3012が同一で
かつ要求ブロック216の要求種別3011がリードの
要求ブロック2162、2163、2164の順番で受
付た場合、中間要情報ブロック2152のリード用先頭
要求ブロック3009、リード用最終要求ブロック30
08のキューにキューイングされた要求ブロック216
2、2163、2164のように1つの入力命令にまと
めることができる。
ロック216のディスク物理アドレス3012が同一で
かつ要求ブロック216の要求種別3011がリードの
要求ブロック2162、2163、2164の順番で受
付た場合、中間要情報ブロック2152のリード用先頭
要求ブロック3009、リード用最終要求ブロック30
08のキューにキューイングされた要求ブロック216
2、2163、2164のように1つの入力命令にまと
めることができる。
【0016】このまとめられた入力要求のリード用先頭
要求ブロック3009が示す要求ブロック2162の情
報をもとにディスク装置3からデータを1度読み込み、
残りの要求ブロック2163、2164には要求ブロッ
ク2162で読み込んだデータを各要求ブロックのデー
タサイズ3014の示す長さのデータを各データバッフ
ァ領域3015の示すバッファにコピーすることによ
り、同一領域位置へのライトによりデータが書き換わる
まではデータの矛盾は発生しない。 (2)ライト要求後のリード要求の場合 例えば、上位プログラム4からの入出力要求を示す要求
ブロック216のディスク物理アドレス3012が同一
で要求ブロック216の要求種別3011がライトの要
求ブロック2165、リードの要求ブロック2166、
リードの要求ブロック2167の順番で受付た場合、要
求ブロック2165は中間要求情報ブロック215のラ
イト用先頭要求ブロック3006、ライト用最終要求ブ
ロック3005にキューイングされ、要求ブロック21
66、2167は中間要求情報ブロック215のリード
用先頭要求ブロック3009、リード用最終要求ブロッ
ク3008にキューイングし1つの入出力命令にまとめ
ることができる。
要求ブロック3009が示す要求ブロック2162の情
報をもとにディスク装置3からデータを1度読み込み、
残りの要求ブロック2163、2164には要求ブロッ
ク2162で読み込んだデータを各要求ブロックのデー
タサイズ3014の示す長さのデータを各データバッフ
ァ領域3015の示すバッファにコピーすることによ
り、同一領域位置へのライトによりデータが書き換わる
まではデータの矛盾は発生しない。 (2)ライト要求後のリード要求の場合 例えば、上位プログラム4からの入出力要求を示す要求
ブロック216のディスク物理アドレス3012が同一
で要求ブロック216の要求種別3011がライトの要
求ブロック2165、リードの要求ブロック2166、
リードの要求ブロック2167の順番で受付た場合、要
求ブロック2165は中間要求情報ブロック215のラ
イト用先頭要求ブロック3006、ライト用最終要求ブ
ロック3005にキューイングされ、要求ブロック21
66、2167は中間要求情報ブロック215のリード
用先頭要求ブロック3009、リード用最終要求ブロッ
ク3008にキューイングし1つの入出力命令にまとめ
ることができる。
【0017】このまとめられた入出力要求はライト用最
終要求ブロック3005が示す要求ブロック2165の
情報をもとにディスク装置3へデータを1度書き込み、
残りの要求ブロック2166、2167には要求ブロッ
ク2165の書き込んだデータを要求ブロック216
6、2167の各データバッファ領域3015が示すバ
ッファに各データサイズ3014の示す長さのデータを
コピーして通知するのみで良い。すなわち、要求ブロッ
ク2166、2167はデータをディスク装置3からリ
ードしなくても、これ以前にディスク装置3へ書き込ん
だデータ内容を持つデータ領域からデータをコピーする
ことによりデータの矛盾は発生しない。 (3)ライト要求同士の場合 例えば、上位プログラム4からの出力要求を示す要求ブ
ロック216のディスク物理アドレス3012が同一で
要求ブロック216の要求種別3011がライトの要求
ブロック2162、2163、2164の順番で受付け
た場合、中間要求情報ブロック2152のライト用先頭
要求ブロック3006とライト用最終要求ブロック30
05のキューにキューイングされた要求ブロック216
2、2163、2164のように1つの入出力命令にま
とめることができる。この要求ブロックは出力要求する
とき要求ブロック2163は要求ブロック2162のデ
ータを含み、要求ブロック2164は要求ブロック21
63のデータを含んで出力されるので、中間要求情報ブ
ロック2152のライト用最終要求ブロック3005が
示す要求ブロック2164の情報をもとにディスク装置
3へデータを1度書き込み、残りの要求ブロック216
2、2163には要求ブロック2164の処理結果を通
知するのみで良い。すなわち、要求ブロック2162、
2163はデータを上書きすることにより、最終データ
がディスク装置3上に残れば、データの矛盾は発生しな
い。
終要求ブロック3005が示す要求ブロック2165の
情報をもとにディスク装置3へデータを1度書き込み、
残りの要求ブロック2166、2167には要求ブロッ
ク2165の書き込んだデータを要求ブロック216
6、2167の各データバッファ領域3015が示すバ
ッファに各データサイズ3014の示す長さのデータを
コピーして通知するのみで良い。すなわち、要求ブロッ
ク2166、2167はデータをディスク装置3からリ
ードしなくても、これ以前にディスク装置3へ書き込ん
だデータ内容を持つデータ領域からデータをコピーする
ことによりデータの矛盾は発生しない。 (3)ライト要求同士の場合 例えば、上位プログラム4からの出力要求を示す要求ブ
ロック216のディスク物理アドレス3012が同一で
要求ブロック216の要求種別3011がライトの要求
ブロック2162、2163、2164の順番で受付け
た場合、中間要求情報ブロック2152のライト用先頭
要求ブロック3006とライト用最終要求ブロック30
05のキューにキューイングされた要求ブロック216
2、2163、2164のように1つの入出力命令にま
とめることができる。この要求ブロックは出力要求する
とき要求ブロック2163は要求ブロック2162のデ
ータを含み、要求ブロック2164は要求ブロック21
63のデータを含んで出力されるので、中間要求情報ブ
ロック2152のライト用最終要求ブロック3005が
示す要求ブロック2164の情報をもとにディスク装置
3へデータを1度書き込み、残りの要求ブロック216
2、2163には要求ブロック2164の処理結果を通
知するのみで良い。すなわち、要求ブロック2162、
2163はデータを上書きすることにより、最終データ
がディスク装置3上に残れば、データの矛盾は発生しな
い。
【0018】要求完了処理部24は、ディスク装置3か
らの完了通知を受付ると、実行中キュー22にキューイ
ングされている入出力要求の完了を上位プログラム4へ
通知する。このとき、要求受付処理部23で1つの入出
力要求にまとめられた入出力要求である場合は、前記
(1)、(2)、(3)で動作を説明したようにまとめ
られた入出力要求を分解し各入出力要求のデータバッフ
ァに入出力結果を編集し、データ矛盾無くかつ要求受付
順に、上位プログラム4へ完了通知するとともに、実行
中キュー22にキューイングされている当該入出力要求
を解放する。上位プログラム4への完了通知が完了する
と、処理待ちキュー21にキューイングされている入出
力要求があるか調べ、キューイングされている入出力要
求があれば、処理待ちキュー21の先頭から入出力要求
を削除して実行中キュー22へキューイングして、ディ
スク装置3へのアクセスを実施し、ディスク装置3から
の完了を待ち合わせる。
らの完了通知を受付ると、実行中キュー22にキューイ
ングされている入出力要求の完了を上位プログラム4へ
通知する。このとき、要求受付処理部23で1つの入出
力要求にまとめられた入出力要求である場合は、前記
(1)、(2)、(3)で動作を説明したようにまとめ
られた入出力要求を分解し各入出力要求のデータバッフ
ァに入出力結果を編集し、データ矛盾無くかつ要求受付
順に、上位プログラム4へ完了通知するとともに、実行
中キュー22にキューイングされている当該入出力要求
を解放する。上位プログラム4への完了通知が完了する
と、処理待ちキュー21にキューイングされている入出
力要求があるか調べ、キューイングされている入出力要
求があれば、処理待ちキュー21の先頭から入出力要求
を削除して実行中キュー22へキューイングして、ディ
スク装置3へのアクセスを実施し、ディスク装置3から
の完了を待ち合わせる。
【0019】図2は処理待ちキュー21の構成例を示す
図である。
図である。
【0020】同図において処理待ち数211は処理待ち
キュー21にキューイングされている中間要求情報ブロ
ック215の数、最終中間要求情報ブロック212は処
理待ちキュー21にキューイングされている中間要求情
報ブロックの最後の位置、先頭中間要求情報ブロック2
13は処理待ちキュー21にキューイングされている先
頭の位置、空き中間要求情報ブロック214は中間要求
情報ブロックを予めn個主メモリより切り出しプール管
理した位置を示すエリアである。
キュー21にキューイングされている中間要求情報ブロ
ック215の数、最終中間要求情報ブロック212は処
理待ちキュー21にキューイングされている中間要求情
報ブロックの最後の位置、先頭中間要求情報ブロック2
13は処理待ちキュー21にキューイングされている先
頭の位置、空き中間要求情報ブロック214は中間要求
情報ブロックを予めn個主メモリより切り出しプール管
理した位置を示すエリアである。
【0021】この処理待ちキュー21はディスク装置3
へアクセス中に上位プログラム4から受付た入出力要求
を管理し、次のアクセスする要求をスケジュールするた
めに使用される。
へアクセス中に上位プログラム4から受付た入出力要求
を管理し、次のアクセスする要求をスケジュールするた
めに使用される。
【0022】図3は中間要求情報ブロック215の構成
例を示す図である。
例を示す図である。
【0023】同図において次の中間要求情報ブロック3
001は中間要求情報ブロック215をキューイングし
た場合の次の中間要求情報ブロック215の位置を示
す。
001は中間要求情報ブロック215をキューイングし
た場合の次の中間要求情報ブロック215の位置を示
す。
【0024】要求種別3002およびディスク物理アド
レス3003は上位プログラム4からのリード要求また
はライト要求の要求種別とディスク装置3へアクセスす
る領域位置を示す。
レス3003は上位プログラム4からのリード要求また
はライト要求の要求種別とディスク装置3へアクセスす
る領域位置を示す。
【0025】ライト要求数3004はディスク装置3の
同一領域位置に対するライト要求をまとめた個数を示
す。
同一領域位置に対するライト要求をまとめた個数を示
す。
【0026】ライト用最終要求ブロック3005はディ
スク装置3の同一領域位置に対するライト要求のライト
用最終要求ブロック216の位置を示す。
スク装置3の同一領域位置に対するライト要求のライト
用最終要求ブロック216の位置を示す。
【0027】ライト用先頭要求ブロック3006はライ
ト要求のライト用先頭要求ブロック216の位置を示
す。
ト要求のライト用先頭要求ブロック216の位置を示
す。
【0028】リード要求数3007はディスク装置3の
同一領域位置に対するリード要求をまとめた個数を示
す。
同一領域位置に対するリード要求をまとめた個数を示
す。
【0029】リード用最終要求ブロック3008はディ
スク装置3の同一領域位置に対するリード要求のリード
用最終要求ブロック216の位置を示す。
スク装置3の同一領域位置に対するリード要求のリード
用最終要求ブロック216の位置を示す。
【0030】リード用先頭要求ブロック3009はリー
ド要求のリード用先頭要求ブロック216の位置を示
す。
ド要求のリード用先頭要求ブロック216の位置を示
す。
【0031】この中間要求情報ブロック215は、処理
待ちキュー21へキューイングする場合、処理待ちキュ
ー21の空き中間要求情報ブロック214が示すプール
バッファから1個獲得し処理待ちキュー21にキューイ
ングされ、この中間要求情報ブロック215単位にディ
スク装置3へのアクセスが実施される。プールへの解放
はディスク装置3の入出力要求の完了時に、中間要求情
報ブロック215の情報が示す要求ブロック216の完
了通知を上位プログラム4へ通知すると同時に解放す
る。
待ちキュー21へキューイングする場合、処理待ちキュ
ー21の空き中間要求情報ブロック214が示すプール
バッファから1個獲得し処理待ちキュー21にキューイ
ングされ、この中間要求情報ブロック215単位にディ
スク装置3へのアクセスが実施される。プールへの解放
はディスク装置3の入出力要求の完了時に、中間要求情
報ブロック215の情報が示す要求ブロック216の完
了通知を上位プログラム4へ通知すると同時に解放す
る。
【0032】また、ディスク装置3の同一領域位置の入
出力要求をまとめる場合は、ライト用最終要求ブロック
3005またはリード用最終要求ブロック3008に追
加チェインして、受付た順番を保持する。
出力要求をまとめる場合は、ライト用最終要求ブロック
3005またはリード用最終要求ブロック3008に追
加チェインして、受付た順番を保持する。
【0033】図4は要求ブロック216の構成例を示す
図である。
図である。
【0034】同図において次の要求ブロック3010は
ディスク装置3の同一領域位置の入出力要求同士を1つ
にまとめた場合、チェインした次の要求ブロック216
の位置を示す。
ディスク装置3の同一領域位置の入出力要求同士を1つ
にまとめた場合、チェインした次の要求ブロック216
の位置を示す。
【0035】要求種別3011は上位プログラム4が要
求するライト要求またはリード要求の要求種別を示す。
求するライト要求またはリード要求の要求種別を示す。
【0036】ディスク物理アドレス3012は上位プロ
グラム4が要求するディスク装置3へアクセスする領域
位置を示す。
グラム4が要求するディスク装置3へアクセスする領域
位置を示す。
【0037】バッファサイズ3013はデータバッファ
領域3015が示すバッファ領域のサイズを示す。
領域3015が示すバッファ領域のサイズを示す。
【0038】データサイズ3014はデータバッファ領
域3015が示すデータをリードまたはライトするサイ
ズを示す。
域3015が示すデータをリードまたはライトするサイ
ズを示す。
【0039】データバッファ領域3015はライト時ま
たはリード時のデータ格納バッファの位置を示す。
たはリード時のデータ格納バッファの位置を示す。
【0040】この要求ブロック216は上位プログラム
4が入出力要求するときの情報をデバイスドライバ2を
起動する場合の要求ブロック216である。この単位に
要求および完了通知が行われる。
4が入出力要求するときの情報をデバイスドライバ2を
起動する場合の要求ブロック216である。この単位に
要求および完了通知が行われる。
【0041】図5は実行中キュー22の構成例を示す図
である。
である。
【0042】同図において完了待ち数221は実行中キ
ュー22にキューイングされている中間要求情報ブロッ
ク215の数を示す。
ュー22にキューイングされている中間要求情報ブロッ
ク215の数を示す。
【0043】最終中間要求情報ブロック222は実行中
キュー22にキューイングされている最後の中間要求情
報ブロック215の位置を示す。
キュー22にキューイングされている最後の中間要求情
報ブロック215の位置を示す。
【0044】先頭中間要求情報ブロック223は実行中
キュー22にキューイングされている先頭の中間要求情
報ブロック215の位置を示す。
キュー22にキューイングされている先頭の中間要求情
報ブロック215の位置を示す。
【0045】この実行中キュー22は現在ディスク装置
3をアクセスしている中間要求情報ブロック215を管
理しディスク装置3からの完了通知を受けて上位プログ
ラム4への完了通知を行うために使用される。
3をアクセスしている中間要求情報ブロック215を管
理しディスク装置3からの完了通知を受けて上位プログ
ラム4への完了通知を行うために使用される。
【0046】
【発明の効果】以上説明したように、本発明のデバイス
ドライバアクセス方式は、入出力要求受付時にディスク
装置のヘッドの移動が最小限になり、データの矛盾が無
いようなソーティングおよびディスク装置の同一領域位
置の入出力要求同士をデータの矛盾無く1つの入出力要
求にまとめる要求受付処理部と、入出力要求受付時に要
求受付処理部で入出力要求をソーティングおよびディス
ク装置の同一領域位置への入出力要求同士を1つにまと
めた要求を管理する中間要求情報ブロックと、現在ディ
スクアクセス中の入出力要求を保存する実行中キュー
と、ディスクの入出力完了時にディスク装置の同一領域
の入出力要求同士のまとめられた入出力要求は分解し
て、要求を受け付けた順番に上位プログラムへの完了通
知を行う要求完了処理部を備えることで、ディスク装置
のヘッドシーク時間を最小限に抑え、ディスク装置への
アクセス回数を減らし、スループットを向上させるとい
う効果を有している。
ドライバアクセス方式は、入出力要求受付時にディスク
装置のヘッドの移動が最小限になり、データの矛盾が無
いようなソーティングおよびディスク装置の同一領域位
置の入出力要求同士をデータの矛盾無く1つの入出力要
求にまとめる要求受付処理部と、入出力要求受付時に要
求受付処理部で入出力要求をソーティングおよびディス
ク装置の同一領域位置への入出力要求同士を1つにまと
めた要求を管理する中間要求情報ブロックと、現在ディ
スクアクセス中の入出力要求を保存する実行中キュー
と、ディスクの入出力完了時にディスク装置の同一領域
の入出力要求同士のまとめられた入出力要求は分解し
て、要求を受け付けた順番に上位プログラムへの完了通
知を行う要求完了処理部を備えることで、ディスク装置
のヘッドシーク時間を最小限に抑え、ディスク装置への
アクセス回数を減らし、スループットを向上させるとい
う効果を有している。
【図1】本発明のデバイスドライバアクセス方式の実施
の形態を示す構成図である。
の形態を示す構成図である。
【図2】本実施の形態における処理待ちキューにキュー
イングした一例を示す処理待ちキューの構成図である。
イングした一例を示す処理待ちキューの構成図である。
【図3】図2に示した中間要求情報ブロックの構成例を
示した図。
示した図。
【図4】図2に示した要求ブロックの構成例を示した
図。
図。
【図5】図1に示した実行中キューの構成図。
【図6】従来の実施の形態の構成図である。
1 中央処理装置 2 デバイスドライバ 3 ディスク装置 4 上位プログラム 21 処理待ちキュー 22 実行中キュー 23 要求受付処理部 24 要求完了処理部 211 処理待ち数 212 最終中間要求情報ブロック 213 先頭中間要求情報ブロック 214 空き中間要求情報ブロック 215 中間要求情報ブロック 221 完了待ち数 222 最終中間要求情報ブロック 223 先頭中間要求情報ブロック 2151〜2153 中間要求情報ブロック 216 要求ブロック 2161〜2167 要求ブロック 3001 次の中間要求情報ブロック 3002 要求種別 3003 ディスク物理アドレス 3004 ライト要求数 3005 ライト用最終要求ブロック 3006 ライト用先頭要求ブロック 3007 リード要求数 3008 リード用最終要求ブロック 3009 リード用先頭要求ブロック 3010 次の要求ブロック 3011 要求種別 3012 ディスク物理アドレス 3013 バッファサイズ 3014 データサイズ 3015 データバッファ領域 4001 中央処理装置 4002 ディスク入出力装置 4003 ディスク装置 4004 送信制御部 4005 受信制御部 4006 入出力要求ソーティング部 4007 入出力要求処理部 4008 入出力要求格納エリア 4009 入出力要求管理テーブル 4010 処理順番格納テーブル 4011 ヘッド位置格納エリア 4012 ソーティング条件テーブル
Claims (3)
- 【請求項1】 中央処理装置とディスク装置間のデータ
の入出力を処理するデバイスドライバアクセス方式にお
いて、(A)上位プログラムからディスク装置への入出
力要求を受付けたとき、現在前記ディスク装置へアクセ
ス中の入出力要求が存在しないときは前記入出力要求を
前記ディスク装置へアクセスする実行中キューへ登録す
る手段と、前記ディスク装置へアクセス中の入出力要求
が存在するときは前記ディスク装置のヘッドの移動が最
小限になりデータの矛盾が発生しないように前記入出力
要求の領域位置および入出力の種別でソーティングし、
受付けた前記入出力要求の領域位置が同一の入出力要求
がある場合はデータの矛盾が発生しないように1つの入
出力要求にまとめて処理待ちキューに登録する手段とを
もつ要求受付処理部と、(B)前記ディスク装置から完
了通知を受付け、要求元の前記上位プログラムへ完了通
知を行うとき、同一領域の入出力要求同士にまとめられ
た入出力要求の場合は各入出力要求ごとに入出力結果を
編集し要求を受け付けた順番に前記上位プログラムへ完
了通知を行う手段と、前記完了通知を行った入出力要求
については前記実行中キューから解放し、前記処理待ち
キューに入出力要求が存在するかをチェックし存在する
場合は次に実行する入出力要求を前記処理待ちキューか
ら前記実行中キューに切替え登録する手段とをもつ要求
完了処理部と、を備えることを特徴とするデバイスドラ
イバアクセス方式。 - 【請求項2】 前記処理待ちキューは前記上位プログラ
ムから受付けた同一領域位置の入出力要求をまとめた中
間要求情報ブロックの最終を示す最終中間要求情報ブロ
ックと、前記中間要求情報ブロックの先頭を示す先頭中
間要求情報ブロックと、未使用の前記中間要求情報ブロ
ックを示す空き中間要求情報ブロックと、実行待ちの入
出力要求(中間要求情報ブロック)の数を示す処理待ち
数とを含むことを特徴とする請求項1記載のデバイスド
ライバアクセス方式。 - 【請求項3】 前記実行中キューは前記上位プログラム
から受付けた入出力要求(中間要求情報ブロック)を前
記ディスク装置にアクセスする先頭の中間要求情報ブロ
ックを示す先頭中間要求情報ブロックと、前記中間要求
情報ブロックの最終を示す最終中間要求情報ブロック
と、未完了の前記中間要求情報ブロックの数を示す完了
待ち数とを含むことを特徴とする請求項1記載のデバイ
スドライバアクセス方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24934895A JPH0991098A (ja) | 1995-09-27 | 1995-09-27 | デバイスドライバアクセス方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24934895A JPH0991098A (ja) | 1995-09-27 | 1995-09-27 | デバイスドライバアクセス方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0991098A true JPH0991098A (ja) | 1997-04-04 |
Family
ID=17191695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP24934895A Pending JPH0991098A (ja) | 1995-09-27 | 1995-09-27 | デバイスドライバアクセス方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0991098A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000048068A1 (en) * | 1999-02-15 | 2000-08-17 | Matsushita Electric Industrial Co., Ltd. | Magnetic disk device and disk access method therefor |
WO2006071937A2 (en) * | 2004-12-29 | 2006-07-06 | Zoran Corporation | System and method for efficient use of memory device bandwidth |
US7484037B2 (en) | 2000-08-22 | 2009-01-27 | Marvell International Ltd. | Disk controller configured to perform out of order execution of write operations |
CN110187835A (zh) * | 2019-05-24 | 2019-08-30 | 北京百度网讯科技有限公司 | 用于管理访问请求的方法、装置、设备和存储介质 |
WO2023108989A1 (zh) * | 2021-12-16 | 2023-06-22 | 北京小米移动软件有限公司 | 数据访问方法、装置及非临时性计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03183067A (ja) * | 1989-12-11 | 1991-08-09 | Fujitsu Ltd | 磁気ディスク装置 |
JPH04191921A (ja) * | 1990-11-27 | 1992-07-10 | Toshiba Corp | データファイル装置 |
JPH04315217A (ja) * | 1991-04-15 | 1992-11-06 | Hitachi Ltd | Cd−romライブラリ制御方式 |
JPH05108274A (ja) * | 1991-10-11 | 1993-04-30 | Hitachi Ltd | 並列デイスク制御方法および並列デイスク制御装置 |
JPH0793244A (ja) * | 1993-09-21 | 1995-04-07 | Fuji Xerox Co Ltd | 外部記憶制御装置 |
-
1995
- 1995-09-27 JP JP24934895A patent/JPH0991098A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03183067A (ja) * | 1989-12-11 | 1991-08-09 | Fujitsu Ltd | 磁気ディスク装置 |
JPH04191921A (ja) * | 1990-11-27 | 1992-07-10 | Toshiba Corp | データファイル装置 |
JPH04315217A (ja) * | 1991-04-15 | 1992-11-06 | Hitachi Ltd | Cd−romライブラリ制御方式 |
JPH05108274A (ja) * | 1991-10-11 | 1993-04-30 | Hitachi Ltd | 並列デイスク制御方法および並列デイスク制御装置 |
JPH0793244A (ja) * | 1993-09-21 | 1995-04-07 | Fuji Xerox Co Ltd | 外部記憶制御装置 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1310127C (zh) * | 1999-02-15 | 2007-04-11 | 松下电器产业株式会社 | 磁盘设备及磁盘存取方法 |
US6745300B1 (en) | 1999-02-15 | 2004-06-01 | Matsushita Electric Industrial Co., Ltd. | Magnetic disk device and disk access method therefor |
WO2000048068A1 (en) * | 1999-02-15 | 2000-08-17 | Matsushita Electric Industrial Co., Ltd. | Magnetic disk device and disk access method therefor |
US7484037B2 (en) | 2000-08-22 | 2009-01-27 | Marvell International Ltd. | Disk controller configured to perform out of order execution of write operations |
US7814271B2 (en) | 2000-08-22 | 2010-10-12 | Marvell World Trade Ltd. | Disk controller configured to perform out of order execution of write operations |
US8145835B2 (en) | 2000-08-22 | 2012-03-27 | Marvell World Trade, Ltd. | Disk controller configured to perform out of order execution of write operations |
US8769219B2 (en) | 2000-08-22 | 2014-07-01 | Marvell World Trade Ltd. | Disk controller configured to perform out of order execution of write operations |
WO2006071937A3 (en) * | 2004-12-29 | 2007-04-19 | Zoran Corp | System and method for efficient use of memory device bandwidth |
US7395488B2 (en) | 2004-12-29 | 2008-07-01 | Zoran Corporation | System and method for efficient use of memory device bandwidth |
WO2006071937A2 (en) * | 2004-12-29 | 2006-07-06 | Zoran Corporation | System and method for efficient use of memory device bandwidth |
CN110187835A (zh) * | 2019-05-24 | 2019-08-30 | 北京百度网讯科技有限公司 | 用于管理访问请求的方法、装置、设备和存储介质 |
JP2020194524A (ja) * | 2019-05-24 | 2020-12-03 | ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッド | アクセスリクエストを管理するための方法、装置、デバイス、および記憶媒体 |
US11474712B2 (en) | 2019-05-24 | 2022-10-18 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Method, apparatus, device and storage medium for managing access request |
WO2023108989A1 (zh) * | 2021-12-16 | 2023-06-22 | 北京小米移动软件有限公司 | 数据访问方法、装置及非临时性计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH04229355A (ja) | データアクセス方法及びデータ処理システム | |
JP2000330859A (ja) | 読取/書込コヒーレンシを有するバス利用度最適化 | |
EP0240616B1 (en) | Method to test and set data in a record on disk in one atomic input/output operation | |
JP3609841B2 (ja) | ファイル管理装置 | |
JPH0991098A (ja) | デバイスドライバアクセス方式 | |
JPH0798663A (ja) | 非同期i/o制御方式 | |
JPH0581337A (ja) | データ処理装置 | |
JPH04355818A (ja) | データ入出力制御装置 | |
US7216194B2 (en) | Methods and systems for improving delayed read handling | |
JP2526728B2 (ja) | ディスクキャッシュ自動利用方式 | |
JPH08202595A (ja) | ファイルシステム | |
JP3182279B2 (ja) | データ転送方法 | |
JP4131579B2 (ja) | データ管理システムおよびデータ管理方法 | |
JP2615046B2 (ja) | レコード追加処理方法 | |
JP3456820B2 (ja) | 情報処理装置 | |
JP2001184222A (ja) | 分散処理装置、分散処理方法および記録媒体 | |
JPH0876940A (ja) | ディスクアレイ制御方法 | |
JPH05189345A (ja) | 動的入出力データバッファ操作方式 | |
JPH06290000A (ja) | ディスクコントローラ | |
JPH0652019A (ja) | ファイル管理装置 | |
JPH0594346A (ja) | フアイル入出力管理機構 | |
JPH06348572A (ja) | マルチ機構ディスクシステム | |
JPH04299432A (ja) | データベース管理システム | |
JPH0728774A (ja) | コンピュータシステム | |
JP2004288213A (ja) | データ処理システム及びデータ処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 19980526 |