JPH0553779A - プログラム自動生成分散方式 - Google Patents
プログラム自動生成分散方式Info
- Publication number
- JPH0553779A JPH0553779A JP23878191A JP23878191A JPH0553779A JP H0553779 A JPH0553779 A JP H0553779A JP 23878191 A JP23878191 A JP 23878191A JP 23878191 A JP23878191 A JP 23878191A JP H0553779 A JPH0553779 A JP H0553779A
- Authority
- JP
- Japan
- Prior art keywords
- program
- generation
- automatic generation
- automatic
- request data
- 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
Links
Landscapes
- Stored Programmes (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】
【目的】 プログラム自動生成機構を備える計算機を複
数含む計算機ネットワークにおいて、プログラム自動生
成にかかる負荷の分散を可能にする。 【構成】 キュー102 は自計算機又は他計算機からのプ
ログラム自動生成処理依頼データを保存し、生成カウン
タ103 は自動生成手段106が生成中のプログラム自動生
成用のプロセスの数を示している。キュー102 から取り
出されたデータにつき処理受け付け判定手段105 は、生
成カウンタ103 の値が所定値以下のとき又はそれを超え
る値であってもデータに付加された依頼者リストに自プ
ログラム自動生成機構の識別子が含まれているとき受付
可と判定し、自動生成手段106 はそのデータを用いてプ
ログラムの自動生成を行う。上記以外のとき受付不可と
判定され、処理依頼手段107 は依頼リストに自プログラ
ム自動生成機構の識別子を付加したプログラム自動生成
処理依頼データを他の計算機に送って処理を依頼する。
数含む計算機ネットワークにおいて、プログラム自動生
成にかかる負荷の分散を可能にする。 【構成】 キュー102 は自計算機又は他計算機からのプ
ログラム自動生成処理依頼データを保存し、生成カウン
タ103 は自動生成手段106が生成中のプログラム自動生
成用のプロセスの数を示している。キュー102 から取り
出されたデータにつき処理受け付け判定手段105 は、生
成カウンタ103 の値が所定値以下のとき又はそれを超え
る値であってもデータに付加された依頼者リストに自プ
ログラム自動生成機構の識別子が含まれているとき受付
可と判定し、自動生成手段106 はそのデータを用いてプ
ログラムの自動生成を行う。上記以外のとき受付不可と
判定され、処理依頼手段107 は依頼リストに自プログラ
ム自動生成機構の識別子を付加したプログラム自動生成
処理依頼データを他の計算機に送って処理を依頼する。
Description
【0001】
【産業上の利用分野】本発明はプログラム自動生成処理
依頼データに基づきプログラムを自動生成するプログラ
ム自動生成機構を備えた計算機およびそのような計算機
が通信媒体を介して複数接続された計算機ネットワーク
に関し、特にプログラム自動生成処理の分散方式に関す
る。
依頼データに基づきプログラムを自動生成するプログラ
ム自動生成機構を備えた計算機およびそのような計算機
が通信媒体を介して複数接続された計算機ネットワーク
に関し、特にプログラム自動生成処理の分散方式に関す
る。
【0002】
【従来の技術】プログラム自動生成処理依頼データを受
け取ることにより、そのデータに基づきプログラムを自
動生成するプログラム自動生成機構を備えた計算機が報
告されている。
け取ることにより、そのデータに基づきプログラムを自
動生成するプログラム自動生成機構を備えた計算機が報
告されている。
【0003】そして、従来のこの種のプログラム自動生
成機構は、受け取ったプログラム自動生成処理依頼デー
タを保存するキューと、このキューからプログラム自動
生成処理依頼データを取り出す処理待ち合わせ手段と、
この処理待ち合わせ手段でプログラム自動生成処理依頼
データが取り出される毎にプログラム自動生成のための
新たなプロセスを生成しプログラム自動生成を行う自動
生成手段とから構成されている。
成機構は、受け取ったプログラム自動生成処理依頼デー
タを保存するキューと、このキューからプログラム自動
生成処理依頼データを取り出す処理待ち合わせ手段と、
この処理待ち合わせ手段でプログラム自動生成処理依頼
データが取り出される毎にプログラム自動生成のための
新たなプロセスを生成しプログラム自動生成を行う自動
生成手段とから構成されている。
【0004】
【発明が解決しようとする課題】上述したようなプログ
ラム自動生成機構を備える計算機を使用すれば、プログ
ラムの自動生成が可能となり、プログラムの生産効率を
高めることができる。
ラム自動生成機構を備える計算機を使用すれば、プログ
ラムの自動生成が可能となり、プログラムの生産効率を
高めることができる。
【0005】そして、このような計算機を多数設置すれ
ば、より一層プログラムの生産効率が向上するであろう
が、従来のプログラム自動生成機構を備える計算機で
は、自計算機が受け取ったプログラム自動生成処理依頼
データを必ず自計算機のプログラム自動生成機構で受け
付けて処理するようにしているため、特定の計算機に対
してのみ集中的にプログラム自動生成処理依頼データが
与えられると、その計算機の負荷が他の計算機に比べ異
常に高まり、複数の計算機資源の有効利用が図れないと
いう問題点がある。
ば、より一層プログラムの生産効率が向上するであろう
が、従来のプログラム自動生成機構を備える計算機で
は、自計算機が受け取ったプログラム自動生成処理依頼
データを必ず自計算機のプログラム自動生成機構で受け
付けて処理するようにしているため、特定の計算機に対
してのみ集中的にプログラム自動生成処理依頼データが
与えられると、その計算機の負荷が他の計算機に比べ異
常に高まり、複数の計算機資源の有効利用が図れないと
いう問題点がある。
【0006】本発明はこのような事情に鑑みて為された
ものであり、プログラム自動生成にかかる負荷を自動的
に分散することができるようにすることを目的としてい
る。
ものであり、プログラム自動生成にかかる負荷を自動的
に分散することができるようにすることを目的としてい
る。
【0007】
【課題を解決するための手段】本発明は上記の目的を達
成するために、以下の(A),(B)のような構成を採
用している。
成するために、以下の(A),(B)のような構成を採
用している。
【0008】(A)プログラム自動生成処理依頼データ
に基づきプログラムを自動生成するプログラム自動生成
機構を備えた計算機において、受け取ったプログラム自
動生成処理依頼データを保存するキューからプログラム
自動生成処理依頼データを取り出す処理待ち合わせ手段
と、この処理待ち合わせ手段からプログラム自動生成処
理依頼データを受け取り、生成カウンタを参照してその
プログラム自動生成処理依頼データによるプログラム自
動生成処理依頼を受け付けるか否かを判定する処理受け
付け判定手段と、この処理受け付け判定手段により処理
を受け付けると判定されることにより、前記生成カウン
タをインクリメントし、前記処理を受け付けられたプロ
グラム自動生成処理依頼データを用いてプログラムを自
動生成し、自動生成終了時に前記生成カウンタをデクリ
メントする自動生成手段と、前記処理受け付け判定手段
により処理を受け付けないと判定されることにより、プ
ログラム自動生成機構を備える他の計算機に対し前記処
理を受け付けられなかったプログラム自動生成処理依頼
データを送ってプログラム自動生成処理を依頼する処理
依頼手段とを備える構成。
に基づきプログラムを自動生成するプログラム自動生成
機構を備えた計算機において、受け取ったプログラム自
動生成処理依頼データを保存するキューからプログラム
自動生成処理依頼データを取り出す処理待ち合わせ手段
と、この処理待ち合わせ手段からプログラム自動生成処
理依頼データを受け取り、生成カウンタを参照してその
プログラム自動生成処理依頼データによるプログラム自
動生成処理依頼を受け付けるか否かを判定する処理受け
付け判定手段と、この処理受け付け判定手段により処理
を受け付けると判定されることにより、前記生成カウン
タをインクリメントし、前記処理を受け付けられたプロ
グラム自動生成処理依頼データを用いてプログラムを自
動生成し、自動生成終了時に前記生成カウンタをデクリ
メントする自動生成手段と、前記処理受け付け判定手段
により処理を受け付けないと判定されることにより、プ
ログラム自動生成機構を備える他の計算機に対し前記処
理を受け付けられなかったプログラム自動生成処理依頼
データを送ってプログラム自動生成処理を依頼する処理
依頼手段とを備える構成。
【0009】(B)プログラム自動生成処理依頼データ
に基づきプログラムを自動生成するプログラム自動生成
機構を備えた計算機が通信媒体を介して複数接続された
計算機ネットワークにおいて、各計算機のプログラム自
動生成機構に、受け取ったプログラム自動生成処理依頼
データを保存するキューからプログラム自動生成処理依
頼データを取り出す処理待ち合わせ手段と、この処理待
ち合わせ手段からプログラム自動生成処理依頼データを
受け取り、そのプログラム自動生成処理依頼データに付
加された依頼者リストおよび生成カウンタを参照して、
そのプログラム自動生成処理依頼データによるプログラ
ム自動生成処理依頼を受け付けるか否かを判定する処理
受け付け判定手段と、この処理受け付け判定手段により
処理を受け付けると判定されることにより、前記生成カ
ウンタをインクリメントし、前記処理を受け付けられた
プログラム自動生成処理依頼データを用いてプログラム
を自動生成し、自動生成終了時に前記生成カウンタをデ
クリメントする自動生成手段と、前記処理受け付け判定
手段により処理を受け付けないと判定されることによ
り、プログラム自動生成機構を備える他の計算機に対し
前記処理を受け付けられなかったプログラム自動生成処
理依頼データを、その依頼者リストに自プログラム自動
生成機構の識別子を付加して送信し、プログラム自動生
成処理を依頼する処理依頼手段とを備える構成。
に基づきプログラムを自動生成するプログラム自動生成
機構を備えた計算機が通信媒体を介して複数接続された
計算機ネットワークにおいて、各計算機のプログラム自
動生成機構に、受け取ったプログラム自動生成処理依頼
データを保存するキューからプログラム自動生成処理依
頼データを取り出す処理待ち合わせ手段と、この処理待
ち合わせ手段からプログラム自動生成処理依頼データを
受け取り、そのプログラム自動生成処理依頼データに付
加された依頼者リストおよび生成カウンタを参照して、
そのプログラム自動生成処理依頼データによるプログラ
ム自動生成処理依頼を受け付けるか否かを判定する処理
受け付け判定手段と、この処理受け付け判定手段により
処理を受け付けると判定されることにより、前記生成カ
ウンタをインクリメントし、前記処理を受け付けられた
プログラム自動生成処理依頼データを用いてプログラム
を自動生成し、自動生成終了時に前記生成カウンタをデ
クリメントする自動生成手段と、前記処理受け付け判定
手段により処理を受け付けないと判定されることによ
り、プログラム自動生成機構を備える他の計算機に対し
前記処理を受け付けられなかったプログラム自動生成処
理依頼データを、その依頼者リストに自プログラム自動
生成機構の識別子を付加して送信し、プログラム自動生
成処理を依頼する処理依頼手段とを備える構成。
【0010】
【作用】構成(A)においては、プログラム自動生成機
構を備えた計算機にプログラム自動生成処理依頼データ
が与えられキューに保存されると、処理待ち合わせ手段
がキューからプログラム自動生成処理依頼データを取り
出し、処理受け付け判定手段がその取り出されたプログ
ラム自動生成処理依頼データによるプログラム自動生成
処理依頼を受け付けるか否かを、生成カウンタの値に基
づいて判定する。
構を備えた計算機にプログラム自動生成処理依頼データ
が与えられキューに保存されると、処理待ち合わせ手段
がキューからプログラム自動生成処理依頼データを取り
出し、処理受け付け判定手段がその取り出されたプログ
ラム自動生成処理依頼データによるプログラム自動生成
処理依頼を受け付けるか否かを、生成カウンタの値に基
づいて判定する。
【0011】生成カウンタの値が予め定められた値以下
である場合、当該計算機におけるプログラム自動生成処
理の負荷は小さいので、処理受け付け判定手段は処理を
受け付けると判定し、その値より大きい場合は当該計算
機におけるプログラム自動生成処理の負荷が大きいの
で、処理を受け付けないと判定する。
である場合、当該計算機におけるプログラム自動生成処
理の負荷は小さいので、処理受け付け判定手段は処理を
受け付けると判定し、その値より大きい場合は当該計算
機におけるプログラム自動生成処理の負荷が大きいの
で、処理を受け付けないと判定する。
【0012】処理受け付け判定手段が処理を受け付ける
と判定すると、自動生成手段が、生成カウンタをインク
リメントし、前記処理を受け付けられたプログラム自動
生成処理依頼データを用いてプログラムを自動生成し、
自動生成終了時に生成カウンタをデクリメントする。
と判定すると、自動生成手段が、生成カウンタをインク
リメントし、前記処理を受け付けられたプログラム自動
生成処理依頼データを用いてプログラムを自動生成し、
自動生成終了時に生成カウンタをデクリメントする。
【0013】他方、処理受け付け判定手段が処理を受け
付けないと判定すると、処理依頼手段が、プログラム自
動生成機構を備える他の計算機に対し前記処理を受け付
けられなかったプログラム自動生成処理依頼データを送
ってプログラム自動生成処理を依頼する。
付けないと判定すると、処理依頼手段が、プログラム自
動生成機構を備える他の計算機に対し前記処理を受け付
けられなかったプログラム自動生成処理依頼データを送
ってプログラム自動生成処理を依頼する。
【0014】構成(B)においては、プログラム自動生
成機構を備えた計算機に例えばその計算機自体や他の計
算機からプログラム自動生成処理依頼データが与えられ
キューに保存されると、処理待ち合わせ手段がキューか
らプログラム自動生成処理依頼データを取り出し、処理
受け付け判定手段がその取り出されたプログラム自動生
成処理依頼データによるプログラム自動生成処理依頼を
受け付けるか否かを、そのプログラム自動生成処理依頼
データに付加された依頼者リストおよび生成カウンタを
参照して判定する。
成機構を備えた計算機に例えばその計算機自体や他の計
算機からプログラム自動生成処理依頼データが与えられ
キューに保存されると、処理待ち合わせ手段がキューか
らプログラム自動生成処理依頼データを取り出し、処理
受け付け判定手段がその取り出されたプログラム自動生
成処理依頼データによるプログラム自動生成処理依頼を
受け付けるか否かを、そのプログラム自動生成処理依頼
データに付加された依頼者リストおよび生成カウンタを
参照して判定する。
【0015】生成カウンタの値が予め定められた値以下
である場合、当該計算機におけるプログラム自動生成処
理の負荷は小さいので、処理受け付け判定手段は処理を
受け付けると判定する。また、その値より大きい場合は
当該計算機におけるプログラム自動生成処理の負荷が大
きいので、原則として処理を受け付けないと判定する
が、依頼者リストに自プログラム自動生成機構の識別子
が含まれていた場合には当該プログラム自動生成処理依
頼データは以前に自計算機が受け取り負荷が高いために
他の計算機に依頼したものが再び自計算機に戻ってきた
データであるので、処理を受け付けると判定する。
である場合、当該計算機におけるプログラム自動生成処
理の負荷は小さいので、処理受け付け判定手段は処理を
受け付けると判定する。また、その値より大きい場合は
当該計算機におけるプログラム自動生成処理の負荷が大
きいので、原則として処理を受け付けないと判定する
が、依頼者リストに自プログラム自動生成機構の識別子
が含まれていた場合には当該プログラム自動生成処理依
頼データは以前に自計算機が受け取り負荷が高いために
他の計算機に依頼したものが再び自計算機に戻ってきた
データであるので、処理を受け付けると判定する。
【0016】処理受け付け判定手段が処理を受け付ける
と判定すると、自動生成手段が、生成カウンタをインク
リメントし、前記処理を受け付けられたプログラム自動
生成処理依頼データを用いてプログラムを自動生成し、
自動生成終了時に生成カウンタをデクリメントする。
と判定すると、自動生成手段が、生成カウンタをインク
リメントし、前記処理を受け付けられたプログラム自動
生成処理依頼データを用いてプログラムを自動生成し、
自動生成終了時に生成カウンタをデクリメントする。
【0017】他方、処理受け付け判定手段が処理を受け
付けないと判定すると、処理依頼手段が、プログラム自
動生成機構を備える他の計算機に対し前記処理を受け付
けられなかったプログラム自動生成処理依頼データを、
その依頼者リストに自プログラム自動生成機構の識別子
を付加して送信し、プログラム自動生成処理を依頼す
る。
付けないと判定すると、処理依頼手段が、プログラム自
動生成機構を備える他の計算機に対し前記処理を受け付
けられなかったプログラム自動生成処理依頼データを、
その依頼者リストに自プログラム自動生成機構の識別子
を付加して送信し、プログラム自動生成処理を依頼す
る。
【0018】
【実施例】次に本発明の実施例について図面を参照して
詳細に説明する。
詳細に説明する。
【0019】図1を参照すると、本発明のプログラム自
動生成分散方式の一実施例を適用した計算機100は、
キュー102および生成カウンタ103を有する記憶手
段101と、処理待ち合わせ手段104と、処理受け付
け判定手段105と、自動生成手段106と、処理依頼
手段107とから構成されるプログラム自動生成機構を
備えている。
動生成分散方式の一実施例を適用した計算機100は、
キュー102および生成カウンタ103を有する記憶手
段101と、処理待ち合わせ手段104と、処理受け付
け判定手段105と、自動生成手段106と、処理依頼
手段107とから構成されるプログラム自動生成機構を
備えている。
【0020】図1の計算機100において、例えばプロ
グラム自動生成を依頼する図示しないプロセス等からプ
ログラム自動生成処理依頼データが与えられると、その
プログラム自動生成処理依頼データは記憶手段101の
キュー102に保存される。
グラム自動生成を依頼する図示しないプロセス等からプ
ログラム自動生成処理依頼データが与えられると、その
プログラム自動生成処理依頼データは記憶手段101の
キュー102に保存される。
【0021】処理待ち合わせ手段104は、キュー10
2からプログラム自動生成処理依頼データを取り出し、
処理受け付け判定手段105はその取り出されたプログ
ラム自動生成処理依頼データにかかるプログラム自動生
成処理依頼を自計算機100で受け付けるか否かを記憶
手段101の生成カウンタ103の値等に基づいて判定
する。
2からプログラム自動生成処理依頼データを取り出し、
処理受け付け判定手段105はその取り出されたプログ
ラム自動生成処理依頼データにかかるプログラム自動生
成処理依頼を自計算機100で受け付けるか否かを記憶
手段101の生成カウンタ103の値等に基づいて判定
する。
【0022】処理受け付け判定手段105により処理を
受け付けると判定された場合、自動生成手段106は、
生成カウンタ103をインクリメントした後、上記受け
付けられたプログラム自動生成処理依頼データを用いて
プログラムを自動生成し、自動生成の終了時に生成カウ
ンタ103をデクリメントする。
受け付けると判定された場合、自動生成手段106は、
生成カウンタ103をインクリメントした後、上記受け
付けられたプログラム自動生成処理依頼データを用いて
プログラムを自動生成し、自動生成の終了時に生成カウ
ンタ103をデクリメントする。
【0023】他方、処理受け付け判定手段105により
処理を受け付けないと判定された場合、処理依頼手段1
07は、同種のプログラム自動生成機構を備える他の計
算機の同機構に対し上記受け付けられなかったプログラ
ム自動生成処理依頼データを送ってプログラム自動生成
処理を依頼する。
処理を受け付けないと判定された場合、処理依頼手段1
07は、同種のプログラム自動生成機構を備える他の計
算機の同機構に対し上記受け付けられなかったプログラ
ム自動生成処理依頼データを送ってプログラム自動生成
処理を依頼する。
【0024】次に図2乃至図5を参照して、図1の処理
待ち合わせ手段104,処理受け付け判定手段105,
自動生成手段106および処理依頼手段107のより具
体的な動作を説明する。
待ち合わせ手段104,処理受け付け判定手段105,
自動生成手段106および処理依頼手段107のより具
体的な動作を説明する。
【0025】図2は処理待ち合わせ手段104の動作を
説明するフローチャートである。
説明するフローチャートである。
【0026】処理待ち合わせ手段104は、処理の待ち
合わせと当該プログラム自動生成機構全体の動作を制御
している。
合わせと当該プログラム自動生成機構全体の動作を制御
している。
【0027】即ち、処理待ち合わせ手段104は、先
ず、ステップ201でキュー102にプログラム自動生
成処理依頼データが登録されることを待ち合わせる。
ず、ステップ201でキュー102にプログラム自動生
成処理依頼データが登録されることを待ち合わせる。
【0028】キュー102にプログラム自動生成処理依
頼データが登録されたならば、ステップ202でその登
録されたプログラム自動生成処理依頼データを取り出
し、ステップ203において、この取り出したプログラ
ム自動生成処理依頼データを処理受け付け判定手段10
5に渡して処理を受け付けるか否かの判定を行わせる。
頼データが登録されたならば、ステップ202でその登
録されたプログラム自動生成処理依頼データを取り出
し、ステップ203において、この取り出したプログラ
ム自動生成処理依頼データを処理受け付け判定手段10
5に渡して処理を受け付けるか否かの判定を行わせる。
【0029】次に、ステップ204で、処理受け付け判
定手段105の判定結果を評価し、処理を受け付けると
いう判定結果であれば自計算機100のプログラム自動
生成機構でプログラム自動生成を行うためにステップ2
05で自動生成手段106を起動する。他方、処理を受
け付けないという判定結果であれば他の計算機上のプロ
グラム自動生成機構にプログラム自動生成を依頼するた
めにステップ206で処理依頼手段107を起動する。
定手段105の判定結果を評価し、処理を受け付けると
いう判定結果であれば自計算機100のプログラム自動
生成機構でプログラム自動生成を行うためにステップ2
05で自動生成手段106を起動する。他方、処理を受
け付けないという判定結果であれば他の計算機上のプロ
グラム自動生成機構にプログラム自動生成を依頼するた
めにステップ206で処理依頼手段107を起動する。
【0030】なお、処理待ち合わせ手段104は、ステ
ップ205,206を実行すると、ステップ201の処
理に戻る。
ップ205,206を実行すると、ステップ201の処
理に戻る。
【0031】図3は処理受け付け判定手段105の動作
を説明するフローチャートである。
を説明するフローチャートである。
【0032】処理受け付け判定手段105は、処理待ち
合わせ手段104から判定を要求されると、先ず、ステ
ップ301で生成カウンタ103の値が予め定められた
値n以下か否かを判定する。ここで、生成カウンタ10
3は当該プログラム自動生成機構のもとでプログラム自
動生成中のプロセスの数を表している。従って、生成カ
ウンタ103の値がn以下のときは、プログラム自動生
成中のプロセスが少なく負荷が小さいので、このときは
ステップ304で、判定結果としてプログラム自動生成
処理依頼を受け付ける旨を処理待ち合わせ手段104に
返却する。
合わせ手段104から判定を要求されると、先ず、ステ
ップ301で生成カウンタ103の値が予め定められた
値n以下か否かを判定する。ここで、生成カウンタ10
3は当該プログラム自動生成機構のもとでプログラム自
動生成中のプロセスの数を表している。従って、生成カ
ウンタ103の値がn以下のときは、プログラム自動生
成中のプロセスが少なく負荷が小さいので、このときは
ステップ304で、判定結果としてプログラム自動生成
処理依頼を受け付ける旨を処理待ち合わせ手段104に
返却する。
【0033】他方、生成カウンタ103の値がnを超え
るときは、プログラム自動生成中のプロセスが多く負荷
が大きいので、ステップ302に進む。
るときは、プログラム自動生成中のプロセスが多く負荷
が大きいので、ステップ302に進む。
【0034】ステップ302では、今回の判定対象とな
るプログラム自動生成処理依頼データ中から依頼者リス
トを取り出す。そして、ステップ303で、その依頼者
リスト中に当該プログラム自動生成機構の識別コード
(自id)が含まれているか否かを判定し、含まれてい
るときは、当該プログラム自動生成処理依頼データは以
前に処理依頼手段107を用いて他の計算機のプログラ
ム自動生成機構に処理を依頼したものが戻ってきたもの
であるので、ステップ304で判定結果としてプログラ
ム自動生成処理依頼を受け付ける旨を処理待ち合わせ手
段104に返却する。自idが含まれていなければ、ス
テップ305で判定結果としてプログラム自動生成処理
依頼を受け付けない旨を処理待ち合わせ手段104に返
却する。
るプログラム自動生成処理依頼データ中から依頼者リス
トを取り出す。そして、ステップ303で、その依頼者
リスト中に当該プログラム自動生成機構の識別コード
(自id)が含まれているか否かを判定し、含まれてい
るときは、当該プログラム自動生成処理依頼データは以
前に処理依頼手段107を用いて他の計算機のプログラ
ム自動生成機構に処理を依頼したものが戻ってきたもの
であるので、ステップ304で判定結果としてプログラ
ム自動生成処理依頼を受け付ける旨を処理待ち合わせ手
段104に返却する。自idが含まれていなければ、ス
テップ305で判定結果としてプログラム自動生成処理
依頼を受け付けない旨を処理待ち合わせ手段104に返
却する。
【0035】図4は自動生成手段106の動作を説明す
るフローチャートである。
るフローチャートである。
【0036】自動生成手段106は、処理待ち合わせ手
段104から起動されると、先ず、ステップ401でプ
ログラム自動生成を行う子プロセスを生成する。次にス
テップ402で親プロセスと子プロセスの処理を分岐さ
せ、親プロセスならばこのまま自動生成手段の起動元へ
戻る。
段104から起動されると、先ず、ステップ401でプ
ログラム自動生成を行う子プロセスを生成する。次にス
テップ402で親プロセスと子プロセスの処理を分岐さ
せ、親プロセスならばこのまま自動生成手段の起動元へ
戻る。
【0037】他方、子プロセスならば、ステップ403
で生成カウンタ103をインクリメントし、ステップ4
04で処理待ち合わせ手段104から渡されたプログラ
ム自動生成処理依頼データを用いて実際にプログラムの
自動生成を行う。そして、自動生成を終了すると、ステ
ップ405で生成カウンタ103をデクリメントする。
で生成カウンタ103をインクリメントし、ステップ4
04で処理待ち合わせ手段104から渡されたプログラ
ム自動生成処理依頼データを用いて実際にプログラムの
自動生成を行う。そして、自動生成を終了すると、ステ
ップ405で生成カウンタ103をデクリメントする。
【0038】図5は処理依頼手段107の動作を説明す
るフローチャートである。
るフローチャートである。
【0039】処理依頼手段107は、処理待ち合わせ手
段104から起動されると、ステップ501において、
処理待ち合わせ手段104から渡されたプログラム自動
生成処理依頼データの依頼者リストに自プログラム自動
生成機構の識別コード(自id)を追加する。これは、
このプログラム自動生成処理依頼データが再び自プログ
ラム自動生成機構に戻ってきたことを検出できるように
するためである。
段104から起動されると、ステップ501において、
処理待ち合わせ手段104から渡されたプログラム自動
生成処理依頼データの依頼者リストに自プログラム自動
生成機構の識別コード(自id)を追加する。これは、
このプログラム自動生成処理依頼データが再び自プログ
ラム自動生成機構に戻ってきたことを検出できるように
するためである。
【0040】次に、ステップ502において、同種のプ
ログラム自動生成機構を備える他の計算機の同機構に対
し、上記のプログラム自動生成処理依頼データを送って
プログラム自動生成処理を依頼する。
ログラム自動生成機構を備える他の計算機の同機構に対
し、上記のプログラム自動生成処理依頼データを送って
プログラム自動生成処理を依頼する。
【0041】図6は本発明のプログラム自動生成分散方
式を適用した計算機ネットワークの一例を示すブロック
図である。同図に示すように、この例の計算機ネットワ
ークは、4つのホストコンピュータ(以下、ホストと略
す)H1,H2,H3,H4を含み、各々のホストH
1,H2,H3,H4には図1で説明したようなプログ
ラム自動生成機構601,602,603,604が備
わっている。
式を適用した計算機ネットワークの一例を示すブロック
図である。同図に示すように、この例の計算機ネットワ
ークは、4つのホストコンピュータ(以下、ホストと略
す)H1,H2,H3,H4を含み、各々のホストH
1,H2,H3,H4には図1で説明したようなプログ
ラム自動生成機構601,602,603,604が備
わっている。
【0042】ここで、ホストH1のプログラム自動生成
機構601における処理依頼手段107は図5のステッ
プ502における処理の依頼先をホストH2のプログラ
ム自動生成機構602と定め、このプログラム自動生成
機構602における処理依頼手段107は図5のステッ
プ502における処理の依頼先をホストH3のプログラ
ム自動生成機構603と定め、このプログラム自動生成
機構603における処理依頼手段107は図5のステッ
プ502における処理の依頼先をホストH4のプログラ
ム自動生成機構604と定め、このプログラム自動生成
機構604における処理依頼手段107は図5のステッ
プ502における処理の依頼先をホストH1のプログラ
ム自動生成機構601と定めている。
機構601における処理依頼手段107は図5のステッ
プ502における処理の依頼先をホストH2のプログラ
ム自動生成機構602と定め、このプログラム自動生成
機構602における処理依頼手段107は図5のステッ
プ502における処理の依頼先をホストH3のプログラ
ム自動生成機構603と定め、このプログラム自動生成
機構603における処理依頼手段107は図5のステッ
プ502における処理の依頼先をホストH4のプログラ
ム自動生成機構604と定め、このプログラム自動生成
機構604における処理依頼手段107は図5のステッ
プ502における処理の依頼先をホストH1のプログラ
ム自動生成機構601と定めている。
【0043】従って、これらプログラム自動生成機構6
01〜604間にはネットワーク上仮想的に、プログラ
ム自動生成機構601→プログラム自動生成機構602
→プログラム自動生成機構603→プログラム自動生成
機構604→プログラム自動生成機構601と渡るルー
プが構成されていることになる。
01〜604間にはネットワーク上仮想的に、プログラ
ム自動生成機構601→プログラム自動生成機構602
→プログラム自動生成機構603→プログラム自動生成
機構604→プログラム自動生成機構601と渡るルー
プが構成されていることになる。
【0044】次に、プログラム自動生成機構601〜6
04の処理受け付け判定手段105の図3のステップ3
01で用いる、生成カウンタ103と比較するnの値を
0として、図6に示す計算機ネットワーク上におけるプ
ログラム自動生成分散方式の動作を説明する。
04の処理受け付け判定手段105の図3のステップ3
01で用いる、生成カウンタ103と比較するnの値を
0として、図6に示す計算機ネットワーク上におけるプ
ログラム自動生成分散方式の動作を説明する。
【0045】例えばプログラム自動生成にかかるクライ
アント605が、ホストH1のプログラム自動生成機構
601に対しプログラム自動生成処理依頼データを渡し
てプログラム自動生成処理を依頼した場合、プログラム
自動生成機構601の生成カウンタ103の値が0であ
るときは、図3のステップ301によってステップ30
4に移行し、このプログラム自動生成処理依頼はプログ
ラム自動生成機構601によって受け付けられる。
アント605が、ホストH1のプログラム自動生成機構
601に対しプログラム自動生成処理依頼データを渡し
てプログラム自動生成処理を依頼した場合、プログラム
自動生成機構601の生成カウンタ103の値が0であ
るときは、図3のステップ301によってステップ30
4に移行し、このプログラム自動生成処理依頼はプログ
ラム自動生成機構601によって受け付けられる。
【0046】しかし、プログラム自動生成機構601の
生成カウンタ103の値が0より大きいときは、図3の
ステップ301によってステップ302に移行する。そ
して、クライアント605から渡された時点のプログラ
ム自動生成処理依頼データの依頼者リストにはプログラ
ム自動生成機構601のidは含まれていないので(な
お、クライアント605のidは含まれている)、ステ
ップ303からステップ305へ移行し、プログラム自
動生成処理依頼は受け付けられないと判定される。この
結果、図2のステップ204からステップ206へ移行
し、プログラム自動生成機構601の処理依頼手段10
7によってホストH2のプログラム自動生成機構602
に処理が依頼される。なお、このとき、ホストH2のプ
ログラム自動生成機構602に送信されるプログラム自
動生成処理依頼データの依頼者リストにプログラム自動
生成機構601のidが含められる。
生成カウンタ103の値が0より大きいときは、図3の
ステップ301によってステップ302に移行する。そ
して、クライアント605から渡された時点のプログラ
ム自動生成処理依頼データの依頼者リストにはプログラ
ム自動生成機構601のidは含まれていないので(な
お、クライアント605のidは含まれている)、ステ
ップ303からステップ305へ移行し、プログラム自
動生成処理依頼は受け付けられないと判定される。この
結果、図2のステップ204からステップ206へ移行
し、プログラム自動生成機構601の処理依頼手段10
7によってホストH2のプログラム自動生成機構602
に処理が依頼される。なお、このとき、ホストH2のプ
ログラム自動生成機構602に送信されるプログラム自
動生成処理依頼データの依頼者リストにプログラム自動
生成機構601のidが含められる。
【0047】ホストH2のプログラム自動生成機構60
2においては、ホストH1から受信したプログラム自動
生成処理依頼データはキュー102に保存され、以下、
プログラム自動生成機構601と同様の動作が行われ
る。従って、プログラム自動生成機構602の生成カウ
ンタ103の値が0より大きいとすると、ホストH2で
も受け付けられないことになり、そのプログラム自動生
成処理依頼データは次のホストH3のプログラム自動生
成機構603に送信される。以下、このプログラム自動
生成機構603でも受け付けられず、更に次のホストH
4のプログラム自動生成機構604でも受け付けられな
い場合、上記のプログラム自動生成処理依頼データは最
初のホストH1のプログラム自動生成機構601に戻っ
てくることになる。
2においては、ホストH1から受信したプログラム自動
生成処理依頼データはキュー102に保存され、以下、
プログラム自動生成機構601と同様の動作が行われ
る。従って、プログラム自動生成機構602の生成カウ
ンタ103の値が0より大きいとすると、ホストH2で
も受け付けられないことになり、そのプログラム自動生
成処理依頼データは次のホストH3のプログラム自動生
成機構603に送信される。以下、このプログラム自動
生成機構603でも受け付けられず、更に次のホストH
4のプログラム自動生成機構604でも受け付けられな
い場合、上記のプログラム自動生成処理依頼データは最
初のホストH1のプログラム自動生成機構601に戻っ
てくることになる。
【0048】上記のプログラム自動生成処理依頼データ
がホストH1のプログラム自動生成機構601に戻って
きた時点で、プログラム自動生成機構601の生成カウ
ンタ103の値が0であれば当然受け付けられるが、い
まだ0より大きくても受け付けられる。即ち、そのプロ
グラム自動生成処理依頼データの依頼者リストには自プ
ログラム自動生成機構601のidが含まれているの
で、図3のステップ303からステップ304へ移行
し、そのプログラム自動生成処理依頼データを受け付け
るものである。従って、クライアント605のプログラ
ム自動生成処理依頼は結局プログラム自動生成機構60
1で処理されるが、他ホストH2〜H4のプログラム自
動生成機構602〜604がアイドル状態(生成カウン
タ103の値がn以下の状態)であれば、そのアイドル
状態の自動生成機構に処理を依頼することができ、負荷
の分散が可能になる。
がホストH1のプログラム自動生成機構601に戻って
きた時点で、プログラム自動生成機構601の生成カウ
ンタ103の値が0であれば当然受け付けられるが、い
まだ0より大きくても受け付けられる。即ち、そのプロ
グラム自動生成処理依頼データの依頼者リストには自プ
ログラム自動生成機構601のidが含まれているの
で、図3のステップ303からステップ304へ移行
し、そのプログラム自動生成処理依頼データを受け付け
るものである。従って、クライアント605のプログラ
ム自動生成処理依頼は結局プログラム自動生成機構60
1で処理されるが、他ホストH2〜H4のプログラム自
動生成機構602〜604がアイドル状態(生成カウン
タ103の値がn以下の状態)であれば、そのアイドル
状態の自動生成機構に処理を依頼することができ、負荷
の分散が可能になる。
【0049】
【発明の効果】以上説明したように、本発明によれば、
プログラム自動生成機構を備える計算機において、自計
算機のプログラム自動生成処理にかかる負荷が高いとき
には与えられたプログラム自動生成処理依頼データを自
計算機で処理せず同種のプログラム自動生成機構を備え
る他の計算機に送信して処理を依頼することができるの
で、プログラム自動生成機構を備えた複数の計算機が存
在する計算機ネットワークにおいて、プログラム自動生
成処理にかかる負荷を自動的に分散することができる効
果がある。
プログラム自動生成機構を備える計算機において、自計
算機のプログラム自動生成処理にかかる負荷が高いとき
には与えられたプログラム自動生成処理依頼データを自
計算機で処理せず同種のプログラム自動生成機構を備え
る他の計算機に送信して処理を依頼することができるの
で、プログラム自動生成機構を備えた複数の計算機が存
在する計算機ネットワークにおいて、プログラム自動生
成処理にかかる負荷を自動的に分散することができる効
果がある。
【0050】また、他の計算機に処理を依頼する際にプ
ログラム自動生成処理依頼データの依頼者リストに自プ
ログラム生成機構の識別子を付加し、処理を受け付ける
か否かを判定する際に依頼者リストを参照し、若しその
中に自プログラム生成機構の識別子が含まれていれば、
自計算機のプログラム自動生成処理にかかる負荷が小さ
くない場合であってもそのプログラム自動生成処理依頼
データを受け付けるようにしたので、負荷が大きかった
ことから他の計算機に処理を依頼したが他の計算機の負
荷も大きいことからまわりまわって自計算機に戻ってき
たようなプログラム自動生成処理依頼データについての
受け付けが可能となり、プログラム自動生成処理依頼デ
ータが計算機ネットワーク上をたらいまわしにされるこ
とを防止できる。
ログラム自動生成処理依頼データの依頼者リストに自プ
ログラム生成機構の識別子を付加し、処理を受け付ける
か否かを判定する際に依頼者リストを参照し、若しその
中に自プログラム生成機構の識別子が含まれていれば、
自計算機のプログラム自動生成処理にかかる負荷が小さ
くない場合であってもそのプログラム自動生成処理依頼
データを受け付けるようにしたので、負荷が大きかった
ことから他の計算機に処理を依頼したが他の計算機の負
荷も大きいことからまわりまわって自計算機に戻ってき
たようなプログラム自動生成処理依頼データについての
受け付けが可能となり、プログラム自動生成処理依頼デ
ータが計算機ネットワーク上をたらいまわしにされるこ
とを防止できる。
【図1】本発明のプログラム自動生成分散方式の一実施
例を適用した計算機のブロック図である。
例を適用した計算機のブロック図である。
【図2】処理待ち合わせ手段の動作を説明するフローチ
ャートである。
ャートである。
【図3】処理受け付け判定手段の動作を説明するフロー
チャートである。
チャートである。
【図4】自動生成手段の動作を説明するフローチャート
である。
である。
【図5】処理依頼手段の動作を説明するフローチャート
である。
である。
【図6】本発明のプログラム自動生成分散方式を適用し
た計算機ネットワークの一例を示すブロック図である。
た計算機ネットワークの一例を示すブロック図である。
100…計算機 101…記憶手段 102…キュー 103…生成カウンタ 104…処理待ち合わせ手段 105…処理受け付け判定手段 106…自動生成手段 107…処理依頼手段 H1〜H4…ホストコンピュータ 601〜604…プログラム自動生成機構 605…クライアント
Claims (2)
- 【請求項1】 プログラム自動生成処理依頼データに基
づきプログラムを自動生成するプログラム自動生成機構
を備えた計算機において、 受け取ったプログラム自動生成処理依頼データを保存す
るキューからプログラム自動生成処理依頼データを取り
出す処理待ち合わせ手段と、 該処理待ち合わせ手段からプログラム自動生成処理依頼
データを受け取り、生成カウンタを参照してそのプログ
ラム自動生成処理依頼データによるプログラム自動生成
処理依頼を受け付けるか否かを判定する処理受け付け判
定手段と、 該処理受け付け判定手段により処理を受け付けると判定
されることにより、前記生成カウンタをインクリメント
し、前記処理を受け付けられたプログラム自動生成処理
依頼データを用いてプログラムを自動生成し、自動生成
終了時に前記生成カウンタをデクリメントする自動生成
手段と、 前記処理受け付け判定手段により処理を受け付けないと
判定されることにより、プログラム自動生成機構を備え
る他の計算機に対し前記処理を受け付けられなかったプ
ログラム自動生成処理依頼データを送ってプログラム自
動生成処理を依頼する処理依頼手段とを有することを特
徴とするプログラム自動生成分散方式。 - 【請求項2】 プログラム自動生成処理依頼データに基
づきプログラムを自動生成するプログラム自動生成機構
を備えた計算機が通信媒体を介して複数接続された計算
機ネットワークにおいて、 各計算機のプログラム自動生成機構に、 受け取ったプログラム自動生成処理依頼データを保存す
るキューからプログラム自動生成処理依頼データを取り
出す処理待ち合わせ手段と、 該処理待ち合わせ手段からプログラム自動生成処理依頼
データを受け取り、そのプログラム自動生成処理依頼デ
ータに付加された依頼者リストおよび生成カウンタを参
照して、そのプログラム自動生成処理依頼データによる
プログラム自動生成処理依頼を受け付けるか否かを判定
する処理受け付け判定手段と、 該処理受け付け判定手段により処理を受け付けると判定
されることにより、前記生成カウンタをインクリメント
し、前記処理を受け付けられたプログラム自動生成処理
依頼データを用いてプログラムを自動生成し、自動生成
終了時に前記生成カウンタをデクリメントする自動生成
手段と、 前記処理受け付け判定手段により処理を受け付けないと
判定されることにより、プログラム自動生成機構を備え
る他の計算機に対し前記処理を受け付けられなかったプ
ログラム自動生成処理依頼データを、その依頼者リスト
に自プログラム自動生成機構の識別子を付加して送信
し、プログラム自動生成処理を依頼する処理依頼手段と
を備えることを特徴とするプログラム自動生成分散方
式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23878191A JPH0553779A (ja) | 1991-08-26 | 1991-08-26 | プログラム自動生成分散方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23878191A JPH0553779A (ja) | 1991-08-26 | 1991-08-26 | プログラム自動生成分散方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0553779A true JPH0553779A (ja) | 1993-03-05 |
Family
ID=17035186
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP23878191A Pending JPH0553779A (ja) | 1991-08-26 | 1991-08-26 | プログラム自動生成分散方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0553779A (ja) |
-
1991
- 1991-08-26 JP JP23878191A patent/JPH0553779A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7076781B2 (en) | Resource reservation for large-scale job scheduling | |
| US5987502A (en) | Workload management in an asynchronous client/server computer system | |
| US8621031B2 (en) | Method and apparatus using connection pools in communication networks | |
| US7272834B2 (en) | Method for continuous I/O request processing in an asynchronous environment | |
| US8024744B2 (en) | Method and system for off-loading user queries to a task manager | |
| JPH10500509A (ja) | オペレーティングシステムにおけるイベント分配装置及び方法 | |
| JP2004038758A (ja) | 記憶制御装置、記憶制御装置の制御方法、及びプログラム | |
| US6038664A (en) | Method for selecting communication access method for local area networks | |
| EP1450256B1 (en) | Inter-task communications method, program, recording medium, and electronic device | |
| JPH0553779A (ja) | プログラム自動生成分散方式 | |
| US20030229725A1 (en) | System and method for triggering message queue applications | |
| JP4151330B2 (ja) | ネットワークファイルシステム用i/o制御方法 | |
| JP2008544371A (ja) | ロック関連の一貫性欠如を処理する方法 | |
| JPH076110A (ja) | 分散処理システムの通信オーバヘッド低減方法 | |
| JP2829908B2 (ja) | サーバプログラム実行制御方式 | |
| JP3266641B2 (ja) | 制御装置およびメールサーバ | |
| JPH09274583A (ja) | 管理情報格納装置 | |
| JPH06266643A (ja) | サーバプログラム管理方法 | |
| CN115712507B (zh) | 一种计算船舶网关任务优先级的方法 | |
| JPH1165912A (ja) | 並列処理データベースシステム | |
| JP2004348233A (ja) | ファイル共有システム及びサーバー並びにプログラム | |
| JP2000148639A (ja) | データ送信制御方法およびデータ送信制御プログラムを記録した記録媒体 | |
| US8392546B2 (en) | Distributed managed system, system components, and methods of communicating commands | |
| JP2877028B2 (ja) | プリントジョブ制御方式 | |
| JP2879769B2 (ja) | サーバプログラム実行方法 |