JPH1049374A - 分散オブジェクトおよびその生成方法 - Google Patents

分散オブジェクトおよびその生成方法

Info

Publication number
JPH1049374A
JPH1049374A JP8206823A JP20682396A JPH1049374A JP H1049374 A JPH1049374 A JP H1049374A JP 8206823 A JP8206823 A JP 8206823A JP 20682396 A JP20682396 A JP 20682396A JP H1049374 A JPH1049374 A JP H1049374A
Authority
JP
Japan
Prior art keywords
task
server
distributed object
tasks
generated
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
JP8206823A
Other languages
English (en)
Inventor
Hiroki Tanaka
博樹 田中
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP8206823A priority Critical patent/JPH1049374A/ja
Publication of JPH1049374A publication Critical patent/JPH1049374A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 分散オブジェクトにおけるオペレーション処
理のリアルタイム性確保とメモリなどのシステム資源の
有効利用とを同時に図ることができない。 【解決手段】 分散オブジェクト1の生成から消去まで
存在する所定数のロングライフサーバタスク(LST)
L1〜Lnと、全LSTがオペレーション実行中に新た
なオペレーション要求を受け付けた時点で生成され、受
け付けたオペレーションを実行した後、LSTが待機中
になっていれば消去されるショートライフサーバタスク
(SST)S1〜Snと、オペレーション要求を受け付
け、このオペレーションを割り当て可能な待機中のLS
Tの有無を判別し、待機中のLSTにオペレーションを
割り当て、待機中のLSTが無ければSSTを生成し、
要求を受け付けたオペレーションを割り当てる管理タス
ク2とを有する分散オブジェクト。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、異なるメーカのハ
ードウェアやソフトウェアを一つのネットワーク上で統
一的に管理・運用する、いわゆるマルチベンダの分散コ
ンピューティング環境を実現する分散オブジェクト技術
に係り、特に、クライアントから要求されたオペレーシ
ョンのリアルタイム性の確保や、メモリなどのシステム
資源の有効利用に好適な分散オブジェクトおよびその生
成方法に関するものである。
【0002】
【従来の技術】分散オブジェクトは、例えば、「日経エ
レクトロニクス 1992・1−20(no.54
5)」(日経BP社、1992年発行)の第125頁〜
第139頁に記載のように、分散処理にオブジェクト指
向プログラムを利用することにより、ネットワーク上の
複数ベンダのアプリケーションを、ネットワーク上の任
意のコンピュータからでも使用できるようにする技術で
ある。この分散オブジェクト技術による分散処理環境上
では、クライアントは、ネットワーク内に分散配備され
た分散オブジェクトに、必要に応じて、オペレーション
を要求し、ユーザの所望するサービスを実行する。
【0003】このような分散処理環境において、複数の
クライアントから一つの分散オブジェクトへ要求された
サービスを実行する場合には、以下のような場合に対処
するため、一つの分散オブジェクト内で並列に処理を実
行する必要がある。 (A)クライアントからの処理要求の度に必要な処理時
間が変動する場合 (B)データ格納装置のデータ入出力時間により、一つ
の処理の実行に多くの時間を要する場合 このような処理並列性を有する分散オブジェクトは、サ
ービス処理装置が提供する並列処理単位であるタスク
(「プロセス」、「スレッド」等ともいう)を用いて、
図8〜図10で示すような3つの技術により、クライア
ントから要求されたオペレーションを実行する。
【0004】図8は、従来の要求駆動型の並列性を有す
る分散オブジェクトの構成および動作例を示す説明図で
ある。分散オブジェクト10は、クライアントからのオ
ペレーション要求101(メッセージ)を受け付ける要
求受付タスク11と、要求されたオペレーションを実行
する要求処理実行タスク12,13からなる。要求受付
タスク11は、分散オブジェクト10の生成時に生成さ
れ、かつ、分散オブジェクト10の消去時に消去され
る。
【0005】要求受付タスク11は、クライアントから
のオペレーション要求101を受け付けると、生成手続
き102により、要求処理実行タスク12,13を生成
し、そのタスク13にオペレーションを実行させ、自身
は、再び、クライアントからのオペレーション要求10
1の待ち状態に入る。要求処理実行タスク12,13
は、要求されたオペレーションを実行終了すると、自身
を消去する。
【0006】図9は、従来のタスク事前割り当て型の並
列性を有する分散オブジェクトの構成および動作例を示
す説明図である。分散オブジェクト20は、要求受付タ
スク21と、要求処理実行タスク22〜25からなる。
この要求処理実行タスク22〜25は、分散オブジェク
トの生成時に予め生成され、また、分散オブジェクトの
消去時に一括して消去される。要求待ち状態の要求受付
タスク21は、クライアントからオペレーション要求2
01を受けると、生成済みの要求処理実行タスク22〜
25から一つを選定し、そのタスクにオペレーションを
実行させ、自身は、再び、クライアントからの要求待ち
状態に入る。
【0007】図10は、従来の遅延タスク割り当て型の
並列性を有する分散オブジェクトの構成および動作例を
示す説明図である。分散オブジェクト30は、要求受付
実行タスク31と、要求処理実行タスク32,33から
なる。ただし、要求待ち状態の要求受付実行タスク31
は、クライアントからオペレーション要求301を受け
ると、自身でそのオペレーションを実行する。しかし、
要求受付実行タスク31が、指定された時間内にオペレ
ーションを実行し終えなかった場合には、要求受付実行
タスク31で実行中の処理を中止し、生成手続き302
で要求処理実行タスク32,33を生成し、その要求処
理実行タスク32,33にそのオペレーションを実行さ
せる。
【0008】上述の図8〜図10で示した各分散オブジ
ェクトには、次のような利点と欠点がある。まず、図8
で示した分散オブジェクトでは、オペレーション要求時
に要求処理実行タスク12,13を生成するため、メモ
リなどのシステム資源を有効利用することができる。し
かし、分散オブジェクトのオペレーション要求受付時
に、要求処理実行タスク12,13の生成/初期化に伴
う時間的オーバヘッドが生じる。そのため、オペレーシ
ョン処理のリアルタイム性確保の点で好ましくない。
【0009】クライアントから見たオペレーション応答
時間におけるこのオーバヘッド(OH)の割合は以下の
ように表される。 OH=T/(T+D+O) ただし、T:タスク生成/初期化時間 D:クライアントと分散オブジェクト間の通信に要する
時間 O:分散オブジェクトでのオペレーション実行時間 DとOに対してTの割合が大きくなる場合には、特に、
Tのオーバヘッドは無視できなくなる。
【0010】次に、図9で示した分散オブジェクトで
は、予め指定の数の要求処理実行タスク22〜25を生
成しておくので、図8における技術が有するオペレーシ
ョン要求受付時の要求処理実行タスク12,13の生成
に伴う時間的オーバヘッドを除くことができる。しか
し、オペレーション要求の頻度が大きく、各々のオペレ
ーション実行時間が大きい時には、予め指定された数の
要求処理実行タスク22〜25で、要求を受け付けた全
てのオペレーションを実行することができない可能性が
ある。
【0011】また、各々の分散オブジェクトへのオペレ
ーション要求頻度が小さい時に、要求待ちの要求処理実
行タスク22〜25の数、すなわち、システム資源を使
いながらオペレーション実行に寄与しない要求処理実行
タスク22〜25の数が多くなるため、システム資源の
有効利用が難しくなる。特に、多種の通信/計算サービ
スのアプリケーションを搭載するノード上では、多種か
つ多数の分散オブジェクトが動作することが想定され、
一つのノード上で動作させうる要求処理実行タスク数は
有限であるため、個々の分散オブジェクト対応に要求処
理実行タスク数を予め十分多く確保しておくことは難し
い。
【0012】図10で示した技術では、各々のオペレー
ション実行時間が小さい場合には、要求処理実行タスク
32,33の生成に伴う時間的オーバヘッドなしに、し
かも、適切な要求処理実行タスク数を動作させながら、
クライアントから要求されたオペレーションを実行する
ことができる。しかし、各々のオペレーション実行時間
が大きい場合には、要求受付実行タスク31での実行中
の処理を中止して、要求処理実行タスク32,33を生
成し、その要求処理実行タスク32,33に再度、同一
オペレーションを実行させる頻度が大きくなる。この場
合には、図8〜図10に示す各技術の中で、時間的オー
バヘッドが最も大きくなり、図8における技術と同様、
オペレーション処理のリアルタイム性確保が困難とな
る。
【0013】
【発明が解決しようとする課題】解決しようとする問題
点は、従来の技術では、オペレーション処理のリアルタ
イム性とメモリなどのシステム資源の有効利用とを同時
に図ることができない点である。本発明の目的は、これ
ら従来技術の課題を解決し、サーバタスク生成に伴うオ
ーバヘッド除去とシステム資源の有効利用の点でより有
効となる分散オブジェクトおよびその生成方法を提供す
ることである。
【0014】
【課題を解決するための手段】上記目的を達成するた
め、本発明の分散オブジェクトは、(1)自分散オブジ
ェクト1の生成時に所定の数だけ生成され、自分散オブ
ジェクト1の消去時まで存続し、オペレーションを実行
するロングライフサーバタスクL1〜Lnと、オペレー
ション要求の受付時、ロングライフサーバタスクL1〜
Lnの全てが既に他のオペレーションを実行中である場
合に生成され、受け付けたオペレーションを実行し、こ
のオペレーションの実行完了後、ロングライフサーバタ
スクL1〜Lnで実行できない他のオペレーションの要
求が存在しない場合に消去されるショートライフサーバ
タスクS1〜Snと、オペレーション要求を受け付け、
この要求を受け付けたオペレーションを割り当て可能な
待機中のロングライフサーバタスクL1〜Lnの有無を
判別し、待機中のロングライフサーバタスクL1〜Ln
が有れば、このロングライフサーバタスクL1〜Ln
に、要求を受け付けたオペレーションを割り当て、待機
中のロングライフサーバタスクL1〜Lnが無ければ、
ショートライフサーバタスクS1〜Snを生成し、この
ショートライフサーバタスクS1〜Snに、要求を受け
付けたオペレーションを割り当てる管理タスク2とを有
することを特徴とする。また、(2)上記(1)に記載
の分散オブジェクトにおいて、自分散オブジェクト1で
生成できるロングライフサーバタスクL1〜Lnの所定
の数と、ロングライフサーバタスクL1〜Lnおよびシ
ョートライフサーバタスクS1〜Snの総数と、ロング
ライフサーバタスクL1〜Lnがオペレーションを実行
中であるか待機中であるかを示す状態情報とを少なくと
も登録するサーバタスク情報テーブル4を設け、管理タ
スク2は、サーバタスク情報テーブル4に登録した内容
に基づき、ショートライフサーバタスクS1〜Snの生
成を制御することを特徴とする。また、(3)上記
(1)もしくは(2)のいずれかに記載の分散オブジェ
クトにおいて、自分散オブジェクト1で生成できるロン
グライフサーバタスクL1〜Lnおよびショートライフ
サーバタスクS1〜Snの総数を超える数のオペレーシ
ョン要求の受付時、この受け付けたオペレーションを、
このオペレーションに予め付与されている処理の優先度
レベル別に、かつ、各々の優先度レベル内で受付順に並
べて登録するオペレーション要求キュー3を設け、管理
タスク2は、オペレーション要求キュー3に登録した優
先度レベル順および受付順で、自分散オブジェクト1で
生成できるロングライフサーバタスクL1〜Lnおよび
ショートライフサーバタスクS1〜Snの総数を超えて
受け付けたオペレーションを、他のオペレーションの実
行を完了したロングライフサーバタスクL1〜Lnある
いはショートライフサーバタスクS1〜Snに割り付け
ることを特徴とする。また、(4)本発明の分散オブジ
ェクトの生成方法は、自分散オブジェクトの生成時に、
ロングライフサーバタスクL1〜Lnを所定の数だけ生
成し(ステップA1)、オペレーション要求の受付時
(ステップA3)、所定の数だけ生成したロングライフ
サーバタスクL1〜Lnの全てが既に他のオペレーショ
ンを実行中である場合に(ステップA6,A7)、受け
付けたオペレーションを実行するショートライフサーバ
タスクS1〜Snを生成し(ステップA8)、生成した
ショートライフサーバタスクS1〜Snによるオペレー
ションの実行完了後(ステップA11)、ステップA1
で所定の数だけ生成したロングライフサーバタスクL1
〜Lnで実行しきれない他のオペレーションの要求が存
在しない場合、ステップA8で生成したショートライフ
サーバタスクS1〜Snを消去する(ステップA13)
各処理を少なくとも行なうことを特徴とする。また、
(5)上記(4)に記載の分散オブジェクト生成方法に
おいて、ステップA1で生成するロングライフサーバタ
スクL1〜Lnの所定の数と、自分散オブジェクトで生
成できるサーバタスク(ロングライフサーバタスクL1
〜Ln+ショートライフサーバタスクS1〜Sn)の総
数と、ステップA1で生成した各ロングライフサーバタ
スクL1〜Lnがオペレーションを実行中であるか待機
中であるかを示す状態情報(サーバタスクの状態)とを
少なくとも登録し、この登録した内容に基づき、ステッ
プA8におけるショートライフサーバタスクS1〜Sn
の生成を制御することを特徴とする。また、(6)上記
(4)もしくは(5)のいずれかに記載の分散オブジェ
クト生成方法において、自分散オブジェクトで生成でき
るサーバタスク(ロングライフサーバタスクL1〜Ln
+ショートライフサーバタスクS1〜Sn)の総数を超
える数のオペレーション要求の受付時、このオペレーシ
ョンを、このオペレーションに予め付与されている処理
の優先度レベル別に、かつ、各々の優先度レベル内で受
付順に並べて登録し(ステップA20)、この登録した
優先度レベル順および受付順で、自分散オブジェクトで
生成できるサーバタスクの総数を超えて受け付けたオペ
レーションを、他のオペレーションの実行を完了したサ
ーバタスク、すなわちロングライフサーバタスクL1〜
Ln、もしくは、+ショートライフサーバタスクS1〜
Snに割り付けることを特徴とする。
【0015】
【発明の実施の形態】本発明においては、分散オブジェ
クトの生成時に、指定の数の要求処理実行タスク(ロン
グライフサーバタスク)を生成し、分散オブジェクトの
消去まで存続させておくと共に、必要に応じて、すなわ
ち、全てのロングライフサーバタスクが既に他のオペレ
ーションを実行中に新たなオペレーション要求を受け付
けた場合に、そのオペレーションを実行する要求処理実
行タスク(ショートライフサーバタスク)を生成する。
このように、分散オブジェクトの生成から消去まで存続
し、必要メモリなどのシステム資源を使いながらオペレ
ーション実行に寄与しない可能性のある要求処理実行タ
スク(ロングライフサーバタスク)の数を制限すること
により、システム資源の有効利用を図ることができる。
また、必要に応じて要求処理実行タスク(ショートライ
フサーバタスク)を生成するので、オペレーション処理
のリアルタイム性を確保することができる。
【0016】以下、本発明に係る実施例を、図面により
詳細に説明する。図1は、本発明の分散オブジェクトの
本発明に係る構成の一実施例を示すブロック図である。
本例の分散オブジェクト(図中、分散OBJと記載)1
は、リアルタイムに計算/通信サービスを実現するサー
ビス処理装置上で動作するものであり、各々の計算/通
信サービスは、サービス処理機能の構成要素である分散
オブジェクトどうしが、既定の手順に従いメッセージを
交信し合った結果として提供される。
【0017】そして、本例の分散オブジェクト1は、自
分散オブジェクト1の生成時から消去時まで存続するロ
ングライフサーバタスク(図中、LSTと記載)L1〜
Lnと、必要に応じて一時的に、すなわち、全てのロン
グライフサーバタスクL1〜Lnが既にそれぞれのオペ
レーションを実行中に新たなオペレーション要求を受け
付けた場合にのみ生成されるショートライフサーバタス
ク(図中、SSTと記載)S1〜Snと、オペレーショ
ン要求を受け付けて各オペレーションをロングライフサ
ーバタスクL1〜Ln、もしくは、必要に応じて生成し
たショートライフサーバタスクS1〜Snに割り当てる
管理タスク2とを有し、並列に複数のオペレーションを
実行する。
【0018】ロングライフサーバタスクL1〜Lnは、
分散オブジェクト1の生成時に所定の数だけ生成され、
分散オブジェクト1の消去時まで存続し、その間、管理
タスク2から割り当てられたオペレーションを実行す
る。管理タスク2は、クライアントからのメッセージ
(オペレーション要求)を受け付け、当該するオペレー
ションを、待機中のロングライフサーバタスクL1〜L
nのいずれかに割り当てると共に、待機中のロングライ
フサーバタスクL1〜Lnが無い場合には、ショートラ
イフサーバタスクS1〜Snを生成してオペレーション
を割り当てる。ショートライフサーバタスクS1〜Sn
は、管理タスク2から割り当てられたオペレーションを
実行した後、管理タスク2がロングライフサーバタスク
L1〜Lnに割り当て切れない他のオペレーションの要
求が存在しない場合に消去される。
【0019】管理タスク2は、オペレーション要求キュ
ー3とサーバタスク情報テーブル(図中、ST情報テー
ブルと記載)4を有している。このオペレーション要求
キュー3は、各々のオペレーションが有するその優先度
を示すオペレーションレベル別に設けられ、各レベル別
に、各オペレーション要求を、その受け付け順に登録す
る。
【0020】また、サーバタスク情報テーブル4には、
次の図2に示すように、生成できるロングライフサーバ
タスクL1〜Lnの所定の数と、分散オブジェクト1で
生成できるロングライフサーバタスクL1〜Lnおよび
ショートライフサーバタスクS1〜Snの総数、そし
て、ロングライフサーバタスクL1〜Lnがオペレーシ
ョンを実行中であるか待機中であるかを示す状態情報と
が少なくとも登録され、管理タスク2は、このサーバタ
スク情報テーブル4に登録した内容に基づき、ショート
ライフサーバタスクS1〜Snの生成を行なう。
【0021】図2は、図1におけるサーバタスク情報テ
ーブルの本発明に係る構成例を示す説明図である。本図
2(a),(b)に示すように、図1の管理タスク2の
サーバタスク情報テーブル4には、図1の分散オブジェ
クト1が用いることのできるロングライフサーバタスク
数(図中、「LST数」と記載)と最大サーバタスク数
(ロングライフサーバタスク+ショートライフサーバタ
スクの最大数で、図中、「最大ST数」と記載)が保持
される。さらに、オペレーションの実行を割り当て得る
各サーバタスク(ロングライフサーバタスク,ショート
ライフサーバタスク)についての以下の情報が登録され
る。
【0022】サーバタスクの識別情報(図中、「STの
ID」と記載され、「1」〜「5」が示されている) サーバタスクの種別(図中、ST種別と記載され、「L
ST(ロングライフサーバタスク)」、「SST(ショ
ートライフサーバタスク)」が示されている) サーバタスクの状態(各サーバタスクがオペレーション
を実行中であるか待機中であるかを示す) オペレーション名(オペレーション実行中の場合にその
オペレーション名を示し、図中、「opC」、「op
A」、「opB」が記載されている) オペレーションレベル(オペレーション実行中の場合
に、そのオペレーションの優先度を示し、図中、「1」
〜「3」が記載されている)
【0023】オペレーションレベルは、そのオペレーシ
ョン自体がリアルタイム性を要求するかどうか、およ
び、クライアントが要求するオペレーション実行の緊急
性を表すものである。このようなサーバタスク情報と、
図1のオペレーション要求キュー3とを具備する図1の
管理タスク2により、次の図3〜図7で示すようにし
て、オペレーション実行のためのサーバタスクの割り当
てを制御することで、分散オブジェクト単位での、オペ
レーション処理のリアルタイム性の確保、および、メモ
リなどのシステム資源の有効利用を図ることができる。
【0024】図3乃至図7は、本発明の分散オブジェク
ト生成方法の本発明に係る手順の一実施例を示すフロー
チャートである。本例は、分散オブジェクト(図中、分
散OBJと記載)を生成して、クライアントから要求さ
れたオペレーションを実行し、最終的に分散オブジェク
トを消去するまでの手順を示しており、まず、図3にお
いて示すように、管理タスクとロングライフサーバタス
クを生成し、管理タスク内のオペレーション要求キュー
とサーバタスク情報テーブルを初期化することで、分散
オブジェクトを生成/初期化する(ステップA1)。
【0025】尚、ここで、分散オブジェクト生成用パラ
メタとして、管理タスクを生成する時に、最大サーバタ
スク(ST)数とロングライフサーバタスク(LST)
数を指定しておく。この最大サーバタスク数(M)とロ
ングライフサーバタスク数(L)、および、生成できる
最大ショートライフサーバタスク数(S)の間には以下
の関係がある。 S=M−L ただし、M,Lは自然数、Sは0以上の整数
【0026】このようにして分散オブジェクトの生成/
初期化を終えると、分散オブジェクトは、クライアント
からのオペレーション要求待ち状態になる(ステップA
2)。分散オブジェクトへのオペレーション要求受付を
行なう管理タスクは、クライアントからのオペレーショ
ン要求を受ける(ステップA3)と、そのオペレーショ
ン要求が分散オブジェクト自身の消去要求であった場合
(ステップA4)、管理タスクは、自身とロングライフ
サーバタスクを消去することで分散オブジェクトを消去
する(ステップA5)。
【0027】ステップA4において、オペレーション要
求が分散オブジェクト自身の消去要求でない場合、管理
タスクは、オペレーション実行可能なロングライフサー
バタスクあるいはショートライフサーバタスクを選定す
るため、自身が保持するサーバタスク情報テーブルを調
べる(ステップA6,A7)。このサーバタスク情報テ
ーブルのデータにより、以後の処理は、以下の(i)〜
(iii)の3つの場合に分けられる。
【0028】(i)まず、既に最大数のサーバタスクが
オペレーションを実行している場合(サーバタスク情報
テーブルが図2(a)の状態に相当)、すなわち、オペ
レーションを実行しているタスク数がサーバタスク情報
テーブル上の最大サーバタスク数に等しい場合(ステッ
プA6)、図6に示すように、オペレーション要求を、
そのオペレーションレベルに合うオペレーション要求キ
ューに入れる(ステップA20)。
【0029】ロングライフサーバタスクあるいはショー
トライフサーバタスクの何れかが、前に実行していたオ
ペレーションを終了する(ステップA21)と、管理タ
スクは、キューに登録されたオペレーション要求を取り
出し(ステップA22)、そのロングライフサーバタス
クあるいはショートライフサーバタスクに関するサーバ
タスク情報テーブル上のオペレーション名とそのレベル
のデータを更新し(ステップA23)、取り出したオペ
レーション要求を、そのロングライフサーバタスクある
いはショートライフサーバタスクに処理(実行)させる
(ステップA24)。
【0030】そして、図7に示すように、ロングライフ
サーバタスクあるいはショートライフサーバタスクでの
オペレーションの実行が終了すると(ステップA2
5)、管理タスクは、オペレーション要求キューに別の
オペレーション要求が存在するか否かを調べる(ステッ
プA26)。オペレーション要求キューが存在する場
合、図6におけるステップ22に戻り、このキューに登
録されたオペレーション要求の取り出し手続きから同じ
手順を繰り返す。また、ステップA26においてオペレ
ーション要求が存在しない場合、管理タスクは、オペレ
ーションを実行したサーバタスクがロングライフサーバ
タスクかショートライフサーバタスクかを調べる(ステ
ップA27)。
【0031】オペレーションを実行したサーバタスクが
ロングライフサーバタスクであった場合、サーバタスク
情報テーブル上のロングライフサーバタスクに関する状
態データを「待機中」に変更し、オペレーション名とオ
ペレーションレベルのデータを削除する(ステップA2
8)。そして、そのロングライフサーバタスクを待機状
態にし、再び、図3におけるステップA2に戻り、クラ
イアントからのオペレーション要求を待つ。
【0032】また、ステップA27においてオペレーシ
ョンを実行したサーバタスクがショートライフサーバタ
スクであった場合、図5におけるステップ13に移り、
管理タスクは、そのショートライフサーバタスクを消去
し(ステップA13)、サーバタスク情報テーブル上の
そのショートライフサーバタスクに関するデータを全て
削除する(ステップA14)。その後に、再び、図3に
おけるステップA2に戻り、管理タスクは、クライアン
トからのオペレーション要求を待つ。
【0033】(ii)次に、待機中のロングライフサーバ
タスクが存在する場合(サーバタスク情報テーブルが図
2(b)の状態に相当)、すなわち、図4におけるステ
ップA7において「yes」の場合、管理タスクは、サー
バタスク情報テーブル上の、その待機中のロングライフ
サーバタスクに関する情報、すなわちオペレーション名
およびオペレーションレベルのデータを登録し(ステッ
プA15)、そのロングライフサーバタスクにオペレー
ションを実行させる(ステップA16)。ロングライフ
サーバタスクがオペレーションの実行を終了(ステップ
A17)した後は、図7におけるステップA26に移
り、(i)でのオペレーション要求キューを調べる手続
きから同じ手順を繰り返す。
【0034】(iii)さらに、全てのロングライフサー
バタスクがオペレーション実行中であるが、新規のショ
ートライフサーバタスクが生成可能である場合、すなわ
ち、図4におけるステップA7において「no」の場合、
管理タスクは、新規にショートライフサーバタスクを生
成し(ステップA8)、生成したショートライフサーバ
タスクに関するサーバタスク情報(ロングライフサーバ
タスク、ショートライフサーバタスクの種別、状態、オ
ペレーション名、オペレーションレベル)をサーバタス
ク情報テーブルに登録し(ステップA9)、図5におけ
るステップA10に進み、そのショートライフサーバタ
スクにオペレーションを実行させる。
【0035】図4のステップA8で生成したショートラ
イフサーバタスクがオペレーションの実行を終えると
(ステップA11)、管理タスクは、オペレーション要
求キューにオペレーション要求が存在するか調べる(ス
テップA12)。オペレーション要求が存在する場合、
管理タスクは、キューに登録されたオペレーション要求
を取り出し(ステップA18)、そのショートライフサ
ーバタスクに関するサーバタスク情報テーブル上のオペ
レーション名とそのレベルのデータを変更する(ステッ
プA19)。
【0036】以後、取り出したオペレーション要求を実
行するため、ステップA10に戻り、そのショートライ
フサーバタスクにて上記のオペレーション実行手続きか
ら同じ手順を繰り返す。ステップA12において、オペ
レーション要求が存在しない場合、管理タスクは、その
ショートライフサーバタスクを消去し(ステップA1
3)、サーバタスク情報テーブル上のそのショートライ
フサーバタスクに関するデータを全て削除する(ステッ
プA14)。そして、その後、図3におけるステップA
2に戻り、管理タスクは、再び、クライアントからのオ
ペレーション要求を待つ。
【0037】以上、図1〜図7を用いて説明したよう
に、本実施例の分散オブジェクトおよびその生成方法で
は、分散オブジェクトの生成時には、適当な数だけサー
バタスク(ロングライフサーバタスク)を生成し、分散
オブジェクトの消去まで存続させておき、このロングラ
イフサーバタスクで、各クライアントから要求されるオ
プションを実行する。そして、新たなオペレーション要
求を受け付けた時に、全てのロングライフサーバタスク
が他のオペレーションを実行中の場合にかぎり、そのオ
ペレーションを実行するためのサーバタスク(ショート
ライフサーバタスク)を生成する。
【0038】従来の技術では、オペレーション要求に対
応してサーバタスクを生成することによるオーバヘッド
と、分散オブジェクトの生成と共に予めサーバタスクを
生成しておくことによるメモリ容量の制限を同時に満た
すことが困難であったが、本実施例では、分散オブジェ
クトの生成から消去まで存続し、必要メモリなどのシス
テム資源を使いながらオペレーション実行に寄与しない
可能性のあるロングライフサーバタスクの数を適当な数
に制限することにより、システム資源の有効利用を図る
ことができ、また、必要に応じてショートライフサーバ
タスクを生成するので、オペレーション処理のリアルタ
イム性を確保することができる。
【0039】尚、本発明は、図1〜図7を用いて説明し
た実施例に限定されるものではなく、その要旨を逸脱し
ない範囲において種々変更可能である。例えば、本実施
例では、オペレーション要求キューとサーバタスク情報
テーブルを管理タスクに持たせ、このキューとテーブル
を用いて分散オブジェクトに要求されたオペレーション
を実行させるサーバタスクを割り当てているが、オペレ
ーション要求キューとサーバタスク情報テーブルを、管
理タスク外に設ける構成でも良い。また、オペレーショ
ン要求頻度に応じて各々の分散オブジェクトのサーバタ
スク数(ロングライフサーバタスク数+ショートライフ
サーバタスク数)を自律的(自動的)に軽減させること
で、適当な数のサーバタスクを確保し、システム資源の
有効利用を図ることも容易にできる。
【0040】
【発明の効果】本発明によれば、分散オブジェクトにお
けるオペレーション処理のリアルタイム性確保とメモリ
などのシステム資源の有効利用とを同時に図ることがで
き、サーバタスク生成に伴うオーバヘッド除去と、シス
テム資源の有効利用の点から、より有効なサービス処理
システムを構成することが可能である。
【図面の簡単な説明】
【図1】本発明の分散オブジェクトの本発明に係る構成
の一実施例を示すブロック図である。
【図2】図1におけるサーバタスク情報テーブルの本発
明に係る構成例を示す説明図である。
【図3】本発明の分散オブジェクト生成方法の本発明に
係る手順の一実施例を示すフローチャートの1/5部分
である。
【図4】本発明の分散オブジェクト生成方法の本発明に
係る手順の一実施例を示すフローチャートの2/5部分
である。
【図5】本発明の分散オブジェクト生成方法の本発明に
係る手順の一実施例を示すフローチャートの3/5部分
である。
【図6】本発明の分散オブジェクト生成方法の本発明に
係る手順の一実施例を示すフローチャートの4/5部分
である。
【図7】本発明の分散オブジェクト生成方法の本発明に
係る手順の一実施例を示すフローチャートの5/5部分
である。
【図8】従来の要求駆動型の並列性を有する分散オブジ
ェクトの構成および動作例を示す説明図である。
【図9】従来のタスク事前割り当て型の並列性を有する
分散オブジェクトの構成および動作例を示す説明図であ
る。
【図10】従来の遅延タスク割り当て型の並列性を有す
る分散オブジェクトの構成および動作例を示す説明図で
ある。
【符号の説明】
1:分散オブジェクト、2:管理タスク、3:オペレー
ション要求キュー、4:サーバタスク情報テーブル、L
1〜Ln:ロングライフサーバタスク、S1〜Sn:シ
ョートライフサーバタスク、10,20,30:分散オ
ブジェクト、11:要求受付タスク、12,13:要求
処理実行タスク、21:要求受付タスク、22〜25:
要求処理実行タスク、31:要求受付実行タスク、3
2,33:要求処理実行タスク、101:オペレーショ
ン要求、102:生成手続き、201:オペレーション
要求、301:オペレーション要求、302:生成手続
き。
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 G06F 15/16 430 G06F 15/16 430B

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 ネットワーク上の複数のクライアントか
    らのオペレーション要求に対応して、1以上のサーバタ
    スクにより並列処理する分散オブジェクトであって、自
    分散オブジェクトの生成時に所定の数だけ生成され、自
    分散オブジェクトの消去時まで存続し、上記オペレーシ
    ョンを実行する上記ロングライフサーバタスクと、上記
    オペレーション要求の受付時、上記ロングライフサーバ
    タスクの全てが既に他のオペレーションを実行中である
    場合に生成され、上記受け付けたオペレーションを実行
    し、該オペレーションの実行完了後、上記ロングライフ
    サーバタスクで実行できない他のオペレーションの要求
    が存在しない場合に消去されるショートライフサーバタ
    スクと、上記オペレーション要求を受け付け、該受け付
    けたオペレーションを割り当て可能な待機中の上記ロン
    グライフサーバタスクの有無を判別し、待機中の上記ロ
    ングライフサーバタスクが有れば、該ロングライフサー
    バタスクに、上記受け付けたオペレーションを割り当
    て、待機中の上記ロングライフサーバタスクが無けれ
    ば、上記ショートライフサーバタスクを生成し、該ショ
    ートライフサーバタスクに、上記受け付けたオペレーシ
    ョンを割り当てる管理タスクとを有することを特徴とす
    る分散オブジェクト。
  2. 【請求項2】 請求項1に記載の分散オブジェクトにお
    いて、上記ロングライフサーバタスクを生成する所定の
    数と、自分散オブジェクトで生成できる上記ロングライ
    フサーバタスクおよび上記ショートライフサーバタスク
    の総数と、上記ロングライフサーバタスクが上記オペレ
    ーションを実行中であるか待機中であるかを示す状態情
    報とを少なくとも登録するサーバタスク情報テーブルを
    設け、上記管理タスクは、上記サーバタスク情報テーブ
    ルに登録した内容に基づき、上記ショートライフサーバ
    タスクの生成を制御することを特徴とする分散オブジェ
    クト。
  3. 【請求項3】 請求項1、もしくは、請求項2のいずれ
    かに記載の分散オブジェクトにおいて、自分散オブジェ
    クトで生成できる上記ロングライフサーバタスクおよび
    上記ショートライフサーバタスクの総数を超える数の上
    記オペレーション要求の受付時、該受け付けたオペレー
    ションを、該オペレーションに予め付与されている処理
    の優先度レベル別に、かつ、各々の優先度レベル内で受
    付順に並べて登録するオペレーション要求キューを設
    け、上記管理タスクは、上記オペレーション要求キュー
    に登録した優先度レベル順および受付順で、上記自分散
    オブジェクトで生成できる上記ロングライフサーバタス
    クおよび上記ショートライフサーバタスクの総数を超え
    て受け付けた上記オペレーションを、他のオペレーショ
    ンの実行を完了した上記ロングライフサーバタスクある
    いは上記ショートライフサーバタスクに割り付けること
    を特徴とする分散オブジェクト。
  4. 【請求項4】 ネットワーク上の複数のクライアントか
    らのオペレーション要求に対応して、1以上のサーバタ
    スクにより並列処理する分散オブジェクトの生成方法で
    あって、自分散オブジェクトの生成時に、上記サーバタ
    スクを所定の数だけ生成する第1のステップと、上記オ
    ペレーション要求の受付時、上記所定の数だけ生成した
    サーバタスクの全てが既に他のオペレーションを実行中
    である場合に、該受け付けた上記オペレーションを実行
    するサーバタスクを生成する第2のステップと、該第2
    のステップで生成した上記サーバタスクによるオペレー
    ションの実行完了後、上記第1のステップで所定の数だ
    け生成したサーバタスクで実行しきれない他のオペレー
    ションの要求が存在しない場合、上記第2のステップで
    生成したサーバタスクを消去する第3のステップとを少
    なくとも有することを特徴とする分散オブジェクト生成
    方法。
  5. 【請求項5】 請求項4に記載の分散オブジェクト生成
    方法において、上記第1のステップで生成するサーバタ
    スクの上記所定の数と、自分散オブジェクトで生成でき
    るサーバタスクの総数と、上記第1のステップで生成し
    た各サーバタスクが上記オペレーションを実行中である
    か待機中であるかを示す状態情報とを少なくとも登録
    し、該登録した内容に基づき、上記第2のステップにお
    ける上記サーバタスクの生成を制御することを特徴とす
    る分散オブジェクト生成方法。
  6. 【請求項6】 請求項4、もしくは、請求項5のいずれ
    かに記載の分散オブジェクト生成方法において、自分散
    オブジェクトで生成できるサーバタスクの総数を超える
    数の上記オペレーション要求の受付時、該受け付けたオ
    ペレーションを、該オペレーションに予め付与されてい
    る処理の優先度レベル別に、かつ、各々の優先度レベル
    内で受付順に並べて登録し、該登録した優先度レベル順
    および受付順で、上記自分散オブジェクトで生成できる
    サーバタスクの総数を超えて受け付けた上記オペレーシ
    ョンを、他のオペレーションの実行を完了したサーバタ
    スクに割り付けることを特徴とする分散オブジェクト生
    成方法。
JP8206823A 1996-08-06 1996-08-06 分散オブジェクトおよびその生成方法 Pending JPH1049374A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8206823A JPH1049374A (ja) 1996-08-06 1996-08-06 分散オブジェクトおよびその生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8206823A JPH1049374A (ja) 1996-08-06 1996-08-06 分散オブジェクトおよびその生成方法

Publications (1)

Publication Number Publication Date
JPH1049374A true JPH1049374A (ja) 1998-02-20

Family

ID=16529680

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8206823A Pending JPH1049374A (ja) 1996-08-06 1996-08-06 分散オブジェクトおよびその生成方法

Country Status (1)

Country Link
JP (1) JPH1049374A (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06332833A (ja) * 1993-05-25 1994-12-02 Nec Corp サーバ運用方式
JPH0844576A (ja) * 1994-07-25 1996-02-16 Internatl Business Mach Corp <Ibm> 動的作業負荷平衡化

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06332833A (ja) * 1993-05-25 1994-12-02 Nec Corp サーバ運用方式
JPH0844576A (ja) * 1994-07-25 1996-02-16 Internatl Business Mach Corp <Ibm> 動的作業負荷平衡化

Similar Documents

Publication Publication Date Title
US5341499A (en) Method and apparatus for processing multiple file system server requests in a data processing network
CN110383764B (zh) 无服务器系统中使用历史数据处理事件的系统和方法
KR100509794B1 (ko) 데이터베이스 관리시스템을 이용하는 작업들의 실시간 처리를 위한 스케줄링 방법
EP0362107B1 (en) Method to manage concurrent execution of a distributed application program by a host computer and a large plurality of intelligent work stations on an SNA network
JP3382953B2 (ja) 有限メモリコンピュータシステム上におけるクライアント管理フロー制御方法及び装置
CN113296792B (zh) 存储方法、装置、设备、存储介质和系统
JP3730563B2 (ja) セッション管理装置およびセッション管理方法およびプログラムおよび記録媒体
EP0358292A2 (en) Remote boot
US20030131285A1 (en) Automated system that tests software on multiple computers
US7770177B2 (en) System for memory reclamation based on thread entry and release request times
US7536688B2 (en) Segmented virtual machine
JPH0820963B2 (ja) 計算機システムを動作させる方法及び計算機システム
US20220365822A1 (en) Data Processing Method and Computer Device
CN112866395B (zh) 一种服务请求处理系统、方法及计算设备
WO2020113817A1 (zh) 一种基于用户态协议栈的网络隔离方法和装置
US8442939B2 (en) File sharing method, computer system, and job scheduler
CN111767126A (zh) 分布式批量处理的系统和方法
CN115202820A (zh) Pod单元的创建方法、装置、设备及存储介质
JPH1049374A (ja) 分散オブジェクトおよびその生成方法
JPH11232233A (ja) ネットワークコンピュータ管理方法及びネットワークコンピュータシステム
JP2001265726A (ja) コンピュータ作業負荷の高速リカバリおよび再配置を可能にする自動化アプリケーションおよび手順
Fagg et al. Taskers and general resource managers: PVM supporting DCE process management
CN111209118A (zh) 确定资源余量的方法、装置、存储介质和电子设备
JPH06266643A (ja) サーバプログラム管理方法
CN117519989B (zh) 一种分布式系统托管方法、装置、电子设备及存储介质