JPH06259198A - ディスク装置システム - Google Patents
ディスク装置システムInfo
- Publication number
- JPH06259198A JPH06259198A JP4805193A JP4805193A JPH06259198A JP H06259198 A JPH06259198 A JP H06259198A JP 4805193 A JP4805193 A JP 4805193A JP 4805193 A JP4805193 A JP 4805193A JP H06259198 A JPH06259198 A JP H06259198A
- Authority
- JP
- Japan
- Prior art keywords
- command
- commands
- queue
- disk
- disk device
- 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.)
- Granted
Links
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
を高速化することにある。 【構成】 上位計算機からのコマンドを受けるコマンド
・スケジュ−ラ32は、到着コマンドが待機するコマン
ド待機キュー33と、コマンドの並び変えに用いるコマ
ンド並び変えキュー34と、キューを制御するキュー制
御部35と、キューのサイズを制限するキューサイズ制
限手段36と、実行順最適化制御部37とを有する。実
行順最適化制御部37は、連続領域をアクセスするコマ
ンドを並び変える、連続領域アクセスコマンド並び変え
手段38と、多重実行可能なコマンドを並び変える多重
実行可能性並び変え手段39とを有し、上位計算機から
送出されたコマンドをデータのアドレスにより連続領域
をアクセスするように並び変えることと、多重実行が可
能なように並び変える。
Description
ディスク及び半導体ディスク等のディスク装置を使用す
るディスク装置システムにおける、大容量データの高速
書き込み、読み出し処理に関する。複数ディスク装置で
構成されるディスクアレイのコマンド処理にも適する。
クション性能の向上が求められる中、大量のデ−タを高
速に処理する一方式として特開平2−236714号公
報に開示されるアレイ型ディスク駆動機構システム及び
方法がある。この方式を図10を用いて説明する。
teコマンドを発行する上位計算機、11はデ−タの分
配・集合制御を行うアレイ・コントロ−ラである。11
の中で、12は上位計算機とのコマンド及びデ−タの授
受を行う上位計算機I/F部、13はタスク実行管理を
行うタスク制御部、14はコマンド多重処理の最適化を
行うコマンド処理管理部、及び上位計算機12からのコ
マンドをディスクアレイのコマンドに再編成するアドレ
ス変換や各ディスク装置へのコマンド生成、発行、終了
処理を行うコマンド処理部、15は割込み処理部、16
〜20はディスクとのコマンド及びデ−タ授受を行うデ
ィスク装置I/F部、21〜25はデ−タの書き込み、
読みだしを行うディスク装置である。なお、ここで扱う
コマンドはSCSIコマンドであり、それ自体がコマン
ドの種類、論理ブロックアドレス(以下LBAと記
す)、転送長の3つの要素を持っている。
11によって複数のドライブ装置21〜25を多重動作
(並行に動作させること)させる。上位計算機10から
転送されるコマンド・デ−タは、アレイ・コントロ−ラ
11のコマンド処理管理部15にて、各ディスク装置に
所定の単位で振り分けるためにアドレス変換される。各
コマンドをファーストイン・ファーストアウト方式(以
下FIFO方式と記す)により到着順にタスク制御管理
部13や割込み処理部15の管理の下で、ディスク装置
I/F部16〜20を介して、各ディスク装置21〜2
5に書き込む。コマンド・デ−タの読み出しの場合に
は、各ディスク装置21〜25から読み出された分割さ
れたコマンド・デ−タをアレイ・コントロ−ラ11で1
つのデ−タに統合し、上位計算機10に送出する。
いては以下の課題がある。
するFIFO方式では、上位計算機が複数ディスクに対
してRead/Writeコマンドを実行する場合、連
続データをアクセスする複数のコマンド列中に、該連続
データに無関係なデータをアクセスするコマンドが混在
するような場合、その混入毎にヘッドシークが発生し、
著しく連続データ転送特性を低下させるという課題があ
る。
ィスク装置1の2台のディスクを使用するような場合、
ディスク装置0がアクセス待ちをしていると、ディスク
装置1は未使用にもかかわらず、そのコマンドに確保さ
れたままになっているために、後から到着するコマンド
がディスク装置1を利用することができず、多重動作が
制限されるという課題がある。
更して、処理の高速化を実現したディスク装置システム
を提供することである。
め、ディスク装置と上記ディスク装置を制御するディス
ク制御装置とを有し、外部からの、データの読み出しま
たは書き込みのコマンドを受けて、上記データの読み出
しまたは書き込みを行うディスク装置システムにおい
て、上記ディスク制御装置は、上記コマンドを受信する
受信手段と、上記コマンドを蓄積する第一コマンドキュ
ーと、上記蓄積されたコマンドの実行時間の総和を短縮
するように上記コマンドの実行順序を変更する実行順制
御手段とを有することとしたものである。
積されたコマンドの実行時間の総和を短縮するように上
記コマンドの実行順序を変更することにより、高速化が
図れる。
キューのコマンド群について、連続領域アクセス可能性
を考慮して並び変え、並び変えが終わったコマンドから
実行を開始することで、連続領域アクセスデータをまと
めて処理することができる。
データをまとめて1つのコマンド群として処理すること
で、ディスクヘッドのシーク等を減らすことができ、高
速化を実現することである。
ついて多重実行可能性を考慮して、並び変え、並び変え
が終わったコマンドから実行を開始することで、コマン
ドを多重実行することができる。
重実行可能なように、コマンドを並び変えられるので、
ディスクの稼働率を上げ、1コマンドあたりの平均処理
時間を短縮することができる。
て説明する。
ィスクアレイ)は、Read/Writeコマンドを発
行する上位計算機10から、コマンドを受けてデ−タの
分配・集合制御を行うアレイ・コントロ−ラ11(ディ
スク制御装置)と、デ−タの書き込み、読みだしを行う
ディスク装置21〜25とを有する。アレイ・コントロ
−ラ11は、上位計算機とのコマンド及びデ−タの授受
を行う上位計算機I/F部12と、タスク実行管理を行
うタスク制御部13と、コマンド多重処理の最適化を行
うコマンド処理並びに管理、及び上位計算機10からの
コマンドをディスクアレイのコマンドに再編成するアド
レス変換や各ディスク装置へのコマンド生成、発行、終
了処理を行うコマンド処理及び管理部141と、割込み
処理部15と、ディスクとのコマンド及びデ−タ授受を
行うディスク装置I/F部16〜20とを有する。な
お、ここで扱うコマンドはSCSIコマンドであり、そ
れ自体がコマンドの種類、論理ブロックアドレス(以下
LBAと記す)、転送長の3つの要素を持っている。
11によって複数のドライブ装置21〜25を多重動作
(並行に動作させること)させる。上位計算機10から
転送されるコマンド・デ−タは、アレイ・コントロ−ラ
11のコマンド処理管理部15にて、各ディスク装置に
所定の単位で振り分けるためにアドレス変換される。各
コマンドをファーストイン・ファーストアウト方式(以
下FIFO方式と記す)により到着順にタスク制御管理
部13や割込み処理部15の管理の下で、ディスク装置
I/F部16〜20を介して、各ディスク装置21〜2
5に書き込む。コマンド・デ−タの読み出しの場合に
は、各ディスク装置21〜25から読み出された分割さ
れたコマンド・デ−タをアレイ・コントロ−ラ11で1
つのデ−タに統合し、上位計算機10に送出する。
詳細を表わした図である。
算機からのRead/Writeコマンドを受信する上
位計算機コマンド受信部30(受信手段)と、Read
/Writeコマンドの持つLBAと転送長から、上位
計算機が送出したコマンドをアレイディスクのコマンド
に再編成するアドレス変換部31と、Read/Wri
teコマンドの実行順を並び変えるコマンド・スケジュ
−ラ32とを有する。
ンドが待機するコマンド待機キュー33(第2コマンド
キュー)と、コマンドの並び変えに用いるコマンド並び
変えキュー34(第1コマンドキュー)と、コマンド待
機キュー33、コマンド並び変えキュー34を制御する
キュー制御部35(キュー制御手段)と、キューのサイ
ズを制限するキューサイズ制限手段36と、実行順最適
化制御部37(実行順制御手段)とを有する。
続領域をアクセスするコマンドを並び変える、連続領域
アクセスコマンド並び変え手段38と、多重実行可能な
コマンドを並び変える多重実行可能性並び変え手段39
とを有する。
体動作を説明する。
はRead/Writeコマンドを受信し(図2フロー
チャート200)、アドレス変換部31はアレイディス
クにデータを分配するアドレス変換をコマンドに施す
(同202)。コマンド・スケジューラ32はコマンド
を取り入れ、それを到着順にコマンド待機キュー33に
セットする(同204)。コマンドはコマンド待機キュ
ー33を通過して、コマンド並び変えキュー34に入
る。ある条件を設けることによって、キューサイズ制限
手段36はコマンド待機キューのコマンド通過を停止す
る。したがって、コマンド並び変えキュー内のコマンド
数は限定される(同206)。尚この条件には、例えば
タイマーによってある一定時間経過後にキューを制限す
るタイミングを送出する方法及び、コマンド並び変えキ
ューに到着するコマンド数をあらかじめ限定しておく方
法がある。また、これから到着するコマンドは、コマン
ド並び変えキュー34で前に到着したコマンドの並び変
えが終了するまで、コマンド待機キュー33で待機す
る。コマンド並び変えキュー内のコマンドについては到
着順を前提に(同208)、初めに連続領域アクセス可
能性(同210)、次に多重実行可能性(同212)の
有無をチェックし、両方存在する場合は連続領域アクセ
ス可能性を優先的に考慮してコマンドを並び変え、連続
領域をアクセスしないコマンドについてのみ多重実行可
能性を考慮してコマンドを並び変える。またどちらか一
方が存在する場合は、独立してコマンドの並び変えを実
施する(同214)。また、並び変えが終わったコマン
ドから実行を開始する(同216)。コマンド並び変え
キューが空になったら(同218)、コマンド待機キュ
ー33のコマンド通過停止を解除し、待機していた新し
いコマンドをコマンド並び変えキュー34に入れ、以下
これまでの動作が繰り返される。
慮した場合を説明する。
に当たる。図3において、33は到着コマンドが待機す
るコマンド待機キュー、34はコマンドの並び変えに用
いるコマンド並び変えキュー、40は33、34のキュ
ーを制御するキュー制御部、41はキューのサイズを制
限するタイミングを決定するタイマー、42はアドレス
のビット・パターン作成部である。43は先頭コマンド
及び並び変えが終了したコマンドのビット・パターンを
読み取る第一ビット・パターン読み取り部、44はまだ
並び変えていないコマンドのビット・パターンを読み取
る第二ビット・パターン読み取り部、45は43、44
で読み取ったビット・パターンを比較する比較器であ
る。
の動作を説明する。
レス変換されたRead/Writeコマンドを取り入
れ(図4のフローチャート300、302)、それを到
着順にコマンド待機キュー33に入れる。この時、ビッ
ト・パターン作成部42はコマンド固有のLBAを元に
当該コマンドが使用するディスク装置を示すビット・パ
ターンを作成する。ここでビット・パターンは使用する
ディスク装置を1、使用しないディスクを0で表わし、
図10のディスク装置の左からそれぞれ対応させたビッ
ト列である。例えば、0から2番のディスク装置を使用
し、3、4番のディスク装置を使用しない場合、ビット
・パターンは11100となる。また、ビット・パター
ン作成部42は作成したビット・パターンをコマンドに
対応づけて保持する(同304)。そこで、第一ビット
・パターン読み取り部43はキューの先頭コマンドのビ
ット・パターンを読み取り、反転する(同308)。反
転したビット・パターンに1がある場合、つまり空いて
いるディスク装置がある場合は、第二ビット・パターン
読み取り部44が、並び変える残りのコマンドのビット
・パターンを読み取り、比較器45がそれを第一ビット
・パターン読み取り部のビット・パターンとビット毎に
比較し(同310)、一致する1の最も多いコマンドを
選択する。その後キュー制御部40はそのコマンドを先
頭コマンドの後に並び変える(同312)。また、並び
変えたコマンドから実行が開始され(同314)、コマ
ンド並び変えキューが空になったら(同316)、コマ
ンド待機キュー33のコマンド通過停止を解除し、待機
していた新しいコマンドをコマンド並び変えキュー34
に入れ、以下これまでの動作が繰り返される。ビット・
パターンの使用はディスクアクセスの多重度を上げるた
めに、使用するディスク装置ができるだけ重ならないよ
うにコマンドを選択する並び変え方式において、簡便で
有効な手段である。
Read/Writeコマンドがコマンド並び変えキュ
ー34に到着している場合のコマンド並び変え動作を示
す。ここでC#はコマンドの到着番号を、(####
#)は各コマンドのビット・パターンを表わしている。
まず、第一ビット・パターン読み取り部43はC1のビ
ット・パターン11100(ディスク0、1、2番を使
用する)を読み取り、この情報を反転して00011を
得る。次に第二ビット・パターン読み取り部44がC2
からC10までのビット・パターンを読み取り、比較器
45がこの反転ビット・パターンと一致もしくは一致す
る1の多い(0は全て対応していなければならない)コ
マンドを検索する。この例では対応するコマンドがない
ので、C2が2番目のコマンドになる。こんどは第一ビ
ット・パターン読み取り部43がC2のビット・パター
ン00101を読み取り、このビット・パターンを反転
して11010を得る。ここで、C1の時と同様に、第
二ビット・パターン読み取り部44がC3からC10ま
でのビット・パターンを読み取り、比較器45が対応す
るコマンドを検索する。すると、11000のC9が見
つかり、実行順を入れかえ、C2の次に配置する。この
C2とC9は多重実行である。さらに多重実行できる可
能性を判断するため、キュ−制御部40がC2とC9の
EOR(両方0のビットをマスクする)00010を作
り、第一ビット・パターン読み取り部43がこれを読み
取る。また、第二ビット・パターン読み取り部42がC
3からC8、C10のビット・パタ−ンを読み取り、比
較器43が対応するコマンドを検索するが、ないのでキ
ュー制御部35がC3を4番目のコマンドに並び変え
る。以下この操作が繰り返される。並び変えた結果を図
9(a)に示す。
力多重動作で行うため、たとえば上記例の場合、コマン
ド処理時間を全てのコマンドで等しく1と仮定すると、
実行順を変える前と変えた後では、10コマンドの処理
時間合計は本発明未使用時の10が、本発明使用により
6に削減され、40%の改善効果がある。したがって、
この多重実行最適化によって、コマンドのI/Oスルー
プットを上げることができる。
えたコマンドが全て実行されてから新しいコマンドの並
び変えが行われるため、キューを1つしか用いなかった
従来の場合に見られたコマンドの沈み込み(例えば、優
先度が低いコマンドは、いつまでもキューの中に実行さ
れないで残る現象)を解消することができる。
のみを考慮した場合を説明する。
のコマンド・スケジューラ32に相当する。図5におい
て、33は到着コマンドが待機するコマンド待機キュ
ー、34はコマンドの並び変えに用いるコマンド並び変
えキュー、50は33、34のキューを制御するキュー
制御部、41はキューのサイズを制限するタイミングを
決定するタイマー、51は連続領域判定アドレス作成手
段である。537は、実行順最適化制御部である。51
の中で52は先頭コマンド及びまだ並び変えが終了して
いないコマンドの内、コマンド・ナンバーの若いものの
アドレスを読み取る第一アドレス読み取り部、53は5
2に入るコマンド転送長を読み取る転送長読み取り部、
54は第一アドレス読み取り部52で読み取ったコマン
ドの先頭アドレスに転送長を加えて、連続する領域のア
ドレスを算出する加算機、56はまだ並び変えていない
コマンドのアドレスを読み取る第二アドレス読み取り
部、57は51と56のアドレスを比較する比較器であ
る。
の動作を説明する。
レス変換されたRead/Writeコマンドを取り入
れ(図6のフローチャート400、402)、それを到
着順にコマンド待機キュー33に入れる。コマンドは最
初コマンド待機キューを通過してコマンド並び変えキュ
ー34に入り、タイマー41が一定時間経過後、並び変
えるキューサイズを制限する(同404)。この後到着
する新しいコマンドはコマンド待機キューで待機する。
次に第一アドレス読み取り部52はコマンド並び変えキ
ュー先頭のコマンドが持つアドレスを読み取り、転送長
読み取り部53はその転送長を読み取り(同406)、
読み取ったアドレスに転送長を加算器54で加えること
で、連続する領域のアドレスを算出する(同408)そ
して、第二アドレス読み取り部55は並び変える残りの
コマンドが持つアドレスを読み取り、比較器56がそれ
を連続領域判定アドレス作成手段51と比較し(同41
0)、一致するコマンドを先頭コマンドの後に並び変え
る(同412)。また、実行順が決定したコマンドから
実行が開始され(同414)、コマンド並び変えキュー
が空になったら(同416)、コマンド待機キュー33
のコマンド通過停止を解除し、待機していた新しいコマ
ンドをコマンド並び変えキューに入れ、以下これまでの
動作が繰り返される。
Read/Writeコマンドがコマンド並び変えキュ
ー34に到着している場合のコマンド並び変え動作を示
す。C#はコマンドの到着番号を、(#、#)は左がコ
マンドの持つアドレス、右が転送長を表わしている。ま
ず、連続領域判定アドレス作成手段51の中の第一アド
レス読み取り部52がC1のアドレス0を読み取り、転
送長読み取り部53がC1の転送長16ブロック(1ブ
ロック=512B)を読み取り、加算機54はアドレス
0に16を加えて16を算出する。次に、第二アドレス
読み取り部55がC2からC10までのアドレスを読み
取り、比較器56が連続領域判定アドレス作成手段51
で算出された値16と等しいアドレスを持つコマンドを
検索する。すると、C3が見つかるので、キュー制御部
50がC3をC1の後に並び変える。さらに連続領域ア
クセスできる可能性を判断するため、第一アドレス読み
取り部52がC3のアドレス16を読み取り、転送長読
み取り部53がC3の転送長16ブロックを読み取る。
前述と同様な操作でコマンドを検索するとC6が見つか
る。ここまでで、コマンドはC1、C3、C6の順に並
び変えられる。この後C6について再び連続領域アクセ
スの可能性を判断すると、今度は対応するコマンドがな
いため、C2がC6の後に並び変えられる。以下この操
作が繰り返される。並び変えた結果を図9(b)に示
す。
するアクセス回数を1とすると、実行順を変える前では
連続領域アクセスが可能なコマンド群はC8、C9のみ
で、アクセス回数は9であるが、実行順を変えた後では
連続領域アクセスが可能なコマンド群として、C1、C
3、C6及びC5、C7、C10も加わるので、アクセ
ス回数は5である。一般的に、十分たくさんのコマンド
を連続化することでディスク列全てにアクセスし、ヘッ
ドシーク時間を短縮することができる。また長いデータ
に他のコマンドが混入する場合のヘッドシーク時間増加
を防止する効果もある。
ディスク装置の持つプリフェッチ・バッファをきかせる
ことができる。すなわち、アドレスが連続しない短いデ
ータを有するコマンドの場合、コマンドごとにプリフェ
ッチ・バッファの内容を書き換える必要が生じる。書き
換えの回数が増えることにより処理時間が延びる。
体のディスク装置に対しても有効なものである。
慮した場合を説明する。
に当たる。図7において、61〜70はk台のディスク
装置の組合せに対応した各コマンド到着キュー(n台の
ディスク装置からk台のディスク装置を選ぶ全ての組合
せの数だけ用意したキュー)、71〜80はコマンド到
着キューがコマンドをコマンド実行キューに送出したこ
とを示すフラグ、81は並び変えを終了したコマンドが
実行を待つコマンド実行キューである。60はコマンド
到着キュー61〜70及びフラグ71〜80の制御をす
るキュー制御部、42はアドレスのビット・パターン作
成部、82はコマンドの並び変えテーブル参照手段であ
る。
体の動作を説明する。
はアドレス変換されたRead/Writeコマンドを
取り入れ(図8のフローチャート500、502)、ビ
ット・パターン作成部42はコマンド固有のLBAを元
に当該コマンドが使用するディスクを示すビット・パタ
ーンを作成する。次に、キュー制御部60でそのビット
・パターンに対応した各コマンド到着キュー61〜70
に振り分けられる(同504、506)。コマンド到着
キュー先頭のコマンドが全てそろったら、キュー制御部
60がコマンド・ナンバーの最も若いコマンドを選択し
(同508)、そのコマンドをコマンド実行キュー81
にセットし、フラグ71〜80のうちコマンドを送出し
たキューのフラグを立てる(同510)。コマンドを送
出したキューと対応するキューをコマンド並び変えテー
ブル参照手段82で参照し(同512)、対応するコマ
ンドがなければ次に若いコマンド・ナンバーのコマンド
をコマンド実行キュー81に送出し、フラグ71〜80
のうちコマンドを送出したキューのフラグを立てる(同
510)。対応するコマンドがあれば、そのコマンドを
コマンド実行キュー81に送出し、フラグ71〜80の
うちコマンドを送出したキューのフラグを立てる(同5
14)。以上の操作をコマンド到着キュー61〜70の
全てのフラグ70〜80が立つまで行う(同516)。
コマンド実行キュー81に並び変えたコマンドが到着し
だい、コマンドを実行し(同518)、コマンド実行キ
ュー81が空になったら(同520)、各コマンド到着
キュー61〜70の全てのフラグ71〜80を解除する
(同522)。そして、再びコマンド到着キュー61〜
70の中で、最も若いコマンド・ナンバーのコマンドが
コマンド実行キュー81に送出され、以下これまでの動
作が繰り返される。
ィスク装置にアクセスする複数のRead/Write
コマンドがコマンド到着キュー61〜70に到着してい
る場合のコマンド並び変え動作を示す。ここで、C#は
コマンドの到着番号を表わしている。732は、コマン
ドスケジューラ、61〜70は到着コマンドが待機する
コマンド待機キュー、60は61〜70のキューを制御
するキュー制御部、737は、実行順最適化制御部であ
る。まず、コマンド到着キュー61〜70の先頭にコマ
ンドが全てそろった状態で、キュー制御部60がコマン
ド・ナンバーの最も若いC1をコマンド実行キュー81
にセットし、フラグ71を立てる。C1は0番と1番の
ディスク装置を使用するので、このコマンドと多重実行
可能なコマンドをコマンド並び変えテーブル参照手段8
2において対応づける(図8のテーブル参照)。する
と、3番と4番のディスク装置を使用するコマンドが適
切ということから、キュー制御部60がC7をコマンド
実行キューに送出し、フラグ80を立てる。次に、キュ
ー制御部60がフラグのまだ立っていないコマンド到着
キューの内、コマンド・ナンバーの最も若いC2をコマ
ンド実行キュ−に送出し、フラグ76を立てる。C7の
操作と同様にC2と多重実行可能なコマンドを検索する
とC10が見つかり、キュー制御部60がC10をコマ
ンド実行キュー81に送出し、フラグ79を立てる。以
下この操作が繰り返される。並び変えた結果を図9
(c)に示す。
を多重動作で行うため、コマンド処理時間を全て等しく
1と仮定すると、実行順を変える前では10コマンドの
処理時間が、実行順を変えた後では5となる。一般に実
行順を変える前は、コマンド処理時間はコマンドの並び
方によって5〜10の範囲(完全に多重実行する場合か
ら1コマンドも多重実行しない場合まで)で変化するの
が、実行順を変えた後では必ず5となるため、最大50
%の改善効果がある。
明する。
領域でまとめたコマンド群を1つのコマンドとみなす手
段を付加する方法がある。これは図9の(b)からも明
らかなように、連続領域アクセス可能なコマンド群を1
つのコマンドに再構成することで全体の処理コマンド数
を減少し、まとめたコマンドについてはそのデータの大
きさに関係なくディスク装置のプリフェッチ・バッファ
が有効利用できることで、プリフェッチ・ミスヒット
(連続していないデータの場合、プリフェッチ・バッフ
ァにデータが無いことが多いためミスヒットが生じやす
い)が避けられ、さらに、ディスク装置の回転待ち時間
も回避したWrite処理の高速化が実現できる。
e時特有のパリティー更新に伴うRead処理を削減す
ることができるため(データのアドレスが連続していな
い場合は、例えば、データが異なるとパリティディスク
も異なる場合があるため、データごとにパリティディス
クを読む必要が生じる)、Write処理の高速化が実
現できる。
及び多重実行可能性双方を考慮したコマンドの並び変え
も、図1に示す構成に第一実施例と第二実施例を用いる
ことも可能である。また、第三実施例と第二実施例を用
いることによっても第一実施例と第二実施例を用いる場
合と同様な効果がもたらされる。また、第二実施例の代
わりに第四実施例を用いることでさらに大きな効果がも
たらされる。効果としては、実行順を変える前ではコマ
ンド全てが各々Read/Writeアクセスする場合
でも実行順を変えることで、連続領域アクセス可能なコ
マンドと多重実行可能なコマンドに整理されることから
コマンド実行時間が短縮される。
総和が短縮できる。
まとめて実行することで、ディスク装置のヘッドシーク
と回転待ちを短縮するという効果がある。
ィスク装置の稼動率を上げ、従来に対し最大50%のI
/Oスループット改善効果がある。
でコマンドの並び変えを行い、並び変えた順に実行する
ため、実行されないコマンドがいつまでもキュー内に残
ってしまうコマンドの沈み込みを防止するという効果が
ある。
ク図である。
ロック図である。
ロック図である。
ロック図である。
説明図である。
である。
である。
ローラ、12・・・ ・・・上位計算機I/F、 13・・・ ・・・
タスク制御部、14・・・ ・・・コマンド処理及び管理部、
15・・・ ・・・割込み処理部、16〜20・・・ ・・・ディス
ク装置I/F、 21〜25・・・ ・・・ディスク装置、2
9・・・ ・・・実行順最適化コマンド処理及び管理部、30・
・・ ・・・上位計算機コマンド受信部、 31・・・ ・・・アド
レス変換部、32・・・ ・・・コマンド・スケジューラ、
33・・・ ・・・コマンド待機キュー、34・・・ ・・・コマンド
並び変えキュー、 35・・・ ・・・キュー制御部、36・・・
・・・キューサイズ制限手段、 37・・・ ・・・実行順最適
化制御部、38・・・ ・・・連続領域アクセス可能性並び変
え手段、39・・・ ・・・多重実行可能性並び変え手段、
40・・・ ・・・キュー制御部、41・・・ ・・・タイマー、 4
2・・・ ・・・ビット・パターン作成部、43・・・ ・・・第一ビ
ット・パターン読み取り部、44・・・ ・・・第二ビット・
パターン読み取り部、45・・・ ・・・比較器、 50・・・ ・
・・キュー制御部、51・・・ ・・・連続領域判定アドレス作
成手段、52・・・ ・・・第一アドレス読み取り部、 53・
・・ ・・・転送長読み取り部、54・・・ ・・・加算機、 55・
・・ ・・・第二アドレス読み取り部、56・・・ ・・・比較器、
60・・・ ・・・キュー制御部、61〜70・・・ ・・・コマン
ド到着キュー、 71〜80・・・ ・・・フラグ、81・・・ ・
・・コマンド実行キュー、82・・・ ・・・コマンド並び変え
テーブル参照手段。
Claims (6)
- 【請求項1】ディスク装置と上記ディスク装置を制御す
るディスク制御装置とを有し、外部からの、データの読
み出しまたは書き込みのコマンドを受けて、上記データ
の読み出しまたは書き込みを行うディスク装置システム
において、 上記ディスク制御装置は、 上記コマンドを受信する受信手段と、 上記コマンドを蓄積する第一コマンドキューと、 上記蓄積されたコマンドの実行時間の総和を短縮するよ
うに上記コマンドの実行順序を変更する実行順制御手段
とを有することを特徴とするディスク装置システム。 - 【請求項2】請求項1記載のディスク装置システムにお
いて、 上記実行順制御手段は、上記コマンドが処理対象とする
データのアドレスを調べ、アドレスが連続するコマンド
を抽出し、上記アドレスが連続するように、上記コマン
ドの実行順序を変更することを特徴とするディスク装置
システム。 - 【請求項3】請求項1記載のディスク装置システムにお
いて、 上記ディスク装置システムは、複数のディスク装置を有
し、 上記実行順制御手段は、上記コマンドが処理対象とする
ディスク装置を調べ、異なるディスク装置を処理対象と
するコマンドが連続するように、上記コマンドの実行順
序を変更し、 異なるディスク装置が並行して処理をすることを特徴と
するディスク装置システム。 - 【請求項4】請求項1記載のディスク装置システムにお
いて、 上記実行順制御手段は、 上記コマンドが処理対象とするデータのアドレスを調
べ、アドレスが連続するコマンドを抽出し、上記アドレ
スが連続するように、上記コマンドの実行順序を変更
し、 次に、上記連続するアドレスを有する複数のコマンドは
1つのコマンドとみなして、上記コマンドが処理対象と
するディスク装置を調べ、異なるディスク装置を処理対
象とするコマンドが連続するように、上記コマンドの実
行順序を変更することを特徴とするディスク装置システ
ム。 - 【請求項5】請求項1、2、3または4記載のディスク
装置システムにおいて、 予め定められた条件を満たしたときに、上記第一コマン
ドキューにコマンドを蓄積することを停止するキューサ
イズ制限手段と、 制限されて、上記第1コマンドキューに蓄積されなくな
ったコマンドを蓄積する第二コマンドキューと、 第一コマンドキューに蓄積したコマンドの並び変えが終
了後、上記コマンドを送出し、次に、第二コマンドキュ
ーにあるコマンドを第一コマンドキューに送るキュー制
御手段とを有することを特徴とするディスク装置システ
ム。 - 【請求項6】請求項1記載のディスク装置システムにお
いて、 上記キューサイズ制限手段は、第一コマンドキューにコ
マンドを蓄積することを、コマンド数が一定値に達した
場合、または一定時間が経過した場合、または特定のコ
マンドを外部から受信した場合に停止することを特徴と
するディスク装置システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04805193A JP3250861B2 (ja) | 1993-03-09 | 1993-03-09 | ディスク装置システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04805193A JP3250861B2 (ja) | 1993-03-09 | 1993-03-09 | ディスク装置システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06259198A true JPH06259198A (ja) | 1994-09-16 |
JP3250861B2 JP3250861B2 (ja) | 2002-01-28 |
Family
ID=12792545
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP04805193A Expired - Lifetime JP3250861B2 (ja) | 1993-03-09 | 1993-03-09 | ディスク装置システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3250861B2 (ja) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10275059A (ja) * | 1996-04-30 | 1998-10-13 | Matsushita Electric Ind Co Ltd | 記憶デバイス制御装置及び管理システム |
WO1999050849A1 (fr) * | 1998-03-27 | 1999-10-07 | Sony Corporation | Dispositifs et procedes de sortie de donnees, et d'entree/sortie de donnees |
JP2003263276A (ja) * | 2002-03-08 | 2003-09-19 | Toshiba Corp | ディスクシステムおよびディスクアクセス方法 |
KR100618790B1 (ko) * | 1999-09-29 | 2006-09-06 | 삼성전자주식회사 | 기록 매체의 성능 향상을 위한 연속 기록방법 및 그 회로 |
WO2007043617A1 (ja) * | 2005-10-12 | 2007-04-19 | Nec Corporation | I/o要求処理システム及び方法 |
JP2007304883A (ja) * | 2006-05-11 | 2007-11-22 | Fuji Xerox Co Ltd | コマンドキューイング制御装置、コマンドキューイングプログラム及びストレージシステム |
US7320050B2 (en) | 2004-01-27 | 2008-01-15 | Hitachi Global Storage Technologies Netherlands B.V. | Data transmission control method and storage device |
US7363391B2 (en) | 2006-03-02 | 2008-04-22 | Hitachi, Ltd. | Storage system for queuing I/O commands and control method therefor |
US7370142B2 (en) | 2004-03-01 | 2008-05-06 | Hitachi, Ltd. | Command control method in network storage system |
US7376784B2 (en) | 2004-01-26 | 2008-05-20 | Hitachi Global Storage Technologies Netherlands B.V. | System and method for selecting command for execution in HDD based on benefit |
JP2009032323A (ja) * | 2007-07-26 | 2009-02-12 | Toshiba Corp | ディスク記憶装置 |
JP2009054056A (ja) * | 2007-08-28 | 2009-03-12 | Hakko Denki Kk | 通信コマンド最適化方法、プログラム及びプログラマブル表示器 |
JP2009145967A (ja) * | 2007-12-11 | 2009-07-02 | Hitachi Ltd | バックアップ装置及び方法並びにファイル読出し装置 |
JP2010152571A (ja) * | 2008-12-25 | 2010-07-08 | Kyocera Mita Corp | Raidドライバ及びこれを備えた電子機器並びにraidに対するアクセス要求調停方法 |
JP2010218583A (ja) * | 2010-07-05 | 2010-09-30 | Nec Corp | I/o処理装置及び方法 |
JP2010537322A (ja) * | 2007-08-24 | 2010-12-02 | マイクロソフト コーポレーション | 直接大容量記憶装置ファイルインデックス処理 |
WO2011007459A1 (ja) * | 2009-07-17 | 2011-01-20 | 株式会社日立製作所 | ストレージ装置及びその制御方法 |
JP2012514809A (ja) * | 2009-01-09 | 2012-06-28 | マイクロン テクノロジー, インク. | コマンドの変更 |
WO2012093475A1 (ja) * | 2011-01-05 | 2012-07-12 | 富士通株式会社 | 情報転送装置および情報転送装置の情報転送方法 |
JP2014526735A (ja) * | 2011-09-11 | 2014-10-06 | マイクロソフト コーポレーション | 検証されたデータセットの不揮発性媒体ジャーナリング |
-
1993
- 1993-03-09 JP JP04805193A patent/JP3250861B2/ja not_active Expired - Lifetime
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10275059A (ja) * | 1996-04-30 | 1998-10-13 | Matsushita Electric Ind Co Ltd | 記憶デバイス制御装置及び管理システム |
WO1999050849A1 (fr) * | 1998-03-27 | 1999-10-07 | Sony Corporation | Dispositifs et procedes de sortie de donnees, et d'entree/sortie de donnees |
KR100618790B1 (ko) * | 1999-09-29 | 2006-09-06 | 삼성전자주식회사 | 기록 매체의 성능 향상을 위한 연속 기록방법 및 그 회로 |
JP2003263276A (ja) * | 2002-03-08 | 2003-09-19 | Toshiba Corp | ディスクシステムおよびディスクアクセス方法 |
US7376784B2 (en) | 2004-01-26 | 2008-05-20 | Hitachi Global Storage Technologies Netherlands B.V. | System and method for selecting command for execution in HDD based on benefit |
US7320050B2 (en) | 2004-01-27 | 2008-01-15 | Hitachi Global Storage Technologies Netherlands B.V. | Data transmission control method and storage device |
US7370142B2 (en) | 2004-03-01 | 2008-05-06 | Hitachi, Ltd. | Command control method in network storage system |
WO2007043617A1 (ja) * | 2005-10-12 | 2007-04-19 | Nec Corporation | I/o要求処理システム及び方法 |
US7707332B2 (en) | 2005-10-12 | 2010-04-27 | Nec Corporation | I/O-request processing system and method |
US7363391B2 (en) | 2006-03-02 | 2008-04-22 | Hitachi, Ltd. | Storage system for queuing I/O commands and control method therefor |
JP2007304883A (ja) * | 2006-05-11 | 2007-11-22 | Fuji Xerox Co Ltd | コマンドキューイング制御装置、コマンドキューイングプログラム及びストレージシステム |
JP2009032323A (ja) * | 2007-07-26 | 2009-02-12 | Toshiba Corp | ディスク記憶装置 |
JP2010537322A (ja) * | 2007-08-24 | 2010-12-02 | マイクロソフト コーポレーション | 直接大容量記憶装置ファイルインデックス処理 |
JP2009054056A (ja) * | 2007-08-28 | 2009-03-12 | Hakko Denki Kk | 通信コマンド最適化方法、プログラム及びプログラマブル表示器 |
JP2009145967A (ja) * | 2007-12-11 | 2009-07-02 | Hitachi Ltd | バックアップ装置及び方法並びにファイル読出し装置 |
JP2010152571A (ja) * | 2008-12-25 | 2010-07-08 | Kyocera Mita Corp | Raidドライバ及びこれを備えた電子機器並びにraidに対するアクセス要求調停方法 |
US8347032B2 (en) | 2008-12-25 | 2013-01-01 | Kyocera Document Solutions Inc. | Image forming apparatus and access request arbitration method for a RAID driver |
JP2012514809A (ja) * | 2009-01-09 | 2012-06-28 | マイクロン テクノロジー, インク. | コマンドの変更 |
US8966231B2 (en) | 2009-01-09 | 2015-02-24 | Micron Technology, Inc. | Modifying commands |
WO2011007459A1 (ja) * | 2009-07-17 | 2011-01-20 | 株式会社日立製作所 | ストレージ装置及びその制御方法 |
US8352681B2 (en) | 2009-07-17 | 2013-01-08 | Hitachi, Ltd. | Storage system and a control method for accelerating the speed of copy processing |
JP2010218583A (ja) * | 2010-07-05 | 2010-09-30 | Nec Corp | I/o処理装置及び方法 |
WO2012093475A1 (ja) * | 2011-01-05 | 2012-07-12 | 富士通株式会社 | 情報転送装置および情報転送装置の情報転送方法 |
JPWO2012093475A1 (ja) * | 2011-01-05 | 2014-06-09 | 富士通株式会社 | 情報転送装置および情報転送装置の情報転送方法 |
JP2014526735A (ja) * | 2011-09-11 | 2014-10-06 | マイクロソフト コーポレーション | 検証されたデータセットの不揮発性媒体ジャーナリング |
US9229809B2 (en) | 2011-09-11 | 2016-01-05 | Microsoft Technology Licensing Llc | Nonvolatile media journaling of verified data sets |
Also Published As
Publication number | Publication date |
---|---|
JP3250861B2 (ja) | 2002-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH06259198A (ja) | ディスク装置システム | |
JP4375435B2 (ja) | 予知型データ移行を行う階層ストレージシステム | |
US6944707B2 (en) | Storage subsystem, information processing system and method of controlling I/O interface | |
EP2361404B1 (en) | Method and system for queuing transfers of multiple non-contiguous address ranges with a single command | |
EP0732659B1 (en) | Controlling (n+i) I/O channels with (n) data managers in a homogeneous software programming environment | |
CN110058932B (zh) | 一种用于数据流驱动计算的存储方法和存储系统 | |
KR100415861B1 (ko) | 디스크 제어기로부터 디스크 드라이브로 명령을 보낼것인가를 판단하는 방법, 디스크 제어기 및 프로그램을저장하는 기록매체 | |
US5715452A (en) | Process of transferring file, process of gaining access to data and process of writing data | |
US5745915A (en) | System for parallel reading and processing of a file | |
CN1680917A (zh) | 用于跟踪完成表中更大量未完成指令的方法和处理器 | |
US5752256A (en) | Disk array apparatus and method for dividing and reading/writing partial data across a plurality of drive groups utilizing parallel processing | |
JP4804175B2 (ja) | I/oコマンドをキューイングするストレージシステム及びその制御方法 | |
JP2557199B2 (ja) | インターフェース・システムおよび方法 | |
US10452557B2 (en) | Storage apparatus, computer system, and method for improved read operation handling | |
US20150339074A1 (en) | Assigning device adaptors to use to copy source extents to target extents in a copy relationship | |
JP2003131908A (ja) | 記憶制御装置 | |
JP2001125829A (ja) | コントローラ装置、ディスクコントローラ、補助記憶装置、コンピュータ装置、および補助記憶装置の制御方法 | |
CN1795442A (zh) | 用于在主存储器和存储装置之间传送数据的方法和设备 | |
Flynn et al. | Operating Systems | |
EP3293625B1 (en) | Method and device for accessing file, and storage system | |
JPH06161846A (ja) | ファイル管理装置 | |
Soloviev | Prefetching in segmented disk cache for multi-disk systems | |
JPH09223049A (ja) | ディスクアレイ装置 | |
EP0478337B1 (en) | Process of storing data on, or retrieving data from a plurality of disks | |
CN1744063A (zh) | 资源管理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071116 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 7 Free format text: PAYMENT UNTIL: 20081116 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 7 Free format text: PAYMENT UNTIL: 20081116 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 8 Free format text: PAYMENT UNTIL: 20091116 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101116 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101116 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 10 Free format text: PAYMENT UNTIL: 20111116 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111116 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121116 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 11 Free format text: PAYMENT UNTIL: 20121116 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 12 Free format text: PAYMENT UNTIL: 20131116 |
|
EXPY | Cancellation because of completion of term |