JP3260812B2 - 通信システム及びそのメモリ割当て方法 - Google Patents

通信システム及びそのメモリ割当て方法

Info

Publication number
JP3260812B2
JP3260812B2 JP8266192A JP8266192A JP3260812B2 JP 3260812 B2 JP3260812 B2 JP 3260812B2 JP 8266192 A JP8266192 A JP 8266192A JP 8266192 A JP8266192 A JP 8266192A JP 3260812 B2 JP3260812 B2 JP 3260812B2
Authority
JP
Japan
Prior art keywords
packet
packets
miu
control
data
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
Application number
JP8266192A
Other languages
English (en)
Other versions
JPH0589013A (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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH0589013A publication Critical patent/JPH0589013A/ja
Application granted granted Critical
Publication of JP3260812B2 publication Critical patent/JP3260812B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/065Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2205/00Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F2205/06Indexing scheme relating to groups G06F5/06 - G06F5/16
    • G06F2205/066User-programmable number or size of buffers, i.e. number of separate buffers or their size can be allocated freely

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は周辺ユニットと他の装置
との間の通信を可能とするインターフェースユニットに
関し、特に周辺ユニットがインターフェースの機能を知
らなくとも周辺ユニットのインターフェースを都合の良
いように設定できるモジュール式インターフェースユニ
ットに関する。
【0002】
【従来技術及びその問題点】現在のマーケットでは、プ
リンタ、ファクシミリユニットプロッタ等の周辺ユニッ
トは、多数の異なる実体、すなわちローカルエリアネッ
トワーク、個々のパーソナルコンピュータ、広域ネット
ワーク等と通信できることが必要とされる。その潜在市
場を大幅に減らすような、単一の通信インターフェース
しか持っていない周辺ユニットを供給するのではもはや
不充分である。
【0003】その結果、従来技術の雄編ユニットは、カ
ード搭載型で、他のモジュール式インターフェースカー
ドと単に置き換えるだけで取り替えることができるモジ
ュール式インターフェースユニットを備えている。一般
に、このようなインターフェースユニットにより、周辺
ユニットはパケット構成のデータブロックを周知のやり
方で使用することにより、外部世界と通信することがで
きる。個々のインターフェースはかくしてネットワーク
とのインターフェース機能を実行することができ、ネッ
トワークプロトコルのヘッダを処理することができる。
このようなインターフェースユニットは、インターフェ
ースユニットと接続された周辺ユニットとの間で使用さ
れるインターフェースヘッダを挿入し、修正することが
できる。周辺ユニットを1つのコンピュータと直接通信
させようとするときには、インターフェースユニットは
単にインターフェースユニットのプロトコルを処理する
能力を備えているだけであり、ネットワークプロトコル
のヘッダを処理する能力を備えてはいない(あるいはそ
の必要がない)。
【0004】このようなモジュール式インターフェース
ユニットの一つが本願出願人の2563ファミリのライ
ンプリンタに組み込まれており、1枚の着脱自在のカー
ド上に必要なインターフェース機能を設けている。この
カードはプロセッサとランダムアクセスメモリの両者を
備えており、このメモリはインターフェースユニットの
プロセッサ及びプリンタのプロセッサの両方から共有さ
れアクセス可能になっている。
【0005】図1はシステムの全体構成を示す高レベル
のブロック図であり、周辺ユニット(PU)20(例え
ばプリンタ)、モジュール式インターフェースユニット
(MIU)22、及びホストコンピュータ24を備えて
いる。PU20とMIU22との間の点線26はMIU
/PUインターフェースを示し、点線28はMIU22
をホストコンピュータ24に接続するI/Oハードウエ
アリンクである。全ての通信は(ある制御線機能に関す
るものを除き)MIU22とPU20との間でMIU2
2の共有メモリを通して行われる。
【0006】図1の従来技術のシステムは、データパケ
ット及び制御パケットを使用して通信し、要求/応答プ
ロトコルを採用している。データパケット及び制御パケ
ットはともにヘッダ部及びバッファ部を備えており、ヘ
ッダの構成は一般に図2に示すようになっている。ヘッ
ダの最初の8バイト(0〜7)は装置固有のものであっ
て、PU20とMIU22との間で情報を交信するため
のものではない。ヘッダ中でそれに続く7つのフィール
ドには特定の通信情報が入っている。バイト8及び9
は、周辺ユニットの表示装置をセットする、自己試験す
る、データを周辺ユニットに読み込む、データを接続さ
れているコンピュータに書き込む等のような、行うべき
処置を示すコマンド及びコマンド修飾子のフィールドで
ある。戻りステータスフィールドがそれに続く。このフ
ィールドにはコマンド及びコマンド修飾子のフィールド
により定義された処置を行った結果を指示するものが入
っている。データ開始フィールドはこの特定のヘッダに
関連付けられたバッファの開始バイトのアドレスを示
す。データ長フィールドはバッファ内の有効データのバ
イト数を示し、最大データ長フィールドはパケットのバ
ッファ中で利用できる全バイト数を示す。
【0007】図3は、データ開始フィールド、データ長
フィールド及び最大データ長フィールドをあるバッファ
に適用したものを表現している。データ開始フィールド
はバッファ30の最初のアドレスを示す。データ長フィ
ールドはバッファ30にある有効データの長さを示す。
最大データ長フィールドはバッファ30の有効データ及
び空のバッファ領域の両者を含む全データ長を示す。
【0008】上に引用した2563プリンタでは、バッ
ファ30は制御パケット用の定められた長さを持ってお
り、また直接にヘッダに付随している。バッファ30は
ヘッダの指示にしたがってシステム内部で通信されてい
る実質的な情報を保持している。バッファの長さが一定
であることから困難が生じる。現在利用できない、これ
までよりも多くのバッファ空間を使えるようにするとい
う柔軟性は、このシステムでは制約される。バッファの
大きさが一定であるため、システムは周辺ユニットまた
はインターフェースユニットから負わされる要求事項の
変化に対応することもできない。その他に、バッファの
大きさが一定であることから、インターフェースの規格
を新しいネットワーク構成やパケット構造に合わせて拡
張しようとするとき制約が生じる。
【0009】交換可能なインターフェースを設ければ、
周辺ユニット対外界の通信に関する柔軟性は大きくなる
が、インターフェースの機能を周辺ユニットの機能から
切離すことにより問題が生じる。具体的に言えば、周辺
ユニットとそれに関連付けられたインターフェースユニ
ットが外部のネットワークまたはコンピュータと通信す
る前に、ある構成設定入力をインターフェースユニット
に供給して通信を行うことができるようにする必要があ
る。例えば、インターフェースユニットがシリアルポー
トを経由して通信しようとする場合には、ボーレート、
1文字あたりのデータビット数、ハンドシェーキングの
形式、線路の極性等を指定する入力が必要である。典型
的には、これら入力はユーザが周辺ユニットのケースを
開き、マニュアルからの指示にしたがってスイッチをセ
ットすることにより実現されていた。これは最も良くと
も扱いにくく、悪くすると誤りのために通信が全くでき
なくなる。
【0010】ローカルエリアネットワーク及び他のマル
チユーザネットワークの利用可能性が増大するに連れ
て、インターフェースユニットがネットワークプロトコ
ルのヘッダ及びトレイラを処理することに対する要求も
増えてきている。これらのヘッダが比較的定則の通信線
路から受信されている限り、あるいはデータの流入を選
択的に制御することができるネットワークから受信され
ている限り、インターフェースユニットはプロトコルヘ
ッダをそれが流れている間に除去することができ、シス
テムの性能は低下しない。しかし、高速「停止不能」デ
ータ流を有する新しいネットワークの出現と共に、この
ような途中でのプロトコルヘッダ処理を経済的に達成す
るのが困難になってきている。従って、インターフェー
スユニットは、このようなネットワークプロトコルヘッ
ダを処理するのに益々複雑になり、高価になってきてい
る。
【0011】
【目的】それ故、本発明の目的は、共有メモリの動作が
改善された周辺ユニット用モジュール式インターフェー
スユニットを提供することである。
【0012】本発明の他の目的は、ユーザフレンドリな
構成設定を行うことのできるようにするモジュール式イ
ンターフェースユニットを提供することである。
【0013】本発明の更に他の目的は、ネットワークプ
ロトコルのヘッダ及びトレーラの処理を改善したモジュ
ール式インターフェースユニットを提供することであ
る。
【0014】
【概要】周辺ユニット(PU)を通信リンクを介して外
界と連絡するパケットベース通信システムが開示され
る。このシステムにはモジュール式インターフェースユ
ニット(MIU)が含まれており、このユニットはPU
及びMIUの両者のプロセッサによって共有されるメモ
リを有している。本システムは、制御パケット、読込み
パケット、書出しパケットを使用し、メモリの利用を最
適化するメモリ割当方法を実行する。本システムはPU
の動作に必要な読込みパケットと書出しパケットとの比
を決定するが、通信リングが書出しパケットを伝達しな
いことになっている場合にはこの比を無視する。通信リ
ンクが書出しパケットを伝達する場合には、この比に従
って共有メモリ内で読込みパケット用の空間と書出しパ
ケット用の空間を割り当てる。本システムはまた、PU
を通したユーザ/キーボード入力により、MIUから質
問及び回答メッセージを与えながらMIU構成を行うこ
とができるようにする装置も有している。この特徴によ
り、PUは、単にMIUの交換とユーザによる構成設定
を行うだけで、多数の異なる通信リンクに適応すること
ができる。本システムは更に、ネットワークプロトコル
のヘッダ及びトレーラを迅速に処理する装置も持ってい
る。これらのヘッダ及びトレーラはデータパケットと共
にストアされており、PUが共有メモリ中のパケットを
アクセスする際には、ポインタを使用して、ネットワー
クプロトコルのヘッダ及びトレーラの部分を無視しなが
らこの様なパケットのデータ部分のみをアクセスできる
ようにする。
【0015】
【実施例】図4を参照すると、本発明を取り入れたシス
テムのブロック図示されている。PU40はプリン
タ、ファクシミリまたはそれ以外の、ネットワークまた
はホストプロセッサと通信するようになっている周辺ユ
ニットとすることができる。PU40は、マイクロプロ
ヤッサ42により、周知のやり方で制御される。ディス
プレイ44にはキーボード46が設けられており、両者
がマイクロプロセッサ42と対話してユーザ入出力を行
う。不揮発性メモリ48はマイクロプロセッサ42のフ
ァームウエアメモリとなり、図示していない他のメモリ
(RAM、ROM)はマイクロプロセッサ42のための
他の操作記憶を含んでいる。PU機構部分50はマイク
ロプロセッサ42により操作されてPUの機能を果た
す。PU40がプリンタであるとすれば、PU機構部分
50はプリンタ機構及びマイクロプロセッサ42からの
指示に応答してこの機構を制御する電子部分から構成さ
れる。
【0016】PU40と外界との間の通信は、PU40
が入出力リンク54を介してネットワークまたはホスト
プロセッサと通信することができるようにするために全
てのインターフェース機能を行うMIU52を通して行
われる。MIU52は、MIU52の動作を制御してそ
のインターフェース機能を行うことができるようにする
マイクロプロセッサ56を有している。マイクロプロセ
ッサ56には、作業データ記憶のためのローカルRAM
(これはないこともある)及びROMが設けられてい
る。MIU52のその他の主要構成要素は、入出力リン
クインターフェースモジュール58及び共有メモリ60
である。
【0017】図4のシステムはパケットベースモードで
動作する。各パケットは、(1)パケット中の、コマン
ド、ステータス及びデータロケーション情報を転送する
部分であるパケットヘッダ、及び(2)パケット中の、デ
ータまたはメッセージを転送する部分であるパケットバ
ッファを含んでいる。
【0018】入出力リンクインターフェースモジュール
58は、出ていくデータを入出力リンク54に導く働き
及びそこから入ってくるデータを受け取る働きをする。
モジュール58は入ってくるパケットを直接マイクロプ
ロセッサ56に導くか、あるいはDMAサブモジュール
62を介して共有メモリ60に導く。インターフェース
モジュール58が低データレート(例えば9600ビッ
ト/秒のRS232リンク)しかサポートしていない場
合は、DMAサブモジュール62は不用である。この様
な場合には、入ってきたデータパケットは、インターフ
ェースモジュール58にバッファされ、マイクロプロセ
ッサ56により読み出され、次いで共有メモリ60の中
へ移動させられる。これとは反対に、インターフェース
モジュール58が高データレート(例えば、16Mビッ
ト/秒のデータレートのトークンリング)を採用したネ
ットワークにインターフェースを取るように機能する場
合には、DMAサブモジュール62が動作に加わる。こ
の様な場合には、マイクロプロセッサ56は、インター
フェースモジュール58に次の有効パケットを共有メモ
リ60の与えられたアドレスにストアするように指示す
る。このアドレスはDMNAサブモジュール62のDM
Aカウンタ(図示せず)に置かれている。パケットは、
受信されると、共有メモリ60中に指定されたアドレス
から直接ストアされる。これらの動作はDMAサブモジ
ュール62と共有メモリ60との間に伸びている制御
線、アドレス線及びデータ線を介して行われる。同じ構
成の線のグループ66及び68がそれぞれ共有メモリ6
0とマイクロプロセッサ56、共有メモリ66とマイク
ロプロセッサ42の間に設けられている。従って、共有
メモリ60はDMAサブモジュール62から直接に入力
を受信することができ、マイクロプロセッサ42及び5
2の双方から全てアクセスすることができる。その結
果、共有メモリ60は、PU40とMIU52との間で
本質的に共有され、これら2つの装置の間に主要情報経
路を形成する。アービトレーションサブモジュール70
は、2つ以上の実体が共有メモリ60にアクセスしよう
とする場合に、この衝突を調停する。
【0019】PUからのデータの通り道の決定は全てM
IU52によって行われ、PU40にはMIU52が外
界と通信するのに使用するプロトコルや外界から入って
くるデータの特性に関する知識は組み込まれていない。
その結果、PU40は単にMIU52を変更するだけ
で、どんなネットワークプロトコルや特定のホストプロ
セッサとも接続することができる。
【0020】図4のシステムが使用するパケット構造は
図2に示すものと実質上同じである。多くの形式のパケ
ットが存在するが、4つの特定の形式のパケットを以下
で考慮することにする。それは、これらがPU40とM
IU52との間の通信をサポートするからである。
【0021】データ読込みパケット−このパケットはデ
ータを外界からPU40に送るのに使用される。PU4
0がプリンタである場合には、データ読込みパケットは
処理されてプリントページに編成されてその後にプリン
トされるべき情報を含んでいることがよくある。
【0022】データ書出しパケット−このパケットはデ
ータをPU40から外界に渡すのに使用される。PU4
0がプリンタである場合には、主なデータ流れは外界か
らプリンタへ向かうのであってその逆ではないので、デ
ータ書出しパケットが必要になることはほとんどない。
実際、広く使用されているあるインターフェース(つま
り、セントロニクスプロトコル)には、データをプリン
タからホストプロセッサへ渡す能力がない。
【0023】PU制御パケット−このパケットはPUか
らMIUへの雑多な要求/応答情報転送に使用される。
つまり、PUはこのパケットを使って、制御情報をMI
Uへ渡したり、あるいはMIUに対して制御情報を要求
する。この様なパケットは一般にシステム内の制御及び
ハウスキーピング機能に使用される。
【0024】MIU制御パケット−このパケットはMI
UからPUへの雑多な要求/応答情報転送に使用するこ
とを意図している。つまり、MIUはこのパケットを使
って、制御情報をPUへ渡したり、あるいはPUに対し
て制御情報を要求する。
【0025】PU制御パケット及びMIU制御パケット
は制御コマンドをシステム内で受け渡すことができるよ
うにする。初期設定中に双方向制御パケット通信を確実
に利用できるようにするため、少なくとも2つのパケッ
トがMIU制御パケットとして割り当てられ、少なくと
も2つの別のパケットがPU制御パケットとして割り当
てられる。共有メモリ60の中のいくつかの領域がこれ
らのパケット用に確保されており、従ってこれらの領域
はここを通して制御情報を常にPU40からMIU52
へ、またはその逆方向に送ることができる「窓」を与え
る。
【0026】図4のシステムは、PU40またはMIU
52によるパケットの「所有」という概念を利用してい
る。パケットの所有者だけがそのパケットへアクセスで
きる。従って、パケットが共有メモリ60内にある間
は、それらのパケットはその所有者だけからアクセスで
き、他の共有メモリ60をアクセスできるものからはア
クセスできない。共有メモリ60内の「メイルボック
ス」を使用することで、所有権をPU40とMIU52
の間で受け渡される。共有メモリ60内の4バイトがP
Uメイルボックスとして確保されており、また4バイト
がMIUメイルボックスとして確保されている。これら
のメイルボックスは各々当該メイルボックス内に有効デ
ータが存在することを示すフラグビットを備えている。
【0027】パケットの所有権は、所有者が当該パケッ
トのヘッダを指すポインタを非所有者のメイルボックス
にストアすることにより転送される。所有者はこの非所
有者のメイルボックス中の前述のフラグを有効状態にセ
ットする。所有者は次に、物理的に接続された制御線を
動作させることにより、この非所有者に割り込みをか
け、非所有者は自分のメイルボックスを調べて、セット
されたフラグを見る。次に、非所有者は自分のメイルボ
ックスに先にストアされたパケットヘッダポインタを取
り出す。この時点でこの非所有者がこのパケットの所有
者となり、以前の所有者は非所有者となる。この段階
で、新しい所有者が今度はこのパケット及びそこにスト
アされているデータにアクセスできる。新しい所有者は
そのメイルボックス内のフラグを繰り足手から、物理的
に接続された制御線を通じて新しい非所有者に割り込
む。これにより、非所有者は、もしそうしたければ、別
のパケットの別のパケットの所有権の新たな転送を開始
することができる。
【0028】上に述べたように、共有メモリ60はPU
40と外界との間の唯一のデータ経路である。図4のシ
ステムの構成の初期設定で、共有メモリ60の構成設定
が行われる。その記憶空間の内のある部分は(前述のよ
うに)制御パケットに割り当てられ、ある部分はデータ
読込みパケットに割り当てられ、ある部分はデータ書出
しパケットに割り当てられる。ある状況下では、共有メ
モリ60はその記憶空間のどの部分もデータ書出しパケ
ットに割り当てていないことがある(以下で説明す
る)。
【0029】それ故、共有メモリ60はデータの通信及
び制御の通信が通る「窓」と見なすことができる。この
窓の一部は外界から入ってくる読込みデータのために確
保され、他の部分は外界へ出て行く書出しデータのため
に確保されて良い。共有メモリ60の一部を上述のよう
に割り当てることにより、圧倒的に多量のデータが一方
向に(例えば、入ってくる方向に)流れている場合でも
双方向通信が常にできることが保証される。従って、窓
の一部が常に出て行く方向のパケット用に確保され、こ
の部分へは入ってくるデータからはアクセスできない。
【0030】共有メモリ60は記憶空間の割当は図4の
システムを最適に機能させるのに非常に重要だから、シ
ステムの構成の初期設定中に極めて詳細な割当プロセス
が行われる。このプロセスを図5ないし図9のフローチ
ャートに示す。
【0031】◎共有メモリの割当て MIUは共有メモリ割当て手順を制御する。共有メモリ
割当て手順では最初に先ずPU40から要求された読込
み/書出しパケット比率を決定する。例えば、PU40
がプリンタであれば、PU40は共有メモリ60の読込
みデータパケット空間を圧倒的に多く要求し、書出しデ
ータパケットの要求は、もしあったとしてもごくわずか
である。他方,PU40がファクシミリであれば、その
読込み/書出しデータパケット比率は約50/50であ
る。図5のボックス100に示すように、MIU52は
最初にPU40に読込み/書出しデータパケット比率を
要求する。PU40は予め入力されている読込み/書出
しデータパケット比率をそのファームウエアに尋ねる。
この比率は前に述べたようにPU40の通信の特性に基
づいている(ボックス102)。PU40は次にMIU
52に応答を返し、要求されたデータパケット比率を提
供する(ボックス104)。
【0032】MIU52は、通信リンク54がPU40
からホストへの通信をサポートする場合にのみ、PU4
0から提供される比率を採用する。リンク54がセント
ロニクス形式のものである場合には、このようなPUか
らホストへの通信をサポートしない。この理由により、
共有メモリから何らかの割当てを書出しデータパケット
に与えなければならない理由はない。このような場合に
は、MIU52は100%読込みデータパケット側とす
るという比率を使用する(ボックス106)。この比率
の使用方法は以下の説明から明らかになるだろう。な
お、以下に図5の各ボックスの内容を示す: 100−「MIUが読込み/書出しデータパケット比率
をPUに要求」 102−「PUの通信特性に基づき、PUが読込み/書
出しデータパケット比率を決定」 104−「PUが読込み/書出しデータパケット比率を
MIUに回答」 106−「通信リンクがPUからホストへの通信をサポ
ートする場合には、MIUはPUから提供されたこの比
率を使用。そうでない場合には、MIUは100%読込
みデータパケットであるという比率を使用」
【0033】図6に示すように、MIU52は次にPU
制御パケットに必要なバッファ空間の長さの決定に進
む。最初に、MIU52はPU40に対して、許容でき
る最短のPU制御パケットバッファ長を提示するように
要求する(ボックス108)。PU40は、これに応答
して自分の制御パケットを調べて制御パケットによって
必要になるバッファ情報から許容できる最短の制御パケ
ット長を決定する。換言すれば、そのバッファ長はPU
が発生した要求制御パケットの最大のサイズに基づいて
いる(ボックス110)。これにより、問題のうちの半
分への回答が出来上がった。
【0034】問題の他の局面は、PU制御パケットバッ
ファもMIU52から応答制御パケットバッファを受け
取るのに使用されるということである。従って、最短の
バッファはMIU応答制御パケットバッファの最大長も
受け入れなければならない。従って、PU40がMIU
52に応答して許容できる最短の制御パケットバッファ
長を与える(ボックス112)と、MIU52はこれに
続いてもう1つの最短の許容できる最短の制御パケット
バッファ長の決定を行う。このバッファ長はMIU52
が発生する応答制御パケットバッファの最大のサイズに
基づいている(ボックス114)。
【0035】この段階で、MIU52は、PU制御パケ
ットバッファの大きさを、(1)PUが決定した許容で
きる最短のPU制御パケットバッファ長と、(2)MI
Uが決定した許容できる最短のPU制御パケットバッフ
ァ長のうちの長いほうに定める。この段階で、MIU5
2はPU制御パケットに対する許容可能な最小バッファ
長を確定できた。 なお、以下に図6の各ボックスの内容を示す: 108−「MIUがPUに対して、許容できる最短のP
U制御パケット長を提示するように要求」 110−「PUが生成するあらゆる要求制御パケットの
最大サイズに基づいて、PU制御パケットバッファ長を
PUが決定」 112−「PUがMIUに対して、許容できる最短のP
U制御パケットバッファ長を返答」 114−「MIUが生成するあらゆる応答制御パケット
の最大のサイズに基づいて、もう1つの許容できる最短
のPU制御パケットバッファ長をMIUが決定」 116−「MIUがPU制御パケットバッファ長を、以
下の2つのうちの大きいほうに決定: 1)PUが決定した許容できる最短のPU制御パケット
バッファ長 2)MIUが決定した許容できる最短のPU制御パケッ
トバッファ長」
【0036】図7に示すように、MIU52は今度は自
分の制御パケットバッファ長について同じ決定を行う。
この決定は、ボックス118、120、122、124
及び126に示すように行われる。これは、この決定に
当たって、先ずMIU52が最初にPUの発生する応答
制御パケットバッファの最大のサイズを検討し、次いで
MIUの発生する要求制御パケットバッファの最大のサ
イズを決定するという点を除いては、図6に示すものと
同じである。これら2つのバッファサイズのうちで大き
い方がMIU制御パケットバッファ長を定める。なお、
以下に図7の各ボックスの内容を示す: 118−「MIUがPUに対して、許容できる最短のM
IU制御パケットバッファ長を提示するように要求」 120−「PUが生成するあらゆる要求制御パケットの
最大サイズに基づいて、MIU制御パケットバッファ長
をPUが決定」 122−「PUがMIUに対して、許容できる最短のM
IU制御パケットバッファ長を返答」 124−「MIUが生成するあらゆる要求制御パケット
の最大のサイズに基づいて、もう1つの許容できる最短
のMIU制御パケットバッファ長をMIUが決定」 126−「MIUがMIU制御パケットバッファ長を、
以下の2つのうちの大きいほうに決定: 1)PUが決定した許容できる最短のMIU制御パケッ
トバッファ長 2)MIUが決定した許容できる最短のMIU制御パケ
ットバッファ長」
【0037】次に図8に移ると、MIU52は今や次の
事項を知っている:読込み/書出しデータパケットの比
率、最短PU制御パケットバッファ長及び最短MIU制
御パケットバッファ長。MIU52はMIU52にイン
ストールされている共有メモリ60が全部でどのくらい
あるかを確認し、この値を出発値として使用して、パケ
ットに利用できる共有メモリの量を決定する(ボックス
128)。MIUはこの値からメイルボックスのために
必要な共有メモリ量を差し引き(ボックス130)、専
らMIUが使用するために必要な共有メモリ量も差し引
く(ボックス132)。正味の残りがパケットのために
利用できる共有メモリ量である。最後に、MIU52は
通信リンクの必要条件及び特性に基づいて、読込み及び
書出しデータパケットバッファ長を決定する。例えば、
あるネットワークプロトコルは最短長データパケットを
必要とする。従って、MIU52は、ネットワークプロ
トコルの必要条件に合致するようにデータパケットバッ
ファ長を調節する(ボックス134)。なお、以下に図
7の各ボックスの内容を示す: 128−「MIUがMIUにインストールされている共
有メモリの全体量を確認し、この値をパケットに利用で
きる共有メモリ量の出発値として使用する」 130−「メイルボックスに必要な共有メモリ量をパケ
ットのために利用できる共有メモリ量からMIUが差し
引く」 132−「専らMIUが使用するために必要な共有メモ
リ量をパケットのために利用できる共有メモリ量からM
IUが差し引く。この結果が、パケットのために利用で
きる共有メモリ量である」 134−「MIUが、通信リンクの必要条件に基づい
て、読込みデータパケットバッファ長及び書出しデータ
パケットバッファ長を決定」
【0038】共有メモリ割当てルーチンでのMIU52
の最後の動作は、利用可能な共有メモリを実際に割り当
てることである。この割り当てを示すのが図9のボック
ス136である。PU40とMIU52との間の双方向
制御通信を確保するためには、共有メモリ60では少な
くとも2つのPU制御パケット及び2つのMIU制御パ
ケットの割当てが行われる。更に、少なくとも2つの読
込みデータパケットが割り当てられなければならず、書
出しデータパケットは必要に応じて割り当てられる。次
いで、読込み/書出し比率に従って、利用可能な共有メ
モリを使い尽くすまで、読込み及び書出しデータパケッ
トが共有メモリ60内に更に割り当てられる。この手続
きにより、共有メモリ60の最適割当てが出来るように
なり、また条件が変わったときは割当てを変えることに
より、大きな柔軟性がシステムに付与される。なお、図
9のボックス136の内容は次のようになっている。 「MIUは利用可能な共有メモリを以下のように割り当
てる: 少なくとも2つのPU制御パケット 少なくとも2つのMIU制御パケット 少なくとも2つの読込みデータパケット 必要なだけの書出しデータパケット MIUは、読込み/書出し比率にしたがって、読込みデ
ータパケットと書出しデータパケットを、利用可能な共
有メモリを使い尽くすまで割り当てる」
【0039】図10は割当て後の共有メモリ60の概略
図であり、各種メイルボックス、制御パケットヘッダ、
データパケットヘッダ及びバッファ領域の関係を示す。
図2から想起されるように、各パケットはそれに関連付
けられた内の有効データの先頭アドレスを示すデータ開
始フィールドを持っている。このアドレスは共有メモリ
60のどこにあっても良い。
【0040】◎MIU構成設定 図4のシステムの最初の動作時に、MIUは通信リンク
の要求事項を満たすように構成設定されなければならな
い。例えば、インターフェースがシリアルデータリンク
であれば、ボーレート、1文字当たりのデータビット
数、ハンドシェークの形式、線路の極性等を定義しなけ
ればならない。このシステムは、ユーザがPU40にあ
るディスプレイ44及びキーボード46と対話すること
により、MIUを的確に構成設定できるようにしてい
る。
【0041】最初に、ユーザはキーボード46を操作し
て、構成設定要求パケットを開始する。これにより、P
U40がMIUの構成設定を、機会内部に設けられたス
イッチに頼らずに、ディスプレイ44上のテキストプロ
ンプトを使用して行うための手段が提供される。
【0042】構成設定要求パケットは共有メモリ60に
置かれ、その所有権はMIU52に渡される。これに応
答して、マイクロプロセッサ56はディスプレイ44を
介してユーザに対して表示する質問及び回答をPU40
に渡す。例えば、質問をディスプレイ44上に提示し、
それに続いて構成設定のためのユーザからの回答の1つ
あるいは複数の推奨回答を提示する。これらの推奨回答
の内の1つをユーザが選択できる。回答が選択される
と、その回答はPU40のマイクロプロセッサ42によ
り共有メモリ60に渡される。次に、マイクロプロセッ
サ56は、回答から生じる構成設定データを不揮発性メ
モリ48にストアするように、マイクロプロセッサ42
に要求する。これにより、PU40に既に設けられてい
る不揮発性メモリ48を入出力構成設定データのために
利用することができ、同じようなメモリをMIU52内
に重複して設ける必要がなくなる。
【0043】ユーザがキーボード46により構成設定動
作をこれから行うことを表明する前に、マイクロプロセ
ッサ42はPU40が使用する言語の指示を予め渡して
ある。例えば、PU40がプリンタであれば、その指示
や他のユーザインターフェースは英語、ドイツ語等を用
いることができる。マイクロプロセッサ56は、構成設
定要求に応答して、ディスプレイ44上に同じ言語で質
問及び回答を提示する。
【0044】上述の構成設定機能により、MIU52内
の入出力機能の構成設定を、それについての知識を持っ
ていないPU40を使って行うことができる。この結
果、PU40はどんなMIUとも接続することができ、
なおかつ制御機能を遂行することができる。それは質問
及び回答はMIU52の中のマイクロプロセッサ56に
より制御されるからである。
【0045】◎ネットワークプロトコルパケットヘッダ
の取り扱い 図4に戻ると、そこに図示してあるシステムは、往々に
してネットワークプロトコルヘッダとトレイラとの間に
「カプセル化されている」データを使用するネットワー
クに接続されなければならないことがある。MIU52
の一つの目的は、PU40が、自分の接続されたネット
ワークが具体的にはどんなプロトコルを必要とするのか
については全く気が付かないようにすることである。更
に、MIU52の他の目的は、最適性能を維持すること
ができるように、カプセル化されたデータを最も迅速に
処理することである。以下の説明から判るように、図4
に示すシステムは、これ以上のデータコピーを行うこと
を必要とせずに、リンクインターフェースモジュール5
8と共有メモリ60との間でそのようなカプセル化され
たパケットを転送する。
【0046】共有メモリ60の割当ての説明を行ってい
る際に述べたように、MIU52はネットワークパケッ
ト全体(すなわち、ネットワークプロトコルヘッダ+デ
ータ+ネットワークプロトコルトレイラ)を収容するに
充分な大きさのバッファを作り出す。これを図11に示
してある。図11では、バッファ150(共有メモリ6
0中にある)はリンクインターフェースモジュール58
を経由してネットワークから受け取ったままのパケット
全体を含んで描かれている。ネットワークパケットがリ
ンクインターフェースモジュール58と共有メモリ60
の間を通ると、それに続いて、インターフェースパケッ
トヘッダ152が共有メモリ60のマイクロプロセッサ
56により構築される。インターフェースパケットヘッ
ダ152は図2に示した形を取るが、そこに示したデー
タと図3の従来技術のパケットヘッダ構成に示したもの
とでは、3つの重要な差異がある。具体的には、パケッ
トヘッダ152のデータ開始フィールドはバッファ15
0の中の有効データの最初のアドレス(ネットワークプ
ロトコルヘッダの最初のアドレスではない)を示してい
る。データ長フィールドは有効バッファデータだけの長
さを示し、ネットワークプロトコルヘッダ及び、もし存
在すれば、ネットワークプロトコルトレイラはどちらも
このフィールドに書き込まれている長さとしては勘定に
入れていない。最後に、最大データ長フィールドは、バ
ッファ150に格納し得る有効バッファデータの最大量
を示し、ネットワークプロトコルヘッダ及びトレイラの
記憶空間はどちらも勘定に入れていない。
【0047】その結果、パケットヘッダ152及びバッ
ファ150からなるパケットの所有権がマイクロプロセ
ッサ42に渡され、次いでマイクロプロセッサ42がそ
のパケットにアクセスすると、マイクロプロセッサ42
は有効バッファデータ及びそれを定義するデータフィー
ルドを見るだけである。その結果、マイクロプロセッサ
42はプロトコルヘッダ及びトレイラがバッファ150
に存在することを知らず、後の処理においてそれらを無
視することができる。それ故、ネットワークプロトコル
ヘッダ及びトレイラを入って来るネットワークデータか
ら「剥ぎ取る」のに別に処置を取る必要はなく、それだ
けで「剥ぎ取り」が自動的にかつ動作中に(on the fl
y)処理される。
【0048】PU40が書出しデータパケットをMIU
52に渡すと、この場合も、ネットワークヘッダ及びト
レイラを付加するのに出ていくデータをコピーすること
は必要とされない。このわけは、マイクロプロセッサ5
6が出ていくネットワークプロトコルのヘッダ及びトレ
イラの情報を挿入するため有効バッファデータ領域15
0(図11)の上及び下に予め空間を確保しているから
である。その結果、マイクロプロセッサ56はその情報
を共有メモリ60のネットワークプロトコルヘッダ及び
トレイラ領域に直接挿入することができる。次に、マイ
クロプロセッサ56はDMAサブモジュール62に、ネ
ットワークプロトコルヘッダ、有効バッファデータ、及
びネットワークプロトコルトレイラをネットワークパケ
ットとしてリンク54上に送出するように指示する。
【0049】上述の説明は本発明を例示しただけである
ことを理解しなければならない。当業者は、本発明から
逸脱することなく種々の代案及び修正案を考え出すこと
ができる。従って、本発明は特許請求の範囲の射程に入
るこのような代案、修正案及び変形を全て包含するもの
である。
【0050】
【効果】以上詳細に説明したように、本願発明によれ
ば、周辺ユニットとインターフェースユニットとの間の
共有メモリの割当てを、状況に合わせて柔軟に行うこと
ができ、またインターフェースの構成の設定が簡単化さ
れ、さらにまたパケットのプロトコルヘッダを取り去る
処理が高速化されるという効果がある。
【図面の簡単な説明】
【図1】本発明を適用できる図1はシステムの全体構成
を示す高レベルのブロック図。
【図2】パケットヘッダの構成を示す図。
【図3】従来技術のパケットヘッダの各フィールドとパ
ケットバッファの各セクションとの関係を示す図。
【図4】本発明の一実施例のシステムのブロック図。
【図5】図4のシステムの動作を説明するためのフロー
チャート。
【図6】図4のシステムの動作を説明するためのフロー
チャート。
【図7】図4のシステムの動作を説明するためのフロー
チャート。
【図8】図4のシステムの動作を説明するためのフロー
チャート。
【図9】図4のシステムの動作を説明するためのフロー
チャート。
【図10】本発明の一実施例における共有メモリの割当
ての例を示す図。
【図11】本発明の一実施例のパケットヘッダの各フィ
ールドとパケットバッファの各セクションとの関係を示
す図。
【符号の説明】
20、40:周辺ユニット(PU) 22、52:モジュール式インターフェースユニット
(MIU) 24:ホストコンピュータ 26:PU/MIUインターフェース 28:I/Oハードウエアリンク 30:バッファ 42、56:マイクロプロセッサ 44:ディスプレイ 46:キーボード 48:不揮発性メモリ 50:PU機構部分 54:入出力リンク 58:入出力リンクインターフェースモジュール 60:共有メモリ 62:DMAサブモジュール 70:アービトレーションサブモジュール
───────────────────────────────────────────────────── フロントページの続き (72)発明者 パトリック・ダブリュー・ファルガム アメリカ合衆国アイダホ州ボイジィ・バ ドリィ・ドライブ11288 (72)発明者 ポール・アール・ソーレンソン アメリカ合衆国カリフォルニア州サン・ ディエゴ・ラクエンタ・ドライブ5561 (72)発明者 ジェイムズ・ジー・ウエント アメリカ合衆国カリフォルニア州アーバ ーン・カレッジ・ウエイ197 (56)参考文献 特開 昭63−292747(JP,A) 特開 平2−94942(JP,A) 特開 昭55−85158(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 13/00 G06F 13/10 H04L 29/00

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】通信リンクを介して周辺ユニットを外部の
    システムにリンクするため、モジュール式インターフェ
    ースユニットを設け、前記モジュール式インターフェー
    スユニットは前記周辺ユニットのマイクロプロセッサと
    前記モジュール式インターフェースユニットのマイクロ
    プロセッサから共有されるメモリを含むとともに、制御
    パケット、読込みパケット及び書出しパケットを使用す
    るパケットベース通信システムの、下記の(a)乃至
    (c)のステップを設けてなるメモリ割当て方法: (a)前記周辺ユニットの動作に必要とされる読込みパ
    ケット対書出しパケットの比率を求める; (b)前記通信リンクが前記周辺ユニットからの書出し
    パケットを送信するかどうかを判定する; (c)前記通信リンクが前記書出しパケットを送信しな
    い場合は前記比率を無視し、前記メモリ内に所定のパケ
    ット空間の割り当てを行い、前記通信リンクが前記書出
    しパケットを送信する場合は前記比率に従って前記メモ
    リ内に読込みパケット空間及び書出しパケット空間を割
    り当てる。
  2. 【請求項2】前記モジュール式インターフェースユニッ
    トと前記周辺ユニットは要求制御パケットを送信し、応
    答制御パケットを受信し、これらパケットは夫々ヘッダ
    及びバッファを含んでおり、以下の(d)乃至(f)の
    ステップをさらに含む、請求項1に記載のメモリ割当て
    方法: (d)(i)前記周辺ユニットによって生成され、前記
    モジュール式インターフェースユニットへ送信される要
    求制御パケットと、 (ii)前記周辺ユニットによって受信される、前記モ
    ジュール式インターフェースユニットからの応答制御パ
    ケットを収容するために要求される最大バッファサイズ
    及び、 (iii)前記モジュール式インターフェースユニット
    によって生成され、前記周辺ユニットへ送信される要求
    制御パケットと、 (iv)前記モジュール式インターフェースユニットに
    よって受信される、前記周辺ユニットからの応答制御パ
    ケットを収容するために要求される最大バッファサイズ
    を求める; (e)前記(i)及び(ii)の制御パケットのうちサ
    イズの大きい方を収容するのに十分なサイズの第1の最
    大バッファサイズと、前記(iii)及び(iv)の制
    御パケットのうちサイズの大きい方を収容するのに十分
    なサイズの第2の最大バッファサイズとを選択する; (f)前記第1の最大バッファサイズに等しい最小周辺
    ユニット制御パケットバッファサイズと、前記第2の最
    大バッファサイズに等しい最小モジュール式インターフ
    ェースユニット制御パケットバッファサイズを、前記メ
    モリに割り当てる。
  3. 【請求項3】前記ステップ(d)において、 前記周辺ユニットは、前記(i)及び(iv)の制御パ
    ケットのバッファ要求を調べることによって最大バッフ
    ァサイズを示し、 前記モジュール式インターフェースユニットは、前記
    (ii)及び(iii)の制御パケットのバッファ要求
    を調べることによって最大バッファサイズを示すことを
    特徴とする、請求項に記載の方法。
  4. 【請求項4】前記ステップ(e)において、 前記モジュール式インターフェースユニットが、前記
    (i)及び(ii)の制御パケットに関連する前記最大
    バッファサイズのうち大きい方を前記第1の最大バッフ
    ァサイズとして選択し、前記(iii)及び(iv)の
    制御パケットに関連する前記最大バッファサイズのうち
    大きい方を前記第2の最大バッファサイズとして選択す
    ることを特徴とする、請求項に記載の方法。
  5. 【請求項5】(g)前記ステップ(f)において決定さ
    れた最小バッファサイズを少なくとも有する少なくとも
    2つのモジュール式インターフェースユニット制御パケ
    ット及び少なくとも2つの周辺ユニット制御パケットを
    収容するために、前記メモリの一部を割り当てるステッ
    プをさらに備えることを特徴とする、請求項に記載の
    方法。
  6. 【請求項6】(h)パケット送信がいつ有効になったか
    を周辺ユニット及びモジュール式インターフェースユニ
    ットが認識できるようにするために使用される各ユニッ
    トのメイルボックスとして前記メモリの一部を割り当て
    るステップをさらに含むことを特徴とする、請求項
    記載の方法。
JP8266192A 1991-03-04 1992-03-04 通信システム及びそのメモリ割当て方法 Expired - Fee Related JP3260812B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/663,977 US5197128A (en) 1991-03-04 1991-03-04 Modular interface
US663,977 1991-03-04

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2001319201A Division JP3602089B2 (ja) 1991-03-04 2001-10-17 通信システム

Publications (2)

Publication Number Publication Date
JPH0589013A JPH0589013A (ja) 1993-04-09
JP3260812B2 true JP3260812B2 (ja) 2002-02-25

Family

ID=24664001

Family Applications (3)

Application Number Title Priority Date Filing Date
JP8266192A Expired - Fee Related JP3260812B2 (ja) 1991-03-04 1992-03-04 通信システム及びそのメモリ割当て方法
JP2001319201A Expired - Fee Related JP3602089B2 (ja) 1991-03-04 2001-10-17 通信システム
JP2003007295A Expired - Fee Related JP3522266B2 (ja) 1991-03-04 2003-01-15 パケットベースシステム

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2001319201A Expired - Fee Related JP3602089B2 (ja) 1991-03-04 2001-10-17 通信システム
JP2003007295A Expired - Fee Related JP3522266B2 (ja) 1991-03-04 2003-01-15 パケットベースシステム

Country Status (4)

Country Link
US (1) US5197128A (ja)
EP (1) EP0505764B1 (ja)
JP (3) JP3260812B2 (ja)
DE (1) DE69230954T2 (ja)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1993019423A1 (en) * 1992-03-18 1993-09-30 Intersoft Systems, Inc. Data collection interface system
EP0598502B1 (en) * 1992-11-18 1998-04-29 Canon Kabushiki Kaisha Method and apparatus for providing a bi-directional interface between a local area network and a peripheral
US5647056A (en) * 1992-11-18 1997-07-08 Canon Information Systems, Inc. Method and apparatus for managing access to a networked peripheral
US5613160A (en) * 1992-11-18 1997-03-18 Canon Kabushiki Kaisha In an interactive network board, method and apparatus for placing a network peripheral in a default configuration
JP3305042B2 (ja) * 1993-04-23 2002-07-22 キヤノン株式会社 印刷制御装置
JPH0784918A (ja) * 1993-09-17 1995-03-31 Fujitsu Ltd データ入替回路
DE69428512T2 (de) * 1993-12-30 2002-05-29 Ncr Int Inc Konfigurationsverfahren für Rechnerperipheriegeräte
US5829042A (en) 1996-02-15 1998-10-27 Hewlett-Packard Company Prefetch operation for network peripheral device having shared memory
US6038621A (en) * 1996-11-04 2000-03-14 Hewlett-Packard Company Dynamic peripheral control of I/O buffers in peripherals with modular I/O
DE19708755A1 (de) * 1997-03-04 1998-09-17 Michael Tasler Flexible Schnittstelle
US5950014A (en) * 1997-03-21 1999-09-07 Lsi Logic Corporation Methodology for pull model invocation
US6477584B1 (en) 1997-03-21 2002-11-05 Lsi Logic Corporation Message FIFO empty early warning method
US6061755A (en) * 1997-04-14 2000-05-09 International Business Machines Corporation Method of layering cache and architectural specific functions to promote operation symmetry
US5916309A (en) * 1997-05-12 1999-06-29 Lexmark International Inc. System for dynamically determining the size and number of communication buffers based on communication parameters at the beginning of the reception of message
US6046817A (en) * 1997-05-12 2000-04-04 Lexmark International, Inc. Method and apparatus for dynamic buffering of input/output ports used for receiving and transmitting print data at a printer
US6031624A (en) * 1997-09-08 2000-02-29 Lexmark International, Inc. Method and apparatus for adaptive data buffering in a parallelized printing system
US6078402A (en) * 1997-09-24 2000-06-20 Hewlett-Packard Company Accessory based resource offset mechanism for a PCI bus in a printer
JP2000132355A (ja) * 1998-10-28 2000-05-12 Fujitsu Ltd 情報処理装置及び情報処理方法並びにコンピュータ読み取り可能な記録媒体
US6286073B1 (en) * 1998-12-01 2001-09-04 Lucent Technologies Inc. Integrated circuit interface between a personal computer and an external device
US6341315B1 (en) * 1999-02-26 2002-01-22 Crossroads Systems, Inc. Streaming method and system for fiber channel network devices
AUPQ056099A0 (en) * 1999-05-25 1999-06-17 Silverbrook Research Pty Ltd A method and apparatus (pprint01)
US20030105977A1 (en) * 2001-12-05 2003-06-05 International Business Machines Corporation Offload processing for secure data transfer
US20030105952A1 (en) * 2001-12-05 2003-06-05 International Business Machines Corporation Offload processing for security session establishment and control
US7274477B2 (en) * 2003-01-24 2007-09-25 Hewlett-Packard Development Company, L.P. Printer with access to remote file system
US20040246516A1 (en) * 2003-06-03 2004-12-09 Curtis Reese Hard imaging systems, hard imaging management devices, hard imaging devices, articles of manufacture, hard imaging device operational methods, and hard imaging device configuration methods
GB2405773B (en) * 2003-09-02 2006-11-08 Siemens Ag A method of controlling provision of audio communication on a network
US7340597B1 (en) * 2003-09-19 2008-03-04 Cisco Technology, Inc. Method and apparatus for securing a communications device using a logging module
US20100309510A1 (en) * 2009-06-09 2010-12-09 Accipiter Innovations, Llc Systems, methods and devices for printing from a mobile device
US9019535B1 (en) 2009-06-09 2015-04-28 Breezyprint Corporation Secure mobile printing from a third-party device
WO2012039710A1 (en) * 2010-09-22 2012-03-29 Hewlett-Packard Development Company, L.P. Modular interface systems and methods
US10740228B2 (en) * 2017-05-18 2020-08-11 Sandisk Technologies Llc Locality grouping during garbage collection of a storage device
US10901892B2 (en) * 2017-05-18 2021-01-26 Western Digital Technologies, Inc. Locality grouping during garbage collection with flush of buffered write data upon completion of garbage collection operation

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4603385A (en) * 1983-05-11 1986-07-29 International Business Machines Corp. Integrated data processing/text processing system having a terminal with dual emulation and enhanced function capabilities
JPH0642690B2 (ja) * 1984-05-08 1994-06-01 日本電気株式会社 パケット信号の伝送方式
US4731735A (en) * 1985-09-30 1988-03-15 International Business Machines Corporation Multilingual processing for screen image build and command decode in a word processor, with full command, message and help support
US4847812A (en) * 1986-09-18 1989-07-11 Advanced Micro Devices FIFO memory device including circuit for generating flag signals
US4924456A (en) * 1986-09-18 1990-05-08 Racal Data Communications, Inc. High speed modem
US4943942A (en) * 1986-09-19 1990-07-24 Advanced Micro Devices Full-duplex modem using a single processor
DE3639571A1 (de) * 1986-11-20 1988-06-01 Standard Elektrik Lorenz Ag Verfahren und schaltungsanordnung zum urladen eines zweitrechners
JPH089254B2 (ja) * 1987-04-08 1996-01-31 ブラザー工業株式会社 プリンタ
JPH01109843A (ja) * 1987-10-23 1989-04-26 Hitachi Ltd 次中継ブリツジ指定法
US5065343A (en) * 1988-03-31 1991-11-12 Yokogawa Electric Corporation Graphic display system for process control using a plurality of displays connected to a common processor and using an fifo buffer
US5086503A (en) * 1988-04-08 1992-02-04 International Business Machines Corporation Methods of remapping a keyboard within a computer system
JPH0294942A (ja) * 1988-09-30 1990-04-05 Seiko Epson Corp データ通信装置
EP0369934A3 (en) * 1988-11-14 1990-08-22 Compuadd Corporation User-configurable setups in non-volatile storage
FR2645989A1 (fr) * 1989-04-17 1990-10-19 Bull Sa Coupleur multifonctions entre une unite centrale d'ordinateur et les differents organes peripheriques de ce dernier
US5010514A (en) * 1989-04-26 1991-04-23 International Business Machines Corporation Structured fields at a data stream boundary for delimiting files
JPH02310649A (ja) * 1989-05-26 1990-12-26 Hitachi Ltd 受信フレーム転送方式および通信制御装置
GB9000643D0 (en) * 1990-01-11 1990-03-14 Racal Milgo Ltd Computer bus system
US5070528A (en) * 1990-06-29 1991-12-03 Digital Equipment Corporation Generic encryption technique for communication networks

Also Published As

Publication number Publication date
JPH0589013A (ja) 1993-04-09
JP2003258921A (ja) 2003-09-12
JP2002204282A (ja) 2002-07-19
US5197128A (en) 1993-03-23
EP0505764A3 (en) 1993-10-20
EP0505764A2 (en) 1992-09-30
EP0505764B1 (en) 2000-04-26
DE69230954T2 (de) 2000-08-17
JP3522266B2 (ja) 2004-04-26
JP3602089B2 (ja) 2004-12-15
DE69230954D1 (de) 2000-05-31

Similar Documents

Publication Publication Date Title
JP3260812B2 (ja) 通信システム及びそのメモリ割当て方法
TW384428B (en) Method and apparatus for dynamically managing communications buffers used with packet communication data for a printer
US6502144B1 (en) Data processing apparatus with communication feature, and communication method in a data processing apparatus
US7162566B2 (en) USB-based host-to-host networking method
EP0950958A1 (en) Peripheral device and control method for the same
US6038621A (en) Dynamic peripheral control of I/O buffers in peripherals with modular I/O
US5555374A (en) System and method for coupling a plurality of peripheral devices to a host computer through a host computer parallel port
JP2019016063A (ja) データ転送装置及びデータ転送方法
US7489414B2 (en) Image forming system and image forming apparatus
US20060082827A1 (en) Network printer to control a print queue and method thereof
JP2001094613A (ja) 通信制御装置、方法および記録媒体
KR100602204B1 (ko) 메인 제어부와 부 제어부로 구성된 제어 시스템 및 버스연결 방법
US20090180137A1 (en) Device setting system, device setting method, and computer-readable recording medium saving device setting program
JP2000148436A (ja) 課金管理装置、インターフェース装置、システム、及び記憶媒体
KR100306749B1 (ko) 네트워크 프린터 시스템
KR100688477B1 (ko) Usb 디바이스 내 엔드포인트들의 메모리 관리 방법
JP2000330703A (ja) 記憶機構を備えたUSB(UniversalSerialBus)ヒューマンインターフェース装置
JPH08110883A (ja) 非scsiデバイスのアクセス方法
JP3878785B2 (ja) ネットワークインタフェース回路
JP2002051100A (ja) 中継装置およびその制御方法
JP3457084B2 (ja) パケットバス制御装置
JP2000165467A (ja) ユニバーサル・シリアルバス変換システム
JP2001325209A (ja) データ転送制御装置
JP2006244194A (ja) Usb制御装置、デバイス制御装置
JPS6029861A (ja) 周辺装置インタ−フエイス

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees