JPH032950A - 受信バッファ管理方式 - Google Patents
受信バッファ管理方式Info
- Publication number
- JPH032950A JPH032950A JP1136583A JP13658389A JPH032950A JP H032950 A JPH032950 A JP H032950A JP 1136583 A JP1136583 A JP 1136583A JP 13658389 A JP13658389 A JP 13658389A JP H032950 A JPH032950 A JP H032950A
- Authority
- JP
- Japan
- Prior art keywords
- pointer
- buffer
- block
- data
- read
- 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.)
- Pending
Links
Landscapes
- Information Transfer Systems (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の技術分野〕
本発明はデータ受信装置における受信バッファの管理方
式に関する。
式に関する。
[従来技術およびその問題点〕
プリンタ等のデータ受信装置においては、受信したデー
タを装置内部で処理するため、多くの場合このデータを
適当なサイズの受信バッファに順次格納し、古いデータ
から順次読み出して処理していく。このような順次の格
納と読出を管理するため、夫々書込ポインタと読出ポイ
ンタが用いられる。
タを装置内部で処理するため、多くの場合このデータを
適当なサイズの受信バッファに順次格納し、古いデータ
から順次読み出して処理していく。このような順次の格
納と読出を管理するため、夫々書込ポインタと読出ポイ
ンタが用いられる。
データ転送をブロック中位で行ない、ブロック中にエラ
ーが検出されたら当該ブロック全体を受信バッファから
削除してブロック全体を再送する方式を上述のようなバ
ッファ管理に適用しようとすると、以下の様な問題点が
生じる。すなわち、ブロックにエラーがあることが分か
るのは、一般にそのブロックの先頭の部分あるいはブロ
ック全体が受信バッファに書き込まれた後である。装置
内部の処理が早く進んでいる場合には、現在のブロック
にエラーがあると分かったときには受信バッファからの
読出が既にこのブロック内にまで進んでしまっている可
能性がある。
ーが検出されたら当該ブロック全体を受信バッファから
削除してブロック全体を再送する方式を上述のようなバ
ッファ管理に適用しようとすると、以下の様な問題点が
生じる。すなわち、ブロックにエラーがあることが分か
るのは、一般にそのブロックの先頭の部分あるいはブロ
ック全体が受信バッファに書き込まれた後である。装置
内部の処理が早く進んでいる場合には、現在のブロック
にエラーがあると分かったときには受信バッファからの
読出が既にこのブロック内にまで進んでしまっている可
能性がある。
本発明は上述した従来技術の問題点を解消し、受信バッ
ファを用いたデータ転送において、構成の複雑化を最小
限に抑えながら受信データブロックの無効化を可能にす
る受信バッファ管理方式を提供することを目的とする。
ファを用いたデータ転送において、構成の複雑化を最小
限に抑えながら受信データブロックの無効化を可能にす
る受信バッファ管理方式を提供することを目的とする。
本発明の一実施例によれば、受信バッファを管理するた
めに、受信バッファ中でエラーの検出等により取り消さ
れる可能性のある部分とそのような可能性のない部分と
の境界を指示するように制御されるポインタを設ける。
めに、受信バッファ中でエラーの検出等により取り消さ
れる可能性のある部分とそのような可能性のない部分と
の境界を指示するように制御されるポインタを設ける。
受信バッファからの読出がこのポインタを越えて進まな
いように制御を行うことにより、上述の目的が達成され
る。
いように制御を行うことにより、上述の目的が達成され
る。
以上、図面に基づいて本発明の一実施例を説明する。こ
の実施例においては、ホストから受信装置へのデータ転
送は以下のプロトコルに従って行われる。
の実施例においては、ホストから受信装置へのデータ転
送は以下のプロトコルに従って行われる。
■ホストから受信装置へのデータ転送はブロック単位で
行われる。
行われる。
■ホストは1ブロックのデータを送り終わる毎に状態確
認コマンドを受信装置に与える。
認コマンドを受信装置に与える。
■受信装置は、直前に受信したデータのブロックにエラ
ーがあれば状態確認コマンドに応答して当該ブロックを
受信バッファから削除するとともに、ホストに対してエ
ラー状態を通知する。エラー状態の通知を受けたホスト
は当該ブロックの再送を行う。
ーがあれば状態確認コマンドに応答して当該ブロックを
受信バッファから削除するとともに、ホストに対してエ
ラー状態を通知する。エラー状態の通知を受けたホスト
は当該ブロックの再送を行う。
■エラーがなければ受信装置は状態確認コマンドに対し
て正常である旨応答する。この場合には、ホストは次の
ブロックの転送が可能になり、また受信バッファ中の正
常に受信されたブロックの処理が可能になる。
て正常である旨応答する。この場合には、ホストは次の
ブロックの転送が可能になり、また受信バッファ中の正
常に受信されたブロックの処理が可能になる。
第1図は本発明の一実施例が適用される受信バッファの
初期状態を示す図である。同図において、WPは書込ポ
インタ、R?は読出ポインタ、RFは読出ポインタがそ
れ以上先へ進まないようにするための読出フェンスポイ
ンタである。同図の状態では受信バッファ10にはデー
タが入っていないので、3つのポインタWP、RP、R
Fは皆同じ位置を指している。
初期状態を示す図である。同図において、WPは書込ポ
インタ、R?は読出ポインタ、RFは読出ポインタがそ
れ以上先へ進まないようにするための読出フェンスポイ
ンタである。同図の状態では受信バッファ10にはデー
タが入っていないので、3つのポインタWP、RP、R
Fは皆同じ位置を指している。
第2図は、受信バッファ10に1ブロック分のデータが
読み込まれたが、まだエラーチエツクが完了していない
状態を示す。このエラーチエツクは例えばCRCを使用
して行われるが、エラーチエツクの方法自体は本発明の
要旨ではなくまた当業者にとっては周知の事項であるた
め、これ以上の説明は省略する。
読み込まれたが、まだエラーチエツクが完了していない
状態を示す。このエラーチエツクは例えばCRCを使用
して行われるが、エラーチエツクの方法自体は本発明の
要旨ではなくまた当業者にとっては周知の事項であるた
め、これ以上の説明は省略する。
第2図から分かるように、このような状態では書込ポイ
ンタWPは1ブロック分進んでいるが、読出フェンスポ
インタRFは第1図と同じ位置に留まっている。読出ポ
インタRPは読出フェンスポインタRFを追い越せない
ようになっているので、これも第1図と同し位置に留ま
っている。
ンタWPは1ブロック分進んでいるが、読出フェンスポ
インタRFは第1図と同じ位置に留まっている。読出ポ
インタRPは読出フェンスポインタRFを追い越せない
ようになっているので、これも第1図と同し位置に留ま
っている。
第3図は、エラーチエツクによりエラーが発見された場
合、ホスト側からの状態確認コマンドに応答して当該ブ
ロックが削除された状態を示す。
合、ホスト側からの状態確認コマンドに応答して当該ブ
ロックが削除された状態を示す。
同図から分かるように、ブロックの削除は書込ポインタ
WPを1ブロック分戻すことによって行われる。第2図
に関して説明したように、エラーがあるかどうかが未確
認のブロックへ読出ポインタが入り込むこと、つまりこ
のブロック内のデータが読み出されることは阻止されて
いる。従って、エラーを含んでいるブロックのデータを
処理してしまうことはない。
WPを1ブロック分戻すことによって行われる。第2図
に関して説明したように、エラーがあるかどうかが未確
認のブロックへ読出ポインタが入り込むこと、つまりこ
のブロック内のデータが読み出されることは阻止されて
いる。従って、エラーを含んでいるブロックのデータを
処理してしまうことはない。
受信装置はブロックの削除を行うとともに、ホストに対
してエラーがあったことを通知するので、ホストはこれ
に応答して直前のブロックを再送する。今度は正常に受
信できたならば、受信装置は状態確認コマンドに応答し
て正常である旨通知するとともに、読出フェンスポイン
タRFを進める。
してエラーがあったことを通知するので、ホストはこれ
に応答して直前のブロックを再送する。今度は正常に受
信できたならば、受信装置は状態確認コマンドに応答し
て正常である旨通知するとともに、読出フェンスポイン
タRFを進める。
この段階ではじめて、受信装置は直前に受信されたブロ
ック中のデータを処理できるようになる。
ック中のデータを処理できるようになる。
この後受信装置による受信バッファlOからの読出があ
る程度進んだ状態を第4図に示す。
る程度進んだ状態を第4図に示す。
第7図には、上述の動作を表すシーケンスを図式的に示
す。
す。
第5図および第6図には、第4図に示された状態の後に
次のブロックのデータが正常に受信される場合の過程が
示されでいる。なお、第6図は、読出フェンスポインタ
RFが進められた直後の状態を示す。ここで、(A)は
その直前までに読出ポインタが読出フェンスポインタR
Fに追いついていた場合を、また(B)は読出ポインタ
RPがまだ読出フェンスポインタRFに追いついていな
かった場合の状態を示すものである。
次のブロックのデータが正常に受信される場合の過程が
示されでいる。なお、第6図は、読出フェンスポインタ
RFが進められた直後の状態を示す。ここで、(A)は
その直前までに読出ポインタが読出フェンスポインタR
Fに追いついていた場合を、また(B)は読出ポインタ
RPがまだ読出フェンスポインタRFに追いついていな
かった場合の状態を示すものである。
なお、実際の受信バッファはリングバッファ等の形態で
実現されるが、このような具体的な受信バッファの構成
法は当業者には周知の事項であるため、説明は省略する
。
実現されるが、このような具体的な受信バッファの構成
法は当業者には周知の事項であるため、説明は省略する
。
以上一実施例に基づいた説明を行ったが、本発明はこれ
に限定されるものではなく、多様な変形を包含するもの
であることは言うまでもない。
に限定されるものではなく、多様な変形を包含するもの
であることは言うまでもない。
例えば、受信バッファからのブロックの削除は、フロッ
ク全体を一旦受信バッファに入れてから行なうかわりに
、ブロックの転送途中で現在受信中のブロックが不要で
あると判明したときに(例えばパリティエラーの検出に
応答して)直ちに行ってもよい。
ク全体を一旦受信バッファに入れてから行なうかわりに
、ブロックの転送途中で現在受信中のブロックが不要で
あると判明したときに(例えばパリティエラーの検出に
応答して)直ちに行ってもよい。
また、ホスト側からの状態確認を待たずにブロックの削
除を行うこともできる。
除を行うこともできる。
また、実施例では、エラーの検出によるブロックの削除
について説明したが、本発明の適用範囲はこれに限定さ
れるものではなく、−旦受信バノファに入ったデータが
直ちに処理できない状態であることがある場合に適用で
きる。例えば受信したデータに何らかの処理を行ったり
あるいはエラーではないが不要として捨てるか否かの判
断がなされる場合にも適用可能である。
について説明したが、本発明の適用範囲はこれに限定さ
れるものではなく、−旦受信バノファに入ったデータが
直ちに処理できない状態であることがある場合に適用で
きる。例えば受信したデータに何らかの処理を行ったり
あるいはエラーではないが不要として捨てるか否かの判
断がなされる場合にも適用可能である。
また、本発明は上述のプロトコル以外に対しても適用で
きることは言うまでもない。
きることは言うまでもない。
以ト説明したように、本発明によれば、簡単な構成で、
受信側での処理が受信バッファ中のデータの未確定部分
まで進まないようにすることができる。
受信側での処理が受信バッファ中のデータの未確定部分
まで進まないようにすることができる。
第1図ないし第6図は本発明の一実施例の動作を説明す
る図、第7図は第1図ないし第6図に示された動作シー
ケンスを図式的に説明するための図である。 IO=受信バッファ WP:書込ポインタ RP:読出ポインタ RF:読出フェンスポインタ 第1図 第2図
る図、第7図は第1図ないし第6図に示された動作シー
ケンスを図式的に説明するための図である。 IO=受信バッファ WP:書込ポインタ RP:読出ポインタ RF:読出フェンスポインタ 第1図 第2図
Claims (2)
- (1)受信データが順次書き込まれまた順次読み出され
る受信バッファにおいて、 前記書き込まれた受信データのうち前記読出を行っても
良い部分とそうでない部分との境界位置を示す手段を設
けたことを特徴とする受信バッファ管理方式。 - (2)前記受信データの末尾の位置を示す第1のポイン
タと、 前記読出が最後に行われた位置を示す第2のポインタと
、 前記境界位置を示す手段である第3のポインタとを設け
、 前記第2のポインタに基づいた読出は前記第3のポイン
タが示す前記境界を越えないようにした ことを特徴とする請求項1記載の受信バッファ管理方式
。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1136583A JPH032950A (ja) | 1989-05-30 | 1989-05-30 | 受信バッファ管理方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1136583A JPH032950A (ja) | 1989-05-30 | 1989-05-30 | 受信バッファ管理方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH032950A true JPH032950A (ja) | 1991-01-09 |
Family
ID=15178675
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1136583A Pending JPH032950A (ja) | 1989-05-30 | 1989-05-30 | 受信バッファ管理方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH032950A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2011529229A (ja) * | 2008-07-23 | 2011-12-01 | クゥアルコム・インコーポレイテッド | 複数ストリームのメディアデータを統合するためのシステム、方法または装置 |
-
1989
- 1989-05-30 JP JP1136583A patent/JPH032950A/ja active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2011529229A (ja) * | 2008-07-23 | 2011-12-01 | クゥアルコム・インコーポレイテッド | 複数ストリームのメディアデータを統合するためのシステム、方法または装置 |
| US8762561B2 (en) | 2008-07-23 | 2014-06-24 | Qualcomm Incorporated | System, method or apparatus for combining multiple streams of media data |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6253212B1 (en) | Method and system for maintaining checkpoint values | |
| JPH096546A (ja) | ディスク制御システム | |
| US7010650B2 (en) | Multiple data management method, computer and storage device therefor | |
| JPH032950A (ja) | 受信バッファ管理方式 | |
| US7533132B2 (en) | Parallel replication mechanism for state information produced by serialized processing | |
| US20030033440A1 (en) | Method of logging message activity | |
| EP1244015A2 (en) | Parallel replication mechanism for state information produced by serialized processing | |
| JPH05324449A (ja) | データファイルのムーブ方式 | |
| JPS603223B2 (ja) | 中央処理装置のエラ−収集方式 | |
| JPH04230553A (ja) | ファイル転送誤り回復方法 | |
| KR20010110100A (ko) | 데이터 처리 시스템 내의 채널들의 복구를 위한체크포인팅 방법, 프로그램 제품 및 장치 | |
| JPS63318647A (ja) | デ−タファイル受信方法 | |
| JP2524620B2 (ja) | 入出力制御方法 | |
| Engert | Use of network job processing (NJP) | |
| JPS62290955A (ja) | オンライン・デ−タ処理システム | |
| JPH05265889A (ja) | データ転送制御装置 | |
| JPS6380347A (ja) | フアイル転送の再送方式 | |
| JPH10247157A (ja) | トランザクション処理システムおよびそのリカバリ方法 | |
| JPS61843A (ja) | 資源ステ−タス保持方式 | |
| JPH0546443A (ja) | プロセス終了方法 | |
| JPH0541041A (ja) | 磁気デイスクライト・リード診断方式 | |
| JPH04245523A (ja) | 非同期型の磁気ディスク制御装置およびそのデータ 制御方法 | |
| JPH05204670A (ja) | 複数プロセス間の並列実行用通信制御システム | |
| JPH05265785A (ja) | ファイル転送に於ける誤り回復方法 | |
| JPH0743673B2 (ja) | 補助記憶装置への書き込み制御方式 |