(57)【特許請求の範囲】
【請求項１】
ホストとデバイスとの間の、パイプを経由するデータ転送のための方法であって、前記ホスト内の利用可能なメモリは、複数のメモリセグメントに分割され、
前記ホストにおいて前記デバイスに対応する１つの入力パイプおよび１つの出力パイプが確立され、前記入力パイプと前記出力パイプとが１つのパイプペアを構成する場合、前記複数のメモリセグメントのうちの少なくとも１つのメモリセグメントを前記パイプペアに割り当てることを含み、前記ホストへの着信データの場合は、前記少なくとも１つのメモリセグメントを前記入力パイプに割り当て、前記ホストからの発信データの場合は、前記少なくとも１つのメモリセグメントを前記出力パイプに割り当てて、前記少なくとも１つのメモリセグメントを、一度に前記入力パイプと前記出力パイプのいずれか一方のみに対して使用し、
前記ホストにおいて前記デバイスに対応する少なくとも２つの入力パイプと少なくとも２つの出力パイプを含む第１の数の入力パイプと第１の数の出力パイプが確立され、前記第１の数の入力パイプの各々と前記第１の数の出力パイプのうちの対応する出力パイプとが１つのパイプペアを構成することにより、第１の数のパイプペアを構成する場合、前記第１の数のパイプペアに対して前記複数のメモリセグメントのうちの第２の数のメモリセグメントを割り当てることを含み、前記第２の数は前記第１の数と等しいか前記第１の数より大きく、前記ホストと前記デバイスとの間のデータ転送のトラフィックに応じて前記第２の数のメモリセグメントを前記第１の数のパイプペアの間で再割り振りして、前記ホストへの着信データの場合は、前記第２の数のメモリセグメントの各々を前記第１の数の入力パイプのうちのいずれかに割り当てて、前記ホストからの発信データの場合は、前記第２の数のメモリセグメントの各々を前記第１の数の出力パイプのいずれかに割り当てる、前記方法。
【請求項２】
各メモリセグメントに、該メモリセグメントが現時点でどのパイプに割り当てられているかを示す１つまたは複数のフラグを追加する、請求項１に記載の方法。
【請求項３】
前記メモリセグメントがどのデバイスに割り当てられるかを伝えるのに別個のフラグを使用し、何本のパイプが前記メモリセグメントへのアクセスを有するかを伝えるのに別のフラグを使用する、請求項２に記載の方法。
【請求項４】
バルク転送モードを使用する、請求項１乃至３のいずれかに記載の方法。
【請求項５】
前記メモリ全体をセグメント化して、全てのメモリセグメントを割り当てる、請求項１乃至４のいずれかに記載の方法。
【請求項６】
１つまたは複数のメモリセグメントを、制御移行用のバッファとして排他的に使用する、請求項１乃至５のいずれかに記載の方法。
【請求項７】
データ伝送はＵＳＢ伝送である、請求項１乃至６のいずれかに記載の方法。
【請求項８】
パイプを経由して別のデバイスとの通信を確立するためのデータ転送手段を有する機器であって、利用可能なメモリは、複数のメモリセグメントに分割され、少なくとも１つのメモリセグメントを割り当てるためのパイプトラフィック判定手段および切換え手段をさらに備え、
前記データ転送手段において前記デバイスに対応する１つの入力パイプおよび１つの出力パイプが確立され、前記入力パイプと前記出力パイプとが１つのパイプペアを構成する場合、前記パイプトラフィック判定手段は、前記複数のメモリセグメントのうちの少なくとも１つのメモリセグメントを前記１つのパイプペアに割り当てるように構成され、前記切替え手段は、前記パイプトラフィック判定手段が前記データ転送手段への着信データであると決定したとき、前記少なくとも１つのメモリセグメントを前記入力パイプに割り当てて、前記切替え手段は、前記パイプトラフィック判定手段が前記データ転送手段からの発信データであると決定したとき、前記少なくとも１つのメモリセグメントを前記出力パイプに割り当て、前記少なくとも１つのメモリセグメントを、一度に前記入力パイプと前記出力パイプのいずれか一方に対してのみ使用し、
前記データ転送手段において前記デバイスに対応する少なくとも２つの入力パイプと出力パイプを含む第１の数の入力パイプと第１の数の出力パイプが確立され、前記第１の数の入力パイプの各々と前記第１の数の出力パイプのうちの対応する出力パイプとが１つのパイプペアを構成することにより、第１の数のパイプペアを構成する場合、前記パイプトラフィック判定手段は、前記第１の数のパイプペアに対して前記複数のメモリセグメントのうちの第２の数のメモリセグメントを割り当てるように構成され、前記第２の数は前記第１の数と等しいか前記第１の数より大きく、前記切替え手段は、前記デバイスとの間のデータ転送のトラフィックに応じて前記第２の数のメモリセグメントを前記第１の数のパイプペアの間で再割り振りし、前記切替え手段は、前記パイプトラフィック判定手段が前記データ転送手段への着信データであると決定したとき、前記第２の数のメモリセグメントの各々を前記第１の数の入力パイプのうちのいずれかに割り当てて、前記切替え手段は、前記パイプトラフィック判定手段が前記データ転送手段からの発信データであると決定したとき、前記第２の数のメモリセグメントの各々を前記第１の数の出力パイプのいずれかに割り当てる、前記機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホストとデバイスの間のデータ転送のための方法、ならびにそれぞれの機器に関する。ホストは、データトラフィックを編成する通信機器と見なされる。デバイスは、ホストに依存するものと見なされる。階層星型トポロジにおいては、通常、１つのホストに接続された多数のデバイスが存在する。
【背景技術】
【０００２】
概して、たとえばＵＳＢプロトコルと呼ばれることが多いユニバーサルシリアルバスプロトコルを用いるデータ通信の間、ホスト内の利用可能なメモリは、多数のセグメントに分割することができる。各メモリセグメントが、たとえば双方向制御トラフィック用のバッファであり、着信データトラフィック用のバッファであり、または発信データトラフィック用のバッファである特定の機能性に割り振られる。メモリ要求は、使用されるＵＳＢデバイスに強く依存する。ＵＳＢデバイスの要件は、デバイスのベンダによってフルカスタムに定義することもでき、デバイスが、ある特定のＵＳＢクラスに属してもよい。ＵＳＢクラスは、たとえばＨＩＤクラスとも呼ばれるヒューマンインタフェースデバイスクラス、大容量記憶デバイスクラス、映像デバイスクラス、ハブ、ワイヤレスコントローラおよびそれ以外でよい。ＵＳＢクラスは、このクラスに属すデバイスの特定の挙動を定義する。
【０００３】
大容量記憶デバイスクラスに属すデバイスは、たとえば、大きなバースト性があるデータを特色とする。したがって、こうしたデバイスは、ＵＳＢエンドポイントタイプとして、バルク転送を用いる。バルク転送は、いかなる待ち時間も最低限の帯域幅も保証せず、割り振られていないバス帯域幅を使用することになる。通常、大容量記憶デバイスは、主にデバイスからホストへの、いわゆる「読込み」、またはホストからデバイスへの、いわゆる「書込み」データストリームを有することを特徴とする。デバイスからホストへの、かつその逆でもデータレートが等しい双方向データ伝送は存在しない。
【０００４】
ＵＳＢ通信はパイプを経由して実施され、各パイプは、ホスト側ならびにデバイス側にあるエンドポイントに接続される。各エンドポイント上でのデータ伝送は、相互に独立している。２つのエンドポイントの間のデータ伝送は、常に一方向である。双方向データ伝送のためには、ホスト内の少なくとも２つのエンドポイントおよびデバイス内の対応する２つのエンドポイントが必要である。唯一の例外は、双方向に動作する制御パイプである。各ホストと各デバイスの間には、ただ１つの制御パイプが確立される。
【０００５】
各エンドポイントは、機能性を確実にするために、一定量のメモリを割り振る。このメモリのサイズが、接続の速度をある程度まで決定する。
【０００６】
たとえば、特許文献１の要約は、共有メモリ上の固定サイズのバッファ区域をパイプに割り振るデータ転送制御方法およびデータ転送制御装置を開示している。さらに、固定サイズのメモリが、各ポートに割り振られる。
【０００７】
上述したように、固定サイズのメモリが各パイプに割り振られ、データ転送が主に一方向である場合、割り振られたかなりの量のメモリが非効率的に使われる。さらに、固定サイズのメモリが各ポートに、したがって接続されている各デバイスに割り振られると、デバイスが小さいメモリを必要とする場合はたくさんのメモリが浪費されることになる。
【０００８】
【特許文献１】特開２００６−２５２３３４公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明の目的は、公知のソリューションを改良することである。
【課題を解決するための手段】
【００１０】
本発明によると、ホストデバイス内の利用可能なバッファメモリは、多数のセグメントに分割される。デバイスがポートに接続された場合、制御パイプに対して実施される何らかの制御移行を行った後、デバイスおよびホストは、各々がデバイス内のエンドポイントで終端する、他のデバイス固有のパイプを開くことになる。ホスト内の双方向通信リンク、ＩＮパイプおよびＯＵＴパイプの確立は、デバイス内の対応するエンドポイントと同様に必要である。本発明によると、ＩＮ−ＯＵＴパイプペアにメモリセグメントが割り振られる。このメモリは、通信の方向に応じて、ＩＮパイプまたはＯＵＴパイプいずれかに割り当てられる。
【００１１】
続いて、本発明の基本的思想は、一方向伝送につながる。というのは、ある特定のデバイス用に使われるメモリが、一定の時間に、ＩＮパイプまたはＯＵＴパイプにのみ割り振られるからである。双方向伝送は、時間の経過によるＩＮパイプとＯＵＴパイプの間のメモリの切換え中に達成される。したがって、データ伝送の方向は、継続的に変えることができる。したがって、メモリは、現時点で使用中のエンドポイントに割り振られるだけであり、どのメモリも割り振られず、使われない。提案されるソリューションは、メモリの浪費がほとんど省かれるという利点を有し、利用可能なメモリ全体を効率的に使う。ＩＮ−ＯＵＴパイプペアは、割り当てられたただ１つの記憶域を有するものに限定されない。多数のメモリセグメントを単一のＩＮ−ＯＵＴパイプペアに割り当てることも本発明の範囲内であり、より速い伝送を実現する。１つのポートに属す、同じタイプの多数のパイプ、つまり多数のＩＮパイプまたは多数のＯＵＴパイプのケースでは、多数のメモリセグメントは、異なるタイプのパイプの間で切り換えることもでき、後で説明するように、同じタイプのパイプの間で切り換えることもできる。
【００１２】
有利なやり方では、メモリセグメントがＩＮパイプまたはＯＵＴパイプに割り振られることを示すのに、１つまたは多数のフラグが使われる。このメモリセグメントは、複雑さを低く抑えて切り換えることができ、現時点でアクティブなパイプを識別するのに、フラグを使うこともできる。こうすることにより、ある特定のメモリセグメントの高速な再割振りが可能になり、システムを柔軟に保つ。
【００１３】
有利なやり方では、２つのフラグが、メモリセグメントの系列を示す。このメモリセグメントを介して接続されるデバイスは、第１のフラグによって識別される。第２のフラグは、デバイス内の何本のパイプ、したがって何個のエンドポイントが、このメモリセグメントにアクセスできるかを示す。
【００１４】
有利には、本発明は、バルク転送モード用に用いられる。このエンドポイントタイプは、多くのケースにおいて主に一方向に送られる、バースト性があるデータを特徴とする。通常、ＩＮパイプまたはＯＵＴパイプいずれかは、主に使用されない。さらに、大きなバッファサイズを求めるパケットサイズは比較的大きくてよい。上述したような、スマートメモリ割振りシステムによる、利用可能なメモリの効果的使用は、大幅な性能向上につながる。
【００１５】
本発明によると、ポートを介してホストに送られるデータのケースではこのポートのＩＮパイプにメモリが割り振られ、対応するデバイスにホストがデータを送っているケースではポートのＯＵＴパイプにメモリが割り振られるように、異なるタイプのパイプの間での切換えが実施される。このタイプの割振りにより、メモリが最も効率的に使われる。
【００１６】
本発明によると、あるデバイスに対応する、ホスト内の多数のＩＮパイプおよび多数のＯＵＴパイプのケースでは、こうしたパイプに対して割り当てられるメモリセグメントの数は、ある特定のタイプのパイプの数を超える場合がある。言い換えると、ＩＮパイプまたはＯＵＴパイプが利用可能であるよりも、多くのメモリセグメントが割り当てられる。このことは、１つのタイプの異なるパイプに、異なる数のメモリセグメントを割り当てることができることを意味する。たとえば、ある特定のパイプタイプは、ＩＮパイプでよい。ＯＵＴパイプは、別のパイプタイプと見なされる。ある特定のパイプに割り当てられるメモリセグメントの数は、データトラフィックによる時間の間に変わり得る。
【００１７】
たとえば、２つのＩＮパイプおよび２つのＯＵＴパイプのケースにおいて、ホストがデータを受信している場合、これは、２つのＩＮパイプが活動化されていることを意味する。３つのメモリセグメントが前記２つのパイプに割り当てられた場合、３つのメモリセグメントは、２つのパイプに分散されなければならない。２つのメモリセグメントは、第１のＩＮパイプに割り当てることができ、１つのメモリセグメントは、第２のＩＮパイプに割り当てることができる。２つのパイプに対するメモリ要求が変化しつつある場合、３つのメモリセグメントを割当て直すことができ、その後、１つのメモリセグメントが第１のＩＮパイプに割り当てられることになり、２つのメモリセグメントは、第２のＩＮパイプに割り当てることができる。同じことが、ＯＵＴパイプに対しても当てはまる。これは、同じ方向の多数のパイプが１つのポート中で開かれ、このポートに割り当てられるメモリセグメントの数が、制御トラフィック用に予約されたものを考慮に入れずに、一方向のパイプの数を超えるときは常に成り立ち得る。たとえば、音声データおよび映像データが異なるパイプを通って伝送される動画の伝送中、よくあるケースだが、映像データが音声データを超えることになる。したがって、音声パイプよりも、映像パイプに割り当てられるメモリセグメントの方が多い。動画中で、非常にシンプルな映像データ、たとえばブラックスクリーンおよび同時に非常に大きな音声データ、たとえば低圧縮の音楽を有するシーケンスがある場合、音声データおよび映像データの比は、一時的に変わり得る。映像パイプに割り当てられた一部のメモリセグメントは、一時的に音声パイプに割当て直されることになる。
【００１８】
本発明の有利な一実施形態によると、データ転送用に利用可能なメモリ全体が共有される。言い換えると、利用可能なバッファメモリ全体がセグメントに分割され、全セグメントは、エンドポイントの必要に基づいて割り当てることができる。こうすることにより、当該分野において公知である方法を用いた場合は行うことができない、利用可能な全メモリの使用をより効率的に保証する。全メモリの共有は、本発明によって可能とされる。利用可能なメモリ全体が割り振られた場合でも、依然として新たなデバイスを別のポートに接続することができる。というのは、メモリ割振りシステムが柔軟であり、メモリは、システムをクラッシュさせることなく、新たに含められるデバイスに割り振ることができる。このことは、多数のメモリセグメントが既存のパイプの少なくとも１つに割り当てられ、したがって、メモリが欠乏しないという仮定の下で成り立つ。
【００１９】
有利な実施形態では、制御パイプに割り当てられるメモリセグメントは切り換えられない。制御パイプ上でのデータレートが低いので、制御パイプに対するメモリ要求は、一般に制限される。制御パイプ上の伝送は双方向であり、他のエンドポイントに起きた失速状態のクリアなど、重要な特徴を達成するのに、制御トラフィックを用いることができる。したがって、制御エンドポイントへの固定メモリの割当ては、あまりメモリを浪費せず、さらに、着信および発信トラフィック用に共通メモリを使うという、本発明の基本概念と違わない。さらに、制御パイプへの固定メモリの割当ては、システムの故障の危険性を削減する。
【００２０】
好ましくは、本発明は、ＵＳＢプロトコルによるデータ転送のために実装される。ただし、本発明は有利には、パイプまたは他の仮想パスを経由するシーケンシャルデータ転送をサポートする他のプロトコルとともに用いることもできる。
【００２１】
次に、図面に示す例示的な実施形態を用いて、本発明をより詳しく説明する。
【００２２】
提示する発明の範囲は、説明する例に限定されない。
【発明を実施するための最良の形態】
【００２３】
図１は、例示的な実施形態における、ホスト機器Ｈに接続された２つのデバイス機器Ｄ１、Ｄ２を示す。この説明は、接続された多数のまたはただ１つのデバイスを有する類似の実施形態にも当てはまる。説明する実施形態において、ホストＨのみが、メモリ共有アルゴリズムを用いる。デバイスＤ１、Ｄ２は、各エンドポイントに別個のメモリを割り振る。それにも関わらず、メモリ共有は、こうしたデバイスにおいて同様に実装することができる。複数のメモリセグメントを、デバイス内の１つのエンドポイントに割り当ててもよい。
【００２４】
ホストＨと第１のデバイスＤ１の間のデータ通信は、１つのインパイプＢ＿Ｉ１および１つのアウトパイプＢ＿Ｏ１を介して行われる。さらに、双方向制御パイプＣＴＲＬ１が存在する。例示的な実施形態では、メモリＨＭＣ１が、制御パイプＣＴＲＬ１に別個に割り当てられる。それにも関わらず、制御パイプに共有メモリセグメントを適用することも、本発明の範囲内である。
【００２５】
共有メモリＨＭＢ１が、インパイプＢ＿Ｉ１およびアウトパイプＢ＿Ｏ１に割り当てられる。この共有メモリは、１つのメモリセグメントまたは多数のメモリセグメントからなり得る。メモリは、着信データのケースにおいて、インパイプＢ＿Ｉ１に割り当てられる。発信のケースでは、トラフィックメモリが、アウトパイプＢ＿Ｏ１に割り当てられる。このことは、矢印で示される。１つまたは多数のフラグあるいは別の弁別手段が、各メモリセグメントに、どのパイプに現時点で属しているか印をつける。対応するパイプへのメモリセグメントの割当ておよび割当て直しは、たとえば後で説明するように行うことができる。
【００２６】
ホストＨと第２のデバイスＤ２の間のデータ通信は、２つのインパイプＢ＿Ｉ２、Ｂ＿Ｉ３および２つのアウトパイプＢ＿Ｏ２、Ｂ＿Ｏ３を介して行われる。さらに、双方向制御パイプＣＴＲＬ２が存在する。例示的な実施形態では、メモリＨＭＣ２が、制御パイプＣＴＲＬ２に別個に割り当てられる。それにも関わらず、制御パイプに共有メモリセグメントを適用することも、本発明の範囲内である。
【００２７】
共有メモリＨＭＢ２、ＨＭＢ３、ＨＭＢ４が、インパイプＢ＿Ｉ２、Ｂ＿Ｉ３およびアウトパイプＢ＿Ｏ２、Ｂ＿Ｏ３に割り当てられる。この共有メモリは、多数のメモリセグメントからなり得る。メモリセグメントの数は、インまたはアウトパイプの数に対応し、あるいはメモリセグメントの数は、インまたはアウトパイプの数より大きい。メモリセグメントは、着信データのケースにおいて、インパイプＢ＿Ｉ２、Ｂ＿Ｉ３に割り当てられる。発信のケースでは、トラフィックメモリがアウトパイプＢ＿Ｏ２、Ｂ＿Ｏ３に割り当てられる。このことは、矢印で示される。フラグまたは別の弁別手段が、各メモリセグメントに、どのエンドポイントに属しているか印をつける。対応するパイプへのメモリセグメントの割当ておよび割当て直しは、たとえば後で説明するように行うことができる。
【００２８】
図２は、本発明による、ホスト内でのメモリ共有の方法を模式的に、詳細に示す。
Ｓ１  デバイスが接続される
Ｓ２  制御パイプにメモリを割り当てる
Ｓ３  通信をセットアップする
Ｓ４  バルク／ＩＳＯ転送か？
Ｓ１０  シーケンシャルモード
Ｓ１１  多数のインまたはアウトパイプか？
Ｓ２０  各パイプに別個にメモリセグメントを割り当てる
Ｓ３０／Ｓ４０  パイプペアにメモリセグメントを割り振る
Ｓ３１／Ｓ７０／Ｓ７１  受信または送信？
Ｓ５０／Ｓ７２／Ｓ７６  インパイプにメモリを割り当てる
Ｓ５１／Ｓ７３／Ｓ７７  データを受信する
Ｓ６０／Ｓ７４／Ｓ７８  アウトパイプにメモリを割り当てる
Ｓ６１／Ｓ７５／Ｓ７９  データを送る
【００２９】
Ｓ１でホストのいずれかのＵＳＢポートにデバイスが接続された場合、対応するポートに対して制御パイプが確立され、Ｓ２でこの制御パイプにメモリが割り当てられる。さらに、Ｓ３でセットアップが行われ、Ｓ４で、通信のモードが、デバイスのリクエストに従って識別される。時間依存デバイスのケースでは（Ｎ４）、たとえば割込み転送が確立される。Ｓ２０で、インパイプおよびアウトパイプに別個にメモリが割り当てられ、当該分野において公知であるＵＳＢ接続が確立される。高いデータレートを用いる転送のケースでは（Ｙ４）、たとえば、このような厳しい待ち時間要件のないバルク転送が確立される。いくつかの種類のアイソクロナス転送も、このカテゴリの範囲に収まる。継続的に動作し、提示する発明によってメモリを共有することが決定された場合（Ｙ４）、Ｓ１０でシーケンシャルモードが確立される。単一のインおよび単一のアウトパイプが確立された場合（Ｎ１１）あるいはデバイス要件に従って、かつホスト資源に従って多数のインパイプおよび／または多数のアウトパイプが確立された場合（Ｙ１１）、Ｓ１１での決定が行われる。単一のインパイプおよび単一のアウトパイプのケースでは（Ｎ１１）、Ｓ３０で、このパイプペアにメモリが割り振られる。このメモリは、バッファ容量を高めるための、唯一のメモリセグメントでも、多数のメモリセグメントでもよい。プロトコルに従って、Ｓ３１で、受信モードＲ３１、それとも送信モードＴ３１が確立されるのか、決定が行われる。最初のケースでは（Ｒ３１）、Ｓ５０でインパイプにメモリが割り当てられ、Ｓ５１でデータが受信される。後者のケースでは（Ｔ３１）、Ｓ６０でアウトパイプにメモリが割り当てられ、Ｓ６１でデータが送られる。受信Ｒ３１から送信モードＴ３１への切換えおよびその反対が、Ｓ３１での決定を用いて可能である。送信モードが終了された場合（Ｆ３１）、Ｓ４で、同じデバイスに対して新たな送信モードを選ぶこともでき、または、図に示さない代替法で、デバイスを無効にすることもできる。多数のパイプのケースでは（Ｙ１１）、Ｓ４０でパイプペアにメモリセグメントが割り振られる。多数のメモリセグメントは、様々なやり方で、たとえば上述したように、多数のパイプに割り振ることができる。
【００３０】
データが受信され（Ｒ７０、Ｒ７１）、または送られる（Ｔ７０、Ｔ７１）場合、各パイプペアに対して、決定が行われる。データ受信のケースでは、Ｓ７２、Ｓ７６で、上の説明に従って、メモリが割り振られ、Ｓ７３、Ｓ７７でデータが受信される。データ送信のケースでは、Ｓ７４、Ｓ７８で、上の説明に従ってメモリが割り振られ、Ｓ７５、Ｓ７９でデータが送られる。異なるエンドポイントペアの間でのメモリの再割振りは、Ｍ７０、Ｍ７１によって可能である。送信が終了された場合（Ｆ７０、Ｆ７１）、Ｓ４で、同じデバイスに対して新たな送信モードを選んでもよく、または、図に示さない代替法で、デバイスを無効にしてもよい。
【００３１】
図３は、デバイスに既に割り当てられているメモリを共有する、デバイス内の新たなエンドポイントをどのようにして確立することができるかを模式的に示す。
Ｓ１００  既に割り当てられているメモリが利用可能か？
Ｓ１１０  新たなパイプが、既に利用可能なメモリセグメントにアクセスできる
Ｓ１２０  新たなメモリセグメントが割り当てられ、新たなパイプによってアクセス可能になる
【００３２】
Ｓ１０で、シーケンシャルモードで通信が確立され、Ｓ３０、Ｓ４０で、上述したようにメモリが割り振られる。デバイス内の新たなパイプおよび一致するエンドポイントが確立された場合、Ｓ１００で、既に割り当てられているメモリが利用可能かどうか調べられる。メモリが利用可能な場合（Ｙ１００）、このメモリセグメントが新たなパイプ用にも使われることになり、Ｓ１１０で、メモリセグメントのフラグ、すなわち何本のパイプがこのセグメントにアクセスできるかの指示が１だけ増加される。多数のインまたはアウトパイプは、継続的に動作する限り、同じメモリセグメントを使うことができる。どのメモリも利用可能でない場合、Ｓ１２０で、新たなメモリセグメントがこのデバイスに割り当てられ、どのデバイスにセグメントが属すかを示すフラグがセットされ、何本のパイプがこのセグメントにアクセスできるかを示すフラグが１にセットされる。
【図面の簡単な説明】
【００３３】
【図１】多数のデバイスが接続される、ホスト内のデータパイプに対する割り振られたメモリの共有を示す図である。
【図２】メモリを割り振り、メモリ共有を開始するための方法を示す図である。
【図３】新たに確立されたパイプへの、利用可能なメモリの割当てを示す図である。
【図１】
0005367310.tif 000002
【図２】
0005367310.tif 000003
【図３】
0005367310.tif 000004