JPH10269161A - 負荷均衡制御方式 - Google Patents

負荷均衡制御方式

Info

Publication number
JPH10269161A
JPH10269161A JP7127397A JP7127397A JPH10269161A JP H10269161 A JPH10269161 A JP H10269161A JP 7127397 A JP7127397 A JP 7127397A JP 7127397 A JP7127397 A JP 7127397A JP H10269161 A JPH10269161 A JP H10269161A
Authority
JP
Japan
Prior art keywords
information
flag
external storage
channel interface
interface control
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
JP7127397A
Other languages
English (en)
Inventor
Hiroyoshi Suzuki
啓悦 鈴木
Izumi Yuzawa
泉 湯沢
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 JP7127397A priority Critical patent/JPH10269161A/ja
Publication of JPH10269161A publication Critical patent/JPH10269161A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】個々の外部記憶制御装置において、共有メモリ
を用いて、共有メモリ上の情報を参照/更新することに
より個々の上位装置からの入出力負荷を均一化すること
ができなかった。 【解決手段】揮発性また不揮発性の記憶媒体と外部記憶
制御装置が制御するための共有メモリを備えた外部記憶
装置とこの外部記憶装置を制御する外部記憶制御装置
と、この外部記憶制御装置を介して前記外部記憶装置を
共有し、当該外部記憶装置に対するデータの書き込みお
よび読み出しなどの入出力を行う複数の上位装置からな
る情報処理システムにおいて、外部記憶装置内に存在す
る共有メモリ上の情報を外部記憶制御装置が参照および
更新し、共有メモリヘの情報アクセス(情報の参照及び
更新)頻度を変化させて、前記外部記憶制御装置におい
て個々の上位装置から入出力負荷を均一化させることに
より達成することができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、負荷均衡技術に関
し、特に複数の上位装置によって共有される外部記憶装
置における入出力負荷の均一化に有効な負荷均衡制御技
術に関する。
【0002】
【従来の技術】近年、計算機システムの高性能・大規模
化に伴い、外部記憶装置においても高性能化が求められ
ている。特に外部記憶装置は、複数の計算機システムに
接続されることが多く、各々の計算機システムからの入
出力要求を効率よく処理を行っていく必要がある。この
ため、従来から外部記憶制御装置にて各々の計算機シス
テムからの負荷を均一化させる負荷均衡制御方式が種々
考案されている。例えば、特開昭63−146147号
公報に開示される技術のように外部記憶装置自身が実行
した入出力回数を計数して真の負荷状況を知るようにし
た入出力負荷監視方式、特開昭63−223939号公
報に開示される技術のように入出力制御装置に入出力負
荷状態を表示させ、ホストシステムで負荷を均一化させ
る方式、特開昭62−6357号公報および特開平2−
81154号公報に開示される技術のように接続された
計算機システムからの要求に優先順位をつけて処理を行
い、負荷を均一化する方式、特開平1−229351号
公報に開示される技術のように平均待ち時間を予測する
情報をもとに負荷のバランスをとる方式、特開平4−2
89947号公報に開示される技術のようにブロックス
イッチを利用し、チャネル間の負荷を効率よく処理する
負荷均衡制御方式、特開平6−52087号公報に開示
される技術のように入出力要求レジスタ、入出力要求選
択レジスタおよび起動履歴テーブルを利用し、外部記憶
制御装置1台で異種インタフェースを持つチャネル間の
負荷を効率よく処理する負荷均衡制御方式等がある。
【0003】
【発明が解決しようとする課題】前記特開平4−289
947号公報、特開平6−52087号公報以外の前記
従来技術は、外部記憶装置側で上位装置側からの任意の
入出力の優先処理を行えない点、あるいは2つの外部記
憶制御装置間で通信を行えない点について配慮されてお
らず、外部記憶制御装置1台で独立に上位装置からの入
出力負荷を均一にできないという問題があった。前記特
開平4−289947号公報に示されるような前記従来
技術は、接続されていても停止中の上位装置も負荷均衡
制御の対象になってしまい、停止中の上位装置が多い場
合、効率の悪い負荷均衡制御になってしまうという問題
があった。また、前記特開平6−52087号公報に示
されるような前記従来技術は、外部記憶制御装置に多数
の上位装置が接続されると、入出力の頻度が高い場合、
どこか1つまたは複数の上位装置の入出力が沈み込んで
しまい、効率の悪い負荷均衡制御になってしまうという
問題があった。
【0004】本発明における負荷均衡制御方式の第一目
的は、揮発性または不揮発性の記憶媒体と外部記憶制御
装置が制御するための共有メモリを備えた外部記憶装置
とこの外部記憶装置を制御する外部記憶制御装置と、こ
の外部記憶制御装置を介して前記外部記憶装置を共有
し、当該外部記憶装置に対するデータの書き込みおよび
読み出しなどの入出力を行う複数の上位装置からなる情
報処理システムにおいて、外部記憶制御装置が外部記憶
装置内に存在する共有メモリ上の情報アクセス(情報の
参照および更新)頻度を変化させて、外部記憶制御装置
において個々の上位装置からの入出力負荷を均一化する
負荷均衡制御方法を提供することにある。
【0005】また、本発明の第二目的は、共有メモリ上
の情報を参照または更新することにより外部記憶制御装
置において個々の上位装置からの入出力負荷を均一化す
る負荷均衡制御方法を提供することにある。
【0006】
【課題を解決するための手段】本発明は、揮発性または
不揮発性の記憶媒体と外部記憶制御装置が制御するため
の共有メモリを備えた外部記憶装置とこの外部記憶装置
を制御する外部記憶制御装置と、この外部記憶制御装置
を介して前期記憶装置を共有し当該外部記憶装置に対す
るデータの書き込みおよび読み出しなどの入出力を行う
複数の上位装置からなる情報システムであって、外部記
憶制御装置が外部記憶装置内に存在する共有メモリ上の
情報を参照または更新することにより外部記憶制御装置
において個々の上位装置からの入出力負荷を均一化させ
る。また、外部記憶装置に存在する共有メモリ上の情報
アクセス(情報参照および更新)頻度を変化させること
により外部記憶制御装置において個々の上位装置からの
入出力負荷を均一化させることにより達成することがで
きる。
【0007】
【発明の実施の形態】以下、本発明を図に従って詳細に
説明する。本実施例では、負荷均衡制御方式が適用され
る外部記憶装置の一例として、半導体記憶装置サブシス
テムを用いる。図1は、本実施例の負荷均衡制御方式が
行われる半導体記憶制御装置サブシステムのハードウェ
ア構成の一例を示すブロック図である。本実施例の半導
体記憶装置サブシステムは、半導体記憶制御装置20,
21と半導体記憶装置50とから構成され、両者は、デ
ータ転送バスおよび制御線38〜41を介して接続され
ている。一方、半導体記憶制御装置20,21は、ケー
ブル10〜15を通じて、各々チャネル4〜9および中
央処理装置1〜3に接続されている。チャネル4〜9は
電気チャネルおよび光チャネルである。半導体記憶制御
装置20は、チャネルインタフェース制御部22〜2
5、クラスタ32およびサービスプロセッサ33より構
成される。クラスタ32は、2つのディレクタ30、デ
ィレクタ31より構成される。ディレクタ30、ディレ
クタ31の詳細については図2で説明する。サービスプ
ロセッサ33は種々のサービス/初期設定/診断等を司
る。チャネルインタフェース制御部22〜25は接続さ
れているチャネルに応じてインタフェースプロトコルを
司る。半導体記憶装置21も半導体記憶制御装置20と
同様、チャネルインタフェース制御部26〜29、クラ
スタ36およびサービスプロセッサ37より構成され
る。また、クラスタ36も半導体記憶制御装置20と同
様に2つのディレクタ34、ディレクタ35より構成さ
れる。半導体記憶装置50は、ドライブインタフェース
制御部51〜54、共有メモリ制御線55、共有メモリ
56、メモリ制御線57、メモリ58より構成される。
ドライブインタフェース制御部51〜54は、ディレク
タ30、ディレクタ31およびディレクタ34、ディレ
クタ35よりデータ転送バスおよび制御線38〜41を
通じて得られるプロトコルから共有メモリ56のアクセ
スかメモリ58へのアクセスかを判断し、共有メモリ5
6またはメモリ58にアクセスする。ドライブインタフ
ェース制御部51〜54が共有メモリ56にアクセスす
る場合には共有メモリ制御線55を使用し、後述する共
有メモリ56上の情報の読み出しあるいは書き込みを行
なう。共有メモリ56にはディレクタ30、ディレクタ
31およびディレクタ34、ディレクタ35が中央処理
装置1〜3の入出力要求を制御するための情報が存在す
る。共有メモリ56上のある情報は、後述するメモリ5
8上にある制御情報領域80にある情報とは全く異なる
ものである。また、ドライブインタフェース制御部51
〜54がメモリ58をアクセスする場合にはメモリ制御
線57を使用し、メモリ上にある情報を読み出しあるい
は書き込みを行う。共有メモリ56には、ハードウェア
ロック/アンロック機能がある。ロックとは他ディレク
タから共有メモリ56上にある情報のデータ更新されな
いように排他するために共有メモリ56上にある情報の
データ更新を禁止するモードである。アンロックとは、
共有メモリ56上にある情報のデータ更新を許可するモ
ードである。ロック/アンロックは、後述するマイクロ
プロセッサ60より指示される。メモリ58には中央処
理装置1〜3が使用するデータおよびボリューム管理情
報(ボリュームの数、ボリューム毎のメモリ容量、メモ
リ58のメモリ容量等)を管理する制御情報領域80、
メモリ診断等を行う時に使用するインライン領域81が
ある。メモリ58の詳細については、後述する。
【0008】次に図2について説明する。図2は半導体
記憶制御装置20のハードウェア構成の詳細を示す図で
ある。クラスタ32は、2つのディレクタ30およびデ
ィレクタ31から構成されることはすべて述べた通りで
ある。ディレクタ30とディレクタ31はハードウェア
は同一のものであるため、ディレクタ30について、詳
細に供述する。ディレクタ30はデータ転送バス65
と、選択回路62と、データ転送バス66と、データ転
送制御回路63と、データ転送バス67と、ドライブイ
ンタフェース制御部64と、データ転送バス68と、制
御線69,70,71,72,73と、全体の制御動作
を行うマイクロプロセッサ60と、このマイクロプロセ
ッサ60を動作させるためのマイクロプログラムやデー
タ、さらには後述する一部のフラグを持つテーブル等が
格納されるメモリ61と、マイクロプロセッサ60とメ
モリ61を接続する制御線74、およびサービスプロセ
ッサ33とマイクロプロセッサ60との通信を行なうた
めの制御線75から構成される。マイクロプロセッサ6
0は制御線74を通して、メモリ61内に格納されてい
るマイクロプログラムの指示によって動作する。実際に
は、制御線69〜73を通して得られるデータおよびメ
モリ61内のテーブル、マイクロプロセッサ60内のレ
ジスタの値をもとにメモリ61内に格納されているマイ
クロプログラムの指示でマイクロプロセッサ60は動作
する。
【0009】半導体記憶装置50内の共有メモリ56へ
のアクセス(共有メモリ56上の情報の参照/更新およ
びロック/アンロック)は、制御線72、ドライブイン
タフェース制御部64、データ転送バス68、制御線7
3を使用し、データ転送バスおよび制御線38、半導体
記憶装置内のドライブインタフェース制御部51、共有
メモリ制御線55を通じて行われる。 そして中央処理
装置1〜3と半導体記憶装置50の間のリード/ライト
データの授受は、チャネルインタフェース制御部22〜
25、データ転送バス65、選択回路62、データ転送
バス66、データ転送制御回路63、データ転送バス6
7、ドライブインタフェース制御部64、データ転送バ
ス68を介して行われ、メモリ61上のデータおよびマ
イクロプログラムを利用し、マイクロプロセッサ60が
制御線69〜74を使用して、リード/ライトデータの
授受を含む上位装置からのコマンド実行制御を行う。ま
た、ディレクタ30がチャネルインタフェース制御部2
2〜25のいずれか1つと入出力処理をしている場合、
ディレクタ31は、ディレクタ30が使用していないチ
ャネルインタフェース制御部22〜25のいずれか1つ
と入出力処理が実行可能である。マイクロプログラムの
IMPL終了直後にマイクロプロセッサ60は、制御線
75を使用してサービスプロセッサ33と通信する。こ
の時、マイクロプロセッサ60は、サービスプロセッサ
33より固有のマイクロプロセッサ番号(以下MP番号
と略す。)情報を含む装置構成情報を受け取る。MP番
号はディレクタによって違い、ディレクタ30のマイク
ロプロセッサ60とディレクタ31のマイクロプロセッ
サ60のMP番号は相違する。なお、半導体記憶制御装
置21も半導体記憶制御装置20と同一のハードウェア
である。
【0010】次に図3について説明する。図3は、半導
体記憶装置50内に存在するメモリ58の論理分割を示
した図である。メモリ58は、1つの連続したアドレス
空間となっているが、前述した情報を含む制御情報領域
80、インライン領域81および中央処理装置1〜3の
データを含むボリューム0(83)〜ボリュームN(8
5)に論理分割される。さらにボリューム0(83)は
シリンダ0(86)〜シリンダX(87)、EOF(E
ND OF FILE)トラック(88)、CEトラッ
ク0(89)およびCEトラック1(90)、およびメ
モリ剰余91に分割される。ボリューム1(84)〜ボ
リュームN(85)もボリューム0(83)と同様の構
造をしている。ここで記述しているボリュームは磁気デ
ィスクのボリュームと同意である。半導体記憶装置50
は、磁気ディスクの媒体の代わりに、ICメモリを使用
しているため、メモリ容量によっては、磁気ディスクの
ボリュームより小さくなることがある。このためメモリ
剰余91も発生する。
【0011】図4〜図9は、メモリ61に格納されてい
るマイクロプログラムの処理の概略フローである。図4
は、マイクロプロセッサ60で実行する入出力要求の処
理である。図5〜図8は、マイクロプロセッサ60で実
行するボリューム排他制御処理および入出力要求に応じ
たコマンド処理の概略フロー(図4中のステップ107
の詳細)である。図9は、マイクロプロセッサ60で行
う入出力終了処理の概略フロー(図4中のステップ10
8の詳細)である。図4〜図9の概略フローの詳細説明
は後述する。
【0012】図10は、アクセス可能情報フラグ700
の構造である。アクセス可能情報フラグ700は、共有
メモリ56上に存在する。アクセス可能情報フラグ70
0は、メモリ58上に存在するボリュームの数だけ存在
し、アクセスするボリュームが使用可能なチャネルをビ
ット対応に表示している。
【0013】アクセス可能情報フラグ700はクラスタ
32用701およびクラスタ36用702から構成され
る。またクラスタ32用701はチャネルインタフェー
ス22用703〜チャネルインタフェース25用706
より構成され、クラスタ36用702はチャネルインタ
フェース26用707〜チャネルインタフェース10よ
り構成される。チャネルインタフェース制御部22用7
03〜チャネルインタフェース制御部29用710はビ
ット単位で構成される。アクセス可能情報フラグ700
は、アクセス可能(上位装置の入出力要求が実行可能)
なチャネルインタフェース制御部を示している。例えば
現在、入出力要求がチャネルインタフェース制御部22
にて実行中である時、アクセス可能情報フラグ700の
状態は、チャネルインタフェース制御部22用703
が’1’となり、チャネルインタフェース制御部23用
704〜チャネルインタフェース制御部29用710
は’0’である。アクセス可能情報フラグ700の初期
値はチャネルインタフェース制御部22用703〜チャ
ネルインタフェース制御部29用710がすべて’1’
である。アクセス可能情報フラグ700のクラスタ32
用701は、ディレクタ30およびディレクタ31で相
互に参照または更新が可能である。また、アクセス可能
情報フラグ700のクラスタ36用702もディレクタ
34およびディレクタ35で相互に参照または更新が可
能である。
【0014】図11は、デバイス情報テーブル800の
構造である。デバイス情報テーブル800も、アクセス
可能情報フラグ700同様、共有メモリ56上に存在
し、メモリ58上に存在するボリュームの数だけ存在す
る。デバイス情報テーブル800は、上位装置から入出
力要求があったボリュームの状態情報を示す。デバイス
情報テーブル800は、LONG BUSYフラグ80
1、SHORT BUSYフラグ802、アクセス可能
情報フラグ反転中フラグ803、ボリューム使用ディレ
クタ情報804、リザーブフラグ805から構成され
る。LONG BUSYフラグ801は、当該ボリュー
ムの使用中の状態を示し、初期値は’0’である。SH
ORT BUSYフラグ802は、当該ボリュームのシ
ョートビジー状態を示す。ショートビジー状態とは上位
装置に対し、当該ボリュームがデバイスビジー(デバイ
ス使用中)を応答した後、Busy To Free
(ビジーツゥ フリー:デバイスビジー解除、以下B.
T.Fと略す。)を報告中であることを示す。アクセス
可能情報フラグ反転中フラグ803は、入出力終了処理
においてアクセス可能情報フラグ700復元時、自分の
パスグループマトックス以外にペンディング要因(上位
装置に対し、報告するステータス(B.T.F等)を保
留中)があり、アクセス可能情報フラグ700が自分の
パスグループマトックス以外であることを示す。ボリュ
ーム使用ディレクタ情報804は、当該ボリュームを使
用しているディレクタのMP番号を示す。リザーブフラ
グ805は、アクセス可能情報フラグ700と共に用い
てリザーブ中のチャネルインタフェース制御部を表示す
る。LONG BUSYフラグ801、SHORT B
USYフラグ802、アクセス可能情報フラグ反転中フ
ラグ803、およびリザーブフラグ805は、ビット単
位で、ボリューム使用ディレクタ情報804はバイト単
位で構成される。デバイス情報テーブル800の初期値
は、すべて’0’である。デバイス情報テーブル800
は、ディレクタ30、ディレクタ31、ディレクタ3
4、およびディレクタ35で相互に参照および更新可能
である。 図12はBusy To Free(B.
T.F)報告フラグ900の構造である(以下B.T.
F報告フラグ900と略す。)。B.T.F報告フラグ
900も、アクセス可能情報フラグ700と同様の構造
を持ち。共有メモリ56上に存在する。また、B.T.
F報告フラグ900は、メモリ58上に存在するボリュ
ームの数だけ存在し、当該ボリュームのB.T.Fを報
告するチャネルインタフェース制御部を表示している。
B.T.F報告フラグ900は、クラスタ32用901
およびクラスタ36用902から構成される。また、ク
ラスタ32用901は、チャネルインタフェース制御部
22用903〜チャネルインタフェース25用906よ
り構成され、クラスタ36用902は、チャネルインタ
フェース26用907〜チャネルインタフェース29用
910より構成される。チャネルインタフェース制御部
22用903〜チャネルインタフェース制御部29用9
10はビット単位で構成される。B.T.F報告フラグ
900は、B.T.Fを上位装置に対し、報告する必要
があるチャネルインタフェース制御部を示している。例
えば、現在、入出力要求がチャネルインタフェース制御
部22で実行しようとした時、当該ボリュームがすでに
入出力要求が他ディレクタにて実行中であった時(つま
り、当該ボリュームがビジーである時)、B.T.F報
告フラグ900のチャネルインタフェース制御部22用
903に’1’を立てて、上位装置に対してデバイスビ
ジー(デバイス使用中)を報告する。B.T.F報告フ
ラグ900のチャネルインタフェース制御部22用90
3〜チャネルインタフェース制御部29用910は、複
数のチャネルインタフェース制御部のビットが立つこと
がある。また、B.T.F報告フラグ900のチャネル
インタフェース制御部22用903〜チャネルインタフ
ェース制御部29用910の各ビットは、 B.T.F
報告終了後B.T.F報告終了したチャネルインタフェ
ース制御部のビットが’0’となる。B.T.F報告フ
ラグ900の初期値は、チャネルインタフェース制御部
22用903〜チャネルインタフェース制御部29用9
10がすべて’0’である。B.T.F報告フラグ90
0のクラスタ用901はディレクタOおよびディレクタ
31で相互に参照および更新が可能である。また、B.
T.F報告フラグ900のクラスタ36用902もディ
レクタ34およびディレクタ35で相互に参照および更
新可能である。
【0015】図13は、パスグループ マトリックス情
報1000の構造である。パスグループ マトリックス
1000は、共有メモリ56上に存在し、メモリ58上
に存在するボリュームの数だけ存在する。パスグループ
マトリックス情報1000はクラスタ32用1001
とクラスタ36用1002から構成される。また、クラ
スタ32用1002は、チャネルインタフェース制御部
22用1003〜チャネルインタフェース制御部25用
1006より構成され、クラスタ36用1002はチャ
ネルインタフェース制御部26用1007〜チャネルイ
ンタフェース制御部29用1010より構成される。パ
スグループ マトリックス情報1000は、当該ボリュ
ームに対して上位装置(チャネル4〜チャネル9)より
発行されるSET PATH GROUP IDコマン
ドのGROUP IDをもとに作成する。GROUP
IDは、各中央処理装置固有のIDを持っており、チャ
ネル4〜チャネル9において同一中央処理装置から発行
されるSET PATHIDコマンドのPATH GR
OUP IDは同一である。パスグループ マトリック
ス情報1000は、当該ボリュームに関する各々のチャ
ネルインタフェース制御部22用1003〜チャネルイ
ンタフェース29用1010のパスグループ マトリッ
クスである。パスグループ マトリックス情報1000
中のチャネルインタフェース制御部22用1003〜チ
ャネルインタフェース制御部29用1010は、SET
PATH GROUP IDコマンドを受け取った各
チャネルインタフェース制御部と同一のPATH GR
OUP IDを受け取ったチャネルインタフェース制御
部をビット対応に表示している。つまり、同一中央処理
装置に接続されているチャネルインタフェース制御部の
ビットが1となる。パスグループ マトリックス情報1
000中のチャネルインタフェース制御部22用100
3〜チャネルインタフェース制御部29用1010は、
当該ボリュームがリザーブ(予約)されている時のアク
セス可能情報フラグ700となる。パスグループ マト
リックス情報1000中のチャネルインタフェース制御
部22用1003〜チャネルインタフェース制御部29
用1010は、バイト単位より構成される。パスグルー
プ マトリックス情報1000の初期値はすべて’0’
である。パスグループ マトリックス情報1000はす
べてのディレクタ(ディレクタ30、ディレクタ31、
ディレクタ34、およびディレクタ35)で参照および
更新が可能である。
【0016】図14は、リトライ情報フラグ1100の
構造である。リトライ情報フラグ1100は、マイクロ
プロセッサ60内のレジスタまたはメモリ61内のテー
ブルに存在する。本実施例においては、リトライ情報フ
ラグ1100は、マイクロプロセッサ60用のレジスタ
に存在するものとする。リトライ情報フラグ1100
は、LONG BUSYリトライフラグ1101、SH
ORT BUSYリトライフラグ1102、アクセス可
能情報フラグ反転リライフラグ1103から構成され
る。リトライ情報フラグ1100は、バイト単位であ
り、LONG BUSYリトライフラグ1101、SH
ORT BUSYリトライフラグ1102、アクセス可
能情報フラグ反転リトライフラグ1103は、ビット単
位である。リトライ情報フラグ1100の初期値は、す
べて’0’である。LONG BUSYリトライフラグ
1101は、現在入出力要求を受け付けたチャネルイン
タフェース部のアクセス可能情報フラグ700が’0’
の時、リトライを行うために’1’となる。アクセス可
能情報フラグ反転リトライフラグ1103は、共有メモ
リ56上に存在するデバイス情報テーブル800中のア
クセス可能情報フラグ反転中ステップ309で、2ms
ウェイトする。ステップ309の効果は共有メモリ56
上に存在する情報へのアクセス(共有メモリ56上の情
報の参照/更新)頻度を変化させる効果と他ディレクタ
がB.T.Fを報告し、次の入出力要求を実行させる効
果(B.T.Fの沈み込み防止効果)がある。ステップ
309実行後、共有メモリ56上の当該ボリュームのア
クセス可能情報フラグ700およびデバイス情報テーブ
ル800の読み直し(リトライ)を行うため、図5中の
ステップ200へ進む。
【0017】次に図7について説明する。ステップ40
0で共有メモリ56よりパスグループ マトリックス情
報1000を読み込む。 ステップ401で、現在入出
力要求を行っているチャネルインタフェース制御部のパ
スグループ マトリックス情報1000にアクセス可能
情報フラグ700が立っているか判断する。本ケースで
は、チャネルインタフェース制御部22より入出力要求
があるので、パスグループ マトリックス情報1000
のチャネルインタフェース制御部22用1003にアク
セス可能情報フラグ700中のチャネルインタフェース
22用703が立っているかを判断する。もし、現在入
出力要求を行っているチャネルインタフェース制御部の
パスグループ マトリックス情報1000にアクセス可
能情報フラグ700が立っていなければ、ステップ40
8へ進む。もし、現在入出力要求を行っているチャネル
インタフェース制御部のパスグループ マトリックス情
報1000にアクセス可能情報フラグ700が立ってい
れば、当該ボリュームアクセス可能だと判断し、ステッ
プ402へ進む。
【0018】ステップ402で、リトライ情報フラグ1
100中のLONG BUSYリトライフラグ1101
が1か判断する。もし、リトライ情報フラグ1100中
のLONG BUSYリトライフラグ1101が1でな
ければ、図6中のステップ305へ進む。もし、リトラ
イ情報フラグ1100中のLONG BUSYリトライ
フラグ1101が1であればステップ403へ進む。
【0019】ステップ403で、リトライ情報フラグ1
100中のSHORT BUSYリトライフラグ110
2とアクセス可能情報フラグ反転リトライフラグ110
3を0とする。
【0020】ステップ404で、リトライ情報フラグ1
100中のLONG BUSYリトライフラグ1101
を1とする。
【0021】ステップ405で、タイマに1200を2
4オsカウントアップする。24オsという値は、マイ
クロプログラムのリトライ処理にかかる時間である。
【0022】ステップ406で、タイマ1200の値が
400msを越えたか判断する。もし、タイマ1200
の値が400msを越えていた場合は、ステップ409
へ進む。もし、タイマ1200の値が400msを越え
ていなければ、ステップ407へ進む。ここでタイマ1
200の値を400msとしたのは、電気チャネルの場
合、500ms以内に応答しないとチャネル側でエラー
を検出されてしまうからである。
【0023】ステップ407で、共有メモリ56をアン
ロック(ロックの解除)をする。ステップ407の後、
共有メモリ56上の当該ボリュームのアクセス可能情報
フラグ700およびデバイス情報テーブル800の読み
直し(リトライ)を行うため、図5中のステップ200
へ進む。
【0024】ステップ408で、タイマ1200の値が
50ms未満か判断する。タイマ1200の値が50m
s未満であれば、ステップ402へ進み、リトライを行
う。タイマ1200の値が50ms 以上であれば、ス
テップ409へ進む。
【0025】ステップ409で、B.T.F報告フラグ
900の現在入出力処理しているチャネルインタフェー
ス制御部のフラグを1とする。本ケースでは、B.T.
F報告フラグ900中のチャネルインタフェース22用
903を1とする。
【0026】ステップ410で、デバイスビジー(デバ
イス使用中)の処理を行う。ステップ410の処理終了
後、図5中のステップ211へ行き、デバイスビジー
(デバイス使用中)を報告する。
【0027】ステップ411で、デバイス情報テーブル
800中のLONG BUSYフラグ801が1か判断
する。もし、デバイス情報テーブル800中のLONG
BUSYフラグが1であれば、ステップ409へ進
む。もし、デバイス情報テーブル800中のLONG
BUSYフラグ801が1でなければ、ステップ412
へ進む。
【0028】ステップ412で、デバイス情報テーブル
800中のSHORT BUSYフラグ802が1か判
断する。もし、デバイス情報テーブル800中のSHO
RTBUSYフラグ802が1であれば、ステップ40
9へ進む。もし、デバイス情報テーブル800中のSH
ORT BUSYフラグ802が1でなければ、アクセ
ス可能情報反転中で自分以外のディレクタのマイクロプ
ロセッサ60がアクセスしていないと判断し図5中のス
テップ205へ進む。
【0029】次に図8について、説明する。ステップ5
00でデバイス情報テーブル800中のSHORT B
USYフラグ802が1か判断する。もしデバイス情報
ケーブル800中のSHORT BUSYフラグ802
が1でなければ、図7中のステッフ402へ進む。も
し、デバイス情報テーブル800中のSHORT BU
SYフラグ802が1であれば、ステップ501へ進
む。
【0030】ステップ501で、共有メモリ56からパ
スグループ マトリックス情報1000を読み込み、ア
ンロック(ロック解除)する。 ステップ502でリト
ライ情報フラグ1100中のSHORT BUSYリト
ライフラグ1102を1とする。
【0031】ステップ503で、リトライ情報フラグ1
100中のLONG BUSYリトライフラグ1101
とアクセス可能情報フラグ反転リトライフラグ1103
を0とする。
【0032】ステップ504で、現在入出力要求を行っ
ているチャネルインタフェース制御部のパスグループ
マトリックス情報1000にB.T.F報告フラグ90
0が立っているか判断する。本ケースにおいては、パス
グループ マトリックス情報1000中のチャネルイン
タフェース制御部22用1003に、B.T.F報告フ
ラグ900のチャネルインタフェース制御部22用90
3が立っているかを判断する。もし、現在入出力要求を
行っているチャネルインタフェース制御部のパスグルー
プ マトリックス情報1000に、B.T.F報告フラ
グ900が立っていなければ、ステップ507へ進む。
もし、現在入出力要求を行ってチャネルインタフェース
制御部のパスグループ マトリックス情報1000に、
B.T.F報告フラグ900が立っていれば、他ディレ
クタのマイクロプロセッサ60が、上位装置に対し、
B.T.F報告中と認識し、ステップ505へ進む。
【0033】ステップ505でタイマ1200の値を1
9オsカウントアップする。この19オsという値は、
マイクロプログラムのSHORT BUSYリトライ処
理時間である。
【0034】ステップ506で、タイマ1200の値が
400msを越えたか判断する。もし、タイマ1200
の値が400msを越えていれば通常のB.T.F処理
はだいたい数msで終了するため、SHORT BUS
Yタイムアウトと認識する。もし、タイマ1200の値
が400msを越えていなければ、共有メモリ56上の
当該ボリュームのアクセス可能情報フラグ700および
デバイス情報テーブル800の読み直し(リトライ)を
行うため、図5中のステップ200へ進む。
【0035】ステップ507で、タイマ1200の値を
2.07msからカウントアップする。2.07msと
いう値は、マイクロプログラムのSHORT BUSY
リトライ処理時間である。
【0036】ステップ508でタイマ1200の値が4
00msを越えたか判断する。もし、タイマ1200の
値が400msを越えていなければ、図6中のステップ
304へ進む。もし、タイマ1200の値が400ms
を越えていれば、SHORTBUSYタイムアウトを認
識し、ステップ509へ進む。
【0037】ステップ509で、SHORT BUSY
タイムアウトとし、エラー処理を行う。ここでのエラー
処理は、センスバイトの作成等である。
【0038】以上で図5〜図8におけるマイクロプロセ
ッサ60で実行するボリューム排他制御処理および入出
力要求におけるコマンド処理(図4中のステップ107
の詳細)の説明を終了する。図5〜図8の処理における
要点を以下に示す。
【0039】(1)アクセス可能情報フラグ700に現
在入出力処理要求しているチャネルインタフェース制御
部に相当するフラグ(本ケースではアクセス可能情報フ
ラグ700中のチャネルインタフェース22用703)
が立っていない、かつアクセス可能情報フラグ反転中で
はない場合、50msの間リトライし、状態が変化しな
い場合、デバイスビジー(デバイス使用中)とする。
【0040】(2)デバイス情報テーブル800中のア
クセス可能情報フラグ反転中フラグ803が1、かつリ
トライ情報フラグ1100中のアクセス可能情報反転リ
トライフラグが1で、自分以外のディレクタが上位装置
からの入出力要求を処理していない場合、無条件に当該
ボリュームの入出力処理を行う。
【0041】(3)デバイス情報テーブル800中のS
HORT BUSYフラグ802が1かつボリューム使
用ディレクタ情報804が自分以外のMP番号の場合、
最大400msの間、2msの間隔で共有メモリ56を
参照することにより、B.T.Fの沈み込みの防止およ
び上位装置からの入出力要求競合時共有メモリ56上の
情報のアクセス(情報の参照または更新)頻度を変化さ
せる。
【0042】(4)デバイス情報テーブル800中のア
クセス可能情報フラグ反転中フラグ803が1かつリト
ライ情報フラグ1100中のアクセス可能情報フラグ反
転リトライフラグが1で、自分以外のディレクタが上位
装置からの入出力要求を処理している場合、デバイスビ
ジー(デバイス使用中)とする。
【0043】次に図9について説明する。図9は、マイ
クロプロセッサ60で行う入出力終了処理の概略フロー
である。図9も、前記の条件(1ボリューム構成で、中
央処理装置1のチャネル4からケーブル10を通じて、
半導体記憶装置20のチャネルインタフェース制御部2
2に入出力要求が発行され、クラスタ32内のディレク
タ30が処理する場合)で説明する。
【0044】まず、ステップ600で、ステップ103
で選択したチャネルインタフェース制御部以外のチャネ
ルインタフェース制御部に制御線69を通じて、使用中
(CUビジー)を解除を通知する。本ケースでは、チャ
ネルインタフェース制御部23〜チャネルインタフェー
ス制御部25に制御線69を通じて、使用中(CUビジ
ー)を解除を通知する。
【0045】ステップ601で、次に入出力要求を受け
付ける起動優先チャネルを決定する。起動優先チャネル
の決定方法は、特開平6−52087号公報で開示され
ている方法である。
【0046】ステップ602で共有メモリ56をロック
し、B.T.F報告フラグ900、アクセス可能情報フ
ラグ700およびデバイス情報テーブル800を読み込
む。
【0047】ステップ603で、今、入出力要求を処理
しているチャネルインタフェース制御部のアクセス可能
情報フラグ700は1か判断する。本ケースでは、アク
セス可能情報フラグ700中のチャネルインタフェース
制御部22用703が1か判断する。もし、今、入出力
要求を処理しているチャネルインタフェース制御部のア
クセス可能情報フラグ700が1でなければ、ステップ
613へ進む。もし、今、入出力要求を処理しているチ
ャネルインタフェース制御部のアクセス可能フラグ70
0が1であれば、ステップ604へ進む。
【0048】ステップ604では、デバイス情報テーブ
ル800中のボリューム使用ディレクタ情報804は自
MP番号か判断する。もし、デバイス情報テーブル80
0中のボリューム使用ディレクタ情報804が自MP番
号でなければ、ステップ613に進む。もし、デバイス
情報テーブル800中のボリュームディレクタ番号80
4が自MP番号であれば、ステップ605に進む。
【0049】ステップ605で、デバイス情報テーブル
800中のリザーブフラグ805が0か判断する。も
し、デバイス情報テーブルに800中のリザーブフラグ
805が0であれば、ステップ607へ進む。もし、デ
バイス情報テーブル800中のリザーブフラグが0でな
ければ、ステップ606へ進む。
【0050】ステップ606で、上位装置からリザーブ
中のため、共有メモリ56よりパスグループ マトリッ
クス情報1000を読み込み、当該チャネルインタフェ
ース制御部のパスグループ マトリックス情報1000
をアクセス可能情報フラグ700にセットする。本ケー
スにおいては、パスグループ マトリックス情報100
0中のチャネルインタフェース制御部22用1003を
アクセス可能情報フラグ700にセットする。この後、
ステップ611へ進む。
【0051】ステップ607で、入出力要求は正常終了
したか判断する。もし、入出力要求が正常終了していな
ければ、ステップ614へ進む。もし、入出力要求が正
常終了していれば、ステップ608へ進む。
【0052】ステップ608で、B.T.F報告フラグ
900中のチャネルインタフェース制御部22用903
〜チャネルインタフェース制御部用29用910のいず
れか1つが立っているか判断する。B.T.F報告フラ
グ900中のチャネルインタフェース制御部22用90
3〜チャネルインタフェース制御部29用910のいず
れか1つが立っていない場合、ステップ614へ進む。
B.T.F報告フラグ900のチャネルインタフェース
制御部22用903〜チャネルインタフェース制御部2
9用910のいずれか1つ立っている場合、ステップ6
09へ進む。
【0053】ステップ609で、B.T.F報告フラグ
900をアクセス可能情報フラグ700にセットする。
【0054】ステップ610で、デバイス情報テーブル
800中のアクセス可能情報反転中フラグ803を1と
する。ステップ609とステップ610で、B.T.F
の沈み込みを防止する効果がある。
【0055】ステップ611で、デバイス情報テーブル
800中のLONG BUSYフラグ801、SHOR
T BUSYフラグ802およびボリューム使用ディレ
クタ情報804を0とする。
【0056】ステップ612で、共有メモリ56にアク
セス可能情報フラグ700およびデバイス情報テーブル
800を書き込む。
【0057】ステップ613で、共有メモリ56上のそ
の他の情報を更新、共有メモリ56をアンロック(ロッ
クの解除)をする。共有メモリ上のその他の情報とは、
入出力回数等の統計情報等である。
【0058】ステップ614で、アクセス可能情報フラ
グ700のチャネルインタフェース制御部22用703
からチャネルインタフェース制御部29用710のすべ
てを1とする。
【0059】本実施例によれば、複数の計算機システム
からシェアされても各計算機システムからの負荷を均一
化することができる。
【0060】本実施例では、半導体記憶制御装置20,
21のチャネルインタフェース制御部は4つずつであっ
たが、チャネルインタフェース制御部が4つ以上でも4
つ以下でも本発明は適用可能であることは、言うまでも
ない。
【0061】本実施例は、中央処理装置が3台の場合で
あったが、中央処理装置が3台以上でも3台以下でも適
用可能であることは言うまでもない。
【0062】本実施例では、チャネルインタフェース制
御部22〜29にローカルプロセッサを持っていない
が、チャネルインタフェース制御部22〜29にローカ
ルプロセッサを持っていても、本発明は適用可能であ
る。
【0063】また、本実施例では、共有メモリ56が半
導体記憶装置50にある例であったが。共有メモリ56
が半導体記憶制御装置20,21にあっても本発明は適
用可能である。
【0064】本実施例は、半導体記憶サブシステムに対
して、本発明を適用したものであったが、磁気ディスク
サブシステム等の外部記憶制御装置にも適用可能であ
る。
【0065】なお、本実施例は、記憶制御装置に対し
て、本発明を適用したものであったが、記憶制御装置以
外の情報処理装置、例えば、通信制御装置、中央処理装
置等にも適用可能である。 本発明は、前記実施例に限
定されるものではなく、その要旨を逸脱しない範囲で種
々変更可能であることは言うまでもない。
【0066】
【発明の効果】本発明によれば、個々の外部記憶制御装
置において独立に各上位装置からの入出力の負荷を効率
良く、均一化できるという効果が得られる。
【図面の簡単な説明】
【図1】本発明の一実施例である情報処理サブシステム
の概要を示すブロック図。
【図2】本発明の一実施例である情報処理制御装置の概
要を示すブロック図。
【図3】本発明の一実施例である情報処理装置の概要を
示すブロック図。
【図4】本発明の一実施例である負荷均衡制御方式の作
用の一例を示す流れ図。
【図5】本発明の一実施例である負荷均衡制御方式の作
用の一例を示す流れ図。
【図6】本発明の一実施例である負荷均衡制御方式の作
用の一例を示す流れ図。
【図7】本発明の一実施例である負荷均衡制御方式の作
用の一例を示す流れ図。
【図8】本発明の一実施例である負荷均衡制御方式の作
用の一例を示す流れ図。
【図9】本発明の一実施例である負荷均衡制御方式の作
用の一例を示す流れ図。
【図10】本発明の一実施例である負荷均衡制御方式に
おける、アクセス可能情報フラグの構造の一例を示す説
明図。
【図11】本発明の一実施例である負荷均衡制御方式に
おける、デバイス情報テーブルの構造の一例を示す説明
図。
【図12】本発明の一実施例である負荷均衡制御方式に
おける、Busy To Free(B.T.F)報告
フラグの構造の一例を示す説明図。
【図13】本発明の一実施例である負荷均衡制御方式に
おける、パスグループ マトリックス情報の構造の一例
を示す説明図。
【図14】本発明の一実施例である負荷均衡制御方式に
おける、リトライ情報フラグの構造の一例を示す説明
図。
【図15】本発明の一実施例である負荷均衡制御方式に
おける、タイマの構造の一例を示す説明図。
【符号の説明】
1〜4…中央処理装置、4〜9…チャネル、10〜15
…ケーブル、20,21…半導体記憶制御装置、22〜
29…チャネルインタフェース制御装置、30,31,
34,35…ディレクタ、32,36…クラスタ、3
3,37…サービスプロセッサ、38〜41…データ転
送バスおよび制御線、50…半導体記憶装置、51〜5
4…ドライブインタフェース制御部、55…共有メモリ
制御線、56…共有メモリ、57…メモリ制御線、58
…メモリ、60…マイクロプロセッサ、61…メモリ、
62…選択回路、63…データ転送制御回路、64…ド
ライブインタフェース制御部、65〜68…データ転送
バス、69〜75…制御線、700…アクセス可能情報
フラグ、800…デバイス情報テーブル、900…Bu
sy To Free(B.T.F)報告フラグ、10
00…パスグループ マトリックス情報、1100…リ
トライ情報フラグ、1200…タイマ

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】揮発性または不揮発性の記憶媒体と外部記
    憶制御装置が制御するための共有メモリを備えた外部記
    憶装置とこの外部記憶装置を制御する外部記憶制御装置
    と、この外部記憶制御装置を介して前記外部記憶装置を
    共有し、当該外部記憶装置に対するデータの書き込みお
    よび読み出しなどの入出力を行う複数の上位装置からな
    る情報処理システムにおいて、 外部記憶装置内に存在する共有メモリ上の情報を外部記
    憶制御装置が参照および更新し、共有メモリへの情報ア
    クセス(情報の参照および更新)頻度を変化させて、前
    記外部記憶制御装置において個々の上位装置からの入出
    力負荷を均一化させることを特徴とする負荷均衡制御方
    法。
  2. 【請求項2】前記情報処理システムにおいて、外部記憶
    制御装置が前記記憶装置内に存在する共有メモリ上の情
    報を制御し、個々の上位装置からの入出力負荷を均一化
    させることを特徴とする負荷均衡制御方法。
JP7127397A 1997-03-25 1997-03-25 負荷均衡制御方式 Pending JPH10269161A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7127397A JPH10269161A (ja) 1997-03-25 1997-03-25 負荷均衡制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7127397A JPH10269161A (ja) 1997-03-25 1997-03-25 負荷均衡制御方式

Publications (1)

Publication Number Publication Date
JPH10269161A true JPH10269161A (ja) 1998-10-09

Family

ID=13455954

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7127397A Pending JPH10269161A (ja) 1997-03-25 1997-03-25 負荷均衡制御方式

Country Status (1)

Country Link
JP (1) JPH10269161A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001014261A (ja) * 1999-06-30 2001-01-19 Nec Corp ファイバチャネル接続磁気ディスク装置およびファイバチャネル接続磁気ディスク制御装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001014261A (ja) * 1999-06-30 2001-01-19 Nec Corp ファイバチャネル接続磁気ディスク装置およびファイバチャネル接続磁気ディスク制御装置
US6745281B1 (en) 1999-06-30 2004-06-01 Nec Corporation Fiber channel connection magnetic disk device and fiber channel connection magnetic disk controller

Similar Documents

Publication Publication Date Title
US5239649A (en) Channel path load balancing, through selection of storage volumes to be processed, for long running applications
US6499075B2 (en) Computer system including a device with a plurality of identifiers
US6625691B2 (en) Storage subsystem with management site changing function
JPH034940B2 (ja)
US6408369B1 (en) Internal copy for a storage controller
US7080196B1 (en) Raid apparatus and access control method therefor which balances the use of the disk units
US6748494B1 (en) Device for controlling access to units of a storage device
JP6617461B2 (ja) 制御装置、制御プログラム、及び制御方法
US5708784A (en) Dual bus computer architecture utilizing distributed arbitrators and method of using same
JPH07253960A (ja) マルチプロセッサシステムにおけるipl方式
JPH10269161A (ja) 負荷均衡制御方式
US10783096B2 (en) Storage system and method of controlling I/O processing
JP3425355B2 (ja) 多重書き込み記憶装置
JPH10232849A (ja) ディスク制御装置
JPH11184761A (ja) リードモディファイライト制御システム
JPH07334467A (ja) 計算機システム
JP2003131944A (ja) クラスタ構成記憶システム
JP2024087143A (ja) ストレージ装置
JPS5985559A (ja) フアイル制御システム
JPH02113356A (ja) 入出力制御方式
JPH01267764A (ja) 周辺制御装置
JPS59173818A (ja) デ−タパス管理方式
JPS63195723A (ja) フアイル管理装置
JPH03198133A (ja) 分散データベース処理方式