JPS62182950A - Buffer administration system - Google Patents

Buffer administration system

Info

Publication number
JPS62182950A
JPS62182950A JP2561286A JP2561286A JPS62182950A JP S62182950 A JPS62182950 A JP S62182950A JP 2561286 A JP2561286 A JP 2561286A JP 2561286 A JP2561286 A JP 2561286A JP S62182950 A JPS62182950 A JP S62182950A
Authority
JP
Japan
Prior art keywords
buffer
buffers
priority
waiting
free
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
Application number
JP2561286A
Other languages
Japanese (ja)
Other versions
JPH0586574B2 (en
Inventor
Nobuyoshi Nagarei
永禮 信義
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2561286A priority Critical patent/JPS62182950A/en
Publication of JPS62182950A publication Critical patent/JPS62182950A/en
Publication of JPH0586574B2 publication Critical patent/JPH0586574B2/ja
Granted legal-status Critical Current

Links

Abstract

PURPOSE:To attain the execution of a buffer allocation process having plural degrees of priority corresponding to utilizing purposes by providing a buffer administration table, and a buffer vacancy waiting semaphore classified by priority. CONSTITUTION:In a buffer allocation process, when requested N-number of buffers are present already, they are transferred instantly to a requesting original, and the number of vacant buffers in a buffer administration table 3 is counted down by N-number. When the requested N-number of vacant buffers are in use, and it is impossible to allocate them, the minimum number of vacant waiting buffers classified by designated priority (high or low), and the number of buffer vacancy waiting programs (count is increased by one) are stored at the buffer administration table 3, and an operation P is executed for vacancy waiting semaphores 5 and 6 classified by priority.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明はデータ処理装量におけるバッファの管理に関し
、特にバッファ取得の要求度合に応じた優先的バッツァ
割付けを行うバッファ管理方式に関する。
DETAILED DESCRIPTION OF THE INVENTION (Industrial Application Field) The present invention relates to buffer management in data processing capacity, and particularly to a buffer management method that performs preferential buffer allocation according to the degree of request for buffer acquisition.

(従来の技術) 従来、この種のデータ処理装會におけるバッファ管理方
式では、バッファ管理テーブルのみ金設け、バッファ要
求情報をテーブルに登録して参照することによりバッフ
ァの空き待ち管理、ならびに優先割当て管理を行ってい
た。
(Prior Art) Conventionally, in a buffer management method in this type of data processing system, a buffer management table is provided, and buffer request information is registered in the table and referenced to manage buffer availability and priority allocation. was going on.

(発明が解決しようとする問題点) 上述した従来方式では、バッファ割当て管理情報が増加
し、バッファ管理テーブルが大きくなυ、バッファ管理
テーブルへのバッファ要求情・報の登録/参照処理が難
解で、バッファ管理(割当て、解放、ならびに空き待ち
制御)プログラムが煩雑になると云う欠点がある。
(Problems to be Solved by the Invention) In the conventional method described above, the amount of buffer allocation management information increases, the buffer management table becomes large, and the process of registering/referencing buffer request information/information in the buffer management table is difficult. However, the disadvantage is that the buffer management (allocation, release, and free waiting control) program becomes complicated.

さらに、新しく優先度をもたせた割当て管理を追加しよ
うとした場合には、バッファ管ヲテーブルやバッファ全
庁プログラムに大きな修正が必要で、簡単に新優先度を
設けられないと云う欠点がある。
Furthermore, if an attempt is made to add allocation management with a new priority, major modifications are required to the buffer pipe table and buffer all-in-one program, and new priorities cannot be easily set.

本発明の目的は、バッファを管理するためのバッファ管
理テーブルと優先度別のバッファ空き待ちセマフォとを
もつことにより上記欠点を除去し、バッファの管3ff
t−簡単に行うことができるように構成したバッファ管
理方式を提供することにある。
An object of the present invention is to eliminate the above-mentioned drawbacks by having a buffer management table for managing buffers and semaphores for waiting for free buffers according to priority.
t- It is an object of the present invention to provide a buffer management method configured to be easily performed.

(問題点を消火するための手段) 本発明によるバッファ管理方式は複数個のバッファと、
バッファ管理プログラム実行手段と、メツセージ処理プ
ログラム実行手段と、バッファ空き待ち管理手段とを具
備し、バッファの利用目的に応じて複数の優先度tVす
るバッファの割当てが任意に実行できるように構成した
ものである。
(Means for extinguishing the problem) The buffer management method according to the present invention includes a plurality of buffers,
The system is equipped with a buffer management program execution means, a message processing program execution means, and a buffer free waiting management means, and is configured to arbitrarily allocate buffers with a plurality of priorities tV depending on the purpose of using the buffer. It is.

複数個のバッファは、メツセージの一時格納領域として
利用するためのものである。
The plurality of buffers are used as temporary storage areas for messages.

バッファ管理プログラム実行手段は複数個のバッファの
割当て、解放、ならびに空き待ち処理を規定するバッフ
ァ管理プログラムを実行するためのものである。
The buffer management program execution means is for executing a buffer management program that specifies allocation and release of a plurality of buffers, as well as empty waiting processing.

メツセージ処理プログラム実行手段はバッファ管理プロ
グラムの呼出し、ならびにバッファを介してメツセージ
の転送を規定するメツセージ処理プログラムを実行する
ためのものである。
The message processing program execution means is for executing a message processing program that defines the calling of the buffer management program and the transfer of messages via the buffer.

バッファ空き待ち管理手段はバッファ管理テーブル、お
よびバッファ割当て優先度別のバッファ空き待ちセマフ
ォを含むものである。
The buffer free wait management means includes a buffer management table and buffer free wait semaphores for each buffer allocation priority.

(実 流側) 次に、本発明について図面を参照して詳細に説明する。(Actual flow side) Next, the present invention will be explained in detail with reference to the drawings.

第1図は、高低2レベルの優先度をもつ友バッファ割当
て処#t−行うことができるデータ処理装置の一実施例
を示すブロック図である。第1図に示すデータ処理装置
はバッファを介して高低2つの優先[’t−もち、デー
タの転送を実行するためのメツセージ処理プログラム群
11.12と、メツセージ処理プログラム11 、12
からの要求指示によりバッファの割当て、解放、ならび
に空き待ち処理を実行するためのバッファ管理プログラ
ム21 、22と、バッファ管理プログラム21 、2
2によりバッファ管理情報を格納するためのバッファ管
理テーブル3と、割当て、あるいは解放で繰返して使用
される複数個のバッファ4と、空きバッファの不足時に
バッファ取得要求を送出するメツセージ処理プログラム
11 、12を一時的に待合せるための高低2優先度に
対応した一対のバッファ空き待ちセマフオ5.6とから
構成されている。
FIG. 1 is a block diagram showing an embodiment of a data processing device that can perform friend buffer allocation processing #t- with two levels of priority, high and low. The data processing device shown in FIG. 1 has two priority levels (high and low) via a buffer: a group of message processing programs 11 and 12 for executing data transfer, and message processing programs 11 and 12.
buffer management programs 21 and 22 for allocating and releasing buffers and executing empty waiting processing according to request instructions from the buffer management programs 21 and 2;
2, a buffer management table 3 for storing buffer management information, a plurality of buffers 4 that are repeatedly used by allocation or release, and message processing programs 11 and 12 that send out a buffer acquisition request when there is a shortage of free buffers. It consists of a pair of buffer free wait semaphore 5.6 corresponding to two priorities, high and low, for temporarily waiting.

第2図はバッファ全庁プログラム2のバッファ割当て、
解放、ならびに空き待ちを示す処理フローチャートであ
る。
Figure 2 shows the buffer allocation for buffer all-office program 2.
It is a processing flowchart showing release and waiting for free space.

第3図はバッファ管理テーブル3の形式、および格納情
報であり、それぞれの詳細な処理内容および制御情報を
示した説明図である。
FIG. 3 shows the format and storage information of the buffer management table 3, and is an explanatory diagram showing detailed processing contents and control information.

以下に、第2図のバッファ管理プログラム処理フローの
順に、高低2レベルの優先度をもたせたバッファ割当て
管理方式について、動作原理全説明する。
The entire operating principle of the buffer allocation management system with two levels of priority, high and low, will be explained below in the order of the buffer management program processing flow shown in FIG.

バッファ管理プログラム2には、メツセージ処理プログ
ラムlから指定されたバッファ要求数(N個)、および
要求優先度(高、低の2レベル)に従ってN個のバッフ
ァを割当てる機能、割当ての失敗時にN個のバッファを
待ち合せる機能、ならびにN個のバッファを返却する機
能が実現されている。
The buffer management program 2 has a function to allocate N buffers according to the number of buffer requests (N) specified by the message processing program 1 and request priority (two levels of high and low), and a function to allocate N buffers in accordance with the number of buffer requests (N) specified by the message processing program l, and a function to allocate N buffers in accordance with the request priority (high and low levels). The function of waiting for N buffers and the function of returning N buffers are realized.

バッファ(N個)割当て処理は、要求され友N個の空き
バッファがすでに存在すれば、直ちにそのバッファを要
求元に渡し、バッファ管理テーブル3の突きバッファ数
iN個だけカウントダウンする。要求され7?−N個の
空きバッファが使用中であって割当て不可能な場合には
、指定された優先度(高および低)別に空き待ちバッフ
ァの最小数、およびバッファ空き待ちのプログラムの数
(カウントが1だけ増分)tバッファ管理テーブル3に
記憶し、優先度別の突き待ちセマフオ5.6に対してP
操作上実行する。
In the buffer (N) allocation process, if N free buffers are requested and N empty buffers already exist, the buffer is immediately delivered to the request source, and the buffer management table 3 is counted down by the number of buffers iN. Requested 7? - If N free buffers are in use and cannot be allocated, the minimum number of buffers waiting for free for each specified priority (high and low) and the number of programs waiting for free buffers (count 1). (incremented by t) and stored in the buffer management table 3, and P for the thrust wait semaphore 5.
Operationally executed.

上記バッファの最小数!fi、バッファ空き待ちプログ
ラムのなかで、最も少ない取得要求バッファe1を記憶
し、バッファが返却される度に再動作が可能なプログラ
ムが存在するか否かを判定し、効率よ〈望き待ちのプロ
グラム11または12にバッファを渡すための情報であ
る。
Minimum number of buffers above! fi, stores the least acquisition request buffer e1 among the programs waiting for a free buffer, and judges whether there is a program that can be re-operated each time a buffer is returned. This is information for passing the buffer to the program 11 or 12.

バッファ要求プログラム11まtは12は、要求数のバ
ッファが返却されるまで、P操作で一時的に待つ。この
待ち状態はバッファ解放処理からのV操作によって解放
され、再度、要求バッファ数(N個)の割当て処理へ進
む。ここで再び空きバッファが存在しなければ、前述の
処理を同様に繰返し、再びバッファ空き待ち状態となる
The buffer request program 11 or 12 temporarily waits using the P operation until the requested number of buffers are returned. This waiting state is released by the V operation from the buffer release process, and the process again proceeds to the process of allocating the requested number of buffers (N). If there is no free buffer again, the above-described process is repeated in the same way, and the buffer becomes available again.

いっぽう、バッファ(N個)の返却処理では、返却要求
のあったバッファt”2きバッファにリンクし、バッフ
ァ管理テーブル3の空きバッファ数tl−N個だけカウ
ントアツプする。
On the other hand, in the process of returning buffers (N), a link is made to the buffer t''2 which has been requested to be returned, and the count is increased by the number of free buffers tl-N in the buffer management table 3.

次に、バッファ管理テーブル3のプライオリティ別のバ
ッファ突き待ち情@iを参照し、高い優先度から順に以
下の処理を優先度レベルの数分だけ棟返す。
Next, referring to buffer thrust waiting information @i for each priority in the buffer management table 3, the following processes are returned for the number of priority levels in descending order of priority.

バッファ空き待ちのプログラムotたは12が存在しな
ければ、そのまま処理を終了するが、バッファ空き待ち
のプログラム1が存在する場合には、空きバッファ数と
空き待ちバッファの最小数とを比較し、突き侍ちバッフ
ァの最小数に空きバッファ数が?’14ftない場合に
は処理を終了する。突きバッファ数が空き待ちバッファ
の最小数以上に達していれば、バッファ侍ちのプログラ
ム11または12に再び実行可能なルーチンがあると判
断し、バッファ管理テーブル3の窄き待ちバッファの最
小数、および突き待ちプログラムの数をそれぞれバッフ
ァ総数、および0で初期化する。その後、優先度別のノ
望ソファ空き待ちセマフォに対して空き゛待ちプログラ
ム数分の回数だけ操作を実行する。
If there is no program ot or 12 waiting for a free buffer, the process ends as is, but if there is a program 1 waiting for a free buffer, the number of free buffers is compared with the minimum number of buffers waiting for a free buffer, Is the number of free buffers the minimum number of Tsuki Attendant buffers? 'If there is not 14ft, the process ends. If the number of pushing buffers has reached the minimum number of empty waiting buffers, it is determined that there is a routine that can be executed again in the buffer attendant program 11 or 12, and the minimum number of empty waiting buffers in the buffer management table 3, and The number of programs waiting to be stabbed is initialized to the total number of buffers and 0, respectively. Thereafter, the operation is performed on the desired sofa waiting semaphore for each priority as many times as the number of empty waiting programs.

以上、高低の2つの優先度に耐応して同様な処理を2回
だけ実行する。このV操作で、優先度の高い順に各バッ
ファ空き待ちのプログラム群11または12が再起動さ
れ、再びバッファの割当て処理に進む。ここで、高い優
先度のメツセージ処理プログラムが先に動作し、空きバ
ッファが高い優先度の処理プログラムのなかのひとつに
渡される。
As described above, similar processing is executed only twice in response to the two priorities, high and low. With this V operation, the programs 11 or 12 waiting for buffer free space are restarted in descending order of priority, and the process proceeds to buffer allocation processing again. Here, the higher priority message processing program runs first, and the free buffer is passed to one of the higher priority processing programs.

このように高い優先度のプログラムは、低い優先度のプ
ログラムに比べて優先的にバッファ割当て契機を与えら
れるので、利用目的に応じた複数の優先度をもつバッフ
ァ割当て管理が可能となる。
In this way, a program with a high priority is given a buffer allocation opportunity preferentially compared to a program with a low priority, so it is possible to manage buffer allocation with multiple priorities depending on the purpose of use.

(発明の効果) 本発明は以上説明したように、バッファを管理するため
のバッファ管理テーブルと優先度別のバッファ空き待ち
セマフォとをもつことにより、利用目的に応じて複数の
優先度をもつ友バッファ割当て処理を実行することが可
能になり、小さなバッファ管理テーブル、少ないバッフ
ァ管理情報、ならびに開部なバッファ管理プログラムに
よって実現でき、さらに新たな優先度tJ7+、−#+
+1++++?dollW$1@1ffii+/?t’
白→1iJL1.1risklql/F”◆t1単に行
うことができると云り効果がある。
(Effects of the Invention) As explained above, the present invention has a buffer management table for managing buffers and buffer free waiting semaphores for each priority, thereby making it possible for the present invention to create a network that has multiple priorities depending on the purpose of use. The buffer allocation process can now be performed with a small buffer management table, less buffer management information, and an open buffer management program, and new priorities tJ7+, -#+
+1++++? dollW$1@1ffii+/? t'
White→1iJL1.1risklql/F”◆t1 It is effective because it can be done easily.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は、本発明によるバッファ管理方式を実現するデ
ータ処理装置の一実施例を示すブロック図である。 第2図は、第1図に示すバッファ管理プログラムの処理
例を示すフローチャートである。 第3図は、第1図に示すバッファ管理テーブル、バッフ
ァ、ならびに優先度別のバッファ空き待ちセマフォの構
造例を示す説明図である。 11.12,21.22−・・プログラム3・・・テー
ブル 4…ノくソファ 5.6・・・セマフォ
FIG. 1 is a block diagram showing an embodiment of a data processing device that implements a buffer management method according to the present invention. FIG. 2 is a flowchart showing a processing example of the buffer management program shown in FIG. FIG. 3 is an explanatory diagram showing an example of the structure of the buffer management table shown in FIG. 1, the buffer, and the buffer free waiting semaphore for each priority. 11.12, 21.22 - Program 3 Table 4 Sofa 5.6 Semaphore

Claims (1)

【特許請求の範囲】[Claims] メッセージの一時格納領域として利用するための複数個
のバッファと、前記複数個のバッファの割当て、解放、
ならびに空き待ち処理を規定するバッファ管理プログラ
ムを実行するためのバッファ管理プログラム実行手段と
、前記バッファ管理プログラムの呼出し、ならびに前記
バッファを介して前記メッセージの転送を規定するメッ
セージ処理プログラムを実行するためのメッセージ処理
プログラム実行手段と、バッファ管理テーブルおよびバ
ッファ割当て優先度別のバッファ空き待ちセマフオを含
むバッファ空き待ち管理手段とを具備し、前記バッファ
の利用目的に応じて複数の優先度を有するバッファの割
当てが任意に実行できるように構成したことを特徴とす
るバッファ管理方式。
a plurality of buffers for use as temporary storage areas for messages; allocation and release of the plurality of buffers;
and a buffer management program execution means for executing a buffer management program that specifies free waiting processing, and a message processing program that specifies calling of the buffer management program and transfer of the message via the buffer. It comprises a message processing program execution means, and a buffer free wait management means including a buffer management table and a buffer free wait semaphore for each buffer allocation priority, and allocates a buffer having a plurality of priorities according to the purpose of use of the buffer. A buffer management method characterized in that it is configured so that it can be executed arbitrarily.
JP2561286A 1986-02-07 1986-02-07 Buffer administration system Granted JPS62182950A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2561286A JPS62182950A (en) 1986-02-07 1986-02-07 Buffer administration system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2561286A JPS62182950A (en) 1986-02-07 1986-02-07 Buffer administration system

Publications (2)

Publication Number Publication Date
JPS62182950A true JPS62182950A (en) 1987-08-11
JPH0586574B2 JPH0586574B2 (en) 1993-12-13

Family

ID=12170710

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2561286A Granted JPS62182950A (en) 1986-02-07 1986-02-07 Buffer administration system

Country Status (1)

Country Link
JP (1) JPS62182950A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0237422A (en) * 1988-07-28 1990-02-07 Oki Electric Ind Co Ltd Numerical management system
JPH0350180U (en) * 1989-09-20 1991-05-16
JP2016192012A (en) * 2015-03-31 2016-11-10 京セラドキュメントソリューションズ株式会社 Electronic apparatus and information processing program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0237422A (en) * 1988-07-28 1990-02-07 Oki Electric Ind Co Ltd Numerical management system
JPH0350180U (en) * 1989-09-20 1991-05-16
JP2016192012A (en) * 2015-03-31 2016-11-10 京セラドキュメントソリューションズ株式会社 Electronic apparatus and information processing program

Also Published As

Publication number Publication date
JPH0586574B2 (en) 1993-12-13

Similar Documents

Publication Publication Date Title
DE68927375T2 (en) Arbitration of transmission requests in a multiprocessor computer system
EP0791196B1 (en) System and method for object oriented message filtering
DE3689990T2 (en) Flexible data transfer for message-oriented protocols.
JP3120963B2 (en) Method for transferring messages and system for transferring messages
EP0205945B1 (en) Process transparent multi storage mode data transfer and buffer control
JPH0551942B2 (en)
DE2517297A1 (en) DEVICE FOR DETERMINING A SYSTEM STATE LEADING TO A FINAL STANDSTILL TO BE PREVENTED
DE3689991T2 (en) Distributed data management mechanism.
JPS62501039A (en) A device for assigning priorities between computers operating in parallel.
JPS62182950A (en) Buffer administration system
US6754658B1 (en) Database server processing system, method, program and program storage device
JPH05303524A (en) Buffer control system
JPS62126457A (en) Distributed data processing system
JPH0431416B2 (en)
JP2518268B2 (en) Shared resource pool management method
JPH0444291B2 (en)
JPS61134844A (en) Share space control system for storage device
JPS5958552A (en) Slowdown control system
JPH04295935A (en) Data processor
JPS61279968A (en) Buffer control system
JP2558370B2 (en) Buffer management method
JPS62290958A (en) Task schedule system
JPH0457126A (en) File accessing system
JPH0351919A (en) Processing system for inter-program communication control
JPH02280264A (en) Message block control system