JP3632611B2 - Scsiポインタ制御方式 - Google Patents
Scsiポインタ制御方式 Download PDFInfo
- Publication number
- JP3632611B2 JP3632611B2 JP2001088099A JP2001088099A JP3632611B2 JP 3632611 B2 JP3632611 B2 JP 3632611B2 JP 2001088099 A JP2001088099 A JP 2001088099A JP 2001088099 A JP2001088099 A JP 2001088099A JP 3632611 B2 JP3632611 B2 JP 3632611B2
- Authority
- JP
- Japan
- Prior art keywords
- pointer
- scsi
- register
- current
- save
- 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 - Fee Related
Links
Images
Landscapes
- Bus Control (AREA)
Description
【発明の属する技術分野】
本発明は、SCSIバスを用いてデータの転送を制御するときに用いられるSCSIポインタ制御方式に関する。
【0002】
【従来の技術】
この種の制御において、従来では、下位装置からメッセージ(Save Data Pointer)でカレントポインタのセーブ操作の指示があった場合、カレントポインタをセーブポインタにセーブする動作が必ず行われていた。また、リコネクト動作時には、セーブポインタをカレントポインタにリストアするリコネクト動作が、必ず行われていた。
【0003】
【発明が解決しようとする課題】
従来では、以上に説明したように構成されていたので、下位装置からメッセージを受領した後、SCSIインタフェースのディスコネクトを行い、この後リコネクトされるまでの間に、その他のI/Oプロセスを起動させることができなかった。また、他のSCSIIDとロジカルユニット番号を有する下位装置からのリコネクト要求が発生しない場合には、カレントポインタの書き換えが発生しないので、カレントポインタのセーブ動作とリコネクト動作は必要のない余分な処理となる。
【0004】
本発明は、以上のような問題点を解消するためになされたものであり、SCSIバスを用い、無駄がなくより効率の良い状態でデータの転送ができるようにすることを目的とする。
【0005】
【課題を解決するための手段】
本発明のSCSIポインタ制御方式は、複数の下位装置と接続してデータの授受を行うSCSIインタフェースと、データの授受を制御する制御回路と、この制御回路の制御により、複数の下位装置の内、データの授受を行っている特定下位装置のSCSIポインタをデータの授受の実行中は保持するカレントポインタレジスタと、制御回路の制御により、このカレントポインタレジスタに保持されているSCSIポインタをセーブし、また、カレントポインタレジスタにリストアするセーブポインタレジスタと、特定下位装置を識別するための識別子を保持するカレントターゲットアドレスレジスタと、リコネクト要求に含まれる特定下位装置の識別子とカレントターゲットアドレスレジスタに保持されている識別子とを比較照合するターゲットアドレス比較回路とを備え、制御回路が、ターゲットアドレス比較回路の比較照合で、カレントターゲットアドレスレジスタに保持されている識別子と特定下位装置の識別子とが一致した場合、セーブポイントレジスタにセーブされているSCSIポインタをカレントポイントレジスタにリストアすることなく特定下位装置とのデータの授受を継続するように制御するようにしたものである。
この発明によれば、ターゲットアドレス比較回路の比較照合で、カレントターゲットアドレスレジスタに保持されている識別子と特定下位装置の識別子とが一致すると、セーブポインタレジスタとカレントポインタレジスタとの間の、セーブ動作とリストア動作とが行われることなく、特定下位装置との接続が継続される。
【0006】
上記発明において、特定下位装置との接続停止に伴うカレントポインタをセーブポインタにセーブする要求を受け付けて、カレントポインタレジスタに格納されているカレントポインタをセーブポインタレジスタにセーブする要求のフラグを記憶するカレントポインタセーブ状況管理部を備え、制御回路は、ターゲットアドレス比較回路の比較照合で、カレントターゲットアドレスレジスタに保持されている識別子と特定下位装置の識別子とが一致しない場合、カレントポインタセーブ状況管理部にフラグが記憶されていなければ、セーブポインタレジスタに記憶されている特定下位装置のSCSIポインタをカレントポインタレジスタにリストアする。
【0007】
また、上記発明において、制御回路は、カレントポインタセーブ状況管理部にフラグが記憶されていれば、このフラグの記憶を消去し、カレントポインタレジスタに記憶されているSCSIポインタをセーブポインタレジスタにセーブし、セーブポインタレジスタに記憶されている特定下位装置のSCSIポインタをカレントポインタレジスタにリストアする。
【0008】
【発明の実施の形態】
以下、本発明の実施の形態について図を参照して説明する。
図1は、本発明の実施の形態におけるSCSIポインタ制御方式を適用した入出力制御装置100の構成を示す構成図である。本実施の形態におけるSCSIポインタ制御方式は、SCSIインタフェースを介してSCSI規格の下位装置(ターゲット)とのデータ転送を行う入出力制御装置(SCSI規格のイニシエータ)に関するものであり、I/Oプロセスの実行を制御・管理するSCSIポインタのセーブ/リストアのうち、余分な動作をなくすことでデータ転送の性能向上を目的とするものである。
【0009】
図1において、入出力制御装置100は、SCSIインタフェースを下位装置(ターゲット)とのI/Oインタフェースとして使用し、SCSIインタフェース109を制御するSCSIインタフェース制御回路103を有している。また、上位装置とのI/Oインタフェース110を司る上位インタフェース制御回路101を有している。また、SCSIインタフェース制御回路103や上位インタフェース制御回路101の制御を含め、入出力制御装置100の全体の制御を司る入出力制御装置制御回路102を有している。
【0010】
カレントポインタレジスタ104は、現在実行中のI/OプロセスのSCSIポインタを保持している。セーブポインタレジスタ105は、下位装置の「SCSI ID」数とロジカルユニット数の組み合わせの個数のSCSIポインタを保持している。また、下位装置の「SCSI ID」に対するロジカルユニット番号(LUN)毎に1組のSCSIポインタが割り当てられている。セーブポインタレジスタ105は、必要が生じた場合に入出力制御装置制御回路102からの指示で、カレントポインタレジスタ104に格納されているSCSIポインタをセーブしたり、また同じく入出力制御装置制御回路102からの指示で、カレントポインタレジスタ104にSCSIポインタをリストアする。
【0011】
カレントポインタセーブ状況管理部106は、カレントポインタセーブ要求フラグを記憶していて、新たなI/Oプロセス実行時とリコネクト処理時に入出力制御装置制御回路102が参照し、カレントポインタをセーブポインタにセーブするか否かの判定に使用される。
カレントターゲットアドレスレジスタ107は、I/Oプロセスが実行されている最中の下位装置の「SCSI ID」とロジカルユニット番号、あるいは、I/Oプロセス実行中にディスコネクトされた場合に、バスフリーフェーズの間はディスコネクト要求してきた下位装置の「SCSI ID」とロジカルユニット番号を記憶している。
【0012】
カレントターゲットアドレスレジスタ107に記憶されている下位装置の識別子である「SCSI ID」およびロジカルユニット番号は、以下に示す状況において、リコネクト要求が出された下位装置の「SCSI ID」およびロジカルユニット番号との比較を、ターゲットアドレス比較回路108が行うときに使用される。比較が行われる状況は、データ転送中のディスコネクトによりデータ転送が中断され、データ転送の中断の後にリコネクトによりデータ転送が再開された状況である。
【0013】
ターゲットアドレス比較回路108は、この状況でSCSIインタフェース制御回路103から読み出されるリコネクト要求が出された下位装置の識別子と、カレントターゲットアドレスレジスタ107に記憶されている識別子とを比較する。
この比較結果は、入出力制御装置制御回路102に通知され、一致した場合にはカレントポインタのセーブ/リストアを行わずにデータ転送処理を続行する。
【0014】
以上に説明した入出力制御装置100において、SCSIインタフェース制御回路103を介して、下位装置からのメッセージ(Save Data Pointer)でカレントポインタのセーブ操作の指示があった場合に、本実施の形態では、以下に示すように制御するようにした。
まず、上記指示があった時点では、カレントポインタレジスタ104で表示されるカレントポインタをセーブポインタレジスタ105へセーブせず、カレントポインタセーブ状況管理部106にあるカレントポインタをセーブポインタにセーブしていないことを示すカレントポインタセーブ要求フラグのセットのみ行う。
【0015】
この後で、つぎの2つの場合について、カレントポインタをセーブポインタにセーブするようにした。まず、第1は、リコネクト動作が行われてリコネクトしてきたターゲットの「SCSI ID」とロジカルユニット番号に対して、カレントポインタに関するターゲットの「SCSI ID」とロジカルユニット番号をカレントターゲットアドレスレジスタ107から読み出してターゲットアドレス比較回路108で比較を行い、この比較で一致せず、かつカレントポインタセーブ要求フラグがセットされている場合である。また、第2は、SCSIバスがディスコネクト中に新たなI/Oプロセスが起動され、かつカレントポインタセーブ要求フラグがセットされている場合である。
【0016】
また、セーブポインタのリストア動作では、まず、リコネクトしてきたターゲットの「SCSI ID」とロジカルユニット番号に対して、カレントポインタに関するターゲットの「SCSI ID」とロジカルユニット番号とを、カレントターゲットアドレスレジスタ107から読み出す。つぎに、読み出した「SCSI ID」とロジカルユニット番号との比較を、ターゲットアドレス比較回路108行い、この比較が一致しなかった場合にセーブポインタをカレントポインタにリストアする。
本実施の形態では、以上に示したように、セーブポインタとリストアポインタのセーブ/リストアを行い、余分なセーブ/リストアをなくしてデータ転送の性能を向上させるようにした。
【0017】
以下、本実施の形態における入出力制御装置100の動作について、より詳細に説明する。
はじめに、比較のために、従来におけるデータ転送の流れを説明する。まず、データ転送中にディスコネクト要求があった場合、図2に示すように、I/Oプロセスの起動後、データ転送実行中に下位装置からディスコネクト要求があった場合、従来では、データフェーズにおいてメッセージインフェーズに移行してから「Save Data Pointer」メッセージを受領し(ステップS201)、ディスコネクトメッセージを受領し(ステップS202)、この後、必ず、カレントポインタをセーブポインタにセーブし(ステップS203)、この後、要求のあったディスコネクトを行い(ステップS204)、バスフリーフェーズに移行するようにしていた。
【0018】
また、データ転送中のディスコネクトの後、下位装置からリコネクト要求があった場合、図3に示すように、従来では、SCSIインタフェースリコネクト(ステップS301)の後、アービトレーションフェーズから、リセレクションフェーズを経てメッセージインフェーズとなってから、必ずセーブポインタからカレントポインタへリストアを行っていた(ステップS302)。
【0019】
以上に示した従来の方式に対し、本実施の形態では、まず、データ転送中にディスコネクト要求があった場合、図4に示すように、「Save Data Pointer」メッセージ受領し(ステップS401)、ディスコネクトメッセージを受領し(ステップS402)、この後、カレントポインタセーブ状態管理部16のカレントポインタ要求フラグのセットのみを行い(ステップS403)、カレントポインタのセーブポインタへのセーブは行わずに、SCSIインタフェースのディスコネクトを行う(ステップS404)。
【0020】
また、データ転送中のディスコネクトの後、下位装置からリコネクト要求があった場合、本実施の形態では、図5に示すように、まず、SCSIインタフェースリコネクト(ステップS501)後、カレントターゲットアドレスレジスタ107から読み出した下位装置の「SCSI ID」とロジカルユニット番号と、SCSIインタフェース制御回路103から読み出したリコネクト要求してきた下位装置の「SCSI ID」とロジカルユニット番号との比較を、ターゲットアドレス比較回路108で行う(ステップS502)ようにした。
【0021】
ステップS502の比較で、「SCSI ID」とロジカルユニット番号が一致しなかった場合、まず、カレントポインタセーブ状況管理部106のカレントポインタセーブ要求フラグのチェックを行う(ステップS503)。ステップS503のチェックでカレントポインタセーブ要求フラグがセットされていた場合には、カレントポインタセーブ要求フラグをリセットし(ステップS504)、カレントポインタレジスタ104のカレントポインタをセーブポインタレジスタ105にセーブし(ステップS505)、セーブポインタレジスタ105に予めセーブしてあるセーブポインタをカレントポインタレジスタ104にリストアする(ステップS506)。
【0022】
ステップS503のチェックで、カレントポインタセーブ要求フラグがリセットされていた場合は、ステップS506に移行し、セーブポインタレジスタ105にセーブしてあるセーブポインタのカレントポインタレジスタ104へのリストアのみを行う。
一方、ステップS502の比較で、下位装置の「SCSI ID」とロジカルユニット番号とが一致した場合は、カレントポインタのセーブ/リストアを行わずに中断していたデータ転送処理を再開する。
【0023】
また、本実施の形態では、図6のフローに示すように、I/Oプロセス起動時に、カレントポインタセーブ状況管理部106のカレントポインタセーブ要求フラグのチェックを行い(ステップS601)、カレントポインタセーブ要求フラグがセットされていた場合には、カレントポインタセーブ要求フラグをリセットし(ステップS602)、カレントポインタレジスタ104のカレントポインタをセーブポインタレジスタ105にセーブする(ステップS603)。
【0024】
したがって、例えば、3つの下位装置A,下位装置B,下位装置Cが、SCSIインタフェース109に接続されて3多重で動作している場合、下位装置Bと下位装置Cがすでにディスコネクト状態で、下位装置Aがディスコネクトしたときは、カレントポインタレジスタ104には下位装置AのSCSIポインタが保持されている。この状態で、下位装置Bがリコネクトすると、カレントポインタレジスタ105のカレントポインタ(下位装置AのSCSIポインタ)は、セーブポインタレジスタ105にセーブされ、下位装置BのSCSIポインタが、新たなカレントポインタとしてカレントポインタレジスタ105にリストアされる。
【0025】
この後、下位装置Cがリコネクトをすると、上述した実施の形態では、カレントポインタセーブ状況管理部106に保持されていたフラグがリセット(消去)されているため、カレントポインタのセーブ動作は行われない。このように、上述した実施の形態によれば、無駄な動作が省かれるようになり、より迅速にデータ転送の中断処理や再処理が行われるようになる。
【0026】
【発明の効果】
以上説明したように、本発明によれば、カレントターゲットアドレスレジスタを用意し、これに保持されている識別子と下位装置の識別子とが一致すると、この下位装置との接続を継続するようにしたので、セーブポインタレジスタとカレントポインタレジスタとの間の、無駄なセーブ動作とリストア動作とを省けるようになり、無駄がなくより効率の良い状態でデータの転送ができるようになるというすぐれた効果が得られる。
【図面の簡単な説明】
【図1】本発明の実施の形態におけるSCSIポインタ制御方式を適用した入出力制御装置の構成を示す構成図である。
【図2】従来のデータ転送の流れを説明するフローチャートである。
【図3】従来のデータ転送の流れを説明するフローチャートである。
【図4】図1の入出力制御装置におけるデータ転送の流れを説明するフローチャートである。
【図5】図1の入出力制御装置におけるデータ転送の流れを説明するフローチャートである。
【図6】図1の入出力制御装置におけるデータ転送の流れを説明するフローチャートである。
【符号の説明】
100…入出力制御装置、101…上位インタフェース制御回路、102…入出力制御装置制御回路、103…SCSIインタフェース制御回路、104…カレントポインタレジスタ、105…セーブポインタレジスタ、106…カレントポインタセーブ状況管理部、107…カレントターゲットアドレスレジスタ、108…ターゲットアドレス比較回路、109…SCSIインタフェース、110…I/Oインタフェース。
Claims (3)
- 複数の下位装置と接続してデータの授受を行うSCSIインタフェースと、
前記データの授受を制御する制御回路と、
この制御回路の制御により、複数の前記下位装置の内、データの授受を行っている特定下位装置のSCSIポインタを前記データの授受の実行中は保持するカレントポインタレジスタと、
前記制御回路の制御により、このカレントポインタレジスタに保持されているSCSIポインタをセーブし、また、前記カレントポインタレジスタにリストアするセーブポインタレジスタと、
前記特定下位装置を識別するための識別子を保持するカレントターゲットアドレスレジスタと、
リコネクト要求に含まれる前記特定下位装置の識別子と前記カレントターゲットアドレスレジスタに保持されている識別子とを比較照合するターゲットアドレス比較回路と
を備え、
前記制御回路は、前記ターゲットアドレス比較回路の比較照合で、前記カレントターゲットアドレスレジスタに保持されている識別子と前記特定下位装置の識別子とが一致した場合、前記セーブポイントレジスタにセーブされているSCSIポインタを前記カレントポイントレジスタにリストアすることなく前記特定下位装置とのデータの授受を継続するように制御する
ことを特徴とするSCSIポインタ制御方式。 - 請求項1記載のSCSIポインタ制御方式において、
前記特定下位装置との接続停止に伴う前記カレントポインタをセーブポインタにセーブする要求を受け付けて、カレントポインタレジスタに格納されているカレントポインタをセーブポインタレジスタにセーブする要求のフラグを記憶するカレントポインタセーブ状況管理部を備え、
前記制御回路は、前記ターゲットアドレス比較回路の比較照合で、前記カレントターゲットアドレスレジスタに保持されている識別子と前記特定下位装置の識別子とが一致しない場合、前記カレントポインタセーブ状況管理部に前記フラグが記憶されていなければ、前記セーブポインタレジスタに記憶されている前記特定下位装置のSCSIポインタを前記カレントポインタレジスタにリストアする
ことを特徴とするSCSIポインタ制御方式。 - 請求項2記載のSCSIポインタ制御方式において、
前記制御回路は、前記カレントポインタセーブ状況管理部に前記フラグが記憶されていれば、このフラグの記憶を消去し、前記カレントポインタレジスタに記憶されているSCSIポインタを前記セーブポインタレジスタにセーブし、前記セーブポインタレジスタに記憶されている前記特定下位装置のSCSIポインタを前記カレントポインタレジスタにリストアする
ことを特徴とするSCSIポインタ制御方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001088099A JP3632611B2 (ja) | 2001-03-26 | 2001-03-26 | Scsiポインタ制御方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001088099A JP3632611B2 (ja) | 2001-03-26 | 2001-03-26 | Scsiポインタ制御方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002288118A JP2002288118A (ja) | 2002-10-04 |
JP3632611B2 true JP3632611B2 (ja) | 2005-03-23 |
Family
ID=18943240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001088099A Expired - Fee Related JP3632611B2 (ja) | 2001-03-26 | 2001-03-26 | Scsiポインタ制御方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3632611B2 (ja) |
-
2001
- 2001-03-26 JP JP2001088099A patent/JP3632611B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002288118A (ja) | 2002-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7203814B2 (en) | Storage system | |
US20070245105A1 (en) | Storage system and data management method | |
CN110413213B (zh) | 存储卷在存储阵列之间的无缝迁移 | |
US7657720B2 (en) | Storage apparatus and method of managing data using the storage apparatus | |
US20070006020A1 (en) | Inter-host data transfer method, program, and system | |
CN103581225A (zh) | 分布式系统中的节点处理任务的方法 | |
US6654880B1 (en) | Method and apparatus for reducing system down time by restarting system using a primary memory before dumping contents of a standby memory to external storage | |
CN115904520A (zh) | 基于pcie拓扑状态变更的配置保存方法及相关设备 | |
WO2007094041A1 (ja) | サーバ管理装置及びサーバ管理プログラム | |
JP3632611B2 (ja) | Scsiポインタ制御方式 | |
US8346996B2 (en) | Information processing system | |
US6976145B1 (en) | Method and apparatus for automatically configuring data storage subsystems | |
JP2010140106A (ja) | ジョブ実行システム、該システムに用いられるジョブフロー引継ぎ方法及びジョブフロー引継ぎ制御プログラム | |
JP2009246475A (ja) | 冗長構成を有する通信システム及び該システムによる系切り替え方法 | |
JP2015153128A (ja) | 呼処理制御装置及びそのソフトウェア更新方法、呼処理システム、並びにコンピュータ・プログラム | |
JPH05257673A (ja) | ファイル更新時の旧ファイル保存方法 | |
JP2666426B2 (ja) | 二重化補助記憶装置 | |
JPH0973370A (ja) | 情報処理システム | |
JPH1027159A (ja) | 通信回線復旧システム、および通信回線復旧方法 | |
JP3411309B2 (ja) | マルチキャスト通信システム | |
JPH0660029A (ja) | トランザクション端末復旧方式 | |
JP4193754B2 (ja) | データ二重化方法とプログラム | |
JP3260435B2 (ja) | 情報通信システム | |
JPS6113328A (ja) | データファイルのアクセス制御装置 | |
WO2013171832A1 (ja) | 情報処理装置、情報処理方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040823 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040831 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041101 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20041130 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041213 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080107 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090107 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100107 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110107 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110107 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120107 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |