JPH0670785B2 - ポインタ動的制御によるバツフアメモリ拡張方法 - Google Patents

ポインタ動的制御によるバツフアメモリ拡張方法

Info

Publication number
JPH0670785B2
JPH0670785B2 JP59100531A JP10053184A JPH0670785B2 JP H0670785 B2 JPH0670785 B2 JP H0670785B2 JP 59100531 A JP59100531 A JP 59100531A JP 10053184 A JP10053184 A JP 10053184A JP H0670785 B2 JPH0670785 B2 JP H0670785B2
Authority
JP
Japan
Prior art keywords
buffer memory
pointer
data
storage
expansion
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 - Lifetime
Application number
JP59100531A
Other languages
English (en)
Other versions
JPS60245056A (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.)
Hitachi Ltd
NTT Inc
Original Assignee
Hitachi Ltd
Nippon Telegraph and Telephone Corp
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 Hitachi Ltd, Nippon Telegraph and Telephone Corp filed Critical Hitachi Ltd
Priority to JP59100531A priority Critical patent/JPH0670785B2/ja
Publication of JPS60245056A publication Critical patent/JPS60245056A/ja
Publication of JPH0670785B2 publication Critical patent/JPH0670785B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00—Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02—Addressing or allocation; Relocation
    • G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Memory System (AREA)

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明はポインタ動的制御によるバッファメモリの拡張
方法に関するものである。特に、ポインタを使用してバ
ッファメモリ内のデータの読出し、格納を行う機能を有
する装置の動作を停止させずに、バッファメモリを拡張
(増設)する手段に関する。
〔発明の背景〕
一般に、バッファメモリにポインタの動的制御を適用す
る場合、従来技術ではバッファメモリのサイズは、シス
テムにおいて固定とされている。すなわち、記憶領域が
固定されたシステムとなっている。
また、システム対応として、バッファメモリサイズを可
変にする場合には、ポインタの動的制御は適用できず、
次の様な静的制御を適用している。すなわち、同一サイ
ズのバッファメモリを複数個(2面以上)用意し、それ
ぞれのバッファメモリの始端から終端まで、データの格
納・読み出しを各バッファメモリ毎に面によって制御す
る方法である。例えば、データを格納する際、ある面の
バッファメモリが一杯になった時には、次面のバッファ
メモリへと格納動作を移すものである。
そのため、従来技術においては、システム対応の可変の
バッファメモリサイズを実現する場合、方式上必要とさ
れるバッファメモリサイズの少なくとも2倍のバッファ
メモリを用意する必要がある。したがって、従来技術で
は、取り扱うデータがトラフィックデータの様に多量に
なる場合、必要とされるバッファメモリが膨大化し、メ
モリ増加によるシステムの大型化、コスト増加等、実用
にそぐわなくなる等の欠点があった。
〔発明の目的〕
本発明は、上記の従来技術の欠点に鑑みなされたもの
で、多量のデータを取り扱い、かつシステム対応にその
データ量が異なる場合でも、それぞれのシステムに適し
たメモリサイズのバッファメモリを用意して、経済的な
システムを実現し、後日のシステムの拡張(増設)要求
にも、システム動作を停止させずに対応できる、融通性
のあるポインタ動的制御によるバッファメモリの拡張方
法を提供することを目的としている。
〔発明の概要〕
本発明のポインタ動的制御によるバッファメモリ拡張方
法は、操作者が与えるバッファメモリ拡張指示、メモリ
増設作業後のバッファメモリの面数データを受けて、格
納ポインタと読出ポインタのポインタデータを取出し、
格納ポインタと読出ポインタの順序性を判断し、格納ポ
インタが読出ポインタより先(データが格納、読出され
ていく方向を「先」とする)を示している場合には、与
えられたバッファメモリの面数のデータを、予め設けら
れている面数管理データ部に格納する。そして、格納ポ
インタおよび読出ポインタが備える面指定部(両ポイン
タが存在するバッファメモリ面を指定する)が取りうる
値の幅が、面数管理データ部が格納する値となるように
拡張処理する。また、格納ポインタが読出ポインタより
後を示している場合には、格納ポインタが読出ポインタ
より先を示すようになるまで前記拡張処理を待ち、その
後バッファメモリの前記拡張処理を行うことを特徴とし
ている。
〔発明の実施例〕
以下添付の図面を参照して、実施例により、さらに詳細
に本発明について説明する。
第1図は、本発明にかかるポインタ動的制御によるバッ
ファメモリの拡張方法におけるポインタ類とデータとバ
ッファメモリの使用方法を説明するためのデータ関連図
である。同図に示す様に、バッファメモリ10は、固定長
サイズのデータを、「2のn乗」個格納できる面を3個
有しており、各面101,102,103に加えて、破線で示す仮
想面104,105,106…が設けられた構成になっている。か
かる仮想面は、ポインタの動作によりデータの格納、読
出し可能な論理的なバッファとして機能する。
そして、面数管理データ1は、システム対応のバッファ
メモリ10の実装面数を示すデータであり、本実施例の場
合、現在、図から分かるように3面のバッファメモリが
設けられているので、数値3が与えられている。
また、格納ポインタ2は、バッファメモリ内のデータ格
納アドレスを示すポインタであって、当該ポインタが示
すバッファメモリ面を示す面指定部と、面指定部にて指
定されるバッファ面内での相対アドレスを示す管理部を
有して構成される。
同様に、読出ポインタ3は、バッファメモリ内のデータ
読出しアドレスを示すポインタであって、当該ポインタ
が示すバッファメモリ面を示す面指定部と、面指定部に
て指定されるバッファ面内での相対アドレスを示す管理
部を有して構成される読出ポインタである。また、読出
ポインタ3は、ポインタで示すアドレスに存在するデー
タを順次読み出して、用済になったデータを消去して行
くのに使用される。そして、前述の通り、格納ポインタ
2と読出ポインタ3は、バッファメモリ10の一面毎の
「2のn乗」個のデータのどのデータを指しているかを
示す相対アドレスを保持する管理部(一面の管理部)を
有するポインタであり、かつ、面指定部は、面数を計数
する機能を有する面数カウンタとして動作し、破線で示
した仮想面104,105,106…を無限に計数する機能を有し
ている。
例えば、第1図に示す通り、読出ポインタ3は、第3面
である面103を示しているので、面指定部には、「103」
なる値が保持されている。
以上に説明した様に、バッファメモリ10にデータを順序
格納し、格納したデータを順序読み出し、消去して動作
を行うことから、格納ポインタ2による指定内容は、読
出ポインタ3による指定内容よりも先(データを格納、
読出していく方向を「先」とする)を示すようになって
おり、かつバッファメモリ10上において格納ポインタ2
の指定内容が読出ポインタ3の指定内容を追越す、すな
わち先になることはできない構成になっている。
第1図いおいて、バッファメモリ10には、読出ポインタ
3の示す面103内の位置からデータが格納され、面103の
終端に到達すると、続いて面101の始端に戻り、さらに
面102の格納ポインタ2の示す直前の位置までデータが
格納されていることを示している。
これは、格納ポインタ2と読出ポインタ3のそれぞれの
面指定部の内容を面数管理データ1の示す値(第一図で
は「3」)で割算した結果の余りのデータを、比較判定
することにより、バッファメモリ10上で連続してデータ
が格納されているか(ポインタ2,3が正順序)、図示す
る様に、物理空間で、不連続に格納されているか(ポイ
ンタ2,3が反転順序)を検出することができる。
ここで、図示したように、論理的に構成される仮想面
と、両ポインタの示す内容を保持する無限カウンタを想
定した場合、「正順序」とは、格納ポインタ2の示す値
が、読出ポインタ3の示す値より大きな場合を言い、
「反転順序」とは、この逆の場合を言う。
さて、現在3面有するメモリバッファを、物理的に拡張
(増設)し、4面以上にすることを考える。かかるメモ
リバッファの拡張作業は、操作者が行う。この場合、第
1図に示すようなメモリバッファを備えるシステムの動
作を停止させずに、前記作業を行い、新たに拡張された
メモリバッファに対応して、今まで説明してきた、ポイ
ンタによるデータ格納、読出動作を円滑に行わせる必要
がある場合が多い。例えば、第1図に示すようなメモリ
バッファを備えるシステムが各種の装置と接続されてお
り各種の装置と、休むことなくデータの送受信を行う場
合等である。このような場合にもメモリバッファの拡張
に対応して、円滑に、ポインタによるデータ格納、読出
動作を行わせる、すなわち、メモリ増設作業の存在を意
識させずに、速やかに、データ格納、読出動作を継続さ
せるバッファメモリ拡張方法が本発明の主要部となる。
まず、バッファメモリ10の面数の拡張処理を行う際に、
格納ポインタ2と読出ポインタ3が正順序の場合には、
即拡張可能であるが、反転順序の場合には、拡張しては
ならない。拡張を実行すると、データを格納していない
仮想面104、105…まで、面数管理データ1が示す拡張値
に相当する面数だけデータが格納されていると誤解釈さ
れてしまうからである。そこで、反転順序の場合には、
データの格納および読出し・消去が進行して、格納ポイ
ンタ2と読出ポインタ3のバッファメモリ10上での動的
順序性が正順序になるまで、バッファメモリ10の拡張処
理を実行しない様にする必要がある。すなわち、バッフ
ァ領域の端面が空いているか否かを判断してから、拡張
処理を実行する必要がある。
なお、拡張処理を行う旨の指示は操作者がこれを与え、
このとき、増設後のバッファメモリの面数も与えてお
く。また、拡張処理とは、前記与えられた拡張後のバッ
ファメモリの面数を予め設けてある面数管理データ部に
格納し、該面数管理データ部の示す値が、前記格納ポイ
ンタおよび前記読出ポインタの備える面指定部が取りえ
る値の幅の最大値となるようにする処理である。
第2図は、本発明にかかるポインタ動的制御によるバッ
ファメモリの拡張方法の概略を示すフローチャートであ
る。同図において、操作者が与えたコマンド等によりバ
ッファメモリ拡張指示がなされた場合、バッファメモリ
拡張登録プログラムが起動され、バッファメモリ拡張表
示4が設定される。バッファメモリ拡張表示4の設定
は、例えば、システムに備えられたフラグのオン、オフ
により、実現できる。その後、データ格納処理プログラ
ムが起動され、格納ポインタ2と読出ポインタ3のポイ
ンタデータが取出される。次に、このポインタデータに
基づいて、格納ポインタ2と読出ポインタ3の順序性が
判定され、反転順序の場合には拡張を実施せず、従来の
格納個所算出ルーチン(データ格納場所、すなわち、格
納ポインタが示す内容を算出するルーチンである、以下
同じ)へ引き継ぐ。正順序の場合には、バッファメモリ
拡張表示4が設定されているか否かを判定し、設定され
ていない場合には従来の格納個所算出ルーチンへ引き継
ぐ。バッファメモリ拡張表示4が設定されている場合
は、別途、バッファメモリの拡張作業により拡張された
バッファメモリの大きさに対応して、操作者によって指
示された面数値にもとづき、面数管理データ1の内容を
書替える。また、格納ポインタ2および読出ポインタ3
の面指定部は、面数管理データ1の内容に対応した値に
なるように、具体的には、両ポインタが備える面指定部
がとりえる値の幅の最大値が、面数管理データ1が示す
値になるように設定する拡張処理を行う。
さらに、拡張処理が終了したため、バッファメモリ拡張
表示4をクリアする処理も行っておく。その後、格納個
所算出ルーチン、データ格納ルーチン(実際に、バッフ
ァメモリにデータを格納するルーチンである)、格納ポ
インタ更新ルーチン(格納動作により、格納ポインタ内
容を更新するルーチンである)へ順次引き継がれ、新し
く設定された、面数管理データ1と格納ポインタ2と読
出ポインタ3によって、新しく拡張されたバッファメモ
リ上でデータの格納・読出し・消去がくり返し実行され
る。
以上の説明から明らかな様に、本実施例によれば、シス
テムの動作を停止させることなく、メモリ容量の拡張
(増設)作業を可能にし、拡張(増設)後の新たなメモ
リ容量に対応した、ポインタによるデータの格納、読出
処理を、ポインタ動的制御を使用したバッファメモリの
拡張処理によって実現可能となり、また、同様の手段を
用いてバッファメモリの縮小も実現できることは言うま
でもない。
〔発明の効果〕
本発明によれば、多量のデータを取り扱うシステムにお
いて、ポインタ動的制御を採用し、システム規模に適合
するバッファメモリのサイズ拡張を、システム動作を停
止させることなく円滑に行える。操作者は、必要に応じ
てバッファメモリの増設を行えば良く、システム構築時
から不要なメモリを備える必要がないため、経済性も大
幅に向上する。
【図面の簡単な説明】
第1図は本発明のポインタ動的制御によるバッファメモ
リ拡張方法におけるポインタ類とバッファメモリの使用
方法を説明するためのデータ関連図、第2図は本発明の
ポインタ動的制御によるバッファメモリ拡張方法の概略
を示すフローチャートである。 1……面数管理データ、2……格納ポインタ、3……読
出ポインタ、4……バッファメモリ拡張表示、10……バ
ッファメモリ、101〜103……面、104,105,106……仮想
面
───────────────────────────────────────────────────── フロントページの続き (72)発明者 金 克能 東京都千代田区内幸町1丁目1番6号 日 本電信電話公社内 (72)発明者 佐野 幸男 東京都千代田区内幸町1丁目1番6号 日 本電信電話公社内 (56)参考文献 特開 昭53−63833(JP,A)

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】バッファメモリへのデータ格納アドレスを
    示す格納ポインタ、および、バッファメモリからのデー
    タの読出アドレスを示す読出ポインタの両ポインタによ
    り、複数面備えたバッファメモリへのデータの格納、読
    出を行う機能を有する情報処理システムの前記バッファ
    メモリの拡張方法であって、 前記両ポインタに、バッフアメモリ面を示す面指定情報
    と、面指定情報にて指定されるバッファ面内での相対ア
    ドレス情報をもたせ、 与えられたバッファメモリの拡張指示および拡張後のバ
    ッファメモリの面数とを受けつけ、 前記拡張指示を受けて、 両ポインタの内容を取り出し、両ポインタの順序性を判
    断し、 データが格納、読出される方向を先方向とすると、 前記格納ポインタが、前記読出ポインタより先を示して
    いる場合には、前記与えられた拡張後のバッファメモリ
    の面数の値が、前記格納ポインタおよび前記読出ポイン
    タのもつ面指定情報が取り得る値の幅の最大値となるよ
    うにし、 逆に、前記格納ポインタが、前記読出ポインタより後を
    示している場合には、前記格納ポインタが、前記読出ポ
    インタより先を示すようになるまで待って、前記与えら
    れた拡張後のバッファメモリの面数の値が、前記格納ポ
    インタおよび前記読出ポインタのもつ面指定情報が取り
    得る値の幅の最大値となるようにすることを特徴とする
    ポインタ動的制御によるバッファメモリ拡張方法。
JP59100531A 1984-05-21 1984-05-21 ポインタ動的制御によるバツフアメモリ拡張方法 Expired - Lifetime JPH0670785B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59100531A JPH0670785B2 (ja) 1984-05-21 1984-05-21 ポインタ動的制御によるバツフアメモリ拡張方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59100531A JPH0670785B2 (ja) 1984-05-21 1984-05-21 ポインタ動的制御によるバツフアメモリ拡張方法

Publications (2)

Publication Number Publication Date
JPS60245056A JPS60245056A (ja) 1985-12-04
JPH0670785B2 true JPH0670785B2 (ja) 1994-09-07

Family

ID=14276540

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59100531A Expired - Lifetime JPH0670785B2 (ja) 1984-05-21 1984-05-21 ポインタ動的制御によるバツフアメモリ拡張方法

Country Status (1)

Country Link
JP (1) JPH0670785B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2752902B2 (ja) * 1994-05-31 1998-05-18 甲府日本電気株式会社 ベクトル処理装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5363833A (en) * 1976-11-18 1978-06-07 Nippon Telegr & Teleph Corp <Ntt> Cyclic buffer receiving system

Also Published As

Publication number Publication date
JPS60245056A (ja) 1985-12-04

Similar Documents

Publication Publication Date Title
US6212543B1 (en) Asymmetric write-only message queuing architecture
JPS62231382A (ja) イメ−ジ処理方法及び装置
JPS6263333A (ja) 画面情報制御方式
EP0787326B1 (en) System and method for processing of memory data and communication system comprising such system
JPH07160569A (ja) メモリ制御装置
JPH0812643B2 (ja) ページ退避/復元装置
JPS60245056A (ja) ポインタ動的制御によるバツフアメモリ拡張方法
JP2533958B2 (ja) デ―タ先行セット装置
JPH0833869B2 (ja) データ処理装置
JP2735400B2 (ja) 非同期入出力制御方式
JPS6125168B2 (ja)
JP3135547B2 (ja) データ転送制御方法
JP2507399B2 (ja) デ―タベ―ス装置
JPS644215B2 (ja)
JPH06103217A (ja) データ転送装置
JPH04333129A (ja) 補助記憶装置へのデータ書き込み方法
JPS6126684B2 (ja)
JPS5985148A (ja) 表示付きポケツトベルにおけるデ−タ記憶方式
JPH054695B2 (ja)
JPH0588983A (ja) チヤネル装置の動的アドレス変換方法
JPH0461373B2 (ja)
JPH0376502B2 (ja)
JPH0758979B2 (ja) 蓄積型論理宛先のデータ管理処理方式
JPH05128004A (ja) マイグレーシヨン処理方式
JPH04163664A (ja) 分散メモリ型の並列計算機システム