JP2986355B2 - データ転送システム - Google Patents

データ転送システム

Info

Publication number
JP2986355B2
JP2986355B2 JP6326024A JP32602494A JP2986355B2 JP 2986355 B2 JP2986355 B2 JP 2986355B2 JP 6326024 A JP6326024 A JP 6326024A JP 32602494 A JP32602494 A JP 32602494A JP 2986355 B2 JP2986355 B2 JP 2986355B2
Authority
JP
Japan
Prior art keywords
data storage
storage device
operating system
data
sense
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.)
Expired - Lifetime
Application number
JP6326024A
Other languages
English (en)
Other versions
JPH07271618A (ja
Inventor
リチャード・エイチ・ジョンソン
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH07271618A publication Critical patent/JPH07271618A/ja
Application granted granted Critical
Publication of JP2986355B2 publication Critical patent/JP2986355B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、一般にコンピュータ周
辺デバイス・ドライバに関し、特に、コンピュータ周辺
デバイス・ドライバにおけるエラー回復モジュールに関
する。
【0002】
【従来の技術】多くのコンピュータ・システムが、ホス
ト・コンピュータ・オペレーティング・システムを、デ
ータ記憶媒体として使用される1つまたは複数の周辺装
置にリンクする。例えばIBM社によるAIX及びOS
/2オペレーティング・システムは、いわゆるSCSI
(Small Computer System Interface)インタフェース
形式を有する複数の異なるタイプのデータ記憶周辺装置
とインタフェースする。
【0003】SCSI装置には、磁気テープ・データ記
憶装置、磁気ディスク・データ記憶装置、及び光ディス
ク・データ記憶装置が含まれる。更にSCSI装置に
は、各々が複数のデータ記憶装置を含む媒体チェンジャ
・ライブラリ装置が含まれる。媒体チェンジャ装置で
は、データ記憶ディスクの1つがあるとき選択され、次
に装置内の移送要素と関連されて、記憶装置のデータを
アクセスする。
【0004】多数のデータ記憶装置が様々なメーカによ
り製造されており、これらの各々はその固有のオペレー
ティング・コマンド・シーケンスにより、データを転送
する。それにも関わらず、オペレーティング・システム
の能力を不当に制限することなしに、使用可能なデータ
記憶装置と対話するために、ホスト・オペレーティング
・システムが可能な限り多くの異なるタイプのデータ記
憶装置と通信することが望まれる。
【0005】従って、ホスト・オペレーティング・シス
テムが複数の異なるタイプのデータ記憶装置と通信する
ことを可能にするために、ホスト・オペレーティング・
システムは、通常、デバイス・ドライバとして参照され
るソフトウェア・モジュールを含む。ホスト・オペレー
ティング・システムにより使用されることが要求される
各データ記憶装置に対して、ホスト・オペレーティング
・システムは、特定の装置と通信するために個々に適合
化された関連デバイス・ドライバを含まなければならな
い。各デバイス・ドライバは、オペレーティング・シス
テムとデバイス・ドライバに関連付けられるデータ記憶
装置との間の媒介として機能する。より詳細には、デバ
イス・ドライバはオペレーティング・システムから入出
力要求を受信し、次にその入出力要求を満たすためのコ
マンドをその関連データ記憶装置に発行する。
【0006】デバイス・ドライバの重要な機能は、エラ
ー回復である。より詳細には、データ記憶装置は、時間
の経過と共に装置からの入出力を妨げるエラー状態を経
験するかもしれず、デバイス・ドライバはエラー回復の
サポートを提供しなければならない。
【0007】データ記憶装置はエラー状態を経験する
と、エラー状態を表すセンス・バイトとして参照される
データ・ストリング生成し、センス・バイトがデバイ
ス・ドライバに送信される。センス・バイトにもとづ
き、デバイス・ドライバは特定のエラー及び特定の装置
にもとづき、どのエラー回復アクションが適切であるか
を判断する。こうした回復アクションには、例えばリセ
ット、再試行などが含まれる。
【0008】様々なデータ記憶装置により使用されるセ
ンス・バイト形式の間には、ある共通性が存在するが、
その共通性は概略的で一般的な指示しか提供しないこと
が珍しくない。特定のエラー指示は、完全なセンス・バ
イト・ストリングを読取ることによってのみ提供され、
特定のデータ記憶装置により実行される他の入出力機能
と同様、ある装置のセンス・バイト・ストリングの大部
分は、特定の装置に固有である。従って、報告されたエ
ラーの性質を十分に詳細に渡り確認するために、デバイ
ス・ドライバのエラー回復部分は、特定の装置に対応し
て個々に適合化されなければならない。
【0009】オペレーティング・システムにより使用さ
れることが要求されるデータ記憶装置の各タイプに対応
して、オペレーティング・システムは、関連付けられる
デバイス・ドライバを含まなければならない。また各デ
バイス・ドライバは、特定の装置に対応して設計された
エラー回復モジュールを含まなければならないことが理
解されよう。残念ながら、このような2重のシステム設
計の労力は、相当な時間及びコストを費やすことにな
る。
【0010】しかしながら、本発明により認識されるよ
うに、特定のデータ記憶装置が特定の装置に固有のセン
ス・バイト形式によりエラー状態を報告しても、特定の
タイプのデータ記憶装置の根元的なエラー状態及び要求
される回復アクションは、装置毎に同一である傾向があ
る。
【0011】
【発明が解決しようとする課題】本発明の目的は、2重
のシステム設計を回避することのできる、多くの異なる
タイプのデバイス・ドライバにより交換可能(intercha
ngeable )に使用されるエラー回復モジュールを提供す
ることである。
【0012】本発明の別の目的は、報告されたエラーの
性質を、十分に詳細に渡り確認することのできるエラー
回復モジュールを提供することである。
【0013】更に本発明の別の目的は、利用が簡単で、
コスト的に有効なエラー回復モジュールを提供すること
である。
【0014】
【課題を解決するための手段】ホスト・コンピュータに
おいて使用されるエラー回復モジュールが開示される。
ホスト・コンピュータは第1のデバイス・ドライバ及び
第2のデバイス・ドライバを含み、これらはホスト・コ
ンピュータとそれぞれ第1及び第2のデータ記憶装置と
の間のデータ転送を発生する、それぞれ第1及び第2の
コマンド・シーケンスに応答して動作する。各データ記
憶装置は、そのデータ記憶装置におけるエラー状態を表
すセンス・バイトを生成し、エラー回復モジュールが各
デバイス・ドライバに動作可能に結合される。
【0015】本発明によれば、エラー回復モジュール
は、データ記憶装置からセンス・バイトを受信し、それ
に応答して複数のアクション・トークンの1つを生成す
るセンス・バイト相関子(correlator)を含む。更にエ
ラー回復モジュールは、アクション・トークンを受信
し、それに応答して複数の所定のエラー回復アクション
の1つを表すアクション信号を生成するアクション実行
子(executor)を含む。本発明によれば、エラー回復モ
ジュールがアクション信号をデバイス・ドライバに送信
し、エラー回復を容易にする。
【0016】好適な実施例では、第1のエラー回復モジ
ュールが第1のデバイス・ドライバに関連付けられ、第
2のエラー回復モジュールが第2のデバイス・ドライバ
に関連付けられる。この実施例では、第1のエラー回復
モジュールが第2のエラー回復モジュールと交換可能
なる。或いは、全てのデバイス・ドライバに共通の単一
のエラー回復モジュールが提供されてもよい。
【0017】好適には、センス・バイト相関子は、それ
ぞれが第1及び第2のデータ記憶装置を表す第1及び第
2のセンス・バイト復号器を含む。各センス・バイト復
号器は、関連記憶装置からのセンス・バイトをアクショ
ン・トークンに相関付ける。本発明により提供されるよ
うに、第1のデータ記憶装置は、第2のデータ記憶装置
の動作特性とは異なる動作特性を有する。
【0018】更にアクション実行子は、好適には、セン
ス・バイト相関子から受信されたアクション・トークン
を、所定のエラー回復アクションに相関付けるように構
成されるトークン復号器を含む。少なくとも1つのデー
タ記憶装置が、データ記憶装置における所定の複数の各
エラー状態に応答して、それぞれ複数のセンス・バイト
を生成し、センス・バイト相関子がデータ記憶装置によ
り生成される複数のセンス・バイトの各々にもとづき、
アクション・トークンを生成する。
【0019】本発明の別の態様では、コンピュータ・シ
ステムがホスト・コンピュータと、ホスト・コンピュー
タとの間のデータ転送のために前記ホスト・コンピュー
タに接続される第1のデータ記憶装置とを含む。本発明
によれば、第1のデータ記憶装置においてエラーが発生
すると、第1のデータ記憶装置が第1のセンス・バイト
・セットを生成する。
【0020】また本発明のシステムは、ホスト・コンピ
ュータとの間のデータ転送のために、前記ホスト・コン
ピュータに接続される第2のデータ記憶装置を含む。第
2のデータ記憶装置は、第2のデータ記憶装置において
エラーが発生すると、第1のセンス・バイト・セットと
は異なる第2のセンス・バイト・セットを生成する。
【0021】本発明によれば、ホスト・コンピュータと
第1のデータ記憶装置との間のデータ転送を制御する第
1のデバイス・ドライバが提供される。第1のセンス・
バイト・セットに応答して、所定のエラー回復アクショ
ンを表すアクション信号を生成するために、第1のエラ
ー回復モジュールが、第1のデバイス・ドライバに関連
付けられる。更にホスト・コンピュータと第2のデータ
記憶装置との間のデータ転送を制御するために第2のデ
バイス・ドライバが提供され、第2のセンス・バイト・
セットに応答して、所定のエラー回復アクションを表す
アクション信号を生成するために、第2のエラー回復モ
ジュールが、第2のデバイス・ドライバに関連付けられ
る。第1のエラー回復モジュールは、実質的に第2のエ
ラー回復モジュールと同じである。
【0022】本発明の更に別の態様では、データ転送シ
ステムがオペレーティング・システムを含み、複数のデ
ータ記憶装置がこのオペレーティング・システムに関連
付けられる。各データ記憶装置はそれぞれのコマンド・
シーケンスに応答し、データ記憶装置とオペレーティン
グ・システムとの間でデータを転送する。あるデータ記
憶装置のコマンド・シーケンスは、別のデータ記憶装置
のコマンド・シーケンスとは異なる。また複数のデバイ
ス・ドライバがそれぞれデータ記憶装置に関連付けら
れ、データ記憶装置とオペレーティング・システムとの
間のデータ転送を制御する。
【0023】重要な点は、エラー回復手段が各デバイス
・ドライバに動作可能に結合される点である。エラー回
復手段はセンス・バイトをデータ記憶装置の1つから受
信し、それに応答して複数のアクション・トークンの1
つを生成する相関付け手段を含む。更にエラー回復手段
はアクション・トークンを受信し、それに応答して複数
の所定のエラー回復アクションの1つを表すアクション
信号を生成する実行子手段を含む。
【0024】更に本発明の別の態様では、オペレーティ
ング・システムと、それぞれのデバイス・ドライバに応
答する複数のデータ記憶装置との間のデータ転送の間の
エラー回復のための方法が開示される。各デバイス・ド
ライバはそれぞれのコマンド・シーケンスを生成し、あ
るデータ記憶装置のコマンド・シーケンスは別のデータ
記憶装置のコマンド・シーケンスとは異なる。本発明の
方法は、あるデータ記憶装置からセンス・バイトを受信
し、それに応答して複数のアクション・トークンの1つ
を生成するステップを含む。次にアクション・トークン
が受信され、それに応答して、複数の所定のエラー回復
アクションの1つを表すアクション信号が生成される。
【0025】本発明の別の態様では、複数のデータ記憶
装置にそれぞれ関連付けられる複数のデバイス・ドライ
バを含むオペレーティング・システムのエラー回復方法
において、複数のデータ記憶装置の任意の1つから、エ
ラー状態を表すセンス・バイトを受信するステップを含
む。本発明によれば、複数のデータ記憶装置の中の第1
及び第2のデータ記憶装置が、それぞれ第1及び第2の
コマンド・シーケンスに応答し、第1のコマンド・シー
ケンスは第2のコマンド・シーケンスとは異なる。セン
ス・バイトはそれにも関わらず、あるデータ記憶装置の
特性にもとづき、アクション・トークンに相関付けら
れ、エラー状態の回復アクションがアクション・トーク
ンに応答して決定される。
【0026】
【実施例】本発明の構造及びオペレーションの詳細に関
し、添付図を参照しながら説明する。図において、同一
番号は同様のパーツを表す。図1を参照すると、一般に
10で示されるデータ転送システムが示される。図示の
ように、データ転送システム10はコンピュータ12を
含み、これは関連するオペレーティング・システム14
を有する。好適な実施例では、コンピュータ12はIB
M社から提供されるRISC System/6000またはPS/2コ
ンピュータであり、オペレーティング・システム14
は、同様にIBM社から提供されるAIXまたはOS/
2オペレーティング・システムである。
【0027】図1では、データ転送システム10は、そ
れぞれのデータ記憶装置を制御する複数のコンピュータ
周辺デバイス・ドライバを含むように示される。より詳
細には、データ転送システム10は第1、第2及び第3
のデバイス・ドライバ16、18、20を含み、それぞ
れは第1、第2及び第3のデータ記憶装置22、24、
26を制御する。もちろん、データ転送システム10は
これより少ないまたは多い数のデバイス・ドライバを含
むことも可能である。
【0028】既知の技術の原理によれば、各デバイス・
ドライバ16、18、20は、オペレーティング・シス
テム14からデータ入出力要求を受信する。更に各デバ
イス・ドライバ16、18、20は、その関連データ記
憶装置22、24、26に適切なコマンド・シーケンス
を発行することにより、各入出力要求を実行する。それ
により、データ記憶装置22、24、26は入出力要求
に従いデータを転送する。このように各デバイス・ドラ
イバ16、18、20は、オペレーティング・システム
14と関連データ記憶装置22、24、26との間の媒
介となる。換言すると、各デバイス・ドライバ16、1
8、20は、オペレーティング・システム14と関連デ
ータ記憶装置22、24、26との間のデータ転送制御
装置として機能する。
【0029】本発明によれば、各デバイス・ドライバ1
6、18、20は、それぞれエラー回復モジュール(E
RM)16a、18a、20aを含む。これらについて
は以降で詳述される。オペレーティング・システム14
及びデバイス・ドライバ16、18、20と同様、ER
M16a、18a、20aはハードウェアまたはファー
ムウェアにより実現される。しかしながら、好適にはオ
ペレーティング・システム14及びデバイス・ドライバ
16、18、20と同様、ERM16a、18a、20
aはソフトウェアにより実現される。
【0030】本発明によれば、データ記憶装置22、2
4、26は任意の既知の適切な装置であり、好適にはデ
ータ記憶装置22、24、26をコンピュータ12に動
作可能に接続するためのSCSI接続を含む。例えば、
各データ記憶装置22、24、26は、Exabyte 8200テ
ープ・ドライブ、Exabyte 8500テープ・ドライブ、Exab
yte 8500Cテープ・ドライブ、IBM 7209-001またはIBM 7
209-002光ドライブ、Exabyte 10i媒体チェンジャ、Exab
yte 10e媒体チェンジャ、Exabyte 120媒体チェンジャ、
或いはSCSIアーキテクチャを好適には有する他の適
切な磁気ディスク・ドライブ、光ドライブまたは媒体チ
ェンジャ装置である。
【0031】上述のように、データ記憶装置22、2
4、26は互いに異なるか、または異なるベンダにより
提供される類似の装置である。換言すると、各データ記
憶装置22、24、26は、その関連付けられるデバイ
ス・ドライバ16、18、20からのコマンド・シーケ
ンスに応答して、データ記憶装置22、24、26とオ
ペレーティング・システム14との間でデータを転送す
る。データ記憶装置22、24、26のコマンド・シー
ケンスは、別のデータ記憶装置22、24、26のコマ
ンド・シーケンスとは異なってもよい。
【0032】データ記憶装置22、24、26のいずれ
かが入出力オペレーションの間にエラー状態に遭遇する
とする。例えば、装置22、24、26のいずれかのデ
ータ記憶媒体が入出力オペレーションの間に故障する
か、媒体がクリーニングを要求するとする。こうした数
多くのタイプのエラー状態が発生する可能性があること
が理解される。
【0033】SCSI装置の動作原理によれば、例えば
第1のデータ記憶装置22においてエラー状態が発生す
るとき、第1のデータ記憶装置22はエラーを表すセン
ス・バイト・ストリングを生成する。各センス・バイト
は数値または英数字の値を有する。図2はセンス・バイ
ト・エラー報告の一例を示し、第1のセンス・バイト要
素28を含む。第1のセンス・バイト要素28の値は、
通常、センス・キーとして参照され、エラーの性質の概
略指示を提供する。例えば、第1のセンス・バイト要素
28の値は、第1のデータ記憶装置22の媒体に関連し
て問題が発生したことを示す。
【0034】第1のデータ記憶装置22により生成され
るセンス・バイト・ストリングは、更に第2、第3及び
第4のセンス・バイト要素30、32、34を含む。第
2のセンス・バイト要素30は、時に追加センス・コー
ドとして参照され、第3のセンス・バイト要素32は、
時に追加センス・コード修飾子として参照される。
【0035】第2、第3及び第4のセンス・バイト要素
30、32、34の値は、第1のセンス・バイト要素2
8により提供される指示に加え、エラーの性質の追加指
示を提供する。例えば第2及び第3のセンス・バイト要
素は、共同して媒体問題が媒体の機構故障に起因するこ
とを示したりする。必要に応じて、更に追加のセンス・
バイト要素が提供されてもよい。このようにセンス・バ
イト要素28、30、32、34の完全なストリングを
読出すことにより、エラー状態が単に第1のセンス・バ
イト要素28が読出される場合に比較して、より詳細に
(すなわちより正確に)決定される。
【0036】データ記憶装置22、24、26が、共通
のセンス・バイト形式によりエラー状態報告を発行しな
い場合も発生する。図2に示される例では、第1のデー
タ記憶装置22は、エラー状態が4つのセンス・バイト
要素28、30、32、34のストリングとして報告さ
れるセンス・バイト形式を使用し、各センス・バイト要
素28、30、32、34は例えば2桁の値を有する。
【0037】一方、第2のデータ記憶装置24は、エラ
ー状態を報告するために、第1のデータ記憶装置22に
より使用されるセンス・バイト形式とは異なるセンス・
バイト形式を使用するかもしれない。例えば、第2のデ
ータ記憶装置24は、4つより多いまたは少ない数のセ
ンス・バイト要素を使用したり、2桁よりも多いまたは
少ないセンス・バイト要素を生成したり、或いは所定の
エラーを表すものの、同一のエラー条件の下で、第1の
データ記憶装置22により生成されるセンス・バイト値
とは異なる各センス・バイト要素の値を生成したりす
る。センス・バイト形式のこうした違いは、異なる記憶
装置タイプ或いは同一タイプの記憶装置における異なる
メーカ仕様に起因する。
【0038】それにも関わらず、オペレーティング・シ
ステム14は、各々が潜在的にエラー状態をその装置に
固有のセンス・バイト形式により報告する多くの異なる
データ記憶装置と動作可能であることが望まれる。しか
しながら、一方では、エラー回復システム設計の労力及
び具体化の重複を回避することが望まれる。
【0039】従って、以降で詳細に開示されるように、
エラー回復モジュール16a、18a、20aは互いに
実質的に同一であり、互いに交換可能である。結果的
に、単一のERMが提供されるだけでよく、その単一の
ERMが次に単に各デバイス・ドライバ16、18、2
0に、それぞれのERM16a、18a、20aとして
組込まれる。ERM16a、18a、20aの交換可能
により、ERM16a、18a、20aが、例えばオ
ペレーティング・システム14に組込まれる単一の共通
のERM(図示せず)により置換されることが理解され
る。こうした実施例では、各デバイス・ドライバ16、
18、20は、必要に応じて、共通のERMをアクセス
するようにプログラムされる。
【0040】第1のERM16aの詳細が、図3に示さ
れる。第2及び第3のERM18a、20aの構成に関
しても、第1のERM16aの構成と全て同一である。
【0041】図3に示されるように、第1のERM16
aは、一般に36で示される第1のセンス・バイト復号
器を含む。本発明によれば、第1のセンス・バイト復号
器36は、第1のデータ記憶装置22からの第1、第
2、第3及び第4のセンス・バイト要素28、30、3
2、34のストリングを、それぞれの数値アクション・
トークン38に相関付けるデータ・テーブルとして構成
される。本発明によれば、以降で詳述されるように、各
アクション・トークン38はそれぞれのエラー状態を表
す。例えばセンス・バイト復号器36は、"01、0
1、00、00"を含むセンス・バイト・ストリング
を、アクション・トークン"N+3"に相関付ける。
【0042】上述の開示によれば、第1のセンス・バイ
ト復号器36は、エラー報告において、第1のデータ記
憶装置22が許可する限りの細分性すなわち精密さを提
供するために使用される。例えば第1のセンス・バイト
要素28の値"01"は、例えば"媒体エラー"などの一般
的なエラー状態を示す。第2、第3及び第4のセンス・
バイト要素30、32、34の値は、"空白媒体"、"媒
体故障"、"媒体非互換"、"媒体クリーニング要求"など
の詳細な情報を提供する。結果的に、第1のデータ記憶
装置22からの完全なセンス・バイト・ストリングを復
号化することにより、第1のセンス・バイト復号器36
は、第1のセンス・バイト要素28だけにもとづく(す
なわちセンス・キーだけにもとづく)アクション・トー
クン信号の場合よりも、報告されたエラー状態をより詳
細に表すアクション・トークン38信号を生成する。
【0043】ERM16aが、第1のセンス・バイト復
号器36と実質的に同様に構成される、すなわちセンス
・バイト・ストリングをそれぞれのアクション・トーク
ンに相関付けるように構成される第2及び第3のセンス
・バイト復号器(図示せず)を含むことが理解される。
しかしながら、第1のセンス・バイト復号器36と異な
り、第2及び第3のセンス・バイト復号器は、それぞれ
第2及び第3のデータ記憶装置24、26からのセンス
・バイトを、アクション・トークンに相関付けるように
構成される。
【0044】このように、第1のERM16aは、オペ
レーティング・システム14に結合されるように要求さ
れる各データ記憶装置に対応する、それぞれのセンス・
バイト復号器を含む。センス・バイト復号器は関連する
データ記憶装置のメーカのハードウェア・インタフェー
ス仕様を参考にして構成され、こうした仕様は、通常、
装置により生成されるセンス・バイト・ストリング及び
センス・バイトの意味をリストする。
【0045】上述のように、異なるメーカにより製造さ
れる単一のタイプのデータ記憶装置(例えばテープ・ド
ライブ、光ディスク)は、同じエラー状態を報告するた
めに、異なるセンス・バイト形式を使用したりする。例
えば第1のデータ記憶装置22は、"媒体クリーニング
要求"を報告するために第1の形式を使用し、第2のデ
ータ記憶装置24は、"媒体クリーニング要求"を報告す
るために、第1の形式とは異なる第2のセンス・バイト
形式を使用したりする。それにも関わらず、本発明によ
り認識されるように、必要な回復アクションは、通常、
装置を製造したメーカに関係なく、各特定のエラーに対
して、デバイス毎に同一である。
【0046】上述の説明を考慮し、ERM16aは複数
のトークン復号器を含む。それぞれのトークン復号器
は、オペレーティング・システム14により使用される
ことが要求される各タイプのデータ記憶装置に対応して
提供される。すなわち、第1のトークン復号器は光ディ
スク装置に対応して提供され、第2のトークン復号器は
媒体チェンジャ装置に対応して提供され、第3のトーク
ン復号器は磁気テープ装置に対応して提供される。
【0047】本発明の各トークン復号器は表形式で構成
され、各トークン復号器の入力引数が、特定のデータ記
憶装置に適切なセンス・バイト復号器からのアクション
・トークン(例えばアクション・トークン38)とな
る。トークン復号器は、各アクション・トークンを1つ
または複数のエラー回復アクション・コードに相関付
け、ERM16aがエラー回復アクション・コードを表
す信号を、デバイス・ドライバ16に送信する。これに
ついては以降で詳述される。各アクション・トークンに
対して 呼出される1つまたは複数のエラー回復アクシ
ョンには、とりわけ、次のものが含まれる。 1.エラーの記録 2.テスト・ユニット・レディSCSIコマンドを第1
のデータ記憶装置22に発行 3.SCSI装置リセット・メッセージを第1のデータ
記憶装置22に発行 4.SCSI予約ユニット・コマンドを第1のデータ記
憶装置22に発行 5.最終SCSIコマンドを装置に対して再試行 6."n"秒遅延し、次に復帰 7.モード選択設定を装置に対して再実行 8.テープ・カートリッジの続く位置決めを実行 9.SCSI開始ユニット・コマンドを装置に発行 10.SCSI読取り容量コマンドを装置に発行
【0048】図4を参照すると、本発明のエラー回復論
理が示される。本開示を明確にするために、ERM16
aに関連付けられる第1のデバイス・ドライバ16のオ
ペレーションについて述べる。第2及び第3のデバイス
・ドライバ18、20及び関連付けられるERM18
a、20aのオペレーションについても、実質的な全て
の点で、第1のデバイス・ドライバ16及び第1のER
M16aと同一であることが理解されよう。
【0049】図4のブロック40から理解されるよう
に、第1のデータ転送装置22においてエラー状態が発
生すると、第1のデータ記憶装置22は問題問い合わせ
(problem inquiry)を第1のデバイス・ドライバ16
に送信する。問題問い合わせは第1のデバイス・ドライ
バ16に、第1のデータ記憶装置22においてエラー状
態が発生したことを通知する。
【0050】問題問い合わせに応答して、第1のデバイ
ス・ドライバ16はブロック42で、データ記憶装置2
2に、第1のデータ記憶装置22により経験された特定
のエラー状態を表すセンス・バイトを問い合わせる。第
1のデータ記憶装置22は第1のデバイス・ドライバに
センス・バイトを送信し、第1のデバイス・ドライバは
ブロック44でセンス・バイトを受信する。
【0051】次にブロック46で、第1のデバイス・ド
ライバ16は第1のERM16aに、第1のデータ記憶
装置22の識別を表す信号と共に、センス・バイトを送
信する。更に好適な実施例では、第1のデバイス・ドラ
イバ16はERM16aに、それぞれが第1のデバイス
・ドライバ16内の構造を示すポインタを送信し、これ
らのポインタに対して、後述される回復アクション・コ
ード、エラー・ステータス及び完了メッセージが送信さ
れる。
【0052】次にブロック48で、第1のERM16a
は、第1のデータ記憶装置22の識別にもとづき、使用
するセンス・バイト復号器を決定する。本開示のため
に、図3に示される第1のセンス・バイト復号器36が
参照されるものとする。
【0053】本発明の論理を続けると、第1のERM1
6aは判断ブロック50に移行し、ここで第1のERM
16aは、ブロック46で受信されたセンス・バイト
と、センス・バイト復号器36内の使用可能な入力引数
の間が一致するかどうかを判断する。一致すると、第1
のERM16aはブロック52に移行し、例えば図3に
示されるアクション・トークン38などの、相関するア
クション・トークンを検索する。ブロック48乃至52
は、センス・バイト相関子を確立することが理解されよ
う。
【0054】次にブロック54で、第1のERM16a
は、ブロック52で検索されたアクション・トークンを
入力引数として使用することにより、トークン復号器か
ら回復アクション・コードを獲得する。回復アクション
・コードは、上述のまたは図3に関連して述べられる1
つまたは複数の回復アクション1乃至10を表す。本発
明によれば、回復アクション・コードにより表されるア
クションは、第1のデータ記憶装置22のタイプに対し
て報告されるエラー状態からの回復に好適である。次
に、第1のERM16aは、ブロック56で、回復アク
ション・コードを第1のデバイス・ドライバ16に送信
し、それに応答して、第1のデバイス・ドライバ16は
第1のデータ記憶装置22に対して、適切な回復アクシ
ョンを実行するように指令する。当業者には理解される
ように、ブロック54及び56はアクション実行子を確
立する。
【0055】第1のデータ記憶装置22により適切な回
復アクションが実行されると、第1のデータ記憶装置2
2は、ブロック58で、第1のデバイス・ドライバ16
に(従って第1のERM16aに)、エラー回復アクシ
ョンの結果を表すメッセージを送信する。
【0056】次に、第1のERM16aは、ブロック6
0で、エラーの性質を表すエラー・ステータス・メッセ
ージを第1のデバイス・ドライバ16に送信し、第1の
デバイス・ドライバ16はエラー・ステータスをオペレ
ーティング・システム14に受渡す。更にブロック62
で、第1のERM16aは、エラー回復アクションの結
果を表すエラー完了メッセージを第1のデバイス・ドラ
イバ16に送信し、第1のデバイス・ドライバ16は、
エラー完了メッセージをオペレーティング・システム1
4に受渡す。必要に応じ、第1のERM16aは、オペ
レーティング・システム14と第1のデータ記憶装置2
2との間で転送されなかった残余バイト数を表すメッセ
ージを、第1のデバイス・ドライバ16に送信すること
もできる。ブロック50に戻り、ブロック46で受信さ
れたセンス・バイトと、センス・バイト復号器36内で
使用可能な入力引数との間に一致が見い出されない場合
には、第1のERM16aはブロック64に移行し、こ
こでERM16aはセンス・キーすなわち第1のセンス
・バイト要素28にもとづき、概略エラー記述を決定す
る。こうした一致の失敗は、センス・バイト復号器36
を生成するために使用されるメーカのハードウェア・イ
ンタフェース仕様が、旧式(out of date)になった場
合に発生する。ブロック66で、第1のERM16aは
概略エラー記述を第1のデバイス・ドライバ16に報告
する。
【0057】ここで詳細に示され説明されたコンピュー
タ周辺装置のエラー回復のための特定の方法及び装置
は、本発明の上述の目的を完全に達成することが可能で
あるが、本発明は上述の実施例に限られるものではな
く、当業者には明らかな本発明の範囲に含まれる他の実
施例も含むものである。
【0058】
【0059】
【0060】
【発明の効果】以上説明したように、本発明によれば、
2重のシステム設計を回避することのできる、多くの異
なるタイプのデバイス・ドライバにより交換可能に使用
されるエラー回復モジュールを提供することができる。
【0061】更に本発明によれば、報告されたエラーの
性質を、十分に詳細に渡って確認することのできるエラ
ー回復モジュールを提供することができる。
【0062】更に本発明によれば、利用が簡単で、コス
ト的に有効なエラー回復モジュールを提供することがで
きる。
【図面の簡単な説明】
【図1】本発明のデータ転送システムを表す図である。
【図2】データ記憶装置により生成されるエラー状態セ
ンス・バイト・ストリングの1タイプを表す図である。
【図3】センス・バイト復号器を表す図である。
【図4】本発明のエラー回復論理の流れ図である。
【符号の説明】
10 データ転送システム 12 コンピュータ 14 オペレーティング・システム 16 第1デバイス・ドライバ 16a、18a、20a エラー回復モジュール(ER
M) 18 第2デバイス・ドライバ 20 第3デバイス・ドライバ 22 第1のデータ記憶装置 24 第2のデータ記憶装置 26 第3のデータ記憶装置 28 第1のセンス・バイト要素 30 第2のセンス・バイト要素 32 第3のセンス・バイト要素 34 第4のセンス・バイト要素 36 第1のセンス・バイト復号器 38 アクション・トークン
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 11/00 G06F 3/06 - 3/08 G06F 12/16 G06F 13/00

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】オペレーティング・システムと、 前記オペレーティング・システムに関連付けられ、各々
    がそれぞれのコマンド・シーケンスに応答して、前記オ
    ペレーティング・システムとの間でデータ転送を実行す
    る第1及び第2のデータ記憶装置であって、一方の前記
    データ記憶装置の前記コマンド・シーケンスが他方の前
    記データ記憶装置の前記コマンド・シーケンスと異な
    る、前記データ記憶装置と、 前記第1及び第2のデータ記憶装置にそれぞれ関連付け
    られ、当該関連付けられたデータ記憶装置と前記オペレ
    ーティング・システムとの間のデータ転送を制御する第
    1及び第2のデバイス・ドライバと、 前記第1及び第2のデバイス・ドライバにそれぞれ関連
    付けられて動作する第1及び第2のエラー回復手段であ
    って、前記データ記憶装置の1つからセンス・バイトを
    受信し、前記センス・バイトに応答して、複数のアクシ
    ョン・トークンの1つを生成する相関付け手段、及び前
    記アクション・トークンを受信し、前記アクション・ト
    ークンに応答して、複数の所定のエラー回復アクション
    の1つを表すアクション信号を生成する実行手段を含
    む、前記エラー回復手段とを備え、 前記第1のエラー回
    復手段が前記第2のエラー回復手段と交換可能である、
    データ転送システム。
  2. 【請求項2】オペレーティング・システムと、 前記オペレーティング・システムに関連付けられ、各々
    がそれぞれのコマンド・シーケンスに応答して、前記オ
    ペレーティング・システムとの間でデータ転送を実行す
    る複数のデータ記憶装置であって、ある前記データ記憶
    装置の前記コマンド・シーケンスが別の前記データ記憶
    装置の前記コマンド・シーケンスと異なる、前記データ
    記憶装置と、 それぞれが前記データ記憶装置に関連付けられ、前記デ
    ータ記憶装置と前記オペレーティング・システムとの間
    のデータ転送を制御する複数のデバイス・ドライバと、 前記の各デバイス・ドライバに結合されて動作するエラ
    ー回復手段であって、 前記データ記憶装置の1つからセンス・バイトを受信
    し、前記センス・バイトに応答して、複数のアクション
    ・トークンの1つを生成する相関付け手段、及び前記ア
    クション・トークンを受信し、前記アクション・トーク
    ンに応答して、複数の所定のエラー回復アクションの1
    つを表すアクション信号を生成する実行手段を含む、前
    記エラー回復手段とを備え、 前記エラー回復手段が全ての前記デバイス・ドライバに
    共通である、データ転送システム。
  3. 【請求項3】オペレーティング・システムと、 前記オペレーティング・システムに関連付けられ、各々
    がそれぞれのコマンド・シーケンスに応答して、前記オ
    ペレーティング・システムとの間でデータ転送を実行す
    る複数のデータ記憶装置であって、ある前記データ記憶
    装置の前記コマンド・シーケンスが別の前記データ記憶
    装置の前記コマンド・シーケンスと異なる、前記データ
    記憶装置と、 それぞれが前記データ記憶装置に関連付けられ、関連付
    けられた前記データ記憶装置と前記オペレーティング・
    システムとの間のデータ転送を制御する複数のデバイス
    ・ドライバと、 前記の各デバイス・ドライバに結合されて動作するエラ
    ー回復手段であって、 前記データ記憶装置の1つからセンス・バイトを受信
    し、前記センス・バイトに応答して、複数のアクション
    ・トークンの1つを生成する相関付け手段、及び前記ア
    クション・トークンを受信し、前記アクション・トーク
    ンに応答して、複数の所定のエラー回復アクションの1
    つを表すアクション信号を生成する実行手段を含む、前
    記エラー回復手段とを備え、 前記相関付け手段が、前記第1及び第2のデータ記憶装
    置をそれぞれ表す第1及び第2のセンス・バイト復号器
    を含み、前記の各センス・バイト復号器が、関連付けら
    前記記憶装置からの前記センス・バイトを前記アク
    ション・トークンに相関付ける、データ転送システム。
  4. 【請求項4】前記実行手段が、前記相関付け手段から受
    信された前記アクション・トークンを前記所定のエラー
    回復アクションに相関付けるトークン復号器を含む、請
    求項記載のデータ転送システム。
  5. 【請求項5】少なくとも1つの前記データ記憶装置が、
    当該データ記憶装置における所定の複数の各エラー状態
    に応答して、それぞれ複数のセンス・バイトを生成し、
    前記相関付け手段が、前記データ記憶装置により生成さ
    れた前記複数のそれぞれのセンス・バイトにもとづき、
    前記アクション・トークンを生成する、請求項記載の
    データ転送システム。
JP6326024A 1994-03-24 1994-12-27 データ転送システム Expired - Lifetime JP2986355B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/217,526 US5450579A (en) 1994-03-24 1994-03-24 Method and apparatus for error recovery in computer peripheral devices
US217526 1994-03-24

Publications (2)

Publication Number Publication Date
JPH07271618A JPH07271618A (ja) 1995-10-20
JP2986355B2 true JP2986355B2 (ja) 1999-12-06

Family

ID=22811438

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6326024A Expired - Lifetime JP2986355B2 (ja) 1994-03-24 1994-12-27 データ転送システム

Country Status (3)

Country Link
US (1) US5450579A (ja)
EP (1) EP0674261A3 (ja)
JP (1) JP2986355B2 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6038679A (en) * 1994-11-30 2000-03-14 International Business Machines Corporation Adaptive data recovery method and apparatus
US6467054B1 (en) 1995-03-13 2002-10-15 Compaq Computer Corporation Self test for storage device
US5923876A (en) * 1995-08-24 1999-07-13 Compaq Computer Corp. Disk fault prediction system
US6035419A (en) * 1995-12-27 2000-03-07 International Business Machines Corporation Logical execution sequence error recovery method and system
EP0821308A1 (en) * 1996-07-23 1998-01-28 Hewlett-Packard Company Error indication for a storage system with removable media
US6502208B1 (en) 1997-03-31 2002-12-31 International Business Machines Corporation Method and system for check stop error handling
US6065139A (en) * 1997-03-31 2000-05-16 International Business Machines Corporation Method and system for surveillance of computer system operations
US5951686A (en) * 1997-03-31 1999-09-14 International Business Machines Corporation Method and system for reboot recovery
US6557121B1 (en) * 1997-03-31 2003-04-29 International Business Machines Corporation Method and system for fault isolation for PCI bus errors
US6119246A (en) * 1997-03-31 2000-09-12 International Business Machines Corporation Error collection coordination for software-readable and non-software readable fault isolation registers in a computer system
US6009535A (en) * 1997-06-30 1999-12-28 Emc Corporation SCSI adaptor failover for a disk drive system
US6154852A (en) * 1998-06-10 2000-11-28 International Business Machines Corporation Method and apparatus for data backup and recovery
US6269459B1 (en) * 1998-08-25 2001-07-31 Advanced Micro Devices, Inc. Error reporting mechanism for an AGP chipset driver using a registry
US6493656B1 (en) * 1999-02-26 2002-12-10 Compaq Computer Corporation, Inc. Drive error logging
US20070156974A1 (en) * 2006-01-03 2007-07-05 Haynes John E Jr Managing internet small computer systems interface communications
US20090083585A1 (en) * 2007-09-21 2009-03-26 Inventec Corporation Method of pressure testing for peripheral component interconnect (pci) bus stage
US12032437B2 (en) * 2022-07-06 2024-07-09 Dell Products L.P. Real-time sense data querying

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02126350A (ja) * 1988-11-07 1990-05-15 Nec Corp 端末周辺装置の監視方式
US5371885A (en) * 1989-08-29 1994-12-06 Microsoft Corporation High performance file system
US5307491A (en) * 1991-02-12 1994-04-26 International Business Machines Corporation Layered SCSI device driver with error handling circuit providing sense data from device directly to the driver on the occurrence of an error

Also Published As

Publication number Publication date
JPH07271618A (ja) 1995-10-20
US5450579A (en) 1995-09-12
EP0674261A3 (en) 1996-05-08
EP0674261A2 (en) 1995-09-27

Similar Documents

Publication Publication Date Title
JP2986355B2 (ja) データ転送システム
US5557740A (en) Method and system for providing device support testing for a plurality of operating systems
EP0147794B1 (en) Error recovery method and apparatus
KR101091225B1 (ko) 메타데이터를 이용한 연속 원격 복사에서 부정합의 검출을 위한 장치, 시스템, 및 방법
US7032228B1 (en) Common device interface
US5089958A (en) Fault tolerant computer backup system
US5166936A (en) Automatic hard disk bad sector remapping
US6311240B1 (en) Hardware assisted formatted data transfer system having a source storage controller and a formatting storage controller receiving on-media structure definition and a data definition
US7281169B2 (en) Method, software and system for multi-path fail-over recovery in sequential storage systems
JP2846837B2 (ja) 障害を早期検出するためのソフトウェア制御方式のデータ処理方法
US4885683A (en) Self-testing peripheral-controller system
JPS605023B2 (ja) 記憶システム
CA2020272A1 (en) Transferring data in a digital data processing system
KR20070020052A (ko) 소스 데이터를 타겟 데이터로 이전하는 방법, 시스템 및제조물
US7356622B2 (en) Method and apparatus for managing and formatting metadata in an autonomous operation conducted by a third party
US8024172B2 (en) Method and system for emulating tape libraries
US7353299B2 (en) Method and apparatus for managing autonomous third party data transfers
US20080215811A1 (en) Multiple sourcing storage devices for ultra reliable mirrored storage subsystems
US7003617B2 (en) System and method for managing target resets
EP0745943A1 (en) Method and system for providing device support for a plurality of operating systems
JP2006252239A (ja) ファイル制御装置
US7441052B2 (en) Methods and apparatuses for providing copies of stored data for disaster recovery and other uses
US5379389A (en) Method for transmitting commands excluded from a predefined command set
JP4898609B2 (ja) ストレージ装置、データ回復方法及び計算機システム
JP3279854B2 (ja) 記録再生装置