JPH0237445A - Assignment processing system for control table - Google Patents
Assignment processing system for control tableInfo
- Publication number
- JPH0237445A JPH0237445A JP18767888A JP18767888A JPH0237445A JP H0237445 A JPH0237445 A JP H0237445A JP 18767888 A JP18767888 A JP 18767888A JP 18767888 A JP18767888 A JP 18767888A JP H0237445 A JPH0237445 A JP H0237445A
- Authority
- JP
- Japan
- Prior art keywords
- control table
- control
- request
- tables
- overflow
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 31
- 238000000034 method Methods 0.000 claims description 20
- 238000003672 processing method Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 5
- 238000012805 post-processing Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 2
Abstract
Description
【発明の詳細な説明】
〔概要]
処理プログラムに空き制御表を割り当てるだめの制御表
の割当処理方式に関し、
空き制御表を高速に検索できるようにすることを目的と
し、
所定の順序に従ってキューイングされる複数の制御表を
用意し、このキューに従って、空き制御表を検索するこ
とで、処理プログラムに空き制御表を割り当てるよう処
理する制御表の割当処理方式において、先頭の制御表と
最後方の制御表とをキューイングすることで、制御J表
をサイクリックにキューイングするよう構成するととも
に、これらの制御表を管理する基本制御表が、キューイ
ングされた制御表の内の1つの制御表をポイントするよ
う構成し、そして、割当処理を実行する制御表割当手段
は、基本制御表がポイントしている制御表が空き制御表
であるか否かを判断し、空き制御表であるときには、そ
の制御表を処理プログラムに割り当てるよう処理すると
ともに、ポイントする制御表をキューに従って1つ歩進
するよう処理し、一方、空き制御表でないときには、使
用終了後に削除されることになる溢れ制御表を生成して
、処理プログラムに割り当てるよう構成する。[Detailed Description of the Invention] [Summary] Regarding a control table allocation processing method for allocating a free control table to a processing program, the purpose is to search for free control tables at high speed, and the present invention involves queuing according to a predetermined order. In the control table allocation processing method, the first control table and the last By queuing control tables, the control J table is configured to be cyclically queued, and the basic control table that manages these control tables is configured to queue one of the queued control tables. The control table allocation means that is configured to point to the basic control table and executes the allocation process determines whether or not the control table pointed to by the basic control table is a free control table, and if it is a free control table, It processes the control table to be assigned to the processing program, and increments the pointed control table by one according to the queue, while if it is not a free control table, the overflow control table is deleted after it is finished being used. Configure it to generate and assign it to a processing program.
〔産業上の利用分野]
本発明は、処理プログラムに空き制御表を割り当てるた
めの制御n表の割当処理方式に関するものである。[Industrial Application Field] The present invention relates to a control n-table allocation processing method for allocating free control tables to processing programs.
データ処理システムでは、処理の実行のために必要とな
る情報を格納する領域となる制御表を、処理プログラム
に対して割り当てていくことになる。この割当処理は、
用意された制御表の中から、使用されていない空きの制
御表(以下、′空き制御表゛という)を検索して割り当
てていくことで実現されるものであることから、処理の
高速化を図るためにも、空き制御表を高速に検索できる
ようにしていく必要があるのである。In a data processing system, a control table, which serves as an area for storing information necessary for executing a process, is allocated to a processing program. This allocation process is
This is achieved by searching for and allocating an unused free control table (hereinafter referred to as 'free control table') from the prepared control tables, which speeds up the processing. In order to achieve this goal, it is necessary to make it possible to search the free space control table at high speed.
(従来の技術)
第6図に、従来の制御表の割当処理方式の構成図を示す
。図中、10は空き制御表を必要とする処理プログラム
、20は予め用意される複数の制御表21(図中では、
″β、゛′で表している)をプールする制御表プール、
30は処理プログラム10に対して空き制御表を割り当
てる、例えばサブルーチンのような制御表割当手段であ
る。この処理プログラム10は、機能構成的に、利用者
からの依願要求を受は付ける要求受付部11と、制御表
割当手段30を呼び出すことで空き制御表を獲得し、そ
の空き制御表に受は付けた要求の実行のために必要とな
る情報を書き込む制御表獲得部12と、依願された要求
を獲得した制御表21の情報に従って処理する要求処理
部13と、終了した要求を解放して制御表プール20に
制御表21を返却する制御表返却部14と、終了した要
求の後処理を行う後処理部15とを備えることになる。(Prior Art) FIG. 6 shows a configuration diagram of a conventional control table allocation processing method. In the figure, 10 is a processing program that requires a free control table, and 20 is a plurality of control tables 21 prepared in advance (in the figure,
A control table pool that pools ``β, ゛′),
Reference numeral 30 is a control table allocating means, such as a subroutine, which allocates a free control table to the processing program 10. In terms of functional structure, this processing program 10 acquires a free space control table by calling a request receiving unit 11 that receives requests from users and a control table allocating means 30. A control table acquisition unit 12 writes information necessary for executing the attached request, a request processing unit 13 processes the requested request according to the information in the acquired control table 21, and releases and controls the completed request. It includes a control table return unit 14 that returns the control table 21 to the table pool 20, and a post-processing unit 15 that performs post-processing of completed requests.
一方、制御表プール20は、制御表21と、これらの制
御表21を管理する基本制御表22(図中では、 α゛
で表している)とから構成され、これらの制御表21は
、図に示すように、先頭に位置する制御表21 (基本
制御表22の指す制御表21)を起点にして、キューイ
ングされることになる。On the other hand, the control table pool 20 is composed of control tables 21 and a basic control table 22 (represented by α in the figure) that manages these control tables 21. As shown in FIG. 2, the queue is started from the control table 21 located at the head (the control table 21 pointed to by the basic control table 22).
このように、予め制御表21を作成して用意して置くの
は、制御表21の作成/削除に費やすオーバーヘッドを
避けるためである。また、受は付けた要求数が、予め用
意した制御表21の個数(図中では、 n″で表してい
る)をオーバーする場合には、−時的な制御表として、
使用終了時に削除されることになる“′溢れ制御表°′
を作成するよう構成される。The reason why the control table 21 is created and prepared in advance in this way is to avoid overhead spent on creating/deleting the control table 21. In addition, if the number of received requests exceeds the number of control tables 21 prepared in advance (represented by n'' in the figure), - as a temporary control table,
“’Overflow control table°’” which will be deleted at the end of use
configured to create.
従来技術では、制御表割当手段30は、次のような処理
手順に従って空き制御表を検索して、処理プログラム1
0に割り廿でるよう処理していた。In the prior art, the control table allocating means 30 searches for a free control table according to the following processing procedure and executes the processing program 1.
I processed it so that it was divided into 0.
すなわち、キューの先頭に位置する制御表21を開始点
にして、キューに従って制御表21を順に調べていくこ
とで、使用中でない空き制御表を見つけだす。この処理
で空き制御表が見つかると、その空き制御表を処理プロ
グラム10に割り当てるとともに、その空き制御表に対
して、使用中に転じたことを表すためのフラグを立てる
よう処理する。そして、キューの最後方に位置する制御
表21まで調べていっても、空き制御表が見つからない
ときには、溢れ制御表を作成し、その溢れ制御表を処理
プログラム10に割り当てるよう処理する。That is, by using the control table 21 located at the head of the queue as a starting point and examining the control tables 21 in order according to the queue, an empty control table that is not in use is found. If a free space control table is found in this process, the free space control table is assigned to the processing program 10, and a flag is set on the free space control table to indicate that it is now in use. If no free control table is found even after checking up to the control table 21 located at the end of the queue, an overflow control table is created and the overflow control table is assigned to the processing program 10.
このように、従来技術では、用意された制御表21をキ
ューに従って順番に検索して、空酋制御表を得るように
していたのである。In this way, in the prior art, the prepared control tables 21 are searched in order according to the queue to obtain the empty control table.
しかし、従来技術では、キューを先頭から順に検索する
ことから、空き制御表を割り当てるための時間が一定で
ないという問題点があった。例えば、第7図に示す例で
は、■の要求に対しては、1回の検索処理で空き制御表
21を見つけられるのに対して、■の要求に対しては、
2回の検索処理、■の要求に対しては、3回の検索処理
、■の要求に対しては、1回の検索処理というように、
ばらばらであった。また、従来技術では、第8図に示す
ように、キューにつながる制御表21を最後まで検索し
ないと、空き制御表がないということを検出できないこ
とから、溢れ制御表を割り当てるまでに余分な時間がか
かるという問題点もあった。この問題点は、予め用意さ
れる制御表21の数が多くなればなるほど、大きなもの
となってくるのである。However, in the conventional technology, since the queue is searched sequentially from the head, there is a problem that the time required to allocate the free control table is not constant. For example, in the example shown in FIG. 7, the free space control table 21 can be found in one search process in response to the request ■; however, in response to the request ■,
Search processing is performed twice, search processing is performed three times for the request of ■, search processing is performed once for the request of ■, and so on.
It was disjointed. In addition, in the conventional technology, as shown in FIG. 8, it is impossible to detect that there is no free control table unless the control table 21 connected to the queue is searched to the end, so it takes extra time to allocate an overflow control table. There was also the problem that it took a lot of time. This problem becomes more serious as the number of control tables 21 prepared in advance increases.
本発明は、かかる事情に鑑みてなされたものであって、
キューイングされている制御表21の中から、空き制御
表を高速で検索できるようにする制御表の割当処理方式
の提供を目的とするものである。The present invention has been made in view of such circumstances, and
The object of the present invention is to provide a control table allocation processing method that allows a free control table to be searched at high speed from among queued control tables 21.
第1図は本発明の原理構成図である。 FIG. 1 is a diagram showing the principle configuration of the present invention.
図中、第6図と同じく、lOは処理プログラム、20は
制御表プール、30は制御表割当手段である。処理プロ
グラム10は、従来技術と同様の機能を実行する要求受
付部11、制御表獲得部12、要求処理部13、制御表
返却部14及び後処理部15を備える。本発明の制御表
ブール20の制御表21は、従来技術通り、所定の順序
に従ってキューイングされるとともに、キューイングさ
れた先頭の制御表21と最後方の制御表21とが更にキ
ューイングされることで、サイクリックにキューイング
されるよう構成されることになる。そして、本発明の基
本制御表22は、このサイクリックにキューイングされ
た制御表21の内の1つの制御表21をポイントするよ
う構成される。In the figure, as in FIG. 6, IO is a processing program, 20 is a control table pool, and 30 is a control table allocation means. The processing program 10 includes a request reception section 11, a control table acquisition section 12, a request processing section 13, a control table return section 14, and a post-processing section 15, which perform the same functions as those of the prior art. The control tables 21 of the control table Boolean 20 of the present invention are queued according to a predetermined order as in the prior art, and the first and last queued control tables 21 are further queued. Therefore, it is configured to be queued cyclically. The basic control table 22 of the present invention is configured to point to one of the cyclically queued control tables 21.
本発明の制御表割当手段30は、使用フラグ判断部31
と、制御表割当部32と、ポインタ歩道・部33と、使
用フラグ設定部34と、溢れ制御表作成部35とを備え
ることになる。この使用フラグ判断部31は、基本制御
表22がポイントしている制御表21に割り付けられて
いる使用フラグの状態を調べることで、そのポイントし
ている制御表21が空き制御表であるか否かを判断し、
制御表割当部32は、処理プログラム10の制御表獲得
部12に対して空き制御表を割り当てるよう処理し、ポ
インタ歩進部33は、基本制御表22がポイントする制
御表21をキューに従って1つ歩進するよう処理し、使
用フラグ設定部34は、制御表割当部32が割り当てた
制御表21に使用中であることを示す使用フラグを設定
し、溢れ制御表作成部35は、使用フラグ判断部31が
空き制御表でないと判断するときに、溢れ制御表を生成
して制御表割当部32に渡すよう処理する。The control table allocation means 30 of the present invention includes a use flag determination section 31
, a control table allocation section 32 , a pointer walkway section 33 , a use flag setting section 34 , and an overflow control table creation section 35 . This use flag determination unit 31 determines whether the control table 21 pointed to by the basic control table 22 is a free control table by checking the state of the use flag assigned to the control table 21 pointed to by the basic control table 22. determine whether
The control table allocation unit 32 processes to allocate a free control table to the control table acquisition unit 12 of the processing program 10, and the pointer increment unit 33 allocates one control table 21 pointed to by the basic control table 22 according to the queue. The use flag setting unit 34 sets a use flag indicating that the control table 21 allocated by the control table allocation unit 32 is in use, and the overflow control table creation unit 35 determines the use flag. When the unit 31 determines that the table is not a free control table, it generates an overflow control table and passes it to the control table allocation unit 32.
本発明では、使用フラグ判断部31の判断で、基本制御
表22がポイントしている制御表21が空き制御表であ
ると判断するときには、制御表割当部32は、この空き
制御表を、処理プログラム10の制御表獲得部12に対
して割り当てるよう処理するとともに、ポインタ歩進部
33は、基本制御表22がポイントする制御表21をキ
ューに従って1つ歩進するよう処理する。一方、使用フ
ラグ判断部31の判断で、基本制御表22がポイントし
ている制御表21が空き制御表でないと判断するときに
は、制御表割当部32は、溢れ制御表作成部35が作成
する溢れ制御表を、処理プログラム10の制御表獲得部
12に対して割り当てるよう処理する。In the present invention, when the use flag determining unit 31 determines that the control table 21 pointed to by the basic control table 22 is a free control table, the control table allocating unit 32 processes this free control table. At the same time, the pointer incrementing unit 33 increments the control table 21 pointed to by the basic control table 22 by one in accordance with the queue. On the other hand, when the usage flag determining unit 31 determines that the control table 21 pointed to by the basic control table 22 is not a free control table, the control table allocating unit 32 uses the overflow control table created by the overflow control table creation unit 35 to The control table is allocated to the control table acquisition unit 12 of the processing program 10.
処理プログラム10の要求処理部13が、依願された要
求の処理を概略要求順に終了していくようなときには、
サイクリックに動くことになる基本制御表22がポイン
トしている制御表21が、最も古い要求に対して割り当
てられた制御表21である。これから、本発明では、ポ
イントされている制御表21だけを検索し、この制御表
21が空き制御表でないときには、他の制御表21も使
用中の可能性が高いので、直ちに溢れ制御表を作成して
対応するのである。When the request processing unit 13 of the processing program 10 finishes processing the requested requests in the general order of requests,
The control table 21 pointed to by the basic control table 22 that is to be moved cyclically is the control table 21 assigned to the oldest request. From now on, in the present invention, only the pointed control table 21 is searched, and if this control table 21 is not a free control table, there is a high possibility that other control tables 21 are also in use, so an overflow control table is created immediately. We will respond accordingly.
このように、本発明によれば、空き制御表である可能性
が極めて高い制御表21へのポインタを持つことから、
キューの先頭から順番に検索する必要がなくなる。そし
て、ポイントされている制御表21を調べるだけで、他
の制御表21が使用中であるかどうかを推測できるので
、キューイングされているすべての制御表21を検索し
なくても、溢れ制御表の作成の必要性を知ることができ
る。そして、空き制御表の割当時間も一定になるのであ
る。As described above, according to the present invention, since it has a pointer to the control table 21 that is extremely likely to be a free control table,
There is no need to search sequentially from the beginning of the queue. Then, simply by checking the control table 21 that is pointed to, it is possible to infer whether or not other control tables 21 are in use. Understand the necessity of creating tables. The time allocated to the free space control table is also constant.
以下、実施例に従って本発明の詳細な説明する。 Hereinafter, the present invention will be explained in detail according to examples.
第2図に、本発明に係る制御表の割当処理方式を実装す
る処理プログラムの実施例構成図を示す。FIG. 2 shows a configuration diagram of an embodiment of a processing program implementing the control table allocation processing method according to the present invention.
この実施例では、外部記憶装置の入出力制御を行う処理
プログラムを想定している6図中、第1図で説明したも
のと同じのものについては、同一の記号で示しである。In this embodiment, the same components as those explained in FIG. 1 are indicated by the same symbols in the six FIGS. which assume a processing program for controlling input/output of an external storage device.
1は利用者であり、処理プログラム10の要求受付部1
1に対して要求を依頼し、2は入出力発行部であり、処
理プログラム10の要求処理部13からの入出力要求を
発行する。1 is a user, and request receiving unit 1 of the processing program 10
1, and 2 is an input/output issuing unit, which issues input/output requests from the request processing unit 13 of the processing program 10.
3はCPUと外部記憶装置との間に設けられる入出力用
のチャンネル、4は外部記憶装置である。3 is an input/output channel provided between the CPU and an external storage device, and 4 is an external storage device.
処理プログラム10に割り当てられて、利用者1からの
要求を管理することになる制御表21(“′βl”で表
している)は、予め適当な数だけ用意される。この制御
表21は、従来技術と同様に所定の順序でキューイング
されるとともに、更に、最後方に位置する制御表21
(この例では、“β4”)が、先頭に位置する制御表2
1 (この例では、“′β1”)にキューイングするこ
とで、サイクリックにキューイングされるよう構成され
る。また、各制御表21には、従来技術と同様に、使用
中か否かを表すための情報(例えばフラグ)が設定され
ることになる。An appropriate number of control tables 21 (represented by "'βl") assigned to the processing program 10 to manage requests from the user 1 are prepared in advance. This control table 21 is queued in a predetermined order as in the prior art, and furthermore, the control table 21 located at the rearmost position
(in this example, “β4”) is the control table 2 located at the beginning.
1 (in this example, "'β1"), it is configured to be cyclically queued. Further, in each control table 21, information (for example, a flag) is set to indicate whether or not the control table 21 is in use, as in the prior art.
制御表プール20の基本制御表22(°“β′で表して
いる)は、この制御表21と、溢れ制御表23(“β′
、パで表している)のキューを管理する。ここで、溢れ
制御表23とは、利用者lからの要求が用意された制御
表21の数をオーバーしたときに、−時的に作成されて
使用される制御表であり、使用の終了後に直ちに削除さ
れるものである。基本制御表22は、具体的には、最後
方に位置する制御表21 (この例では、β4″)への
ポインタと、先頭に位置する制御表21(この例テハ、
β1“°)へのポインタと、最後方に位置する溢れ制御
表23 (この例では、β/、I+)へのポインタと、
先頭に位置する溢れ制御表23(この例では、β′1°
゛)へのポインタとを備えることで、制御表21と溢れ
制御表23のキューを管理することになる。そして、本
発明では、更に、基本制御表22は、次に使用すべき制
御表21へのポインタを存するよう構成される。この例
では、次に使用すべき制御表21を°“β2゛として、
このポインタを示しである。なお、このポインタは、初
期化時には、キューの先頭に位置する制御表21を指す
ことになる。The basic control table 22 (denoted as “β′) of the control table pool 20 is composed of this control table 21 and the overflow control table 23 (denoted as “β′”).
, denoted by Pa). Here, the overflow control table 23 is a control table that is temporarily created and used when the number of requests from the user l exceeds the number of prepared control tables 21, and after the use is finished. It will be deleted immediately. Specifically, the basic control table 22 contains a pointer to the control table 21 located at the rear (in this example, β4''), and a pointer to the control table 21 located at the beginning (in this example,
a pointer to β1 “°), a pointer to the overflow control table 23 located at the rear (in this example, β/, I+),
Overflow control table 23 located at the beginning (in this example, β′1°
By providing a pointer to (), the queues of the control table 21 and overflow control table 23 are managed. In the present invention, the basic control table 22 is further configured to include a pointer to the control table 21 to be used next. In this example, the control table 21 to be used next is ``β2'',
This pointer is shown below. Note that, at the time of initialization, this pointer points to the control table 21 located at the head of the queue.
次に、本発明の処理内容について説明する。利用者1が
入出力要求を処理プログラム10に依頼すると、要求受
付部11は、依頼された要求を受は取り、制御表獲得部
12に対して使用中でない制御表21の割り当てを依頼
する。この依頼を受は取ると、制御表獲得部12は、例
えばナブル−チン等を呼び出すことで以下に述べる手順
を実行して、制御表プール20から使用中でない制御表
21を検索して、要求処理部13に割り当てるよう処理
することになる。Next, the processing contents of the present invention will be explained. When the user 1 requests an input/output request to the processing program 10, the request reception section 11 accepts the requested request and requests the control table acquisition section 12 to allocate a control table 21 that is not in use. Upon receiving this request, the control table acquisition unit 12 executes the procedure described below by calling, for example, Nable-chin, searches for a control table 21 that is not in use from the control table pool 20, and requests the request. It will be processed so as to be assigned to the processing unit 13.
使用中でない制御表21を得るために、制御表獲得部1
2は、最初に、基本制御表22がポイントしている制御
表21が使用中であるか否かを判断する。この判断は、
その制御表21に使用中を表す情報の設定がなされてい
るか否かで実行される。この判断により、基本制御表2
2がポイントしている制御表21が使用中でないと判断
するときには、その制御表21を要求処理部13に割り
当てるよう処理する。そして、基本制御表22が、キュ
ーの次の制御表21をポイントするよう処理することに
なる。用意される制御表21が2個である場合で説明す
るならば、第3図に示すように、この処理により、初期
化時の(イ)から、(ロ)で、β1の制御表21に最初
の要求の■が割り当てられて、β2の制御表21へポイ
ンタが張られ、続いて(ハ)で、β2の制御表21に次
の要求の■が割り当てられて、β、の制御表21へポイ
ンタが張られることになる。なお、第3図中の口印は使
用されていない制御表21を示しており、O印(印肉の
数値は、要求番号を表す)は使用中の制御表21及び使
用中の溢れ制御表23を示している。また、図中の(イ
)ないしくル)は、時系列の順番を表している。In order to obtain a control table 21 that is not in use, the control table acquisition unit 1
2 first determines whether the control table 21 pointed to by the basic control table 22 is in use. This judgment is
This is executed depending on whether or not the control table 21 is set with information indicating that it is in use. Based on this judgment, basic control table 2
When it is determined that the control table 21 pointed to by No. 2 is not in use, the control table 21 is allocated to the request processing unit 13. The basic control table 22 then processes to point to the next control table 21 in the queue. To explain the case where two control tables 21 are prepared, as shown in FIG. 3, this process changes the control table 21 of β1 from (a) to (b) at the time of initialization. ■ of the first request is assigned and a pointer is set to the control table 21 of β2, and then in (c), ■ of the next request is assigned to the control table 21 of β2, and the control table 21 of β A pointer will be pasted to. Note that the stamps in Figure 3 indicate control tables 21 that are not in use, and the O marks (the numbers in the stamps represent request numbers) indicate the control tables 21 that are in use and the overflow control tables that are in use. 23 is shown. In addition, (a) or (i) or (l) in the figure represents the chronological order.
一方、基本制御表22がポイントしている制御表21が
使用中であると判断するときには、制御表獲得部12は
、他の制御表21の使用状態を調べることなく、直ちに
、溢れ制御表23を作成し、この作成した溢れ制御表2
3を要求処理部13に割り当てるよう処理する。このと
き、他の制御表21を調べないのは、前述の処理により
、基本制御表22が、サイクリ・ンクにキューイングさ
れる制御表21を順番にポイントしていくよう動作する
ことから、ポイントされている制御表21は、確率的に
みて、最も古い要求に対して割り当てられていた制御表
21であると考えられるからである。この処理により、
第3図の(ニ)(ホ)で示すように、それぞれβ′1と
β′2の溢れ制御表23が作成され、それぞれに■と■
の要求が割り当てられることになる。このとき、基本制
御表22は、それまでのβ、の制御表21を変わること
なく指し続けることになる。On the other hand, when determining that the control table 21 pointed to by the basic control table 22 is in use, the control table acquisition unit 12 immediately uses the overflow control table 21 without checking the usage status of other control tables 21. Create this overflow control table 2
3 to the request processing unit 13. At this time, the reason why other control tables 21 are not checked is because the basic control table 22 operates to sequentially point to the control tables 21 queued in the cycle link by the above-mentioned process. This is because the control table 21 that has been assigned is considered to be the control table 21 that was assigned to the oldest request, based on probability. With this process,
As shown in (d) and (e) in FIG. 3, overflow control tables 23 are created for β'1 and β'2, respectively, and
requests will be allocated. At this time, the basic control table 22 continues to point to the previous control table 21 of β without change.
使用されていない制御表21若しくは溢れ制御表23が
割り当てられた要求処理部13は、割り当てられた制御
表に要求の実行のために必要となる情報を書き込み、要
求処理部I3を起動する。The request processing unit 13 to which the unused control table 21 or overflow control table 23 is assigned writes information necessary for executing the request to the assigned control table, and starts the request processing unit I3.
このようにして起動される要求処理部13は、割り当て
られた制御表の情報に従って、入出力動作を入出力発行
部2に依願し、依頬した人出動作が完了することで入出
力発行部2より完了通知を受は取ると、制御表返却部1
4に対して、使用が終了した制御表21芳しくは溢れ制
御表23の返却を依願する。この依願を受は取ると、制
御表返却部14は、以下に述べる手順に従って、それま
で使用していた制御表21若しくは溢れ制御表23を要
求から解放し、制御表プール20に返却するよう処理す
ることになる。The request processing unit 13 activated in this way requests input/output operation from the input/output issuing unit 2 according to the information in the assigned control table, and when the requested turnout operation is completed, the input/output issuing unit When the notification of completion is received from 2, the control table return unit 1
4 to request the return of the control table 21 or overflow control table 23 that has been used. Upon receiving this request, the control table return unit 14 releases the previously used control table 21 or overflow control table 23 from the request and returns it to the control table pool 20 according to the procedure described below. I will do it.
使用が終了した制御表を返却するために、制御表返却部
14は、使用が終了した制御表が予め用意してあった制
御表21であるときには、要求から解放するとともに、
使用中を表す情報の設定を解除する。一方、使用が終了
した制御表が溢れ制御表23であるときには、要求から
解放するとともに、溢れ制御表23のキューからその溢
れ制御表23を外して触除する。この処理により、第3
図の(へ)で示すように、β1の制御表21が要求から
解放され、(チ)で示すように、β2の制御表21が要
求から解放され、(す)で示すように、β′1の溢れ制
御表23が削除され、(ヌ)で示すように、β′2の溢
れ制御表23が削除されることになる。なお、(へ)の
後に続<(ト)は、要求から解放されたβ、の制御表2
1に対して、■の要求が割り当てられることを示してお
り、このβ2の制御表21は、(ル)で最後に解放され
ることになる。そして、依願された要求の処理が終了す
ると、後処理部15は、依願された処理が終了したこと
を利用者1に通知することで処理を終了する。In order to return the control table that has finished being used, the control table return unit 14 releases the control table 21 from the request when the control table that has finished being used is the control table 21 that has been prepared in advance.
Cancel the setting of information indicating that it is in use. On the other hand, when the control table that has been used is the overflow control table 23, it is released from the request, and the overflow control table 23 is removed from the queue of the overflow control table 23 and touched. With this process, the third
As shown in (f) in the figure, the control table 21 of β1 is released from the request, as shown in (h), the control table 21 of β2 is released from the request, and as shown in (su), the control table 21 of β2 is released from the request. The overflow control table 23 of No. 1 is deleted, and the overflow control table 23 of β'2 is deleted as shown by (nu). In addition, the following <(g) after (g) is the control table 2 of β, which is released from the request.
This shows that the request (■) will be allocated to the control table 21 for 1, and the control table 21 for β2 will be finally released at (r). When the processing of the requested request is completed, the post-processing unit 15 terminates the processing by notifying the user 1 that the requested processing has been completed.
第3図の説明では、説明の便宜上、用意される制御表2
1が2個である場合で処理内容を説明した。更に本発明
の処理内容の理解を深めるために、第4図及び第5図に
、用意される制御表21が4個である場合を例にして、
本発明の処理の一例を示すことにする。In the explanation of FIG. 3, control table 2 is prepared for convenience of explanation.
The processing contents have been explained for the case where there are two 1s. In order to further understand the processing contents of the present invention, FIGS. 4 and 5 show an example in which four control tables 21 are prepared.
An example of the processing of the present invention will be shown.
このように、本発明は、空き制御表である可能性が極め
て高い制御表21だけを調べて、溢れ制御表23の作成
を決定するよう処理することにな以上、図示実施例につ
いて説明したが、本発明はこれに限定されるものではな
い。例えば、制御表の個数等は単なる例示にすぎないも
のである。As described above, the present invention processes only the control table 21 that is extremely likely to be an empty control table and determines whether to create the overflow control table 23. However, the present invention is not limited thereto. For example, the number of control tables is merely an example.
このように、本発明によれば、1回の検索処理で、高い
確率値をもって使用されていない制御表を見つけだすこ
とができるようになるとともに、高い確率値をもって使
用されていない制御表のないことを認識できるようにな
る。これから、処理プログラムに対して、極めて高速に
使用していない制御表を割り当てることができるように
なるのである。As described above, according to the present invention, a control table that is not used with a high probability value can be found with a single search process, and it is also possible to find out a control table that is not used with a high probability value. Be able to recognize. From now on, it will be possible to allocate unused control tables to processing programs extremely quickly.
第6図は従来技術の構成図、
第7図及び第8図は従来技術の問題点を説明する説明図
である。FIG. 6 is a configuration diagram of the prior art, and FIGS. 7 and 8 are explanatory diagrams explaining problems of the prior art.
図中、10は処理プログラム、11は要求受付部、12
は制御表獲得部、13は要求処理部、14は制御表返却
部、15は後処理部、20は制御表プール、21は制御
表、22は基本制御表、23は溢れ制御表、30は制御
表割当手段、31は使用フラグ判断部、32は制御表割
当部、33はポインタ歩道部、34は使用フラグ設定部
、35は溢れ制御表作成部である。In the figure, 10 is a processing program, 11 is a request reception unit, and 12
1 is a control table acquisition unit, 13 is a request processing unit, 14 is a control table return unit, 15 is a post-processing unit, 20 is a control table pool, 21 is a control table, 22 is a basic control table, 23 is an overflow control table, and 30 is a Control table allocating means, 31 is a use flag determining section, 32 is a control table allocating section, 33 is a pointer walkway section, 34 is a use flag setting section, and 35 is an overflow control table creating section.
Claims (1)
21)を用意し、処理プログラム(10)からの要求時
に、このキューに従って、使用されていない空き制御表
を検索することで、処理プログラム(10)に空き制御
表を割り当てるよう処理する制御表の割当処理方式にお
いて、 キューイングされた先頭の制御表(21)と最後方の制
御表(21)とをキューイングすることで、用意された
制御表(21)をサイクリックにキューイングするよう
構成するとともに、これらの制御表(21)を管理する
ことになる基本制御表(22)が、サイクリックにキュ
ーイングされた制御表(21)の内の1つの制御表(2
1)をポイントするよう構成し、そして、制御表(21
)の割当処理を実行する制御表割当手段(30)は、上
記基本制御表(22)がポイントしている制御表(21
)が空き制御表であるか否かを判断し、空き制御表であ
ると判断するときには、その制御表(21)を処理プロ
グラム(10)に割り当てるよう処理するとともに、上
記基本制御表(22)がポイントする制御表(21)を
キューに従って1つ歩進するよう処理し、一方、空き制
御表でないと判断するときには、使用終了後に削除され
ることになる溢れ制御表を生成して、処理プログラム(
10)に割り当てるよう処理してなることを、 特徴とする制御表の割当処理方式。[Claims] A plurality of control tables (
21), and at the time of a request from the processing program (10), searches for an unused free control table according to this queue, thereby assigning a free control table to the processing program (10). In the allocation processing method, a prepared control table (21) is cyclically queued by queuing the first queued control table (21) and the last queued control table (21). At the same time, the basic control table (22) that manages these control tables (21) manages one control table (2) of the cyclically queued control tables (21).
1), and the control table (21
), the control table allocation means (30) executes the allocation process for the control table (21) to which the basic control table (22) points.
) is a free control table, and when it is determined that it is a free control table, the control table (21) is processed to be assigned to the processing program (10), and the basic control table (22) is The control table (21) pointed to by the processing program increments the control table (21) by one according to the queue, and when it is determined that the control table is not free, generates an overflow control table that will be deleted after use. (
10) A control table allocation processing method characterized by performing processing to allocate to.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18767888A JP2633635B2 (en) | 1988-07-27 | 1988-07-27 | Control table allocation processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18767888A JP2633635B2 (en) | 1988-07-27 | 1988-07-27 | Control table allocation processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0237445A true JPH0237445A (en) | 1990-02-07 |
JP2633635B2 JP2633635B2 (en) | 1997-07-23 |
Family
ID=16210227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP18767888A Expired - Fee Related JP2633635B2 (en) | 1988-07-27 | 1988-07-27 | Control table allocation processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2633635B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05156601A (en) * | 1991-12-04 | 1993-06-22 | Kensetsu Kiso Eng Co Ltd | Road widening construction method |
-
1988
- 1988-07-27 JP JP18767888A patent/JP2633635B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05156601A (en) * | 1991-12-04 | 1993-06-22 | Kensetsu Kiso Eng Co Ltd | Road widening construction method |
Also Published As
Publication number | Publication date |
---|---|
JP2633635B2 (en) | 1997-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0237445A (en) | Assignment processing system for control table | |
JP4723465B2 (en) | Job allocation program and job allocation method | |
JPH05313923A (en) | Exclusive controller for shared resources | |
JPH03141442A (en) | Task control system | |
JP3875371B2 (en) | Job management apparatus and recording medium | |
JPH04219836A (en) | Block control system | |
JPS603229B2 (en) | Information processing method | |
JPH0612395A (en) | Task allocating method in multiprocessor system | |
JP3356090B2 (en) | Memory management method, memory management device, and recording medium | |
JPH04107640A (en) | Computer system | |
JP2001229038A (en) | Multi-operating computer system | |
KR100324264B1 (en) | Method for interrupt masking of real time operating system | |
JPH05113894A (en) | File resource managing system in virtual computer system | |
JPH06187312A (en) | Processing method and its device in multi-cpu system | |
JPH05113893A (en) | Volume resource managing system in virtual computer | |
JPH03257634A (en) | Method and device for parallelly processing program | |
JPS63108448A (en) | Input/output request control system | |
JPH02244228A (en) | Job start control method | |
JPH02126330A (en) | Resources queuing system | |
JPH02120963A (en) | Tss system | |
JPH03189732A (en) | Device controller | |
JPS59163647A (en) | Task control method | |
JPH1063514A (en) | Information processor | |
JPH0492930A (en) | Exclusive control processor | |
JPS63298637A (en) | Buffering queue managing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |