JPS6336348A - バツフアメモリ管理方法 - Google Patents
バツフアメモリ管理方法Info
- Publication number
- JPS6336348A JPS6336348A JP61179122A JP17912286A JPS6336348A JP S6336348 A JPS6336348 A JP S6336348A JP 61179122 A JP61179122 A JP 61179122A JP 17912286 A JP17912286 A JP 17912286A JP S6336348 A JPS6336348 A JP S6336348A
- Authority
- JP
- Japan
- Prior art keywords
- area
- address
- released
- oldest
- buffer memory
- 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.)
- Granted
Links
- 230000015654 memory Effects 0.000 title claims abstract description 48
- 238000000034 method Methods 0.000 title claims description 17
- 238000007726 management method Methods 0.000 claims description 44
- 230000004044 response Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L5/00—Arrangements affording multiple use of the transmission path
- H04L5/22—Arrangements affording multiple use of the transmission path using time-division multiplexing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2205/00—Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F2205/06—Indexing scheme relating to groups G06F5/06 - G06F5/16
- G06F2205/064—Linked list, i.e. structure using pointers, e.g. allowing non-contiguous address segments in one logical buffer or dynamic buffer space allocation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Position Input By Displaying (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の目的]
(産業上の利用分野)
本発明はデータ処理装置に於けるバッファメモリの管理
方法に関する。
方法に関する。
〈従来の技術)
従来、バッファメモリの管理は、管理対像となるバッフ
ァメモリを成る大きざの単位に区切り、これらをリスト
構造で連結して、使用中領域、解放未使用領域等を表現
するという手法を採っていた。
ァメモリを成る大きざの単位に区切り、これらをリスト
構造で連結して、使用中領域、解放未使用領域等を表現
するという手法を採っていた。
このようなリストtR造によるバッファメモリの管理手
段に於いては管理対象となるバッファメモリの区切り単
位を小さくすると、メモリ使用効率は向上するが、リス
ト処理に係る時間が大きくなるという欠点があった。
段に於いては管理対象となるバッファメモリの区切り単
位を小さくすると、メモリ使用効率は向上するが、リス
ト処理に係る時間が大きくなるという欠点があった。
このため、高速のバッファメモリ管理が必要とされる場
合は、リスト構造でなく、−次元的にバッフ7メモリを
管理することが望ましい。即ち、受信データは順次バッ
ファメモリに蓄積して行き、使用済データは直接バッフ
ァメモリから解放する。
合は、リスト構造でなく、−次元的にバッフ7メモリを
管理することが望ましい。即ち、受信データは順次バッ
ファメモリに蓄積して行き、使用済データは直接バッフ
ァメモリから解放する。
このような−次元的にバッファメモリを管理する管理方
法では、管理対象となるバッファメモリの未使用領域と
使用中領域の境界を管理する必要があるが、この際、従
来では、解放領域がバッフ7メモリ上の何れの位置にあ
って、使用・未使用の境界や、以前に解放された領域を
どのように結合するかを全領域に亙って調べなければな
らず、従って上記管理のための処理に要する時間は上述
したリスト構造の場合とほとんど変らず、高速化の上で
さほど大きな効果は期待できないという問題があった。
法では、管理対象となるバッファメモリの未使用領域と
使用中領域の境界を管理する必要があるが、この際、従
来では、解放領域がバッフ7メモリ上の何れの位置にあ
って、使用・未使用の境界や、以前に解放された領域を
どのように結合するかを全領域に亙って調べなければな
らず、従って上記管理のための処理に要する時間は上述
したリスト構造の場合とほとんど変らず、高速化の上で
さほど大きな効果は期待できないという問題があった。
(発明が解決しようする問題点)
上述したように従来では一次元的にバッフ1メモリを管
理する際、管理対象となるバッファメモリ上の全領域を
対象に比較検査する必要があることから、上記管理のた
めの処理に多くの時間を要し、高速化が計れないという
問題があった。
理する際、管理対象となるバッファメモリ上の全領域を
対象に比較検査する必要があることから、上記管理のた
めの処理に多くの時間を要し、高速化が計れないという
問題があった。
本発明は上記実情に鑑みなされたもので、バッフ7メモ
リの全領域を比較検査することなく、解放されたメモリ
領域の先頭アドレスと最終アドレスを一組の入力とする
テーブルを用いて、バッファメモリの使用中領域(部分
的に解放された領域を含む)のうち、最も古いアドレス
(以下最旧アドレスと称す)を管理する構成としたもの
で、これにより高速の一次元的なバッファメモリ管理を
実現できる。
リの全領域を比較検査することなく、解放されたメモリ
領域の先頭アドレスと最終アドレスを一組の入力とする
テーブルを用いて、バッファメモリの使用中領域(部分
的に解放された領域を含む)のうち、最も古いアドレス
(以下最旧アドレスと称す)を管理する構成としたもの
で、これにより高速の一次元的なバッファメモリ管理を
実現できる。
[発明の構成]
(問題点を解決するための手段及び作用)本発明は、バ
ッファメモリ上のまだ読出されていない最も古いデータ
が格納された最旧アドレスを管理するとともに、既にデ
ータが続出され空領域として解放された領域の範囲を繋
がりのない領域に整理してその領域が解放された順に管
理し、新たにデータが読出された領域を解放する際、前
記最旧アドレスと新たな解放領域、及び新たな解放領域
と最も古く解放された領域との各々の繋がりを調べ、先
の最旧アドレスから解放領域が連続する領域の最終アド
レスの次アドレスまで最旧アドレスを更新するとともに
、先の最旧アドレスと新たな解放領域との繋がりがない
場合には、新たな解放領域と最も古く解放された領域と
の繋がりを調べて、繋がりのあるときには繋がった全領
域として、繋がりのないときには新たな領域として解放
領域の管理を行なうもので、これにより管理対象となる
バッファメモリの全′J4mを比較検査する必要がなく
、高速の一次元的なバッファメモリ管理が実現できる。
ッファメモリ上のまだ読出されていない最も古いデータ
が格納された最旧アドレスを管理するとともに、既にデ
ータが続出され空領域として解放された領域の範囲を繋
がりのない領域に整理してその領域が解放された順に管
理し、新たにデータが読出された領域を解放する際、前
記最旧アドレスと新たな解放領域、及び新たな解放領域
と最も古く解放された領域との各々の繋がりを調べ、先
の最旧アドレスから解放領域が連続する領域の最終アド
レスの次アドレスまで最旧アドレスを更新するとともに
、先の最旧アドレスと新たな解放領域との繋がりがない
場合には、新たな解放領域と最も古く解放された領域と
の繋がりを調べて、繋がりのあるときには繋がった全領
域として、繋がりのないときには新たな領域として解放
領域の管理を行なうもので、これにより管理対象となる
バッファメモリの全′J4mを比較検査する必要がなく
、高速の一次元的なバッファメモリ管理が実現できる。
(実施例)
以下図面を参照して本発明の一実施例を説明する。
第1図は本発明の一実施例に於ける構成要素を示すブロ
ック図である。
ック図である。
図中、1はCPUであり、後述する管理テーブル2を用
いて第7図に示すようなバッファ領域の解放処理制御を
実行する。2はCPUIの制御の下にバッファメモリ3
上に於ける領域管理のためのアドレス情報を保持するF
IFO構造の管理テーブルであり、解放されたデータの
バッファメモリ3上に於ける先頭アドレスを保持する先
頭アドレス保持部2Bと、同最終アドレスを保持する最
終アドレス保持部2Eからなる。3はCPU1の管理対
象下に置かれたバッファメモリであり、CPU1の制御
の下にデータが蓄積され、不要となったデータが解放さ
れる。又、図中のBTMは使用中#A域内の最も古い領
域の先頭位置を示す最旧アドレスが貯えられるアドレス
レジスタ(以下単にBTMと称す)、OPは上記管理テ
ーブル2に保持された最旧エントリを示すアウトプット
ポインタ(以下単にOPと称す)、IPは同最新エント
リを示すインプットポインタ(以下単にIPと称す)で
ある。
いて第7図に示すようなバッファ領域の解放処理制御を
実行する。2はCPUIの制御の下にバッファメモリ3
上に於ける領域管理のためのアドレス情報を保持するF
IFO構造の管理テーブルであり、解放されたデータの
バッファメモリ3上に於ける先頭アドレスを保持する先
頭アドレス保持部2Bと、同最終アドレスを保持する最
終アドレス保持部2Eからなる。3はCPU1の管理対
象下に置かれたバッファメモリであり、CPU1の制御
の下にデータが蓄積され、不要となったデータが解放さ
れる。又、図中のBTMは使用中#A域内の最も古い領
域の先頭位置を示す最旧アドレスが貯えられるアドレス
レジスタ(以下単にBTMと称す)、OPは上記管理テ
ーブル2に保持された最旧エントリを示すアウトプット
ポインタ(以下単にOPと称す)、IPは同最新エント
リを示すインプットポインタ(以下単にIPと称す)で
ある。
第2図乃至第6図はそれぞれ上記実施例の動作状態を示
す動作説明図であり、第7図は上記CPU 1の制御の
下に実行されるバッファ領域解tli処理フローを示す
フローチャートである。
す動作説明図であり、第7図は上記CPU 1の制御の
下に実行されるバッファ領域解tli処理フローを示す
フローチャートである。
ここで、上記第1図乃至第7図を参照して一実施例の動
作を説明する。
作を説明する。
第1図は受信したデータがバッファメモリ3内の領域a
に蓄積されている状態を示、している。この際、BTM
はバッファメモリ3上の使用中領域の最旧アドレスを示
している。
に蓄積されている状態を示、している。この際、BTM
はバッファメモリ3上の使用中領域の最旧アドレスを示
している。
CPLllは上記バッファメモリ3に蓄積さ机た成る領
域のデータを解放するとき、先ず、その解放しようとす
る領域(N)が87Mアドレスに接しているか否か、即
ち解放しようとする領域(N)の先頭アドレスがBTM
のアドレスと一致するか否かを調べ(第7図ステップ5
10)、アドレスがをみなければ管理テーブル2の登録
・変更処理(第7図ステップ821〜525)を実行す
る。
域のデータを解放するとき、先ず、その解放しようとす
る領域(N)が87Mアドレスに接しているか否か、即
ち解放しようとする領域(N)の先頭アドレスがBTM
のアドレスと一致するか否かを調べ(第7図ステップ5
10)、アドレスがをみなければ管理テーブル2の登録
・変更処理(第7図ステップ821〜525)を実行す
る。
第2図及び第3図はそれぞれ上記バッファメモリ3上か
ら成る領mbのデータが解放された状態を示しており、
第2図は解放領域すの先頭アドレスがBTMのアドレス
と一致した状態、第3図は解放領域すの先頭アドレスが
BT〜1のアドレスと一致しない状態をそれぞれ示して
いる。第2図に示すような解放領域すの先頭アドレスが
BTMのアドレスと一致しない場合は後述する管理テー
ブル2の登録・変更処理(第7図ステップ821〜52
5)に於いて解放領域すの先頭アドレスが管理テーブル
2内のIPで示される管理テーブル2内の先頭アドレス
保持部29に保持され、最終アドレスが同じく最終アド
レス保持部2Eに保持された後、IPが更vfr(+1
)される。又、第3図に示すような解放領域すの先頭ア
ドレスがBTMのアドレスと一致した場合は後述するB
TMのアト1ル ス更新処理(第7図ステップ34−2〜315)に於い
てOPの示す管理テーブル2内の先頭アドレス保持部2
Bに貯えられた先頭アドレスと87Mアドレスの一致を
確認して後、BTMのアドレスが解放領[bのアドレス
分だけ更新され、更にOPが更新(+1)される。
ら成る領mbのデータが解放された状態を示しており、
第2図は解放領域すの先頭アドレスがBTMのアドレス
と一致した状態、第3図は解放領域すの先頭アドレスが
BT〜1のアドレスと一致しない状態をそれぞれ示して
いる。第2図に示すような解放領域すの先頭アドレスが
BTMのアドレスと一致しない場合は後述する管理テー
ブル2の登録・変更処理(第7図ステップ821〜52
5)に於いて解放領域すの先頭アドレスが管理テーブル
2内のIPで示される管理テーブル2内の先頭アドレス
保持部29に保持され、最終アドレスが同じく最終アド
レス保持部2Eに保持された後、IPが更vfr(+1
)される。又、第3図に示すような解放領域すの先頭ア
ドレスがBTMのアドレスと一致した場合は後述するB
TMのアト1ル ス更新処理(第7図ステップ34−2〜315)に於い
てOPの示す管理テーブル2内の先頭アドレス保持部2
Bに貯えられた先頭アドレスと87Mアドレスの一致を
確認して後、BTMのアドレスが解放領[bのアドレス
分だけ更新され、更にOPが更新(+1)される。
CPU1は、解放しようとする領域(N)の先頭アドレ
スがBTMのアドレスと一致したことを認識すると、解
放しようとする領域(N)の次アドレスまでBTMのア
ドレスを更新した後(第7図ステップ811)、OPと
IPの値を比較して管理テーブル2が空状態であるか否
かを判断しく第7図ステップ512)、Qpの値とIP
の値が一致して管理テーブル2が空状態であることを認
識するとその解放領域(N>に対する87Mアドレスの
更新処理を終了する。又、OPの値とIPの値が一致せ
ず管理テーブル2が空状態でないことを認識した際は、
OPの示す管理テーブル2内の先頭アドレス保持部2B
に貯えられた先頭アドレスとB T lv+アドレスが
一致するか否かを判断しく第7図ステップ813)、一
致しないときはその解放領域(N)に対するテーブル更
新処理を柊了し、又、一致するときは、上記○Pの示す
管理テーブル2内の最終アドレス保持部2Eに貯えられ
た最終アドレスの次アドレスまでBTMのアドレスを更
新した後(第7図ステップ314)、OPの直を更新(
+1)L、その解放wA域(N)に対する87Mアドレ
スの更新処理を終了する。
スがBTMのアドレスと一致したことを認識すると、解
放しようとする領域(N)の次アドレスまでBTMのア
ドレスを更新した後(第7図ステップ811)、OPと
IPの値を比較して管理テーブル2が空状態であるか否
かを判断しく第7図ステップ512)、Qpの値とIP
の値が一致して管理テーブル2が空状態であることを認
識するとその解放領域(N>に対する87Mアドレスの
更新処理を終了する。又、OPの値とIPの値が一致せ
ず管理テーブル2が空状態でないことを認識した際は、
OPの示す管理テーブル2内の先頭アドレス保持部2B
に貯えられた先頭アドレスとB T lv+アドレスが
一致するか否かを判断しく第7図ステップ813)、一
致しないときはその解放領域(N)に対するテーブル更
新処理を柊了し、又、一致するときは、上記○Pの示す
管理テーブル2内の最終アドレス保持部2Eに貯えられ
た最終アドレスの次アドレスまでBTMのアドレスを更
新した後(第7図ステップ314)、OPの直を更新(
+1)L、その解放wA域(N)に対する87Mアドレ
スの更新処理を終了する。
この−状態例を第6図に示している。第6図は第4図の
状態から、更に領域が解放される場合で、その新たに解
放される領lidの先頭アドレスがBTMのアドレスと
等しく、かつそのR終了ドレスが先に解放された、OP
の示す管理テーブル2内の先頭アドレス保持部28に貯
えられた先頭アドレスに連続する場合を示している。こ
の場合は上記した第3図に示す状態のような単にBTM
のアドレスを新たに解放された領域だけ更新するのでは
なく、既に解放されテーブルに積まれている領域(図で
はb)と合せてBTMのアドレスを更新する。即ちOP
の示す管理テーブル2内の最終アドレス保持部2.に貯
えられた最終アドレスの次アドレスまでBTMのアドレ
ス更新する。そしてこの更新処理の後にOPの値を更新
(+1)L、、上記解放領[dに対するBTMのアドレ
ス更新処理を終了する。
状態から、更に領域が解放される場合で、その新たに解
放される領lidの先頭アドレスがBTMのアドレスと
等しく、かつそのR終了ドレスが先に解放された、OP
の示す管理テーブル2内の先頭アドレス保持部28に貯
えられた先頭アドレスに連続する場合を示している。こ
の場合は上記した第3図に示す状態のような単にBTM
のアドレスを新たに解放された領域だけ更新するのでは
なく、既に解放されテーブルに積まれている領域(図で
はb)と合せてBTMのアドレスを更新する。即ちOP
の示す管理テーブル2内の最終アドレス保持部2.に貯
えられた最終アドレスの次アドレスまでBTMのアドレ
ス更新する。そしてこの更新処理の後にOPの値を更新
(+1)L、、上記解放領[dに対するBTMのアドレ
ス更新処理を終了する。
次に解放しようとする領域(N)の先頭アドレスがBT
Mのアドレスと一致しない場合の管理テーブル2の登録
・変更処理(第7図ステップS21〜525)について
説明する。
Mのアドレスと一致しない場合の管理テーブル2の登録
・変更処理(第7図ステップS21〜525)について
説明する。
CPU1は、解放しようとする領1a(N、)の先頭ア
ドレスがBTMのアドレスと一致しないことを認識する
とく第7図ステップ510)、oPとIPの値を比較し
て管理テーブル2が空状態であるか否かを判断する(第
7図ステップ521)。ここでOPの値とIPの値が一
致して管理テーブル2が空状態であることを認識すると
、その解放領域(N>に対するテーブル登録処理(第7
図ステップ323.524)を実行し、又、OPの値と
IPの値が一致せず管理テーブル2が空状態でないこと
を認識した際は、OPの示す管理テーブル2内のR柊ア
ドレス保持部2εに貯えられた最終アドレスの更新(変
更)処理(第7図ステップS22゜825)を実行する
。即ち、OPの値とIPの値が一致せず管理テーブル2
が空状態でないことを認識した際は、OPの示す管理テ
ーブル2内の最終アドレス保持部2Eに貯えられた最終
アドレスと解放しようとするfall(N)の先頭アド
レスが連続するか否か、即ち、OPの示す管理テーブル
2内の最終アドレス保持部2Eに貯えられた最終アドレ
スの次アドレスと解放しようとする領域(N)の先頭ア
ドレスが一致するか否かを判断しく第7図ステップS2
2>、一致しないときは後述するテーブル登録処理(第
7図ステップ823.824)を実行し、又、一致する
ときは、上記OPの示す管理テーブル2内の最終アドレ
ス保持部2Eに貯えられた最終アドレスの値を上記解放
しようとする領域(N)の最終アドレスの値に更新(変
更)して(第7図ステップ525)、その解放領域<N
)に対するテーブル更新処理を終了する。
ドレスがBTMのアドレスと一致しないことを認識する
とく第7図ステップ510)、oPとIPの値を比較し
て管理テーブル2が空状態であるか否かを判断する(第
7図ステップ521)。ここでOPの値とIPの値が一
致して管理テーブル2が空状態であることを認識すると
、その解放領域(N>に対するテーブル登録処理(第7
図ステップ323.524)を実行し、又、OPの値と
IPの値が一致せず管理テーブル2が空状態でないこと
を認識した際は、OPの示す管理テーブル2内のR柊ア
ドレス保持部2εに貯えられた最終アドレスの更新(変
更)処理(第7図ステップS22゜825)を実行する
。即ち、OPの値とIPの値が一致せず管理テーブル2
が空状態でないことを認識した際は、OPの示す管理テ
ーブル2内の最終アドレス保持部2Eに貯えられた最終
アドレスと解放しようとするfall(N)の先頭アド
レスが連続するか否か、即ち、OPの示す管理テーブル
2内の最終アドレス保持部2Eに貯えられた最終アドレ
スの次アドレスと解放しようとする領域(N)の先頭ア
ドレスが一致するか否かを判断しく第7図ステップS2
2>、一致しないときは後述するテーブル登録処理(第
7図ステップ823.824)を実行し、又、一致する
ときは、上記OPの示す管理テーブル2内の最終アドレ
ス保持部2Eに貯えられた最終アドレスの値を上記解放
しようとする領域(N)の最終アドレスの値に更新(変
更)して(第7図ステップ525)、その解放領域<N
)に対するテーブル更新処理を終了する。
又、OPの値とIPの値が一致して管理テーブル2が空
状態であることを認識した際(第7図ステップS21)
、又はOPの示す管理テーブル2内の最終アドレス保持
部2Eに貯えられたR柊アドレスの次アドレスと解放し
ようとする領[(N>の先頭アドレスが一致しないrI
A(第7図ステップ522)は、IPの示す管理テーブ
ル2内の先頭アドレス保持部2B及び最終アドレス保持
部2Eに解放しようとする領域(N)の先頭アドレス及
び最終アドレスを登録しく第7図ステップ523)、I
Pの値を更新(+1)して(第7図ステップ324)、
管理テーブル2の登録処理を終了する。
状態であることを認識した際(第7図ステップS21)
、又はOPの示す管理テーブル2内の最終アドレス保持
部2Eに貯えられたR柊アドレスの次アドレスと解放し
ようとする領[(N>の先頭アドレスが一致しないrI
A(第7図ステップ522)は、IPの示す管理テーブ
ル2内の先頭アドレス保持部2B及び最終アドレス保持
部2Eに解放しようとする領域(N)の先頭アドレス及
び最終アドレスを登録しく第7図ステップ523)、I
Pの値を更新(+1)して(第7図ステップ324)、
管理テーブル2の登録処理を終了する。
この状態例を第4図及び第5図に示している。
第4図及び第5図はそれぞれ上記した第2図の状態から
更に領域の解放が行われた場合の状態例であり、このう
ち、第4図は新たに解放される領域Cの先頭アドレスが
BTMのアドレスに一致してあらず、かつ先に解放され
た領域すにも繋がらない(即ちIP更新前に於けるIP
の示す管理テーブル2内の最終アドレス保持部2Eに貯
えられたアドレスに連続しない)場合であり、この際は
、新たな解放#4域として、IPの示す管理テーブル2
内の先頭アドレス保持部29及び最終アドレス保持部2
Eに解放領IJICの先頭アドレス及び最終アドレスが
書込まれる。又、第5図は新たな解放領域Cの先頭アド
レスが先に解放された領域すに繋がる(即ちIP更新前
に於けるIPの示す管理テーブル2内の最終アドレス保
持部2Eに貯えられたアドレスに連続する)場合であり
、この際は先に解放された領1bに対応して登録された
管理テーブル2内の最終アドレス保持部2Eのアドレス
を新たに解放される領域Cの最終アドレスの値に書き換
える。即ち、先の解放領域(図ではb)と新たな解放領
1ii!(図ではC)を一つの連続した解放領域として
管理テーブル2に再登録する。
更に領域の解放が行われた場合の状態例であり、このう
ち、第4図は新たに解放される領域Cの先頭アドレスが
BTMのアドレスに一致してあらず、かつ先に解放され
た領域すにも繋がらない(即ちIP更新前に於けるIP
の示す管理テーブル2内の最終アドレス保持部2Eに貯
えられたアドレスに連続しない)場合であり、この際は
、新たな解放#4域として、IPの示す管理テーブル2
内の先頭アドレス保持部29及び最終アドレス保持部2
Eに解放領IJICの先頭アドレス及び最終アドレスが
書込まれる。又、第5図は新たな解放領域Cの先頭アド
レスが先に解放された領域すに繋がる(即ちIP更新前
に於けるIPの示す管理テーブル2内の最終アドレス保
持部2Eに貯えられたアドレスに連続する)場合であり
、この際は先に解放された領1bに対応して登録された
管理テーブル2内の最終アドレス保持部2Eのアドレス
を新たに解放される領域Cの最終アドレスの値に書き換
える。即ち、先の解放領域(図ではb)と新たな解放領
1ii!(図ではC)を一つの連続した解放領域として
管理テーブル2に再登録する。
このようなバッファメモリ3上の領域解放処理が領域解
放の都度、繰返し実行される。
放の都度、繰返し実行される。
上述したようなバッファメモリ3の領域管理機能をもつ
ことにより、バッファメモリ3に蓄積されたデータを解
放する際、その解放領域とそれ以前に解放されている領
域が連続しているか否かの比較をバッファメモリ全域に
亙って行なうことなく、管理テーブル2に保持されてい
る最旧エントリの値と比較するだけで領域の連続性を確
認でき、これによりバッファメモリ3の最旧使用アドレ
スの更新処理を高速に行なうことができる。
ことにより、バッファメモリ3に蓄積されたデータを解
放する際、その解放領域とそれ以前に解放されている領
域が連続しているか否かの比較をバッファメモリ全域に
亙って行なうことなく、管理テーブル2に保持されてい
る最旧エントリの値と比較するだけで領域の連続性を確
認でき、これによりバッファメモリ3の最旧使用アドレ
スの更新処理を高速に行なうことができる。
尚、上記した実施例ではデータ送受信の際のバッファメ
モリ管理を例にとって説明したが、これに限らず、各種
の機器間に於いてデータを遺り取リする際に広く応用で
きる。
モリ管理を例にとって説明したが、これに限らず、各種
の機器間に於いてデータを遺り取リする際に広く応用で
きる。
[発明の効果]
以上詳記したように本発明によれば、データを最も古い
データから順に一時的に保持し、保持されたデータが要
求に応じて読出されるバッファメモリの空領域を管理す
る方法に於いて、バッファメモリ上のまだ読出されてい
ない最も古いデータが格納された最旧アドレスを管理す
るとともに、既にデータが読出され空領域として解放さ
れた領域の範囲を繋がりのない領域に整理してその領域
が解放された順に管理し、新たにデータが読出された領
域を解放する際、前記最旧アドレスと新たな解放領域、
及び新たな解放領域と最も古く解放された領域との各々
の繋がりを調べ、先の最旧アドレスから解放領域が連続
する領域の最終アドレスの次アドレスまで最旧アドレス
を更新するとともに、先の最旧アドレスと新たな解放領
域との繋がりがない場合には、新たな解放領域と最も古
く解放された領域との繋がりを調べて、繋がりのあると
きには繋がった全領域として、繋がりのないときには新
たな領域として解放領域の管理を行なうバッファメモリ
管理機能を備えたことにより、管理対象となるバッファ
メモリの全領域を比較検査する必要がなく、高速の一次
元的なバッファメモリ管理が実現できる。
データから順に一時的に保持し、保持されたデータが要
求に応じて読出されるバッファメモリの空領域を管理す
る方法に於いて、バッファメモリ上のまだ読出されてい
ない最も古いデータが格納された最旧アドレスを管理す
るとともに、既にデータが読出され空領域として解放さ
れた領域の範囲を繋がりのない領域に整理してその領域
が解放された順に管理し、新たにデータが読出された領
域を解放する際、前記最旧アドレスと新たな解放領域、
及び新たな解放領域と最も古く解放された領域との各々
の繋がりを調べ、先の最旧アドレスから解放領域が連続
する領域の最終アドレスの次アドレスまで最旧アドレス
を更新するとともに、先の最旧アドレスと新たな解放領
域との繋がりがない場合には、新たな解放領域と最も古
く解放された領域との繋がりを調べて、繋がりのあると
きには繋がった全領域として、繋がりのないときには新
たな領域として解放領域の管理を行なうバッファメモリ
管理機能を備えたことにより、管理対象となるバッファ
メモリの全領域を比較検査する必要がなく、高速の一次
元的なバッファメモリ管理が実現できる。
第1図は本発明の一実施例を実現するための構成要素を
示すブロック図、第2図乃至第6図はそれぞれ上記実施
例に於ける動作説明図、第7図は上記実施例の処理フロ
ーを示す図である。 1・・・CPU、2・・・バッファメモリ、2s・・・
先頭アドレス保持部、2E・・・最終アドレス保持部、
3・・・バッフ1メモリ、BTM・・・最旧アドレスレ
ジスタ、IP・・・インプットポインタ、○P・・・ア
ウトプットポインタ。
示すブロック図、第2図乃至第6図はそれぞれ上記実施
例に於ける動作説明図、第7図は上記実施例の処理フロ
ーを示す図である。 1・・・CPU、2・・・バッファメモリ、2s・・・
先頭アドレス保持部、2E・・・最終アドレス保持部、
3・・・バッフ1メモリ、BTM・・・最旧アドレスレ
ジスタ、IP・・・インプットポインタ、○P・・・ア
ウトプットポインタ。
Claims (1)
- データを最も古いデータから順に一時的に保持し、保持
されたデータが要求に応じて読出されるバッファメモリ
の空領域を管理する方法に於いて、バッファメモリ上の
まだ読出されていない最も古いデータが格納された最旧
アドレスを管理するとともに、既にデータが読出され空
領域として解放された領域の範囲を繋がりのない領域に
整理してその領域が解放された順に管理し、新たにデー
タが読出された領域を解放する際、前記最旧アドレスと
新たな解放領域、及び新たな解放領域と最も古く解放さ
れた領域との各々の繋がりを調べ、先の最旧アドレスか
ら解放領域が連続する領域の最終アドレスの次アドレス
まで最旧アドレスを更新するとともに、先の最旧アドレ
スと新たな解放領域との繋がりがない場合には、新たな
解放領域と最も古く解放された領域との繋がりを調べて
、繋がりのあるときには繋がつた全領域として、繋がり
のないときには新たな領域として解放領域の管理を行な
うことを特徴としたバッファメモリ管理方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61179122A JPS6336348A (ja) | 1986-07-30 | 1986-07-30 | バツフアメモリ管理方法 |
US07/079,163 US4864495A (en) | 1986-07-30 | 1987-07-29 | Apparatus for controlling vacant areas in buffer memory in a pocket transmission system |
KR1019870008304A KR880002335A (ko) | 1986-07-30 | 1987-07-30 | 수신된 패킷을 기억하는 버퍼 메모리를 갖는 패킷 교환 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61179122A JPS6336348A (ja) | 1986-07-30 | 1986-07-30 | バツフアメモリ管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6336348A true JPS6336348A (ja) | 1988-02-17 |
JPH0517584B2 JPH0517584B2 (ja) | 1993-03-09 |
Family
ID=16060384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61179122A Granted JPS6336348A (ja) | 1986-07-30 | 1986-07-30 | バツフアメモリ管理方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US4864495A (ja) |
JP (1) | JPS6336348A (ja) |
KR (1) | KR880002335A (ja) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8613069D0 (en) * | 1986-05-29 | 1986-07-02 | Univ Manchester | Parallel storage allocation |
US5335325A (en) * | 1987-12-22 | 1994-08-02 | Kendall Square Research Corporation | High-speed packet switching apparatus and method |
US5341483A (en) * | 1987-12-22 | 1994-08-23 | Kendall Square Research Corporation | Dynamic hierarchial associative memory |
US5822578A (en) * | 1987-12-22 | 1998-10-13 | Sun Microsystems, Inc. | System for inserting instructions into processor instruction stream in order to perform interrupt processing |
US5761413A (en) * | 1987-12-22 | 1998-06-02 | Sun Microsystems, Inc. | Fault containment system for multiprocessor with shared memory |
US5282201A (en) * | 1987-12-22 | 1994-01-25 | Kendall Square Research Corporation | Dynamic packet routing network |
US5055999A (en) | 1987-12-22 | 1991-10-08 | Kendall Square Research Corporation | Multiprocessor digital data processing system |
JP2745521B2 (ja) * | 1988-02-23 | 1998-04-28 | 株式会社日立製作所 | フレーム送信方法 |
US5303236A (en) * | 1988-08-26 | 1994-04-12 | Hitachi, Ltd. | Signalling apparatus for use in an ATM switching system |
JPH02117243A (ja) * | 1988-10-27 | 1990-05-01 | Toshiba Corp | パケット通信装置 |
US5047927A (en) * | 1988-10-28 | 1991-09-10 | National Semiconductor Corporation | Memory management in packet data mode systems |
NL8900640A (nl) * | 1989-03-16 | 1990-10-16 | At & T & Philips Telecomm | Werkwijze voor het in atd (asynchronous time division) overdragen van datapakketten en een inrichting voor toepassing van deze werkwijze. |
US5687396A (en) * | 1989-12-04 | 1997-11-11 | Canon Kabushiki Kaisha | Data buffer apparatus with interrupted transmission/reception |
US5729708A (en) * | 1989-12-04 | 1998-03-17 | Canon Kabushiki Kaisha | Portable data buffer apparatus with manually controlled reception/transmission |
US5315708A (en) * | 1990-02-28 | 1994-05-24 | Micro Technology, Inc. | Method and apparatus for transferring data through a staging memory |
WO1991013397A1 (en) * | 1990-02-28 | 1991-09-05 | Sf2 Corporation | A method and apparatus for transferring data through a staging memory |
US5048013A (en) * | 1990-04-06 | 1991-09-10 | At&T Bell Laboratories | Transmission congestion control method and apparatus |
US5130986A (en) * | 1990-04-27 | 1992-07-14 | At&T Bell Laboratories | High speed transport protocol with two windows |
US5261059A (en) * | 1990-06-29 | 1993-11-09 | Digital Equipment Corporation | Crossbar interface for data communication network |
US5313582A (en) * | 1991-04-30 | 1994-05-17 | Standard Microsystems Corporation | Method and apparatus for buffering data within stations of a communication network |
DE69130392T2 (de) * | 1991-07-10 | 1999-06-02 | Ibm | Hochgeschwindigkeitspufferverwaltung |
US5313647A (en) * | 1991-09-20 | 1994-05-17 | Kendall Square Research Corporation | Digital data processor with improved checkpointing and forking |
CA2078315A1 (en) * | 1991-09-20 | 1993-03-21 | Christopher L. Reeve | Parallel processing apparatus and method for utilizing tiling |
US5189671A (en) * | 1991-12-20 | 1993-02-23 | Raynet Corporation | Apparatus and method for formatting variable length data packets for a transmission network |
US5303347A (en) * | 1991-12-27 | 1994-04-12 | Digital Equipment Corporation | Attribute based multiple data structures in host for network received traffic |
GB9209840D0 (en) * | 1992-05-07 | 1992-06-24 | Int Computers Ltd | Data buffering mechanism |
US5289470A (en) * | 1992-12-14 | 1994-02-22 | International Business Machines Corp. | Flexible scheme for buffer space allocation in networking devices |
US6389032B1 (en) * | 1999-02-11 | 2002-05-14 | International Business Machines Corporation | Internet voice transmission |
US6401144B1 (en) * | 1999-02-26 | 2002-06-04 | Intel Corporation | Method and apparatus for managing data transfers between peripheral devices by encoding a start code in a line of data to initiate the data transfers |
JP3580723B2 (ja) * | 1999-04-27 | 2004-10-27 | 沖電気工業株式会社 | 受信バッファ制御方法及び音声パケット復号装置 |
JP3285333B2 (ja) | 1999-05-14 | 2002-05-27 | 松下電器産業株式会社 | バス転送装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5564682A (en) * | 1978-11-09 | 1980-05-15 | Fujitsu Ltd | Buffer block return control system |
JPS5696337A (en) * | 1979-12-28 | 1981-08-04 | Fujitsu Ltd | Resource control system |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1548401A (en) * | 1975-10-08 | 1979-07-11 | Plessey Co Ltd | Data processing memory space allocation and deallocation arrangements |
JPS57153359A (en) * | 1981-03-18 | 1982-09-21 | Ibm | Data processing system with common memory |
US4530049A (en) * | 1982-02-11 | 1985-07-16 | At&T Bell Laboratories | Stack cache with fixed size stack frames |
US4569034A (en) * | 1982-07-19 | 1986-02-04 | International Business Machines Corporation | Method and apparatus which allows the working storage to be reconfigured according to demands for processing data input |
GB8328396D0 (en) * | 1983-10-24 | 1983-11-23 | British Telecomm | Multiprocessor system |
DE3475152D1 (en) * | 1984-05-23 | 1988-12-15 | Ibm | Buffer device used in a voice transmission network |
US4758944A (en) * | 1984-08-24 | 1988-07-19 | Texas Instruments Incorporated | Method for managing virtual memory to separate active and stable memory blocks |
US4748618A (en) * | 1986-05-21 | 1988-05-31 | Bell Communications Research, Inc. | Telecommunications interface |
-
1986
- 1986-07-30 JP JP61179122A patent/JPS6336348A/ja active Granted
-
1987
- 1987-07-29 US US07/079,163 patent/US4864495A/en not_active Expired - Fee Related
- 1987-07-30 KR KR1019870008304A patent/KR880002335A/ko not_active Application Discontinuation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5564682A (en) * | 1978-11-09 | 1980-05-15 | Fujitsu Ltd | Buffer block return control system |
JPS5696337A (en) * | 1979-12-28 | 1981-08-04 | Fujitsu Ltd | Resource control system |
Also Published As
Publication number | Publication date |
---|---|
JPH0517584B2 (ja) | 1993-03-09 |
US4864495A (en) | 1989-09-05 |
KR880002335A (ko) | 1988-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6336348A (ja) | バツフアメモリ管理方法 | |
WO2001093046A1 (en) | Dma doorbell | |
JP2002521964A (ja) | ブリッジモジュール | |
JPH05250305A (ja) | データ転送制御方式 | |
US20080147906A1 (en) | DMA Transferring System, DMA Controller, and DMA Transferring Method | |
EP1296249A2 (en) | Method and controller for copying chain buffers from a system memory to a local memory | |
CN112214434A (zh) | 处理电路、信息处理设备和信息处理方法 | |
US7555624B2 (en) | Program, an apparatus and a method for guaranteeing a data storage order in an ISAM file | |
JP2000040057A (ja) | 計算機システム、バッファ制御装置及び転送方法 | |
JP2023182276A (ja) | 電子制御装置 | |
CN116931831A (zh) | 对象状态更新方法、装置、计算机设备及存储介质 | |
JP2743849B2 (ja) | 更新バッファ管理装置 | |
JP2835667B2 (ja) | パケット交換装置及びパケット交換網 | |
JPH0237425A (ja) | ディジタル信号処理装置 | |
JPH08123718A (ja) | バッファ制御装置 | |
JP2833395B2 (ja) | 受信データ組み立て方式 | |
JPH0637806A (ja) | 通信トレース情報処理装置 | |
JPH10116245A (ja) | Dma制御装置 | |
JP3242599B2 (ja) | 演算機能付き情報転送装置 | |
JP3708602B2 (ja) | コネクション管理方法 | |
JPH04148247A (ja) | ランダムアクセス可能な記憶装置の自動ファイル最適化処理方式 | |
JPS62145443A (ja) | メモリ解放処理高速化方式 | |
JPH0272449A (ja) | キャッシュメモリの自動無効化制御回路 | |
JPH04312157A (ja) | データ転送装置 | |
JPH01159751A (ja) | 端末装置制御方式 |