(57)【特許請求の範囲】
【請求項１】
或る特定装置に所定の通信路を介してログインし得るログイン装置であって、
前記特定装置からログインの勧誘を受けた場合に、前記特定装置に対してログインを行なうログイン手段と、
ログイン勧誘レジスタと、
を備え、
前記ログイン手段は、前記ログイン勧誘レジスタに、前記特定装置によって所定の情報が書き込まれた場合に、前記特定装置からログインの勧誘を受けたと判断すると共に、
前記ログイン勧誘レジスタの所定のビットを利用して、"Send To"を指定したログイン勧誘であるか、"Receive From"を指定したログイン勧誘であるか、を判断することを特徴とするログイン装置。
【請求項２】
請求項１に記載のログイン装置において、
前記所定の情報は、前記特定装置の識別符号を含むことを特徴とするログイン装置。
【請求項３】
請求項１または請求項２に記載のログイン装置において、
前記通信路はＩＥＥＥ１３９４バスから成ると共に、
前記特定装置との通信はＳＢＰ−２プロトコルで行なうことを特徴とするログイン装置。
【請求項４】
或る特定装置から所定の通信路を介してログインされ得る被ログイン装置であって、
前記特定装置からログインされることを希望する場合に、前記特定装置に対してログインの勧誘を行なうログイン勧誘手段を備え、
前記ログイン勧誘手段は、前記特定装置の備える特定レジスタに、所定の情報を書き込むことによって、ログインの勧誘を行なうと共に、
前記特定レジスタの所定のビットを利用して、"Send To"を指定したログイン勧誘であるか、"Receive From"を指定したログイン勧誘であるか、を前記特定装置に知らせることを特徴とする被ログイン装置。
【請求項５】
請求項４に記載の被ログイン装置において、
前記所定の情報は、前記被ログイン装置の識別符号を含むことを特徴とする被ログイン装置。
【請求項６】
請求項４または請求項５に記載の被ログイン装置において、
前記通信路はＩＥＥＥ１３９４バスから成ると共に、
前記特定装置との通信はＳＢＰ−２プロトコルで行なうことを特徴とする被ログイン装置。
【請求項７】
ログイン装置から所定の通信路を介して被ログイン装置にログインし得る装置間通信システムであって、
前記ログイン装置として、請求項１に記載のログイン装置を用い、前記被ログイン装置として、請求項４に記載のログイン装置を用いることを特徴とする装置間通信システム。
【請求項８】
ログイン装置から所定の通信路を介して被ログイン装置にログインするためのログイン制御方法であって、
（ａ）前記被ログイン装置が、前記ログイン装置からのログインを希望する場合に、前記ログイン装置の備えるログイン勧誘レジスタに、所定の情報を書き込むことによって、前記ログイン装置に対してログインの勧誘を行なうと共に、前記ログイン勧誘レジスタの所定のビットを利用して、"Send To"を指定したログイン勧誘であるか、"Receive From"を指定したログイン勧誘であるか、を前記ログイン装置に知らせる工程と、
（ｂ）前記ログイン勧誘レジスタに、前記被ログイン装置によって前記所定の情報が書き込まれた場合に、前記ログイン装置が前記被ログイン装置からログインの勧誘を受けたと判断すると共に、前記ログイン勧誘レジスタの所定のビットを利用して、"Send To"を指定したログイン勧誘であるか、"Receive From"を指定したログイン勧誘であるか、を判断する工程と、
（ｃ）前記ログイン装置が、前記被ログイン装置からログインの勧誘を受けたと判断した場合に、前記被ログイン装置に対してログインを行なう工程と、
を備えるログイン制御方法。
【請求項９】
或る特定装置に所定の通信路を介してログインし得るコンピュータにログイン処理を行なわせるためのコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記コンピュータの備えるログイン勧誘レジスタに、前記特定装置によって所定の情報が書き込まれた場合に、前記特定装置からログインの勧誘を受けたと判断すると共に、前記ログイン勧誘レジスタの所定のビットを利用して、"Send To"を指定したログイン勧誘であるか、"Receive From"を指定したログイン勧誘であるか、を判断し、前記特定装置に対してログインを行なう機能を前記コンピュータに実現させるためのコンピュータプログラムを記録した記録媒体。
【請求項１０】
或る特定装置から所定の通信路を介してログインされ得るコンピュータに被ログイン処理を行なわせるためのコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記特定装置からのログインを希望する場合に、前記特定装置の備える特定レジスタに、所定の情報を書き込むことによって、前記特定装置に対してログインの勧誘を行なうと共に、前記特定レジスタの所定のビットを利用して、"Send To"を指定したログイン勧誘であるか、"Receive From"を指定したログイン勧誘であるか、を前記特定装置に知らせる機能を前記コンピュータに実現させるためのコンピュータプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、被ログイン装置がログイン装置に、被ログイン装置に対するログインを行なわせるための技術に関するものである。特に、装置間をＩＥＥＥ１３９４バスで接続されたシステムにおいて、装置間の通信をＳＢＰ（Serial Bus Protcol）−２プロトコルで行なう場合に用いて好適な技術に関するものである。
【０００２】
【従来の技術】
ＩＥＥＥ１３９４は、ＩＥＥＥによって提唱されたデジタルデータをやり取りするためのシリアルバス規格であって、「IEEE STD.1394-1995 IEEE Standard for a High Perforance serial Bus」として規定されている。
【０００３】
一方、ＳＢＰ−２プロトコル（以下、単にＳＢＰ−２と略す）は、米国のＡＮＳＩ  Ｘ３Ｔ１０が標準化を推進するプロトコルであって、ＩＥＥＥ１３９４規格に準拠して設計されたトランスポート層のプロトコルである。
【０００４】
さて、装置間をＩＥＥＥ１３９４バスで接続されたシステムにおいて、装置間の通信をＳＢＰ−２で行なう場合、共有メモリを有している装置をイニシエータ（Initiator）と呼び、有していないの装置をターゲット（Target）と呼ぶ。イニシエータが、ターゲットを利用するためには、イニシエータは、ターゲットにログイン（Login）して、ターゲットを利用する権利を獲得する必要がある。具体的には、イニシエータがターゲットにログイン要求を出し、ターゲットからログイン成立の応答を受けることによって、行なわれる。
【０００５】
このようにイニシエータがターゲットにログインすると、ＳＢＰ−２では、次のようにしてトランザクション（transaction）を行なう。
【０００６】
まず、イニシエータが、自己の有する共有メモリ上にＯＲＢ（Operation Request Block）という特別なデータ構造を設け、ここにターゲットに使ってもらいたいデータを置く。例えば、イニシエータがコンピュータであり、ターゲットがプリンタである場合には、イニシエータであるコンピュータが、ターゲットであるプリンタに印刷してもらいたい画像データを共有メモリ空間のいずれかに置き、次に、このアドレスのポインタを予め用意したＯＲＢの所定位置に格納する。このため、イニシエータは、ターゲットの都合によらず、自己の達成できる最大の速度で処理可能である。一方のターゲットは、イニシエータの有する共有メモリ上に置かれたＯＲＢを順次取り込んで、その内容を消費するように動く。即ち、ターゲットであるプリンタは、イニシエータである画像データを印刷することにより自己のメモリに空きができ次第、次の画像データを消費するので、いつも休むことなく印刷を続けることができ、ターゲットも最大の効率でジョブの処理ができる。
【０００７】
その後、イニシエータがターゲットの利用が完了したら、イニシエータは、ターゲットからログアウト（Logout）して、ターゲットを利用する権利を破棄する。具体的には、イニシエータが、ターゲットにログアウト要求を出し、そのターゲットからログアウト成功の応答を受けることによって、なされる。
【０００８】
ところで、一般に、装置間をネットワークやバスなどで接続されたシステムにおいて、通信プロトコルの構成のうち、上位層のプロトコルの最も典型的な作業というのは、所望のサービスを提供してくれる装置を見つけて、その装置との間でコネクションを張ることである。
【０００９】
サービスを提供してくれる装置を見つけるためには、通信相手を特定しないで通信パケットを送出を行なう必要がある。具体的には、例えば、各ノード（node）に対して順番に、そのサービスを提供してくれるか否かを問い合わせるユニキャストという方法を採る。この場合、通信相手を順番に指定して、それぞれ、１パケットだけを送出する。即ち、１パケットを送出するためだけに、一時的にコネクションを張るようにする。このような通信は、コネクションレス（connecition less）な通信と言うことができる。
【００１０】
一方、サービスを提供してくれる装置を見つけた後は、その装置との間で継続的にコネクションを張るので、通信相手を特定して通信パケットを送出することになる。このように、通信相手との間で継続的にコネクションを張って、多数のパケットのやり取りを行なう通信は、コネックテッド（connected）な通信と言うことができる。
【００１１】
さて、上位層のプロトコルから下位層のプロトコルに対して命令を伝える場合、サービス・プロバイダ・インターフェイス（ＳＰＩ）と呼ばれるインターフェイスを介して伝えることになる。例えば、ＳＰＩの一種であるＳｏｃｋｅｔでは、上記したコネクションレスな通信を行なう場合、通信相手を指定する必要があるので、例えば、ノードＸにデータを送信したい場合は"Send To node X"、ノードＸからデータを受信したい場合は"Receive From node X"と言うような命令を出すことになる。一方、コネックテッドな通信を行なう場合は、コネクションが張ってあって通信相手が既に定まっているので、通信相手は省略して、"Send"或いは"Receive"のみを出すだけでよい。
【００１２】
ところで、上記した下位層のプロトコルが前述したＳＢＰ−２である場合に、このような命令が伝えられると、ＳＢＰ−２は、次のようなトランザクションを行なう。
【００１３】
後者のコネックテッドな通信に対応するコネックテッド・トランザクション（Connected Transaction）では、イニシエータが通信相手であるターゲットにログインし、その後、ログアウトするまでの間、イニシエータはそのターゲットとコネクションを張っている。従って、そのようなコネクションを張っている間に、イニシエータが上記したＯＲＢを出力モードにして、ターゲットに所望のデータを消費させる動作が、上記した"Send"に対応し、イニシエータがＯＲＢを入力モードにして、ターゲットに所望のデータを書き込ませる動作が、上記した"Receive"に対応することになる。
【００１４】
一方、前者のコネクションレスな通信に対応するコネクションレス・トランザクション（Connection less Transaction）では、ＳＢＰ−２がコネクション・オリエンテッド（connection oriented）なプロトコルであるため、イニシエータが、まず、通信相手であるターゲットを指定してログインし、次に、上記したＯＲＢを出力モードにして、そのターゲットに所望のデータを消費させ、最後に、そのターゲットからログアウトするという一連の動作、即ち、ログイン、ＯＲＢ（出力モード）、ログアウトの３つを重ね合わせた動作が、上記した"Send To〜"に対応する。また、イニシエータが、通信相手であるターゲットを指定してログインし、ＯＲＢを入力モードにして、そのターゲットに所望のデータを書き込ませ、そのターゲットからログアウトするという一連の動作、即ち、ログイン、ＯＲＢ（入力モード）、ログアウトの３つを重ね合わせた動作が、上記した"Receive From 〜"に対応する。
【００１５】
【発明が解決しようとする課題】
ところで、ＳＰＩの場合、２つのノード（例えば、第１及び第２のノード）の関係において、第１のノードを起点として第２のノードに対しデータを送信（send）し受信（receive）することができる場合には、同じように、第２のノードを起点として第１のノードに対しデータを送信し受信することができるように設計されている。即ち、通信の対称性が保証されるように設計されている。
【００１６】
一方、ＳＢＰ−２の場合は、コネックテッド・トランザクションについては、イニシエータとターゲットの間にコネクションが張ってあるので、イニシエータを起点としても、ターゲットを起点としても、データを送信し受信することができ、通信の対称性は保証されている。
【００１７】
しかし、コネクションレス・トランザクションについては、イニシエータを起点する場合は、上記したようにデータを送信し受信することができるが、ターゲットを起点としては、データを送信し受信することはできない。これは、ＳＢＰ−２が元々、非対称だからあり、ログイン／ログアウトはイニシエータからしかできず、ターゲットはイニシエータからのログイン／ログアウトを待つしかないからである。
【００１８】
このように、従来においては、ターゲットからイニシエータに対してはログインすることができず、ターゲットはイニシエータからのログインを単に待っているしかないので、コネクションレス・トランザクションにて、ターゲットを起点としてデータを送信し受信することは不可能であった。
【００１９】
従って、本発明の目的は、上記した従来技術の問題点を解決し、コネクションレス・トランザクションにて、ターゲットを起点としてデータを送信し受信することが可能な装置及び方法を提供することにある。
【００２０】
【課題を解決するための手段およびその作用・効果】
上記した目的の少なくとも一部を達成するために、本発明のログイン装置は、或る特定装置に所定の通信路を介してログインし得るログイン装置であって、
前記特定装置からログインの勧誘を受けた場合に、前記特定装置に対してログインを行なうログイン手段を備えることを要旨とする。
【００２１】
例えば、上記特定装置がＳＢＰ−２におけるターゲットであり、ログイン装置がイニシエータであるとすると、上記のようなログイン手段を備えることによって、イニシエータは、ターゲットからログインの勧誘を受けた場合に、そのターゲットに対してログインする。こうしてイニシエータがターゲットにログインすると、ターゲットはイニシエータに対してデータの送受信を行なうことができるようになる。従って、ターゲットはイニシエータにログインの勧誘を行なえば、データの送受信が可能になるので、コネクションレス・トランザクションにおいても、ターゲットを起点としてデータの送受信を行なうことができる。
【００２２】
本発明のログイン装置において、ログイン勧誘レジスタをさらに備え、前記ログイン手段は、前記ログイン勧誘レジスタに、前記特定装置によって所定の情報が書き込まれた場合に、前記特定装置からログインの勧誘を受けたと判断することが好ましい。
【００２３】
このように、ログイン勧誘レジスタをさらに備え、そのレジスタに上記特定装置から所定の情報が書き込まれた場合に、ログインの勧誘を受けたとすることよって、ログイン手段は、ログインの勧誘を受けたか否かを、より簡単により確実に知ることができる。
【００２４】
ログイン勧誘レジスタを備えた本発明のログイン装置において、前記所定の情報は、前記特定装置の識別符号を含むことが好ましい。
【００２５】
このような情報を含むことによって、ログイン手段は、ログインの勧誘を受けた特定装置を容易に特定することができる。
【００２６】
本発明のログイン装置において、前記特定装置の備える特定ロジカル・ユニットに仮のログイン要求を定期的または不定期に出すと共に、前記特定ロジカル・ユニットから返される、前記仮のログイン要求に対する応答を受ける仮ログイン手段をさらに備え、前記ログイン手段は、前記仮ログイン手段の受けた前記応答の中に、所定の情報が含まれていた場合に、前記特定装置からログインの勧誘を受けたと判断することが好ましい。
【００２７】
このように、仮ログイン手段をさらに備え、その仮ログイン手段の受けた応答の中に所定の情報が含まれていた場合に、ログインの勧誘を受けたとすることによって、ログイン手段は、ログインの勧誘を受けたか否かを、簡単にかつ確実に知ることができる。
【００２８】
本発明のログイン装置において、前記特定装置の備える特定レジスタの内容を定期的または不定期に読み出すレジスタ読み出し手段をさらに備え、前記レジスタ読み出し手段の読み出した内容に所定の情報が含まれていた場合に、前記ログイン手段は、前記特定装置からログインの勧誘を受けたと判断することが好ましい。
【００２９】
このように、レジスタ読み出し手段をさらに備え、そのレジスタ読み出し手段の読み出した内容に所定の情報が含まれていた場合に、ログインの勧誘を受けたとすることによって、ログイン手段は、ログインの勧誘を受けたか否かを、簡単にかつ確実に知ることができる。
【００３０】
レジスタ読み出し手段を備えた本発明のログイン装置において、前記所定の情報は、前記ログイン装置の識別符号を含むことが好ましい。
【００３１】
このような情報を含むことによって、特定装置の備える特定レジスタの内容が、他のログイン装置によって、読み出される可能性がある場合でも、ログイン勧誘の対象となる当該ログイン装置を容易に特定することができる。
【００３２】
本発明の被ログイン装置は、或る特定装置から所定の通信路を介してログインされ得る被ログイン装置であって、
前記特定装置からログインされることを希望する場合に、前記特定装置に対してログインの勧誘を行なうログイン勧誘手段を備えることを要旨とする。
【００３３】
例えば、上記特定装置がＳＢＰ−２におけるイニシエータであり、被ログイン装置がターゲットであるとすると、上記のようなログイン勧誘手段を備えることによって、ターゲットは、イニシエータからログインされることを希望する場合に、そのイニシエータに対してログインの勧誘を行なう。こうしてターゲットがイニシエータにログインの勧誘を行なうことによって、イニシエータがターゲットにログインするものとすれば、ターゲットはイニシエータに対してデータの送受信を行なうことができるようになる。従って、コネクションレス・トランザクションにおいても、ターゲットを起点としてデータの送受信を行なうことができる。
【００３４】
本発明の被ログイン装置において、前記ログイン勧誘手段は、前記特定装置の備える特定レジスタに、所定の情報を書き込むことによって、ログインの勧誘を行なうことが好ましい。
【００３５】
このようにして、ログインの勧誘を行なうことにより、上記特定装置に簡単且つ確実にログイン勧誘を行なったことを認識させることができる。
【００３６】
本発明の被ログイン装置において、前記所定の情報は、前記被ログイン装置の識別符号を含むことが好ましい。
【００３７】
このような情報を含むことによって、当該被ログイン装置がログインの勧誘を行なったことを、上記特定装置に確実に認識させることができる。
【００３８】
本発明の被ログイン装置において、前記特定装置から仮のログイン要求を定期的または不定期に受けると共に、前記特定装置に対し、前記仮のログイン要求に対する応答を返す特定ロジカル・ユニットをさらに備え、前記ログイン勧誘手段は、前記特定ロジカル・ユニットの返す前記応答の中に、所定の情報を含ませることによって、ログインの勧誘を行なうことが好ましい。
【００３９】
また、本発明の被ログイン装置において、前記特定装置によって、その内容が定期的または不定期に読み出される特定レジスタをさらに備え、前記ログイン勧誘手段は、前記特定レジスタに、所定の情報を書き込むことによって、ログインの勧誘を行なうことが好ましい。
【００４０】
以上のようにして、ログインの勧誘を行なうことにより、上記特定装置に簡単且つ確実にログイン勧誘を行なったことを認識させることができる。
【００４１】
特定レジスタを備えた本発明の被ログイン装置において、前記所定の情報は、前記特定装置の識別符号を含むことが好ましい。
【００４２】
このような情報を含むことによって、被ログイン装置の備える特定レジスタの内容が、他の特定装置によって、読み出される可能性がある場合でも、ログイン勧誘の対象となる特定装置を容易に特定することができる。
【００４３】
本発明のログイン装置または被ログイン装置において、前記通信路はＩＥＥＥ１３９４バスから成ると共に、
前記特定装置との通信はＳＢＰ−２プロトコルで行なうことが好ましい。
【００４４】
このように通信路をＩＥＥＥ１３９４バスによって構成することにより、高速通信を利用して、特定装置との間でデータのやり取りを行なうことができる。ＳＢＰ−２プロトコルは、ＩＥＥＥ１３９４規格のバスシステムの利用を前提に設計されたプロトコルであって、ハードディスク装置やＣＤ−ＲＯＭ装置などに広く普及したトランスポート層のプロトコルであるため、商用パーソナルコンピュータのオペレーティング・システムに、標準で実装される場合が多いからである。
【００４５】
本発明の装置間通信システムは、ログイン装置から所定の通信路を介して被ログイン装置にログインし得る装置間通信システムであって、
前記被ログイン装置は、前記ログイン装置からログインされることを希望する場合に、前記ログイン装置に対してログインの勧誘を行なうログイン勧誘手段を備えると共に、
前記ログイン装置は、前記被ログイン装置からログインの勧誘を受けた場合に、前記被ログイン装置に対してログインを行なうログイン手段を備えることを要旨とする。
【００４６】
例えば、ログイン装置がＳＢＰ−２におけるイニシエータであり、被ログイン装置がターゲットであるとすると、上記のようなログイン勧誘手段を備えることによって、ターゲットは、イニシエータからログインされることを希望する場合に、そのイニシエータに対してログインの勧誘を行い、また、上記のようなログイン手段を備えることによって、イニシエータは、ターゲットからログインの勧誘を受けた場合に、そのターゲットに対してログインする。こうしてイニシエータがターゲットにログインすると、ターゲットはイニシエータに対してデータの送受信を行なうことができるようになる。従って、ターゲットはイニシエータにログインの勧誘を行なえば、データの送受信が可能になるので、コネクションレス・トランザクションにおいても、ターゲットを起点としてデータの送受信を行なうことができる。
【００４７】
本発明のログイン制御方法は、ログイン装置から所定の通信路を介して被ログイン装置にログインするためのログイン制御方法であって、
（ａ）前記被ログイン装置が、前記ログイン装置からログインされることを希望する場合に、前記ログイン装置に対してログインの勧誘を行なう工程と、
（ｂ）前記ログイン装置が、前記被ログイン装置からログインの勧誘を受けた場合に、前記被ログイン装置に対してログインを行なう工程と、
を備えることを要旨とする。
【００４８】
例えば、ログイン装置がＳＢＰ−２におけるイニシエータであり、被ログイン装置がターゲットであるとすると、本発明のログイン制御方法においては、ターゲットがイニシエータにログインの勧誘を行なうと、イニシエータはターゲットにログインを行なう。この結果、ターゲットはイニシエータに対してデータの送受信を行なうことが可能になる。従って、コネクションレス・トランザクションにおいても、ターゲットを起点としてデータの送受信を行なうことができる。
【００４９】
本発明の第１の記録媒体は、或る特定装置に所定の通信路を介してログインし得るコンピュータにログイン処理を行なわせるためのコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記特定装置からログインの勧誘を受けた場合に、前記特定装置に対してログインを行なう機能を前記コンピュータに実現させるためのコンピュータプログラムを記録したことを要旨とする。
【００５０】
本明細書において、コンピュータには、パーソナルコンピュータや、モバイルコンピュータ、情報処理端末装置や、ワークステーションなど、種々のコンピュータが含まれる他、実質的にコンピュータ機能を有するプリンタや複写機やインターフェイス切り換え器などの各種周辺機器や、同じくコンピュータ機能を有するオーディオセットやビデオセットなど各種家庭用機器や業務用機器なども含まれる。但し、後述する［発明の実施の形態］の欄においては、「コンピュータ」という語を、パーソナルコンピュータに代表されるような狭義のコンピュータという意味で用いる場合もある。
【００５１】
上記のようなコンピュータプログラムをコンピュータによって実行させると、上記した本発明のログイン装置におけるログイン手段と同様な機能を実現することができるため、上記したログイン装置と同様の効果を奏することが可能となる。
【００５２】
本発明の第２の記録媒体は、或る特定装置から所定の通信路を介してログインされ得るコンピュータに被ログイン処理を行なわせるためのコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記特定装置からログインされることを希望する場合に、前記特定装置に対してログインの勧誘を行なう機能を前記コンピュータに実現させるためのコンピュータプログラムを記録したことを要旨とする。
【００５３】
このようなコンピュータプログラムをコンピュータによって実行させると、上記した本発明の被ログイン装置におけるログイン勧誘手段と同様な機能を実現することができるため、上記した被ログイン装置と同様の効果を奏することが可能となる。
【００５４】
なお、本発明は、ログイン装置、被ログイン装置、装置間通信システム、ログイン制御方法、それら装置を構築するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の種々の態様で実現することができる。
【００５５】
【発明の実施の形態】
以下、本発明の実施の形態を実施例に基づいて、以下の順序で説明する。
１．ＩＥＥＥ１３９４バス及びＳＢＰ−２の概要
１−１．ＩＥＥＥ１３９４バスの概要
１−２．ＳＢＰ−２
２．第１の実施例
２−１．第１の実施例の構成
２−２．第１の実施例の動作
２−３．第１の実施例の効果
３．第２の実施例
３−１．第２の実施例の構成
３−２．第２の実施例の動作
３−３．第２の実施例の効果
４．第３の実施例
４−１．第３の実施例の構成
４−２．第３の実施例の動作
４−３．第３の実施例の効果
５．他の態様
【００５６】
１．ＩＥＥＥ１３９４バス及びＳＢＰ−２の概要
本発明の実施例について説明する前に、ＩＥＥＥ１３９４バス及びＳＢＰ−２について、その概要を説明する。
１−１．ＩＥＥＥ１３９４バスの概要
ＩＥＥＥ１３９４バスは、６４ビットのアドレス空間を持つプロセッサバスをシリアライズして同一信号線上にのせたものであり、転送速度は現状では４００ＭＨｚであるが、将来的には最高で３．２ＧＨｚを想定している。即ち、ＩＥＥＥ１３９４バスは、コンピュータのマザーボード上に見られるような通常のプロセッサバスと基本的には変わらないが、巨大なメモリ空間を１本の信号線によってサポートしていることになる。
【００５７】
また、ＩＥＥＥ１３９４バスはバスであるが、１つのプロセッサ専用として用いられるわけではなく、複数のプロセッサをつなげることができる。これはイメージとして、１つのバスの持っているメモリ空間を複数のプロセッサに割り当てた場合に相当する。即ち、複数のプロセッサが１つの信号経路を共有できるので、結果としてネットワークに非常に似た状況が実現される。
【００５８】
このように、ＩＥＥＥ１３９４バスでは、１つのバスに複数のコンピュータを接続することが可能であるから、そのバスにさらに、例えばプリンタを接続すれば、そのプリンタを複数のコンピュータで共有することも可能になる。これはあたかも小規模なネットワークとして見ることができる。
【００５９】
しかしながら、一般的なネットワークとは異なり、ＩＥＥＥ１３９４バスはプロセッサバスの設計を踏襲しているので、基本的には、個々のプロセッサが出す要求を衝突させずに管理することが可能である。このメカニズムをバスアービトレーションという。即ち、データ転送中のＩＥＥＥ１３９４バス上では、このバスアービトレーションによって、１つのノード（即ち、この場合は１つのコンピュータ）だけがデータ転送を実行することが保証されている。言い換えると、或るノードがＩＥＥＥ１３９４バスを占有してしまうと、他のノードは同一サイクルタイム（１２５μｍｓ）内ではそのバスを使用することができないような制御が働く。このため、一般的なネットワークで用いられるキャリア検出やコリジョン（パケットの衝突）検出といったリソースの排他制御の方式は、ＩＥＥＥ１３９４バスでは不必要となっている。
【００６０】
１−２．ＳＢＰ−２
一方、ＳＢＰ−２の設計上の特徴は、いわゆるコネクションベースであることである。即ち、或るＳＢＰ−２のターゲットに対して、これを利用したいホストデバイスは、ＳＢＰ−２のイニシエータとして設計される必要がある。そして、イニシエータは、ターゲットに対してログインを要求し、そのログインが成立した場合のみ、ターゲットを利用する権利が獲得される（なお、正確には、イニシエータは、ターゲットの備えるロジカル・ユニット（Logical Unit）毎にログインするのであるが、ここでは、説明を簡単にするために、単にターゲットにログインするものとして説明する。）。従って、仮に、複数のイニシエータに対して、１つのターゲットがあった場合でも、ログインの許されたイニシエータのみがそのターゲットを利用するようにすることによって、複数のイニシエータによって、そのターゲットを共用することができる。
【００６１】
ところで、ＳＢＰ−２において、イニシエータとターゲットはＩＥＥＥ１３９４バスで接続された形になっている。前述したように、ＩＥＥＥ１３９４バスはバスであるので、ターゲットはイニシエータのメモリに対しリード／ライトすることできる。そこで、前述したように、ＳＢＰ−２では、共有メモリを有している装置をイニシエータと呼び、共有メモリを有しない装置をターゲットと呼んでいる。即ち、両方の装置が共有メモリを共に持つことは無駄であるので、一方の装置が共有メモリを持つようにしている。従って、イニシエータは自己の有するメモリが共有メモリとなっているので、ローカルアクセスでデータをリード／ライトすることできる。これに対して、ターゲットはイニシエータの有するメモリを共有メモリとして使用しているので、リモートアクセスでデータをリード／ライトする必要がある。なお、装置に対するイニシエータ，ターゲットの役割付けは、装置を設計する際の最初段階で行なわれる。通常は、コンピュータなどのホストデバイスがイニシエータになって、プリンタやスキャナなどのデバイスがターゲットになる場合が多い。この役割付けは固定的なもので、原則として途中で変わることはない。但し、設計によっては、１つの装置において、スイッチ等によりイニシエータ，ターゲットの役割付けの切り換えができるようにしても構わない。
【００６２】
従来の一般的なネットワークでは、イニシエータがターゲットの状態をポーリングして、ターゲットが要求を受け付けるレディ状態になったときに、イニシエータがコマンドを送るというようなプッシュスタイルの制御を行なっていたが、ＳＢＰ−２では、前述したように、イニシエータは、自己のメモリ空間にターゲットのための命令やデータを置いておき、ターゲットが自分の処理可能なタイミングでその命令やデータを取り込んで処理するというプルスタイルの制御を行なう。これにより、ＳＢＰ−２では、全体のトランザクションの効率が高くなる。
【００６３】
２．第１の実施例
２−１．第１の実施例の構成
以上のことを踏まえて、本発明の第１の実施例について図面を用いて説明する。図１は本発明の第１の実施例としてのイニシエータ及びターゲットの構成を示すブロック図であり、図２は図１に示すイニシエータ及びターゲットを備える装置間通信システムを示すブロック図である。本システムでは、各装置間を図２に示すようにＩＥＥＥ１３９４バス３０で接続しており、また、装置間の通信をＳＢＰ−２プロトコルで行なっている。従って、ＩＥＥＥ１３９４バス３０に接続された各装置は、共有メモリを有するイニシエータ１０，４０〜７０と、共有メモリを有していないターゲット２０と、に分かれている。なお、本実施例においては、イニシエータ１０，４０〜７０はそれぞれコンピュータであり、ターゲット２０はプリンタであるものとする。
【００６４】
イニシエータ１０，４０〜７０の構成は、それぞれ同じであるので、代表して、イニシエータ１０の構成を図１を用いて説明する。図１に示すように、イニシエータ１０は、コントローラ１１と、共有メモリ１２と、を備えている。このうち、共有メモリ１２には、ログイン勧誘レジスタ１３が設けられている他、必要に応じて、マネージメントＯＲＢ１４やノーマルＯＲＢ１５などの特別なデータ構造が置かれる。また、コントローラ１１は、ログイン部１１ａを備えている。
【００６５】
一方、ターゲット２０は、イニシエータからのログイン／ログアウト要求を受け、それに対する応答を行なうマネージメント・エージェント２１と、ログインされたイニシエータとの間でデータのやり取りを行なうフェッチ・エージェント２２と、を備えている。このうち、マネージメント・エージェント２１は、ログイン勧誘部２１ａを備えている。
【００６６】
なお、実際には、ターゲットは、１つ以上のロジカル・ユニットを備えており、そのロジカル・ユニット毎にマネージメント・エージェントとフェッチ・エージェントを備えているが、本実施例では、説明を簡単にするために、ロジカル・ユニットは省略している。
【００６７】
図３は図１に示すイニシエータを構成するコンピュータとターゲットを構成するプリンタのハードウェア構成の概要を示すブロック図である。
【００６８】
図３に示すように、ハードウェアの構成として、イニシエータを構成するコンピュータ１００は、その内部に、コンピュータプログラムに従って種々の処理や制御を行なうためのＣＰＵ１０２と、上記コンピュータプログラムを記憶したり、処理中に得られたデータなどを一時的に記憶したりするためのメモリ１０４と、ＣＰＵ１０２と各種周辺装置やＩＥＥＥ１３９４バス３０との間でデータなどのやり取りを行なうためのＩ／Ｏ部１０６と、各種データを格納するためのハードディスク装置１０８と、ＣＤ−ＲＯＭドライブ装置１１０と、を備えている。また、その外部には、ユーザからの指示などを入力するためのキーボード１１２やマウス１１４と、データなどを表示するためのモニタ１１６と、を備えている。
【００６９】
このうち、ＣＰＵ１０２が、メモリ１０４に格納された所望のコンピュータプログラムを読み出して実行することにより、図１に示したコントローラ１１として機能する。また、図１に示した共有メモリ１２には、メモリ１０４の一部が割り当てられる。
【００７０】
一方、ターゲットを構成するプリンタ２００は、その内部に、コンピュータプログラムに従って種々の処理や制御を行なうためのＣＰＵ２０２と、上記コンピュータプログラムを記憶したり、処理中に得られたデータなどを一時的に記憶したりするためのメモリ２０４と、ＣＰＵ２０２と他の構成要素やＩＥＥＥ１３９４バス３０との間でデータなどのやり取りを行なうためのＩ／Ｏ部２０６と、ＣＰＵ２０２からの指示に従って、印刷用紙に画像等の印刷を行なうプリンタ機構部２０８と、印刷データを一時的に格納するための入力バッファ２１０と、を備える。
【００７１】
このうち、ＣＰＵ２０２が、メモリ２０４に格納された所望のコンピュータプログラムを読み出して実行することにより、図１に示したマネージメント・エージェント２１やフェッチ・エージェント２２として機能する。
【００７２】
本実施例では、コンピュータ１００のメモリ１０４に格納されているコンピュータプログラムは、記録媒体であるＣＤ−ＲＯＭ１１１に記録された形態で提供され、ＣＤ−ＲＯＭドライブ装置１１０により読み取られることによって、コンピュータ１００内に取り込まれる。取り込まれたコンピュータプログラムは、各々のハードディスク装置１０８に転送され、その後、起動時などにメモリ１０４に転送される。あるいは、読み取られたコンピュータプログラムは、各々のハードディスク装置１０８を介さず、直接、メモリ１０４に転送するようにしても良い。
【００７３】
一方、プリンタ２００の方は、メモリ２０４の一部がＲＯＭで構成されており、プリンタ用のコンピュータプログラムはそのＲＯＭに格納されている。従って、このコンピュータプログラムはＲＯＭのチップに記録された形態で提供される。また、このようなＲＯＭを用いる代わりに、メモリ１０４の一部を書き換え可能な不揮発性メモリで構成すると共に、プリンタ用のコンピュータプログラムをＣＤ−ＲＯＭ１１１に記録された形態で提供し、そのコンピュータプログラムをコンピュータ１００のＣＤ−ＲＯＭドライブ装置１１０によって読み取って、図示せざるネットワーク等を介してプリンタ２００に転送し、上記の不揮発性メモリに書き込むようにしても良い。
【００７４】
このように、本実施例では、コンピュータプログラムをコンピュータ読み取り可能に記録する「記録媒体」としてＣＤ−ＲＯＭやＲＯＭを利用することを述べたが、その他にも、フレキシブルディスクや光磁気ディスク、ＩＣカード、ＲＯＭカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置（ＲＡＭなどのメモリ）および外部記憶装置等の、コンピュータが読取り可能な種々の媒体を利用できる。
【００７５】
また、コンピュータプログラムは、このような記録媒体に記録された形態での提供の他、ネットワークを介して、コンピュータプログラムを供給するプログラムサーバ（図示せず）にアクセスし、プログラムサーバからコンピュータ１００やプリンタ２００内に取り込むようにしても良い。
【００７６】
また、上記コンピュータプログラムの一部は、オペレーティングシステムプログラムによって構成するようにしても良い。
【００７７】
２−２．第１の実施例の動作
それでは、本実施例の動作について説明する。例えば、今、ターゲット２０であるプリンタが、イニシエータであるコンピュータからフォントをダウンロードして印刷する場合（フォントダウンロード印刷）を考えてみる。なお、説明を分かりやすくするために、ターゲット２０をプリンタａとし、イニシエータ１０をコンピュータＡとし、イニシエータ４０〜７０をコンピュータＢ〜Ｅとする。
【００７８】
ターゲット２０であるプリンタａは、フォントのダウンロードというサービスを受けるために、そのサービスを提供してくれるコンピュータを見つけだす必要がある。そこで、このプリンタａは、各コンピュータＡ〜Ｅに対して、順番に、そのサービスを提供してくれるか否かを問い合わせる（即ち、ユニキャスト）。具体的には、前述したとおり、通信相手であるコンピュータを順番に指定して、一時的なコネクションを張り、１パケットを送出する、いわゆるコネクションレスな通信を行なうことになる。
【００７９】
このようなコネクションレスな通信を行なうために、プリンタａでは、上位層のプロトコルからサービス・プロバイダ・インターフェイス（ＳＰＩ）を介して下位層のプロトコルであるＳＢＰ−２に対して、次のような命令を伝える。例えば、コンピュータＡを通信相手として指定して、ダウンロードフォントのサービスがあるか否かを問いただすために、"Send To Computer A 〜"と言うような命令を伝え、また、そのステータスを返してもらうために、"Receive From Computer A 〜"と言うような命令を伝えることになる。
【００８０】
ＳＢＰ−２では、前述したとおり、プリンタａはターゲット２０として動作し、コンピュータＡはイニシエータ１０として動作する。従って、プリンタａにおいて、ＳＢＰ−２に対して上記したような命令が伝えられると、ターゲット２０は、その命令に基づいて、自らを起点として、通信相手であるイニシエータ１０との間で、以下に述べるようなログイン勧誘を伴うコネクションレス・トランザクションを行なう。
【００８１】
図４は図１に示すターゲットにおけるログイン勧誘処理ルーチンの処理手順を示すフローチャートであり、図５は図１に示すイニシエータにおけるログイン勧誘対応処理ルーチンの処理手順を示すフローチャートである。また、図６は図１に示すイニシエータとターゲットとの間で行なわれるログイン勧誘を伴うコネクションレス・トランザクションを示すタイミングチャートである。
【００８２】
図６において、（ａ）は、ターゲットに前述した"Send To Computer A 〜"と言うような命令が伝えられた場合のコネクションレス・トランザクションを示し、（ｂ）は、同じくターゲットに前述した"Receive From Computer A 〜"と言うような命令が伝えられた場合のコネクションレス・トランザクションを示している。（ａ），（ｂ）において、トランザクションの内容は上から下に向かって時系列的に配列されている。
【００８３】
ターゲット２０に、上記のような命令が伝えられると、図４に示すように、ターゲット２０のマネージメント・エージェント２１は、ターゲット２０自らを起点としてコネクションレス・トランザクションを行なう必要があると判断して（ステップＳ１０２）、イニシエータ１０にログインしてもらうために、イニシエータ１０に対してログインの勧誘を行なう。具体的には、マネージメント・エージェント２１のログイン勧誘部２１ａが、ＩＥＥＥ１３９４バス３０を介してイニシエータ１０にアクセスし、イニシエータ１０における共有メモリ１２に設けられたログイン勧誘レジスタ１３に、自ら（即ち、ターゲット２０）のＧＵＩＤを書き込むことによって、ログイン勧誘を行なう（ステップＳ１０４）。ここで、ＧＵＩＤとは、グローバル・ユニーク・アイデンティフィケション（Global Unique Identification）の略で、各イニシエータ，ターゲットに固有の識別符号のことである。このＧＵＩＤは、イニシエータ，ターゲットを構成する装置がそれぞれ製造される段階で、世界中で唯一の識別符号として与えられる。従って、ターゲット２０のＧＵＩＤが例えば「２０」であるとすると、マネージメント・エージェント２１は、イニシエータ１０のログイン勧誘レジスタ１３に「２０」を書き込むことになる。
【００８４】
一方、イニシエータ１０のコントローラ１１は、図５に示す処理ルーチンを開始すると、まず、ログインの勧誘を受けたか否かを判断する。具体的には、コントローラ１１のログイン部１１ａが、共有メモリ１２に設けられたログイン勧誘レジスタ１３をチェックして、ＧＵＩＤが書き込まれているか否かに基づいて判断する（ステップＳ２０２）。
【００８５】
ＧＵＩＤが書き込まれていない場合、コントローラ１１のログイン部１１ａは、ログインの勧誘を受けていないと判断して、ＧＵＩＤが書き込まれるまで待機する。一方、ＧＵＩＤが書き込まれている場合は、ログインの勧誘を受けたと判断して、そのログイン勧誘レジスタ１３に書き込まれているＧＵＩＤを読み出す（ステップＳ２０４）。そして、コントローラ１１のログイン部１１ａは、読み出したＧＵＩＤから、ログインの勧誘を行なっているターゲットを特定する。ここでは、ＧＵＩＤとして「２０」が読み出されるので、ログインの勧誘を行なっているターゲットはターゲット２０であると特定する。
【００８６】
こうして、ログインの勧誘を受けて、そのログインの勧誘を行なっているターゲット２０を特定すると、次に、コントローラ１１のログイン部１１ａは、そのターゲット２０にログインするために、そのターゲット２０に対してログイン・パケットを送出する（ステップＳ２０６）。このログイン・パケットには、ターゲット２０にログインするためのログイン要求と、イニシエータ１０のＧＵＩＤと、が含まれている。従って、イニシエータ１０のＧＵＩＤが例えば「１０」であるとすると、「１０」が含まれることになる。
【００８７】
一方、ターゲット２０のマネージメント・エージェント２１は、図４に示すように、ステップＳ１０４でログインの勧誘を行なった後、ログイン・パケットを受け取るまで待機している（ステップＳ１０６）。そして、マネージメント・エージェント２１は、パケットを受け取ると、そのパケットにログイン要求が含まれているかどうかを判定し、ログイン要求が含まれていれば、そのパケットをログイン・パケットと判断して、そのログイン・パケットに含まれるＧＵＩＤを読み込む（ステップＳ１０８）。そして、マネージメント・エージェント２１は、読み込んだＧＵＩＤから、ログイン・パケットを送出したイニシエータを特定して、そのイニシエータがログインの勧誘を行なったイニシエータと同じであることを確認する。ここでは、ＧＵＩＤとして「１０」が読み込まれるので、ログイン・パケットを送出したイニシエータ１０は、ログインの勧誘を行なったイニシエータ１０と同じであることを確認することになる。
【００８８】
こうして、マネージメント・エージェント２１は、ログイン要求を受けたイニシエータが、ログイン勧誘を行なったイニシエータと同じであることを確認した上で、ログイン要求を受けたイニシエータ１０に対して、ステータスをログイン成立を表す「ログイン・サクセスフル」に設定したステータス・パケットを送出して（ステップＳ１１０）、ログインが成立した旨の応答を行なう。ステータス・パケットを送出すると、マネージメント・エージェント２１は、図４に示す処理ルーチンを終了する。
【００８９】
一方、イニシエータ１０のコントローラ１１は、図５に示すように、ステップＳ２０６でログイン・パケットを送出した後、ステータス・パケットを受け取るまで待機している（ステップＳ２０８）。そして、コントローラ１１は、ターゲット２０からのステータス・パケットを受け取ると、そのパケットに含まれるステータスを読み込み、ログイン成立を表す「ログイン・サクセスフル」であることを確認した上で、図５に示す処理ルーチンを終了する。
【００９０】
以上の一連の処理によって、ターゲット２０はイニシエータ１０からログインしてもらうことができる。
【００９１】
ところで、上記した説明においては、イニシエータ１０からターゲット２０へはログイン・パケットを送出し、ターゲット２０からイニシエータ１０へはステータス・パケットを送出するとして説明したが、これらの動作について、さらに詳細な説明を加える。
【００９２】
図１に示したとおり、イニシエータ１０は共有メモリ１２を備えている。そこで、イニシエータ１０がターゲット２０に対してログイン・パケットを送出する場合は、まず、イニシエータ１０が、ターゲット２０に送出したいログイン・パケットのデータを、図１に示すようなマネージメントＯＲＢ１４と呼ばれる特別なデータ構造として、自己の有する共有メモリ１２上に置く。次に、イニシエータ１０は、ターゲット２０のマネージメント・エージェント２１に対して、ＩＥＥＥ１３９４バス３０を介して、そのデータを置いた共有メモリ１２上の番地を示すポインタを送り出す。一方、ターゲット２０のマネージメント・エージェント２１は、このポインタを受け取ると、ＩＥＥＥ１３９４バス３０を介して、ポインタを送り出したイニシエータ１０の共有メモリ１２にアクセスして、ポインタの示す番地に置かれているマネージメントＯＲＢ１４を取り込むことにより、ログイン・パケットのデータを受け取る。こうして、イニシエータ１０からターゲット２０へログイン・パケットが送出される。
【００９３】
一方、その応答として、ターゲット２０がイニシエータ１０に対してステータス・パケットを送出する場合は、次のようになる。即ち、イニシエータ１０から受け取ったログイン・パケットには、要求やＧＵＩＤの他に、イニシエータ１０が応答を受け取るために用いる、共有メモリ１２上の番地を示すポインタが含まれている。そこで、ターゲット２０のマネージメント・エージェント２１は、ログイン・パケットを受け取ると、それに含まれている上記のポインタを読み取り、次に、ＩＥＥＥ１３９４バス３０を介して、イニシエータ１０の共有メモリ１２にアクセスして、読み取ったポインタの示すＳＴＡＴＵＳ＿ＦＩＦＯ（図示せず）に、ステータス・パケットのデータを書き込む。これによって、ターゲット２０からイニシエータ１０へ、ステータス・パケットがリモートライトされる。
【００９４】
さて、以上のようにして、ターゲット２０がイニシエータ１０からログインしてもらうと、次に、ターゲット２０はイニシエータ１０との間で１パケットのデータのやり取りを行なう。このとき、ターゲット２０では、処理の主体がマネージメント・エージェント２１からフェッチ・エージェント２２に移行し、フェッチ・エージェント２２がイニシエータ１０におけるコントローラ１１との間で、１パケットのデータのやり取りを行なうことになる。
【００９５】
即ち、ターゲット２０に前述した"Send To Computer A 〜"と言うような命令が伝えられている場合には、図６（ａ）に示すように、フェッチ・エージェント２２は、イニシエータ１０に対して、所望のデータ（例えば、ダウンロードフォントのサービスがあるか否かを問いただすデータ）を送信することになる。一方、ターゲット２０に前述した、"Receive From Computer A 〜"と言うような命令が伝えられている場合には、図６（ｂ）に示すように、フェッチ・エージェント２２は、イニシエータ１０から、所望のデータ（例えば、ダウンロードフォントのサービスを提供できるか否かを表すステータスのデータ）を受信することになる。
【００９６】
実際には、以下に述べるような動作となる。即ち、フェッチ・エージェント２２がイニシエータ１０にデータを送信する場合は、まず、イニシエータ１０が、自己の有する共有メモリ１２上に、前述したマネージメントＯＲＢ１４ではなく、図１に示すようなノーマルＯＲＢ１５を入力モードにして置く。次に、フェッチ・エージェント２２が、ＩＥＥＥ１３９４バス３０を介して、イニシエータ１０の共有メモリ１２にアクセスして、そのノーマルＯＲＢ１５に、送信したいデータを書き込む。これによって、ターゲット２０からイニシエータ１０へデータがリモートライトされる。
【００９７】
一方、フェッチ・エージェント２２がイニシエータ１０からのデータを受信する場合は、まず、イニシエータ１０が、共有メモリ１２上にノーマルＯＲＢ１５を出力モードにして置き、そこにターゲット２０に受信してもらいたいデータを置く。次に、フェッチ・エージェント２２は、イニシエータ１０の共有メモリ１２にアクセスして、そのノーマルＯＲＢ１５を取り込むことにより、データを受け取る。これによって、イニシエータ１０からターゲット２０へデータがリモートリードされる。
【００９８】
こうして、ターゲット２０がイニシエータ１０との間で１パケットのデータのやり取りを行なうと、次に、イニシエータ１０はターゲット２０からログアウトする。このとき、ターゲット２０では、処理の主体がフェッチ・エージェント２２から再びマネージメント・エージェント２１に移り、イニシエータ１０におけるコントローラ１１は、マネージメント・エージェント２１との間で、ログアウトの処理を行なう。以下、それについて簡単に説明する。
【００９９】
ログアウトを行なう場合、まず、イニシエータ１０のコントローラ１１が、ターゲット２０に対してログアウト・パケットを送出する。このログアウト・パケットには、ターゲット２０からログアウトするためのログアウト要求と、イニシエータ１０のＧＵＩＤと、が含まれている。
【０１００】
ターゲット２０のマネージメント・エージェント２１は、パケットを受け取ると、そのパケットにログアウト要求が含まれているかどうかを判定し、ログアウト要求が含まれていれば、そのパケットをログアウト・パケットと判断して、ログアウト・パケットに含まれるＧＵＩＤを読み込む。そして、マネージメント・エージェント２１は、読み込んだＧＵＩＤから、ログアウト・パケットを送出したイニシエータを特定して、そのログアウト要求を受けたイニシエータ１０に対して、ステータスをログアウト成立を表す「ログアウト・サクセスフル」に設定したステータス・パケットを送出して、ログアウトが成立した旨の応答を行なう。
【０１０１】
以上によって、ターゲット２０に"Send To Computer A 〜"や"Receive From Computer A 〜"と言うような命令が伝えられた場合の一連のトランザクションが終了する。即ち、このコネクションレス・トランザクションでは、図６（ａ）に示すように、ログイン勧誘、ログイン、データ送信（ＯＲＢ：入力モード）、ログアウトの４つを重ね合わせた動作が、上記した"Send To 〜"に対応し、図６（ｂ）に示すように、ログイン勧誘、ログイン、データ受信（ＯＲＢ：出力モード）、ログアウトの４つを重ね合わせた動作が、上記した"Receive From 〜"に対応することになる。
【０１０２】
以下、同様にして、プリンタａであるターゲット２０が、コンピュータＢ〜Ｅであるイニシエータ４０〜７０に対して、順番に、上記したコネクションレス・トランザクションにより、フォントダウンロードのサービスがあるか否かを問い合わせ、そのステータスを返してもらうことによって、そのサービスを提供するコンピュータを見つけだすことができる。
【０１０３】
２−３．第１の実施例の効果
以上説明したように、本実施例においては、ターゲット２０がイニシエータ１０にログインの勧誘を行なって、イニシエータ１０からログインしてもらうことによって、ターゲット２０は、イニシエータ１０に対してデータを送信しまたは受信することができるようになる。従って、コネクションレス・トランザクションにおいても、ターゲット２０を起点としたデータの送受信が可能となり、通信の対称性が保証される。
【０１０４】
また、本実施例においては、イニシエータ１０の有する共有メモリ１２にログイン勧誘レジスタ１３を設け、そのレジスタ１３にターゲット２０が自らのＧＵＩＤを書き込むことによって、ログインの勧誘を行なっている。従って、ターゲット２０がログインの勧誘を行なっていることを、イニシエータ１０に簡単且つ確実に認識させることができる。
【０１０５】
３．第２の実施例
３−１．第２の実施例の構成
図７は本発明の第２の実施例としてのイニシエータ及びターゲットの構成を示すブロック図である。図７において、図１に示した構成要素と同一のものについては、同一の符号を付してある。
【０１０６】
図７に示すように、イニシエータ１０’は、図１に示したイニシエータ１０と同様に、コントローラ１１と、共有メモリ１２と、を備えている。しかし、図１に示したイニシエータ１０とは異なり、共有メモリ１２には、ログイン勧誘レジスタ１３を設けていない。また、コントローラ１１は、ログイン部１１ａと、仮ログイン部１１ｂと、を備えている。
【０１０７】
一方、ターゲット２０’は、図１に示したターゲット２０では省略していたが、ロジカル・ユニット（Logical Unit）を備えている。各ロジカル・ユニットＬＵＮ０，ＬＵＮ１は、それぞれ、マネージメント・エージェントＭＥ０，ＭＥ１と、フェッチ・エージェントＦＥ０，ＦＥ１と、を備えている。これらロジカル・ユニットのうち、ロジカル・ユニットＬＵＮ１は、本来のサービスを提供する通常のロジカル・ユニットであるが、ロジカル・ユニットＬＵＮ０は、ターゲット２０’がイニシエータに対してログイン勧誘を行なうために利用される副次的なロジカル・ユニットである。より具体的には、ロジカル・ユニットＬＵＮ０は、ステータスのリブライのみを専任で行なうロジカル・ユニットである。また、ロジカル・ユニットＬＵＮ０におけるマネージメント・エージェントＭＥ０は、ログイン勧誘部ＭＥ０ａを備えている。
【０１０８】
なお、これらロジカル・ユニットは、それぞれ、ターゲット２０’におけるコンフィグレーション（Configuration）ＲＯＭ（図示せず）内にあるユニット・ディレクトリ（図示せず）上に存在している。
【０１０９】
３−２．第２の実施例の動作
それでは、本実施例の動作について説明する。なお、本実施例においても、ターゲット２０’をプリンタａとし、イニシエータ１０’をコンピュータＡとし、ターゲット２０’であるプリンタａが、フォントのダウンロードというサービスを提供してくれるコンピュータを見つけだすために、イニシエータである各コンピュータに対しコネクションレスな通信を行なうという前提は、図１に示した実施例の場合と同様である。
【０１１０】
また、本実施例においては、その他の前提として、イニシエータ１０’を含む各イニシエータが、それぞれ、ターゲット２０’における副次的なロジカル・ユニットＬＵＮ０に対して、一定の時間間隔で、仮のログイン要求を行なうものとする。
【０１１１】
図８は図７に示すターゲットにおけるログイン勧誘処理ルーチンの処理手順を示すフローチャートであり、図９は図７に示すイニシエータにおけるログイン勧誘対応処理ルーチンの処理手順を示すフローチャートである。
【０１１２】
イニシエータ１０’のコントローラ１１は、図９に示す処理ルーチンを開始すると、まず、コントローラ１１の仮ログイン部１１ｂが、ターゲット２０’のロジカル・ユニットＬＵＮ０に対して仮ログイン・パケットを送出する（ステップＳ４０２）。この仮ログイン・パケットは、通常のログイン・パケットと同様の構成を成しており、ターゲット２０’のロジカル・ユニットＬＵＮ０に対するログイン要求と、イニシエータ１０’のＧＵＩＤと、が含まれている。但し、この仮ログイン・パケットに含まれるログイン要求は、ロジカル・ユニットＬＵＮ０からステータスを受け取るためになされるログイン要求であって、ロジカル・ユニットからのサービス提供を受けるためになされる本来のログイン要求ではないため、仮のログイン要求である。
【０１１３】
コントローラ１１のログイン部１１ａは、後述するように、ターゲット２０’からのログイン勧誘を含むステータス・パケットを受け取るまで、一定の時間間隔、例えば、約２秒に１回の割合で、上記した仮ログイン・パケットを送出し続ける。
【０１１４】
一方、ターゲット２０’のロジカル・ユニットＬＵＮ０のマネージメント・エージェントＭＥ０は、図８に示すように、各イニシエータから定期的に送られてくる仮ログイン・パケットを受け取ったかどうかを判定し（ステップＳ３０２）、仮ログイン・パケットを受け取った場合には、その中に含まれるＧＵＩＤを読み込む（ステップＳ３０４）。
【０１１５】
この時、既に、プリンタａにおいて、上位層のプロトコルからＳＰＩを介して下位層のプロトコルであるＳＢＰ−２に対して、前述した如く、"Send To Computer A 〜"や"Receive From Computer A 〜"と言うような命令が伝えられていると、ターゲット２０’のマネージメント・エージェントＭＥ０は、その命令に基づいて、自らを起点として、通信相手であるコンピュータＡ（即ち、イニシエータ１０’）との間でログイン勧誘を伴うコネクションレス・トランザクションを行なう必要があると判断して、処理はステップＳ３０８に進む。しかし、この時、まだ、上記したような命令が伝えられていない場合には、マネージメント・エージェントＭＥ０は、コネクションレス・トランザクションを行なう必要がないと判断して、処理はステップＳ３１８に進む。
【０１１６】
ステップＳ３０８では、マネージメント・エージェントＭＥ０は、ステップＳ３０４で読み込んだＧＵＩＤが、目的のイニシエータ（即ち、上記した命令で伝えられた通信相手）のＧＵＩＤであるか否かを判定する。この場合、上記した命令で伝えられた通信相手はコンピュータＡ、つまり、イニシエータ１０’であるので、読み込んだＧＵＩＤがイニシエータ１０’のＧＵＩＤである「１０’」であるか否かを判定することになる。判定の結果、読み込んだＧＵＩＤが目的のイニシエータのＧＵＩＤでない場合には、処理はステップＳ３１８に進む。
【０１１７】
ステップＳ３１８では、マネージメント・エージェントＭＥ０は、ステップＳ３０４で読み込んだＧＵＩＤから、仮のログイン要求を受けたイニシエータを特定した上で、そのイニシエータに対して、ステータスをログイン不成立を表す「ログイン・エラー」に設定したステータス・パケットを送出する。そして、その後も、各イニシエータから送られてくる仮ログイン・パケットに対処するために、マネージメント・エージェントＭＥ０は、再び、ステップＳ３０２以降の処理を行なう。
【０１１８】
一方、ステップＳ３０８における判定の結果、読み込んだＧＵＩＤが「１０’」であって、目的のイニシエータであるイニシエータ１０’のＧＵＩＤである場合には、マネージメント・エージェントＭＥ０のログイン勧誘部ＭＥ０ａが、そのイニシエータ１０’に対して、ステータスとしてログイン勧誘を表す情報を設定したステータス・パケットを送出する（ステップＳ３１０）。なお、このログイン勧誘の対象となる「ログイン」とは、副次的なロジカル・ユニットＬＵＮ０に対するログインではなく、本来のサービスを提供する通常のロジカル・ユニットに対するログインである。従って、イニシエータ１０’からログインしてもらいたいロジカル・ユニットが、例えば、ロジカル・ユニットＬＵＮ１である場合には、マネージメント・エージェントＭＥ０のログイン勧誘部ＭＥ０ａは、ログイン勧誘を表す情報として、ログインの勧誘と、ログイン先のロジカル・ユニットの番号と、をそれぞれ設定することになる。具体的には、ロジカル・ユニットＬＵＮ１の番号が「＃１」であるとすると、例えば、"Please Login To Me with LUN#1"をステータスとして、ステータス・パケットに含めて送出する。
【０１１９】
これに対し、イニシエータ１０’におけるコントローラ１１の仮ログイン部１１ｂは、仮ログイン・パケットを送出した後、ターゲット２０’からのステータス・パケットを受け取ると、そのパケットに含まれるステータスを読み込んで、そのステータスがログイン勧誘を表す情報であるかどうかを判定する（ステップＳ４０４）。判定の結果、ログイン勧誘を表す情報でなく、ログイン不成立を表す「ログイン・エラー」であった場合には、再度、ターゲット２０’のロジカル・ユニットＬＵＮ０に対して仮ログイン要求を出すために、コントローラ１１の仮ログイン部１１ｂは、再び、ステップＳ４０２の処理を行なう。
【０１２０】
また、判定の結果、ログイン勧誘を表す情報であった場合には、コントローラ１１の仮ログイン部１１ｂは、ターゲット２０’からログイン勧誘を受けたと判断して、さらに、ログイン勧誘を表す情報からロジカル・ユニットの番号を読み出す。具体的には、上記情報には、ロジカル・ユニットの番号として、「＃１」が含まれているので、コントローラ１１は、ログインしてもらいたいロジカル・ユニットは、ロジカル・ユニットＬＵＮ１であることを認識する。そこで、コントローラ１１のログイン部１１ａは、ターゲット２０’のロジカル・ユニットＬＵＮ１にログインするために、そのロジカル・ユニットＬＵＮ１に対して、本来のログイン・パケットを送出する（ステップＳ４０６）。このログイン・パケットには、ロジカル・ユニットＬＵＮ１にログインするためのログイン要求と、イニシエータ１０’のＧＵＩＤと、が含まれている。
【０１２１】
一方、ターゲット２０’では、ロジカル・ユニットＬＵＮ０のマネージメント・エージェントＭＥ０が、ログイン勧誘を含むステータス・パケットを送出した後、処理はマネージメント・エージェントＭＥ０からロジカル・ユニットＬＵＮ１のマネージメント・エージェントＭＥ１に移り、マネージメント・エージェントＭＥ１は、ログイン・パケットを受け取るまで待機している（ステップＳ３１２）。そして、マネージメント・エージェントＭＥ１は、ログイン・パケットを受け取ると、そのログイン・パケットに含まれるＧＵＩＤを読み込み（ステップＳ３１４）、その読み込んだＧＵＩＤから、ログイン・パケットを送出したイニシエータを特定して、そのイニシエータがログインの勧誘を行なったイニシエータと同じであることを確認する。
【０１２２】
そして、マネージメント・エージェントＭＥ１は、ログイン要求を受けたイニシエータ１０’に対して、ステータスをログイン成立を表す「ログイン・サクセスフル」に設定したステータス・パケットを送出して（ステップＳ３１６）、ログインが成立した旨の応答を行なう。こうして、マネージメント・エージェントＭＥ１が、ステータス・パケットを送出すると、図８に示す処理ルーチンは終了する。
【０１２３】
一方、イニシエータ１０’のコントローラ１１は、図９に示すように、ステップＳ４０６でログイン・パケットを送出した後、ステータス・パケットを受け取るまで待機している（ステップＳ４０８）。そして、コントローラ１１は、ターゲット２０’のロジカル・ユニットＬＵＮ１からのステータス・パケットを受け取ると、そのパケットに含まれるステータスを読み込み、ログイン成立を表す「ログイン・サクセスフル」であることを確認した上で、図９に示す処理ルーチンを終了する。
【０１２４】
以上の一連の処理によって、ターゲット２０’はイニシエータ１０’からログインしてもらうことができる。
３−３．第２の実施例の効果
以上説明したように、本実施例においても、ターゲット２０’がイニシエータ１０’にログインの勧誘を行なって、イニシエータ１０’からログインしてもらうことによって、ターゲット２０’は、イニシエータ１０’に対してデータを送信しまたは受信することができるようになる。従って、コネクションレス・トランザクションにおいても、ターゲット２０’を起点としたデータの送受信が可能となり、通信の対称性が保証される。
【０１２５】
また、本実施例においては、ターゲット２０’にログイン勧誘に利用するための副次的なロジカル・ユニットＬＵＮ０を設け、各イニシエータがそのロジカル・ユニットＬＵＮ０に対して定期的に仮のログイン要求を出し、それらに対して、そのロジカル・ユニットＬＵＮ０はそれぞれステータスを返している。そこで、ターゲット２０’がログインの勧誘を行なう場合には、ログインしてもらいたいイニシエータ１０’に対して上記のステータスを返す際に、そのステータスとして、ログインの勧誘と、ログイン先のロジカル・ユニットＬＵＮ１の番号を設定するようにしている。従って、そのステータスがイニシエータ１０’に届くことによって、ターゲット２０’が、ロジカル・ユニットＬＵＮ１に対してログインの勧誘を行なっていることを、イニシエータ１０’に簡単且つ確実に認識させることができる。
【０１２６】
４．第３の実施例
４−１．第３の実施例の構成
図１０は本発明の第３の実施例としてのイニシエータ及びターゲットの構成を示すブロック図である。図１０において、図１または図７に示した構成要素と同一のものについては、同一の符号を付してある。但し、イニシエータ１０’におけるコントローラ１１は、図７に示したコントローラ１１とは異なり、仮ログイン部１１ｂに代えて、読み出し部１１ｃを備えている。
【０１２７】
また、図１０に示すように、ターゲット２０”は、マネージメント・エージェント２１と、フェッチ・エージェント２２と、を備える他、ターゲット２０”がイニシエータに対してログイン勧誘を行なうために利用される専用レジスタ２３を備えている。なお、前述したとおり、実際には、ターゲットは、１つ以上のロジカル・ユニットを備えており、そのロジカル・ユニット毎にマネージメント・エージェントとフェッチ・エージェントを備えているが、本実施例では、図１に示した実施例と同様に、説明を簡単にするために、ロジカル・ユニットは省略している。また、その他、ターゲット２０”には、上位層のドライバまたはアプリケーションによって構成されるログイン勧誘部２４が存在する。
【０１２８】
４−２．第３の実施例の動作
それでは、本実施例の動作について説明する。なお、本実施例においても、ターゲット２０”をプリンタａとし、イニシエータ１０’をコンピュータＡとし、ターゲット２０”であるプリンタａが、フォントのダウンロードというサービスを提供してくれるコンピュータを見つけだすために、イニシエータである各コンピュータに対しコネクションレスな通信を行なうという前提は、図１や図７に示した実施例の場合と同様である。
【０１２９】
また、本実施例においては、その他の前提として、イニシエータ１０’を含む各イニシエータが、それぞれ、一定の時間間隔で、ターゲット２０”における専用レジスタ２３の内容を読みに行くものとする。
【０１３０】
図１１は図１０に示すターゲットにおけるログイン勧誘処理ルーチンの処理手順を示すフローチャートであり、図１２は図１０に示すイニシエータにおけるログイン勧誘対応処理ルーチンの処理手順を示すフローチャートである。
【０１３１】
イニシエータ１０’のコントローラ１１は、図１２に示す処理ルーチンを開始すると、まず、コントローラ１１の読み出し部１１ｃが、ＩＥＥＥ１３９４バス３０を介してターゲット２０”にアクセスし、ＩＥＥＥ１３９４バストランザクションによって、ターゲット２０”における専用レジスタ２３の内容を読み込む（ステップＳ６０２）。そして、コントローラ１１は、読み込んだ内容に自己のＧＵＩＤ（即ち、イニシエータ１０’のＧＵＩＤ「１０’」）が含まれているか否かを判定する（ステップＳ６０４）。判定の結果、自己のＧＵＩＤが含まれていない場合には、コントローラ１１の読み出し部１１ｃは、一定の時間経過後、再び、ステップＳ６０２の処理を行なう。こうして、コントローラ１１の読み出し部１１ｃは、専用レジスタ２３の内容に自己のＧＵＩＤが含まれていることを検出するまで、一定の時間間隔で、専用レジスタ２３の内容の読み込みを繰り返し行なう。
【０１３２】
一方、プリンタａにおいて、上位層のプロトコルからＳＰＩを介して下位層のプロトコルであるＳＢＰ−２に対して、前述したような"Send To Computer A 〜"や"Receive From Computer A 〜"と言う命令が伝えられていると、ターゲット２０”は、図１１に示すように、その命令に基づいて、自らを起点として、通信相手であるコンピュータＡ（即ち、イニシエータ１０’）との間でログイン勧誘を伴うコネクションレス・トランザクションを行なう必要があると判断する（ステップＳ５０２）。そして、ターゲット２０”において、上位層のドライバまたはアプリケーションであるログイン勧誘部２４が、専用レジスタ２３に、ログインしてもらいたいイニシエータ１０’のＧＵＩＤ（即ち、「１０’」）を自律的に書き込むことにより、イニシエータ１０’に対してログイン勧誘を行なう（ステップＳ５０４）。
【０１３３】
従って、その後、イニシエータ１０’におけるコントローラ１１の読み出し部１１ｃが、前述したように、ターゲット２０”における専用レジスタ２３の内容を読み込むと、そこに自己のＧＵＩＤ（即ち、「１０’」）を見い出すので、コントローラ１１は、ステップＳ６０４の判定で、読み込んだ内容に自己のＧＵＩＤが含まれていると判定し、ターゲット２０”からログインの勧誘を受けたと判断する。
【０１３４】
こうして、イニシエータ１０’がターゲット２０”からログインの勧誘を受けると、その後のイニシエータ１０’における動作、即ち、図１２に示すＳ６０６〜Ｓ６０８の動作は、前述した第１の実施例におけるイニシエータ１０の動作、即ち、図５に示したＳ２０６〜Ｓ２０８の動作と同じであるので、それらの説明は省略する。また、その後のターゲット２０”の動作、即ち、図１１に示すＳ５０６〜Ｓ５１０の動作も、第１の実施例におけるターゲット２０の動作、即ち、図４に示したＳ１０６〜Ｓ１１０の動作と同様であるので、それらについての説明も省略する。
【０１３５】
４−３．第３の実施例の効果
以上説明したように、本実施例においても、図１または図７に示した実施例と同様に、ターゲット２０”がイニシエータ１０’にログインの勧誘を行なって、イニシエータ１０’からログインしてもらうことによって、ターゲット２０”は、イニシエータ１０’に対してデータを送信しまたは受信することができるようになる。従って、コネクションレス・トランザクションにおいても、ターゲット２０’を起点としたデータの送受信が可能となり、通信の対称性が保証される。
【０１３６】
また、本実施例においては、ターゲット２０”にログイン勧誘に利用するための専用レジスタ２３を設け、各イニシエータがその専用レジスタ２３の内容を定期的に読み込んでいる。そこで、ターゲット２０”がログインの勧誘を行なう場合には、その専用レジスタ２３に、ログインしてもらいたいイニシエータ１０’のＧＵＩＤを書き込むようにしている。従って、その後、イニシエータ１０’がその専用レジスタ２３の内容を読み込むことにより、ターゲット２０”がログインの勧誘を行なっていることを、イニシエータ１０’に簡単且つ確実に認識させることができる。
【０１３７】
５．他の態様
なお、本発明は上記した実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様にて実施することが可能である。
【０１３８】
上記した第１の実施例においては、ターゲット２０は、イニシエータ１０のログイン勧誘レジスタ１３に、自らのＧＵＩＤを書き込むことによって、ログインの勧誘を行なっていたが、ログイン勧誘レジスタ１３の最下位の１ビットを利用して、"Send To"を指定したログイン勧誘であるか、"Receive From"を指定したログイン勧誘であるか、をイニシエータ１０に知らせるようにしても良い。即ち、ターゲット２０が、ログイン勧誘レジスタ１３の最下位の１ビットをセットすると、イニシエータ１０は、それを"Send To"を指定したログイン勧誘であると判断して、ノーマルＯＲＢ１５を入力モードにするようにする。また、ターゲット２０が、ログイン勧誘レジスタ１３の最下位の１ビットをクリアすると、イニシエータ１０は、それを"Receive From"を指定したログイン勧誘であると判断して、ノーマルＯＲＢ１５を出力モードにするようにする。こうすることによって、イニシエータ１０は、適宜、ノーマルＯＲＢ１５のモードを切り換えて、効率的にデータの伝送を行なうことができる。
【０１３９】
上記した第１または第３の実施例では、説明を簡単にするためにロジカル・ユニットを省略していたが、これら実施例においても、ロジカル・ユニットを考慮し、ログイン勧誘を行なう際に、イニシエータにログインしてもらいたいロジカル・ユニットを特定したい場合には、次のようにして特定することができる。即ち、第１の実施例の場合には、ターゲット２０がイニシエータ１０のログイン勧誘レジスタ１３に、自己のＧＵＩＤを書き込む際に、ログイン先のロジカル・ユニットの番号も併せて書き込むようにし、また、第３の実施例の場合には、ターゲット２０”が自己の専用レジスタ２３に、ログインしてもらいたいイニシエータのＧＵＩＤを書き込む際に、ログイン先のロジカル・ユニットの番号も併せて書き込むようにするのである。
【０１４０】
上記した実施例においては、図２に示すように、ＩＥＥＥ１３９４バス３０に接続されているイニシエータは５つであり、ターゲットは１つであったが、本発明はこれらの数に限定されるものではない。従って、例えば、ターゲットが２つ以上あっても構わず、各ターゲットにおいて上記したような処理が行なわれれば良い。
【０１４１】
また、上記した実施例においては、イニシエータはコンピュータ、ターゲットはプリンタとしたが、本発明はこれに何ら限定されるものではない。例えば、イニシエータをコンピュータ以外に、例えば、スキャナやその他デバイスとしても良い。また、ターゲットもプリンタ以外のデバイスとしても良い。或いは、ターゲットをいわゆるインターフェイス切り換え器とし、ターゲットにＩＥＥＥ１３９４バスから既存のインターフェイスへの切り換えという役割だけを持たせ、その先にスキャナやプリンタをつなげるようにしても良い。
【図面の簡単な説明】
【図１】本発明の一実施例としてのイニシエータ及びターゲットの構成を示すブロック図である。
【図２】図１に示すイニシエータ及びターゲットを備える装置間通信システムを示すブロック図である。
【図３】図１に示すイニシエータを構成するコンピュータとターゲットを構成するプリンタのハードウェア構成の概要を示すブロック図である。
【図４】図１に示すターゲットにおけるログイン勧誘処理ルーチンの処理手順を示すフローチャートである。
【図５】図１に示すイニシエータにおけるログイン勧誘対応処理ルーチンの処理手順を示すフローチャートである。
【図６】図１に示すイニシエータとターゲットとの間で行なわれるログイン勧誘を伴うコネクションレス・トランザクションを示すタイミングチャートである。
【図７】本発明の第２の実施例としてのイニシエータ及びターゲットの構成を示すブロック図である。
【図８】図７に示すターゲットにおけるログイン勧誘処理ルーチンの処理手順を示すフローチャートである。
【図９】図７に示すイニシエータにおけるログイン勧誘対応処理ルーチンの処理手順を示すフローチャートである。
【図１０】本発明の第３の実施例としてのイニシエータ及びターゲットの構成を示すブロック図である。
【図１１】図１０に示すターゲットにおけるログイン勧誘処理ルーチンの処理手順を示すフローチャートである。
【図１２】図１０に示すイニシエータにおけるログイン勧誘対応処理ルーチンの処理手順を示すフローチャートである。
【符号の説明】
１０，１０’…イニシエータ
１１…コントローラ
１１ａ…ログイン部
１１ｂ…仮ログイン部
１１ｃ…読み出し部
１２…共有メモリ
１３…ログイン勧誘レジスタ
１４…マネージメントＯＲＢ
１５…ノーマルＯＲＢ
２０，２０’，２０”…ターゲット
２１…マネージメント・エージェント
２１ａ…ログイン勧誘部
２２…フェッチ・エージェント
２３…専用レジスタ
２４…ログイン勧誘部
４０〜７０…イニシエータ
１００…コンピュータ
１０２…ＣＰＵ
１０４…メモリ
１０６…Ｉ／Ｏ部
１０８…ハードディスク装置
１１０…ＣＤ−ＲＯＭドライブ装置
１１１…ＣＤ−ＲＯＭ
１１２…キーボード
１１４…マウス
１１６…モニタ
２００…プリンタ
２０２…ＣＰＵ
２０４…メモリ
２０６…Ｉ／Ｏ部
２０８…プリンタ機構部
２１０…入力バッファ
ＦＥ０，ＦＥ１…フェッチ・エージェント
ＭＥ０，ＭＥ１…マネージメント・エージェント
ＭＥ０ａ…ログイン勧誘部
ＬＵＮ０，ＬＵＮ１…ロジカル・ユニット
【図１】
0003797075.tif 000002
【図２】
0003797075.tif 000003
【図３】
0003797075.tif 000004
【図４】
0003797075.tif 000005
【図５】
0003797075.tif 000006
【図６】
0003797075.tif 000007
【図７】
0003797075.tif 000008
【図８】
0003797075.tif 000009
【図９】
0003797075.tif 000010
【図１０】
0003797075.tif 000011
【図１１】
0003797075.tif 000012
【図１２】
0003797075.tif 000013