JPS61279968A - パツフア管理方法 - Google Patents

パツフア管理方法

Info

Publication number
JPS61279968A
JPS61279968A JP60121991A JP12199185A JPS61279968A JP S61279968 A JPS61279968 A JP S61279968A JP 60121991 A JP60121991 A JP 60121991A JP 12199185 A JP12199185 A JP 12199185A JP S61279968 A JPS61279968 A JP S61279968A
Authority
JP
Japan
Prior art keywords
buffer
management
buffers
small
unit
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
Application number
JP60121991A
Other languages
English (en)
Inventor
Yoshiko Miyamoto
美子 宮本
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP60121991A priority Critical patent/JPS61279968A/ja
Publication of JPS61279968A publication Critical patent/JPS61279968A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔概要〕 バッファ管理側で異なるサイズの多種類のバッファを管
理するようにし、要求側に貸渡したバッファの残り(未
使用領域)が小サイズのバッファに相当すれば、その未
使用領域をバッファ管理側に返却させ、管理側で小バッ
ファとして管理させるようにして、バッファの有効利用
を行う。
〔産業上の利用分野〕
本発明はバッファ管理方法に係り、特に要求部(バッフ
ァ使用側)に渡したバッファにおける未使用領域を別個
のバッファとして管理できるようにしたバッファ管理方
法に関する。
予め用意した複数のバッファを、複数の要求部によって
利用する場合、これら複数バッファと複数要求部との割
当てを任意に変更させ、いわゆるバッファの共用を制御
するためのバッファ管理部が設けられる。
例えば通信制御装置においては、複数の端末(回線)或
いはホストコンピュータ(以下単にホストという)との
送受信データを一時格納するために、 メモリ上に複数のバッファが用意される。そしてこのバ
ッファを格納端末或いはホストに一義的に割当てること
なく、バッファ使用の要求(バッファ要求)のあった都
度未使用(空)のバッファを貸渡す制御を行うためのバ
ッファ管理部が設けられる。
このように、データ格納用等のためにバッファを割当て
る装置においては、このバッファのより有効な管理方法
が望まれている。
〔従来の技術〕
上述のごとく予め用意されたバッファを管理する装置に
おいては、従来、各バッファの使用状況を管理するもの
である。つまり、各バッファのうち空のバッファの個数
及び位置情報を管理するものである。そしてバッファ要
求があった際、管理している空のバッファの位置情報を
参照して、その中の所定のバッファを貸渡すものである
〔発明が解決しようとする問題点〕
しかしながら従来のバッファ管理においては、予め定め
られたサイズのバッファを、順次バッファ要求があった
毎に要求部側に貸渡すものである。
そして、当該バッファの使用が終われば、管理部側へ返
却されるものであった。
ところが一方、バッファを使用している状況をみると、
バッファに格納(書込む)するデータの量は大小さまざ
まである。にも拘らず、一定サイズのバッファが貸渡さ
れるものであった。とくに可変長データの格納等のため
にバッファを用いる場合、このような個々のバッファの
使用率(バッファサイズに対する実際の格納データ量の
比率)の格差は顕著である。
本発明の目的は、上述した点に鑑みてなされたものであ
り、一旦貸渡したバッファにおける未使用領域(空き領
域)をも有効に利用することが可能となるバッファ管理
方法を提供するにある。
〔問題点を解決するための手段〕
第1図は本発明の原理を示す図である。
図において、バッファ管理部1におけるバッファ管理制
御部10は、サイズの異なる複数種(図では2種)のバ
ッファをプールするプール部11゜12を有する。つま
り、プール部12には、プール部11にプールされるバ
ッファ(以下大バッファという)よりサイズ(バッファ
容りの小さい)呟ノファ (以下単バッファという)が
プールされている。このプール部11.12には、例え
ば未使用のバッファのみがプール(リンク)されている
。 そして、要求部2よりバッファ要求があると、管理
部1がこれを受付ける。この要求により、管理制御部1
0は大・小いずれかのバッファを要求部2に貸出す。貸
出すバッファは大バッファと一義的に設定しておいても
よく、又は要求部2より指定するようにしても良い。
貸出したバッファ11Bは、要求部2にて使用される。
例えば当該バッファIIBにデータを格納する処理を行
う。これによって、例えば斜線で示した領域11Cが使
用される。
データの格納処理が終わると、そのバッファ11Bにお
ける未使用領域1idOサイズをチェックする。そして
、この領域lidが、管理部1で管理する小バッファに
担当するサイズ(図では破線より下の領域)を有する場
合、バッファ11Bの小バッファ担当部分を管理部1へ
返却する。
管理制御部10では、この返却されたバッファ部分を小
バッファのプール部12に未使用(空き)のバッファと
してプールする。そして、他のバッファ要求を受付けた
場合に、貸渡せるように管理するものである。
尚、上述中、貸出したバッファIIBの未使用領域li
dのサイズ判別は、要求部2或いはバッファ管理部1の
いずれで行っても良いことは云うまでもない。
〔作用〕
以上の構成により、一旦貸渡したバッファの実際の使用
状態(データ格納量)に応じて、未使用領域のサイズが
大きい場合にはその領域を、他の独立したバッファとし
て管理できる。
特に、要求部2がバッファ要求を行う時点で当該バッフ
ァに格納するデータ量が不明の場合に有効である。例え
ば回線からの受信データをバッファに順次格納する場合
、処理速度向上のため、その受信データの量(レングス
)を解析することなしにバッファへの格納が行われる。
このような場合、データ量に応じて、余剰のバッファ領
域を独立したバッファとして使用できる。
以下、実施例を用いて本発明を詳述する。
〔実施例〕
第2図乃至第5図は、いずれも本発明の実施例を示す図
であり、第2図は本発明を通信制御装置に通用した場合
の実施例を示す図である。
第3図は第2図のバッファ管理部31の構成を示す図°
、第4図(a)〜(Q)はバッファ管理部31の動作を
示すフローチャート、第5[!Iはバッファ要求部の動
作を示すフローチャートである。
第2図を参照するに、通信制御装置は、主制御部30の
配下にチャネル制御部33及び通信制御部32が設けら
れる。チャネル制御部33は、ホストとのデータ授受を
行うものである。一方、通信制御部32は回線制御部3
5を介して複数の端末等のネットワークソースとのデー
タ授受を司るものである。
また、通信制御装置のメモリ34には、プログラム等の
格納エリアの他、複数のバッファB(。
Bz、 −・、Bnから成るバッファ領域4oが予め割
当てられている。
バッファ管理部31は、この各バッファBl  。
Bz  −・のうちの空きバッファを、チャネル制御部
33或いは通信制御部32からのバッファ要求に基いて
貸渡す制御機能を有する。即ち本実施例では第1TI!
Jに示した要求部2と、これら各制御部32.33とが
対応する。
第3図には、大小2つのバッファを管理する管理部36
.37を示す。これらの管理部36,37が、メモリ3
4のバッファ領域40におけるバッファの使用状況に応
じて、未使用(空き)バッファのアドレス情報及びその
個数等を管理する点は従来と同様である。
本実施例では、さらにこのアドレス情報及び空きバッフ
ァ個数に加えて大/小バッファを示すバッファフラグB
F、小バフファにおける大バッファ内での位置情報BA
DD、及びバッファが使用中か使用中でないかを示す使
用フラグUFを、それぞれのバッファについて管理する
第3図より明らかな如く、本実施例では大バッファは第
2図に示したB、 、 B2 、  ・−・Bnのサイ
ズを持つ。また小バッファは大バッファのAのサイズを
持つよう設定される。この大バッ1−BlB2 +  
−・・のサイズは、例えば従来から用いられているサイ
ズと同様と考えてよい。
換言すれば、小バッファプール管理部37、各大バッフ
ァB+ r Bz *  −・を2分割した単位のバッ
ファ管理を行う。
第3図の例えでは、大バッファプール管理部36に大バ
ッファB+  、  Bz、 −・が未使用バッファと
してプールされている。一方小バッファ管理部37には
、大バッファB3 * B+ 、  ・−・における各
小バッファ領域Bffl’ 、B+2.  ・・−がプ
ールされている。斜線で示す小バッファ領域B32.B
刊は、既に使用されていることを示す。
尚、各管理部36.37が管理するパフファフラブBF
は、返却されたバッファの大小を識別するために用いら
れる。また使用フラグUFは、小バッファのプールへの
返却があった際、この小バッファとともに大バッファを
構成する他方の小バッファが使用中であるか否かをチェ
ックするために必要である。もし、他方の小バッファが
未使用(プールにすでにつながっている)の場合、その
他方の小バッファをプールから外し、返却された小バッ
ファとともに1つの大バッファとして管理部36へ返却
することになる。
また位置情報BADDは、上述した小バッファと対の関
係にある(大バッファを構成する)他方のバッファを識
別するために必要となるものである。
以下第4図(a)〜(C)及び第5図のフローチャート
に基いて、バッファ管理に関連する実施例装置の動作を
説明する。
まず要求部、例えば通信制御部32が、回線よりデータ
を受信したとすると、バッファ管理部31ヘバツフア要
求を行う。この時、要求するバッファのサイズ(本例で
は大小の2種類のいずれか)及び個数も指定する。
尚、この場合のバッファサイズの指定は、受信したデー
タ長を把握して、そのレングスに応じたサイズを指定す
るものではない、例えばデータ受信を行った回線毎、或
いは、端末毎に発したデータ要求の種別に応じて、予め
大まかなバッファサイズの設定を行っているものである
。換言すれば、受信したデータが持つ可能性のある最大
のレングスを格納できるサイズのバッファを指定するも
のである。
この要求に応答して、バッファ管理部31は第4図(a
)に示す如き動作を行う。
つまり、要求のあったバッファサイズを判別し、判別結
果に従って大小いずれかの管理部36,37にプールさ
れているバッファを外す。具体的には、管理部36.3
7においてプールから外すバッファに対応した使用フラ
グUPを立てて使用中である を表示する。そしてプー
ルされているバッファの個数を示すバッファ数カウンタ
をカウントダウンする。
これらの処理によって、プールから外したバッファを要
求側、この場合通信制御部32に渡すことになる。具体
的には、バッファ管理部31より、受信データを格納す
べきバッファアドレス(ポインタ情報)を復帰情報とし
て設定して、通信制御部へ通知する。またバッファ不足
等で要求に従えない場合は、その旨を要求側に通知する
第5図に示す如く、バッファを貸渡された通信制御部3
2は、このバッファ内に、受信したデータを格納する。
しかる後通信制御部32は、データを格納したバッファ
の未使用領域の大きさをチェックする。
つまり管理部31側で管理する小バッファのサイズより
大きな空き領域力乏あるか否かをチェックする。このチ
ェックにより、小バッファのサイズ以上の空きのあるバ
ッファと判断すると、通信制御部32はそのバッファの
ポインタを管理部31へ通知する。
この通知により、バッファ管理部31は第4図(C1に
示す如きバッファ分割処理を行う。
つまり、通知を受けたバッファの空き領域が小バッファ
サイズより大きいことを確認し、そのバッファを2つの
小バッファに分割する。そして分割したバッファについ
て、使用フラグUFをオフ(未使用)とし、バッファフ
ラグBFをオン(小バッファ表示)とし、更に位置情報
BADDを設定する。これにより、小バッファのプール
にっなかれることになる。即ち第3図に例示した如く、
バッファB4を分割し、小バッファ13+zを独立した
バッファとしてプールにつなぐ結果・となる。
第4図(b)は、バッファ管理部31におけるバッファ
返却時の動作を示すフローチャートである。
この場合のバッファ返却とは、従来から存在するもので
あり、要求側に渡したバッファが使用され、その使用が
終了した場合に行われる。例えば通信制御部32にて受
信データがバッファB5に格納されると、そのバッファ
B5 のデータが主制御部30の指示に基いてチャネル
制御部33によって読出されてホストへ送出される。こ
のチャネル制御部33のデータ読出しにより、バッファ
B5が使用終了となり、管理部31へ返却される。
従来のバッファ返却時の動作は、単に返却通知のあった
バッファを空きバッファとしてプールにつなげるもので
あった。しかるに本実施例では、返却されるバッファの
サイズ判別を行う。更に返却されたバッファが小バッフ
ァ(例えば第3図のバッファB+i )の場合、このバ
ッファと対になって大バッファを構成する他方の小バッ
ファ(第3図では小バッファB42)の使用状況を見る
。そして、この他方の小バッファが未使用であれば、今
回返却された小バッファとともに、1つの大バッファ(
上記例では大バッファB4)として大バッファプールに
つなぐ処理を行う。これらの場合も、管理部36.37
における各バッファ対応の管理情報(フラグBF、UF
)の設定が行われる。また各管理部36.37における
プール内のバッファ数カウンタも適宜更新される。
一方、返却されたものが大バッファの場合、そのバッフ
ァを大バッファブールにつなぐべく、バッファ数カウン
タのカウントアツプ等が行われる。
この動作は従来のバッファ返却動作とほぼ同様と考えて
良い。
このように本実施例では、バッファを大/小2種類のサ
イズで管理し、且つ一旦貸出したバッファの残り領域が
大きい場合に小バッファとして分割して独立した空きバ
ッファとして管理するようにしている。
このため、実際のバッファの使用状況に応じて、よりき
め細やかなバッファの管理が可能となる。
また要求部側から見れば、バッファの使用・返却時の動
作が従来とほぼ同様である。したがって、バッファ管理
部側のみを変更するのみで既存の装置、システムに通用
でき、その実用的な効果も大きい。
尚、本実施例では、バッファサイズを大小の2種類とし
たが、さらに任意サイズのバッファを管理する場合も、
上述の技術を適用できる。
〔発明の効果〕
以上のように本発明によれば、複数サイズのバッファを
管理し、且つ貸渡したバッファの使用状態に応じて、そ
のバッファの未使用領域を、また1つの空きバッファと
して管理できる。したがって、使用状態(格納データの
量等)に応じた、きめ細やかなバッファ管理が可能とな
り、がっバッファのより有効な利用が可能となる。
【図面の簡単な説明】
第1図は本発明の原理図、 第2図は本発明の一実施例を示す図、 第3図は実施例におけるバッファ管理部31の要部構成
例を示す図、 第4図(a)〜(C1は、このバッファ管理部31の動
作を示すフローチャート、 第5図は要求部の動作を示すフローチャート、である。 1.31−一・バッファ管理部、2・−・要求部、36
.37−・バッファプール管理部、°40−・バッファ
領域 不発明の原理図 第 1 図 本発明の一実施例を示す図 第2図 / 、”t 7ア管理部の要部上1戊1列を示す7第 
3 図 要4山そ生時の処理 ↓ F?ETtJFN ハ゛・777管理部の動作ブローチヤード第 4 図 
(a) ハ゛・ソファ返却時の処理 FE7LIR〜 ハ゛・・lファ管理部の動作フローチャート第 4 (
2) (b) バッファ仕官り処理 ↓ バ°ッファ管理部の動イ乍フローナヤ′−ト躬 4I!
l(C)

Claims (1)

  1. 【特許請求の範囲】 予め用意された複数のバッファの使用状況を管理するバ
    ッファ管理部(1)と、バッファの使用が必要となった
    ときにバッファ要求を行う要求部(2)とを有し、 前記バッファ管理部は、バッファ要求のあった要求部に
    対して未使用のバッファを貸渡すバッファ管理装置にお
    いて、 前記バッファ管理部に、それぞれサイズの異なる大小少
    なくとも2種類のバッファを管理する管理制御部(10
    )を設け、 前記要求部に貸渡したバッファが使用された後、このバ
    ッファにおける未使用領域のサイズが前記管理制御部の
    管理する小バッファのサイズ以上であるかを判別し、 前記未使用領域のサイズが小バッファのサイズ以上であ
    る場合に、この未使用領域における小バッファに相当す
    る領域を前記バッファ管理部に返却し、 前記管理制御部(10)は返却された領域を未使用の小
    バッファとして管理することを特徴とするバッファ管理
    方法。
JP60121991A 1985-06-05 1985-06-05 パツフア管理方法 Pending JPS61279968A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60121991A JPS61279968A (ja) 1985-06-05 1985-06-05 パツフア管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60121991A JPS61279968A (ja) 1985-06-05 1985-06-05 パツフア管理方法

Publications (1)

Publication Number Publication Date
JPS61279968A true JPS61279968A (ja) 1986-12-10

Family

ID=14824853

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60121991A Pending JPS61279968A (ja) 1985-06-05 1985-06-05 パツフア管理方法

Country Status (1)

Country Link
JP (1) JPS61279968A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06202936A (ja) * 1992-10-29 1994-07-22 Internatl Business Mach Corp <Ibm> コンピュータ主記憶域管理システムおよび方法
JP2014119794A (ja) * 2012-12-13 2014-06-30 Mitsubishi Electric Corp 予測シミュレーション装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06202936A (ja) * 1992-10-29 1994-07-22 Internatl Business Mach Corp <Ibm> コンピュータ主記憶域管理システムおよび方法
JP2014119794A (ja) * 2012-12-13 2014-06-30 Mitsubishi Electric Corp 予測シミュレーション装置

Similar Documents

Publication Publication Date Title
US5251303A (en) System for DMA block data transfer based on linked control blocks
EP0604471B1 (en) Multi-media signal processor computer system
JPH07175698A (ja) ファイルシステム
EP0523863B1 (en) Digital data processor for high level instructions
US5568635A (en) Physical memory allocation system, program execution scheduling system, and information processor
JPH034940B2 (ja)
JPH06266649A (ja) 複数のデータチャネルを介してデータを転送する方法及びその回路アーキテクチャ
CN109308269B (zh) 一种内存管理方法及装置
JP2005209206A (ja) マルチプロセッサシステムにおけるデータ転送方法、マルチプロセッサシステム、及び、この方法を実施するプロセッサ
EP0374337A1 (en) Load balancing technique in shared memory with distributed structure
JPS61279968A (ja) パツフア管理方法
US6389482B1 (en) Dynamic transitioning from a local pipe to a cross-system pipe
US6006292A (en) Method of managing hardware control blocks utilizing endless queue maintained to never be empty and containing tail pointer only accessible by process executing on system processor
JPH02171846A (ja) トランザクション処理方式
JPS63192126A (ja) デ−タセツトのスペ−ス管理処理方式
JP2833814B2 (ja) 入出力バッファ割当て方式
JPH02114343A (ja) 共用メモリ管理方式
JPS63231534A (ja) 共有メモリ領域管理方式
JPH03245234A (ja) メモリ領域割り当て方法
JPH0314073A (ja) ベクトル処理方式
JPS6162152A (ja) 記憶装置の空き領域管理方式
JPH04250540A (ja) 画像処理方法及び装置
JPH05128077A (ja) 複数計算機システムの分散処理方法
JPH08249225A (ja) メモリ管理装置
JPS63187750A (ja) 送信バツフア管理装置