JP2001249819A - プログラム実行権管理装置及び方法並びに該方法をコンピュータで実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体 - Google Patents

プログラム実行権管理装置及び方法並びに該方法をコンピュータで実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体

Info

Publication number
JP2001249819A
JP2001249819A JP2000062303A JP2000062303A JP2001249819A JP 2001249819 A JP2001249819 A JP 2001249819A JP 2000062303 A JP2000062303 A JP 2000062303A JP 2000062303 A JP2000062303 A JP 2000062303A JP 2001249819 A JP2001249819 A JP 2001249819A
Authority
JP
Japan
Prior art keywords
execution right
job request
priority
program
execution
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.)
Withdrawn
Application number
JP2000062303A
Other languages
English (en)
Inventor
Takashi Shimobayashi
隆 下林
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2000062303A priority Critical patent/JP2001249819A/ja
Publication of JP2001249819A publication Critical patent/JP2001249819A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】実行権に余りがない状況下で優先度の高いジョ
ブ要求があった場合の処理内容を工夫して、より公平な
実行権の管理を行いたい。 【解決手段】ステップ311の判定が「YES」の場合
には、ステップ313に移行し、現在、実行権が付与さ
れているジョブ要求のうち、優先度が高くなく、しか
も、実行時間が制限時間τ1を越えている時間超過ジョ
ブ要求を検索し、その時間超過ジョブ要求が存在する場
合には、ステップ314に移行して、その時間超過ジョ
ブ要求に付与されていた実行権を剥奪するクライアント
Ckにその旨を送信するとともに、ステップ315に移
行し、実行権を剥奪したジョブ要求に関して、ステータ
スをRからWに変更し、制限時間τ1を、2倍にする
(τ1=τ1×2)。ステップ315の処理を終えた
ら、ステップ308に戻る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、ソフトメーカと
の間のリース契約等によって、ユーザ側で同時に実行す
ることができるジョブ数に上限値が設定されているプロ
グラムの実行権を管理する装置及び方法並びに該方法を
コンピュータで実行させるプログラムを記録したコンピ
ュータ読み取り可能な記録媒体に関し、特に、実行権に
余りがない状況下で優先度の高いジョブ要求があった場
合の処理内容を工夫することにより、各クライアントに
対してより公平となる実行権の管理が行えるようにした
ものである。
【0002】
【従来の技術】この種の従来の技術として、特開平5−
346851号公報に開示されたものがある。
【0003】即ち、上記公報に開示された従来の装置
(発明の名称「ソフトウェアライセンス管理装置」)
は、同時実行数の制限があるときで、実行権に余りがな
い状況下で緊急性の高い実行要求が発生したときには、
実行中の処理の中から緊急度の少ない処理の実行権を中
断して、その緊急度の高い処理に実行権を付与する、と
いうようになっていた。そして、そのような構成によ
り、緊急性の高い処理には、他の処理の実行終了を待つ
ことなく実行権が与えられるので、システム運用の円滑
化が図れる、というものであった。
【0004】
【発明が解決しようとする課題】確かに、上記公報に開
示された従来の装置であっても、緊急性の高い処理につ
いては、他の処理を中断させてでも優先的に実行させる
ことができるから、緊急性の高い処理が長時間待たされ
てしまうという事態を避けることができる。
【0005】しかしながら、従来の装置にあっては、実
行権を優先的に付与される側、つまり緊急性の高い処理
のことだけを考慮しているため、実行権が剥奪された
側、つまり緊急性が低いと判断された処理にとっては、
例えば緊急性の高い処理が多数発生したためにいつまで
たっても処理が完了しないという不都合が生じる可能性
がある。
【0006】本発明は、このような従来の技術では考慮
していなかった部分に着目してなされたものであって、
優先度が高いジョブ要求には優先的に実行権を付与する
ことができる一方で、優先度が低く実行権が剥奪された
ジョブ要求がいつまでたっても完了しないというような
事態を招く可能性を低減することができるプログラム実
行権管理装置及び方法並びに該方法をコンピュータで実
行させるプログラムを記録したコンピュータ読み取り可
能な記録媒体を提供することを目的としている。
【0007】
【課題を解決するための手段】上記目的を達成するため
に、請求項1に係る発明は、同時実行数の上限値が設定
されているプログラムの実行権を管理する装置であっ
て、前記プログラムの実行を要求した各ジョブ要求に制
限時間を付与する一方、前記実行権に余りがない状況下
で優先度の高いジョブ要求があった場合には、前記プロ
グラムを実行中のジョブ要求のうち実行時間が前記制限
時間を超えているジョブ要求の実行権を剥奪して前記優
先度の高いジョブ要求に実行権を付与するとともに、前
記実行権が剥奪されたジョブ要求に関しては前記制限時
間を増大させるようにした。
【0008】また、上記目的を達成するために、請求項
2に係る発明は、同時実行数の上限値が設定されている
プログラムの実行権を管理する装置であって、クライア
ントから前記プログラムを実行したいというジョブ要求
を受けたことに応じて待ち行列に当該ジョブ要求を加え
る待ち行列登録手段と、前記待ち行列内の各ジョブ要求
に優先度を付与する優先度付与手段と、前記待ち行列内
の各ジョブ要求にそれぞれの優先度に従った順序で前記
実行権を付与する実行権付与手段と、前記待ち行列内の
各ジョブ要求に制限時間を付与する制限時間付与手段
と、前記待ち行列内の各ジョブ要求のうち優先度が高く
かつ前記実行権が付与されていない高優先度ジョブ要求
を検出する高優先度ジョブ要求検出手段と、前記待ち行
列内の各ジョブ要求のうち優先度が低くかつ前記プログ
ラムの実行時間が制限時間を超えている時間超過ジョブ
要求を検出する時間超過ジョブ要求検出手段と、前記時
間超過ジョブ要求に付与されていた前記実行権を剥奪し
て前記高優先度ジョブ要求に付与する実行権振り替え手
段と、前記実行権が剥奪されたジョブ要求に付与される
前記制限時間を増大させる制限時間増大手段と、を備え
た。
【0009】そして、上記目的を達成するために、請求
項3に係る発明は、同時実行数の上限値が設定されてい
るプログラムの実行権を管理する装置であって、クライ
アントから前記プログラムを実行したいというジョブ要
求を受けたことに応じて待ち行列に当該ジョブ要求を加
える待ち行列登録手段と、前記待ち行列内の各ジョブ要
求に優先度を付与する優先度付与手段と、前記待ち行列
内の各ジョブ要求に制限時間を付与する制限時間付与手
段と、前記待ち行列内の各ジョブ要求に関する情報を前
記優先度の高い順番で読み出す読み出し手段と、この読
み出し手段が読み出したジョブ要求に関する情報に基づ
いて前記実行権を管理する実行権管理手段と、を備え、
前記実行権管理手段は、前記読み出したジョブ要求に前
記実行権が付与されていない場合には、前記実行権に余
りがあれば、前記読み出したジョブ要求に前記実行権を
付与し、前記実行権に余りがなく前記読み出したジョブ
要求の優先度が低いのであれば、そのジョブ要求の優先
度をそれが高くなる方向に更新し、前記実行権に余りが
なく前記読み出したジョブ要求の優先度が高いのであれ
ば、優先度が低くかつ前記プログラムの実行時間が制限
時間を超えている時間超過ジョブ要求から前記実行権を
剥奪し前記読み出したジョブ要求に実行権を付与すると
ともに、その実行権が剥奪された時間超過ジョブ要求の
制限時間を増大させる、という処理を実行するようにし
た。
【0010】さらに、請求項4に係る発明は、上記請求
項3に係る発明であるプログラム実行権管理装置におい
て、前記実行権管理手段は、前記実行権に余りがなく前
記読み出したジョブ要求の優先度が高いか否かの判断
を、前記待ち行列に加わった時点の前記優先度に基づい
て行うようになっている。
【0011】また、上記目的を達成するために請求項5
に係る発明は、同時実行数の上限値が設定されているプ
ログラムの実行権を管理する方法であって、前記プログ
ラムの実行を要求した各ジョブ要求に制限時間を付与す
る一方、前記実行権に余りがない状況下で優先度の高い
ジョブ要求があった場合には、前記プログラムを実行中
のジョブ要求のうち実行時間が前記制限時間を超えてい
るジョブ要求の実行権を剥奪して前記優先度の高いジョ
ブ要求に実行権を付与するとともに、前記実行権が剥奪
されたジョブ要求に関しては前記制限時間を増大させる
ようになっている。
【0012】そして、上記目的を達成するため請求項6
に係る発明は、同時実行数の上限値が設定されているプ
ログラムの実行権を管理する方法をコンピュータで実行
させるためのプログラムを記録したコンピュータ読み取
り可能な記録媒体において、前記プログラムの実行を要
求した各ジョブ要求に制限時間を付与する一方、前記実
行権に余りがない状況下で優先度の高いジョブ要求があ
った場合には、前記プログラムを実行中のジョブ要求の
うち実行時間が前記制限時間を超えているジョブ要求の
実行権を剥奪して前記優先度の高いジョブ要求に実行権
を付与するとともに、前記実行権が剥奪されたジョブ要
求に関しては前記制限時間を増大させるようにした。
【0013】なお、これら請求項1〜6に係る発明にお
いて、優先度の「高い」「低い」という概念は、例え
ば、優先度を数値的に表現し、数値が高いほど優先度が
高いとすれば、あるしきい値を設定し、そのしきい値以
上の優先度を有する場合を、優先度が高いとし、そのし
きい値未満の優先度を有する場合を、優先度が低いとす
る、という具合に決めることができる。
【0014】そして、請求項1〜6に係る発明にあって
は、優先度の低いジョブ要求から実行権を剥奪した場合
には、その実行権を剥奪したジョブ要求の制限時間を増
大させる(例えば、新たな制限時間は、元の制限時間の
2倍とする等)ため、次に実行権が付与されたときに再
度実行権が剥奪される可能性が低減されることになる。
【0015】さらに、請求項3に係る発明にあっては、
待ち行列に加わってはいるが実行権が付与されていない
ジョブ要求に関しては、実行権管理手段が所定のタイミ
ングで優先度を高くなる方向に更新する(例えば、元の
優先度に1.1 を乗じた値を、新たな優先度とする等)た
め、実行権を待っている時間が長くなればなるほど自動
的に優先度が高くなる。よって、要求を出した時点では
優先度が低かったジョブ要求にいつまでたっても実行権
が付与されない、という状況を回避し易くなる。
【0016】
【発明の実施の形態】以下、本発明の実施の形態を図面
に基づいて説明する。
【0017】図1は本発明の一実施の形態のシステム構
成を示す図であって、本実施の形態の構成は、サーバ1
と、複数のクライアントC1,C2,…,Cnと、それ
らサーバ1およびクライアントC1〜Cn間を双方向情
報通信可能に接続するネットワーク2と、を備えてい
る。
【0018】サーバ1およびクライアントC1〜Cn
は、それぞれがCPU、必要なインタフェース、ハード
ディスク装置等を備えたコンピュータである。
【0019】そして、クライアントC1〜Cnのそれぞ
れは、同時実行数の上限値が設定されている任意のプロ
グラムを実行する場合には、サーバ1に対してそのプロ
グラムを実行したいという要求を送信するようになって
おり、その要求を受けたサーバ1は、プログラムの実行
権の空き状況等に基づいて、実行権を付与できるか否か
を判断し、付与できる場合には要求のあったクライアン
トC1〜Cnに対してその旨を送信するようになってい
る。
【0020】図2は、クライアントCk(k=1〜n)
が上記プログラムを実行したいというジョブ要求を出力
する際の処理の概要を示すフローチャートであって、ジ
ョブ要求を出力する際には、まず、ステップ101にお
いて、クライアントCkの使用者に情報を入力させる。
ここで入力させる情報には、少なくとも、実行を要求す
るプログラム名、使用者名、および処理したいジョブの
優先度(若しくは、その優先度を判断するのに必要な情
報)を含んでいる。
【0021】次いで、ステップ102に移行し、サーバ
1が動作不良になっているか否かを判断し、ここでサー
バ1が動作不良になっていると判断された場合には、ス
テップ103に移行し、クライアントCkのモニタにエ
ラー表示を行って使用者にそれを認識させて、今回の図
2の処理を終了する。
【0022】一方、ステップ102の判定が「NO」の
場合には、ステップ104に移行し、各種動作を定義す
る。ここで定義される動作としては、少なくとも、クラ
イアントCkの使用者がジョブの中断を要求した場合の
動作、サーバ1からプログラムの実行が許可された場合
の動作、一旦付与されたプログラムの実行権が剥奪され
た場合の動作、を含んでいる。
【0023】そして、ステップ105に移行し、ステッ
プ101で入力された各種の情報をサーバ1に送信す
る。なお、その情報を受信したサーバ1側の処理につい
ては、後述するが、少なくとも、サーバ1からは受付番
号が返信される。
【0024】そこで、ステップ106に移行し、サーバ
1から受付番号が返信されてくるまで待機し、次いでス
テップ107に移行し、今度は、サーバ1から、プログ
ラムの実行権が付与されたという情報が送信されてきた
か否かを判断する。そして、ステップ107の判断が
「NO」の場合、つまり、実行権が付与されていない状
況では、ステップ108に移行する。
【0025】ステップ108では、クライアントCkの
使用者がジョブ要求を取り消す処理を実行したか否かを
判断し、取り消し処理が行われていない場合には、ステ
ップ107に戻る。
【0026】そして、ステップ107の判定が「YE
S」、つまりジョブ要求に対して実行権が付与された場
合には、ステップ109に移行し、実行権付与と同時に
サーバ1から送信されてきた情報に従い、指定されたC
PUにおいてプログラムを起動させる。この実施の形態
では、プログラムを実行するCPUは、サーバ1の指定
に従うことになっているため、そのジョブ要求を発信し
たクライアントCkで実行される場合もあるし、サーバ
1側で実行される場合もあるし、或いは、それ以外のコ
ンピュータで実行される場合もある。
【0027】ステップ109においてプログラムの起動
処理が完了したら、ステップ110に移行し、ジョブ要
求に応じたプログラムでの処理が終了したか否かを判断
し、その判定が「YES」の場合には、ステップ111
に移行し、処理が終了したという情報をサーバ1に送信
して今回のこの図2の処理を終了する。
【0028】これに対し、ステップ110の判定が「N
O」の場合には、ステップ112に移行し、プログラム
の実行情報等をサーバ1に送信する。ここで送信する実
行情報は任意であるが、例えば、プログラムが、プロセ
スのシミュレーションを実行するような場合には、その
シミュレーションの途中経過等が考えられる。
【0029】次いで、ステップ113に移行し、使用者
の操作により強制的にプログラムの実行が終了させられ
たか否かを判断し、ここでの判定が「YES」の場合に
は、ステップ114に移行して、実行中のプログラムを
停止する。そして、ステップ115に移行し、サーバ1
に対して、ジョブ要求を削除するという要求を送信して
から、今回の図2の処理を終了する。なお、上述したス
テップ108の判定が「YES」の場合にも、ステップ
115に移行してから今回の図2の処理を終了するよう
になっている。
【0030】そして、ステップ113の判定が「NO」
の場合には、ステップ116に移行し、与えられていた
実行権が剥奪されたという情報がサーバ1から送信され
てきているか否かを判断し、判定が「NO」の場合には
ステップ110に戻る。実行権が剥奪されず、使用者に
よる強制的な終了がなければ、いつかはステップ110
の判定が「YES」となってステップ111を経て図2
の処理が終了することになり、これが通常の終了の流れ
である。
【0031】しかし、ステップ116の判定が「YE
S」、つまり実行権が剥奪された場合には、ステップ1
17に移行し、実行中のプログラムを停止するととも
に、プログラムの実行を停止したという情報をサーバ1
に送信する。そして、ステップ118に移行し、このま
ま再び実行権が付与されるまで待機するか否かを使用者
に確認し、待機するという入力があった場合にはステッ
プ107に戻るが、待機しないという入力があった場合
にはステップ115に移行し、サーバ1に対して、ジョ
ブ要求を削除するという要求を送信してから今回の図2
の処理を終了する。ステップ117で実行権が剥奪さ
れ、ステップ118で使用者が削除を選択しなかった場
合には、ステップ107に戻って再び実行権が付与され
るのを待つことになるが、そこで再び実行権が付与され
てステップ109に移行してプログラムを起動させると
きには、プログラムを供給したソフトメーカとの契約に
もよるが、最初から処理を開始する必要がある。ただ
し、ソフトメーカとの契約によっては実行権が剥奪され
た時点のデータを保存しておき、再度実行権が付与され
た場合には保存されていたデータを利用して途中から処
理を開始するようにしてもよい。
【0032】図3は、サーバ1における処理のうち、待
ち行列を管理する部分の処理の概要を示すフローチャー
トであって、先ずステップ201において、いずれかの
クライアントCkから情報が送信されてきているか否か
を判断し、情報が受信されるまで待機し、情報の受信が
確認されたらステップ202に移行する。
【0033】ステップ202では、受信した情報に、プ
ログラムを実行したいというジョブ要求が含まれている
か否かを判断し、その判定が「YES」の場合には、ス
テップ203に移行し、そのジョブ要求を待ち行列に登
録する。ジョブ要求を待ち行列に登録する際には、その
ジョブ要求に関する情報も所定の記憶領域に保存する。
ジョブ要求に関連する情報としては、クライアントCk
のID、使用者のID、受付番号、ジョブ要求の優先
度、プログラムを実行する際の制限時間τ1、プログラ
ムの実行中か否かを表すステータス(W/R)、を少な
くとも含んでいる。受付番号は、ジョブ要求の受信順に
従ってサーバ1側で付与することになる。また、優先度
は、優先度そのものがクライアントCk側から送信され
る場合もあるし、或いは、クライアントCk側から送信
されてきた情報に基づいてサーバ1側で演算して求める
場合もある。制限時間τ1は、ジョブ要求を受信した時
点では一律に同じ時間が設定される。ステータスは、そ
のジョブ要求に実行権が付与されている場合にはRが、
付与されていない場合はWが記憶されるため、ステップ
203の時点ではWが記憶される。
【0034】そして、ステップ203から204に移行
し、ジョブ要求を送信してきたクライアントCkに対し
て受付番号を返信する。返信された受付番号は、上述し
たようにクライアントCkが図2のステップ106にお
いて受信することになる。ステップ204の処理を終え
たら、これで今回の図3の処理は終了する。
【0035】一方、ステップ202の判定が「NO」の
場合には、ステップ205に移行し、受信した情報がプ
ログラムの実行の終了を表すものであるか否かを判断す
る。そして、その判定が「YES」の場合には、ステッ
プ206に移行し、プログラムの実行が終了したジョブ
要求を、待ち行列から削除する。これに伴って、プログ
ラムの実行権が一つ解放されることになる。ステップ2
06の処理を終えたら、これで今回の図3の処理は終了
する。
【0036】また、ステップ205の判定が「NO」の
場合には、ステップ207に移行し、受信した情報がジ
ョブ要求におけるプログラムの実行情報であるか否かを
判断する。そして、その判定が「YES」の場合には、
ステップ208に移行し、受信した実行情報に基づい
て、記憶していたジョブ要求に関連する情報を更新して
から、今回の図3の処理を終了する。
【0037】さらに、ステップ207の判定が「NO」
の場合には、ステップ209に移行し、受信した情報
が、ジョブ要求を削除する要求であるか否かを判断す
る。そして、その判定が「YES」の場合には、ステッ
プ210に移行し、そのジョブ要求を待ち行列から削除
する。このとき、そのジョブ要求のステータスがRの場
合には、プログラムの実行権が一つ解放されることにな
る。ステップ210の処理を終えたら、これで今回の図
3の処理は終了する。なお、ステップ209の判定が
「NO」の場合には、特に処理を実行することなく図3
の処理を終了する。
【0038】図4は、サーバ1における処理のうち、実
行権を管理する処理の部分の概要を示すフローチャート
であって、先ずステップ301において、待ち行列を、
優先度の高い順に並べ替える。次いで、ステップ302
に移行し、カウンタiを1にセットする。
【0039】そして、ステップ303に移行し、カウン
タiに従って待ち行列内でi番目に位置するジョブ要求
に関する情報を読み出し、ステップ304に移行し、そ
の読み出した情報に基づいてi番目のジョブ要求のステ
ータスがRであるか否か、つまり、そのジョブ要求に実
行権が付与されているか否かを判定する。
【0040】このステップ304の判定が「YES」の
場合には、ステップ305に移行し、ステップ303以
降の処理が待ち行列に加わっている全てのジョブ要求に
対して実行されたか否か、つまり、カウンタiの値が、
待ち行列の最後に位置するジョブ要求に達しているか否
かを判定する。このステップ305の判定が「NO」の
場合には、ステップ306に移行し、カウンタiをイン
クリメントした後に、ステップ303に戻って上述した
処理を繰り返し実行する。また、ステップ305の判定
が「YES」の場合には、ステップ307に移行して所
定時間(例えば、200msec〜1sec 程度)待機した後
に、ステップ301に戻り、この図4に示す処理を最初
から再実行する。
【0041】一方、ステップ304の判定が「NO」の
場合、つまり、そのジョブ要求のステータスがWの場合
には、ステップ308に移行し、実行権に余りがあるか
否かを判定する。ステップ308の判定は、付与されて
いる実行権の数を計数するための実行権カウンタを別途
設けておき、実行権を付与するたびにその実行権カウン
タの値をインクリメントし、実行権が解放されるたびに
その実行権カウンタの値をデクリメントするようにして
おけば、その実行権カウンタの値が、プログラムの同時
実行数の上限値に達しているか否かによって行うことが
できる。
【0042】ステップ308の判定が「YES」の場合
には、ステップ309に移行し、ジョブ要求に対応する
クライアントCkに対して、実行権を付与したという情
報、指定CPUに関する情報等を送信する。ここで送信
された情報は、クライアントCkが、上述した図2のス
テップ107において受信することになる。
【0043】そして、ステップ310に移行し、そのジ
ョブ要求に関するステータスをWからRに変更するとと
もに、そのジョブ要求によるプログラムの実行時間を計
測するためのタイマτを、リセット・スタートさせる。
なお、タイマτは、実行権が付与された各ジョブ要求ご
とに独立に実行時間を計測するためのタイマである。ス
テップ310の処理を終えたら、ステップ305に移行
して、上記した処理を実行する。
【0044】待ち行列に加わっているジョブ要求の数
が、プログラムの同時実行数の上限値を越えなければ、
ステップ308の判定が「NO」になることはないか
ら、待ち行列に加わっている全てのジョブ要求に実行権
が付与され、それ以降は、ステップ304の判定が常に
「YES」となる。
【0045】しかし、待ち行列に加わっているジョブ要
求の数が同時実行数の上限値を超えると、ステップ30
8の判定が「NO」となってステップ311に移行する
場合がある。そして、ステップ311では、優先度に基
づいて、現在対象となっているジョブ要求が、高優先度
ジョブ要求であるか否かを判定する。このステップ31
1における判定は、優先度を示す値が、予め設定されて
いる所定のしきい値以上であるか否かによって行うこと
ができる。
【0046】そして、ステップ311の判定が「NO」
の場合には、特に優先度の高いジョブ要求ではないと判
断し、ステップ312に移行する。ステップ312で
は、現在対象となっているジョブ要求の優先度を、それ
が高くなる方向に更新する。なお、優先度を高くする具
体的な方法としては、例えば、現在の優先度に定数(例
えば、1.1 )を乗じた値を、新たな優先度とする、とい
う方法が考えられる。ステップ312の処理を終えた
ら、ステップ305に移行する。
【0047】これに対し、ステップ311の判定が「Y
ES」の場合には、ステップ313に移行する。ステッ
プ313では、現在、実行権が付与されているジョブ要
求のうち、優先度が高くなく、しかも、タイマτの値が
制限時間τ1を越えている時間超過ジョブ要求を検索
し、その時間超過ジョブ要求が存在しない場合には、ス
テップ312に移行するが、時間超過ジョブ要求が存在
する場合には、ステップ314に移行する。
【0048】ステップ314では、ステップ313で検
出した時間超過ジョブ要求に付与されていた実行権を剥
奪することを、その時間超過ジョブ要求の送信元である
クライアントCkに送信する。かかる実行権を剥奪する
という情報は、クライアントCkが、上述した図2のス
テップ116において受信することになる。
【0049】そして、ステップ314からステップ31
5に移行し、実行権を剥奪したジョブ要求に関して、ス
テータスをRからWに変更するとともに、制限時間τ1
を、2倍に増大させる(τ1=τ1×2)。
【0050】ステップ315の処理を終えたら、ステッ
プ308に戻る。すると、ステップ305において実行
権が一つ解放されているから、この時点ではステップ3
08の判定が「YES」となってステップ309に移行
し、高優先度と判定されている今回のジョブ要求に確実
に実行権が付与されることになる。
【0051】このように、本実施の形態のような処理が
実行されれば、実行権に余りがない状況下であっても、
優先度の高いジョブ要求に実行権を付与することができ
るから、システム全体として効率的な実行権付与の管理
を行うことができる。
【0052】そして、本実施の形態にあっては、時間超
過ジョブ要求であると判断されてステップ314,31
5で実行権が剥奪されたジョブ要求に関しては、ステッ
プ315の処理において制限時間τ1を2倍にするよう
にしている。このため、そのジョブ要求に関して、クラ
イアントCkの使用者が図2のステップ118の処理に
おいて「NO」を選択してステップ107に移行するこ
とになると、再び実行権が付与されたときには以前の倍
の制限時間τ1となっているから、繰り返し実行権が剥
奪される可能性を低減できるようになっている。このた
め、システム全体として、より公平な実行権付与管理が
行えるという利点もある。
【0053】さらに、本実施の形態では、実行権の付与
を待っているジョブ要求に関しては、ステップ312の
処理を実行することより、その優先度を徐々に高めるよ
うにしている。このため、待ち行列に登録された時点で
は優先度が低かったジョブ要求に、いつまでたっても実
行権が付与されないといった事態を防止できるという効
果もある。
【0054】ここで、本実施の形態にあっては、ステッ
プ202,203の処理によって待ち行列登録手段が構
成され、ステップ203においてジョブ要求に関連して
優先度を記憶する処理が優先度付与手段に対応し、ステ
ップ301〜306,308,309の処理によって実
行権付与手段が構成され、ステップ203においてジョ
ブ要求に関連して制限時間を記憶する処理が制限時間付
与手段に対応し、ステップ311の処理が高優先度ジョ
ブ要求検出手段に対応し、ステップ313の処理が時間
超過ジョブ要求検出手段に対応し、ステップ314,3
15の処理及びステップ315から308に移行する処
理の流れが実行権振り替え手段に対応し、ステップ31
5において制限時間τ1を2倍にする処理が制限時間増
大手段に対応し、ステップ301〜306の処理が読み
出し手段に対応し、ステップ308〜315の処理が実
行権管理手段に対応する。
【0055】なお、上記実施の形態では、実行権が剥奪
されたジョブ要求に関して制限時間τ1を2倍にするよ
うにしているが、制限時間τ1の増大処理はこれに限定
されるものではなく、2倍を越えてもよいし、或いは、
2倍未満でもよい。
【0056】また、ステップ312の優先度を高める処
理は、上記例に限定されるものでもなく、定数を加算す
るような処理であってもかまわない。
【0057】さらに、上記実施の形態では、ステップ3
11における判定に優先度を用いることとしているた
め、ステップ312で更新されたために当初は優先度が
低かったジョブ要求の優先度が高くなってそれが高優先
度のジョブ要求に転じて他のジョブ要求から実行権を剥
奪する、という可能性もある。そのような可能性が好ま
しくない場合には、ステップ203において待ち行列に
登録された時点における当初の優先度を別途保存してお
き、ステップ312で優先度が更新されたとしても、ス
テップ311の判定には保存しておいた待ち行列登録時
点の当初の優先度を用いるようにすればよい。
【0058】なお、特に図示はしないが、上記実施の形
態で説明したプログラム実行権管理方法を実行するプロ
グラムは、当初はフレキシブルディスク、コンパクトデ
ィスク、光磁気ディスク等のコンピュータ読み取り可能
な記録媒体に記録されており、実行する際には予めその
記録媒体からコンピュータの内部記憶装置に読み込まれ
るようになっている。
【0059】
【発明の効果】以上説明したように、本発明によれば、
優先度の低いジョブ要求から実行権を剥奪した場合に
は、その実行権を剥奪したジョブ要求の制限時間を増大
させるようにしたため、そのジョブ要求に再度実行権が
付与されたときに繰り返し実行権が剥奪される可能性を
低減することができるから、より公平な実行権の管理が
行えるという効果がある。
【0060】特に、請求項3に係る発明にあっては、待
ち行列に加わってはいるが実行権が付与されていないジ
ョブ要求に関しては、実行権管理手段が所定のタイミン
グで優先度を高くなる方向に更新するようにしたため、
特定のジョブ要求にいつまでたっても実行権が付与され
ないという状況を回避できるから、さらに公平な実行権
の管理が行えるという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施の形態のシステム構成図であ
る。
【図2】クライアント側における処理の概要を示すフロ
ーチャートである。
【図3】サーバ側における処理のうち待ち行列を管理す
る部分の処理の概要を示すフローチャートである。
【図4】サーバ側における処理のうち実行権を管理する
部分の処理の概要を示すフローチャートである。
【符号の説明】
1 サーバ 2 ネットワーク C1〜Cn クライアント

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 同時実行数の上限値が設定されているプ
    ログラムの実行権を管理する装置であって、 前記プログラムの実行を要求した各ジョブ要求に制限時
    間を付与する一方、前記実行権に余りがない状況下で優
    先度の高いジョブ要求があった場合には、前記プログラ
    ムを実行中のジョブ要求のうち実行時間が前記制限時間
    を超えているジョブ要求の実行権を剥奪して前記優先度
    の高いジョブ要求に実行権を付与するとともに、前記実
    行権が剥奪されたジョブ要求に関しては前記制限時間を
    増大させるようになっていることを特徴とするプログラ
    ム実行権管理装置。
  2. 【請求項2】 同時実行数の上限値が設定されているプ
    ログラムの実行権を管理する装置であって、 クライアントから前記プログラムを実行したいというジ
    ョブ要求を受けたことに応じて待ち行列に当該ジョブ要
    求を加える待ち行列登録手段と、前記待ち行列内の各ジ
    ョブ要求に優先度を付与する優先度付与手段と、前記待
    ち行列内の各ジョブ要求にそれぞれの優先度に従った順
    序で前記実行権を付与する実行権付与手段と、前記待ち
    行列内の各ジョブ要求に制限時間を付与する制限時間付
    与手段と、前記待ち行列内の各ジョブ要求のうち優先度
    が高く且つ前記実行権が付与されていない高優先度ジョ
    ブ要求を検出する高優先度ジョブ要求検出手段と、前記
    待ち行列内の各ジョブ要求のうち優先度が低く且つ前記
    プログラムの実行時間が制限時間を超えている時間超過
    ジョブ要求を検出する時間超過ジョブ要求検出手段と、
    前記時間超過ジョブ要求に付与されていた前記実行権を
    剥奪して前記高優先度ジョブ要求に付与する実行権振り
    替え手段と、前記実行権が剥奪されたジョブ要求に付与
    される前記制限時間を増大させる制限時間増大手段と、
    を備えたことを特徴とするプログラム実行権管理装置。
  3. 【請求項3】 同時実行数の上限値が設定されているプ
    ログラムの実行権を管理する装置であって、 クライアントから前記プログラムを実行したいというジ
    ョブ要求を受けたことに応じて待ち行列に当該ジョブ要
    求を加える待ち行列登録手段と、前記待ち行列内の各ジ
    ョブ要求に優先度を付与する優先度付与手段と、前記待
    ち行列内の各ジョブ要求に制限時間を付与する制限時間
    付与手段と、前記待ち行列内の各ジョブ要求に関する情
    報を前記優先度の高い順番で読み出す読み出し手段と、
    この読み出し手段が読み出したジョブ要求に関する情報
    に基づいて前記実行権を管理する実行権管理手段と、を
    備え、 前記実行権管理手段は、前記読み出したジョブ要求に前
    記実行権が付与されていない場合には、 前記実行権に余りがあれば、前記読み出したジョブ要求
    に前記実行権を付与し、 前記実行権に余りがなく前記読み出したジョブ要求の優
    先度が低いのであれば、そのジョブ要求の優先度をそれ
    が高くなる方向に更新し、 前記実行権に余りがなく前記読み出したジョブ要求の優
    先度が高いのであれば、優先度が低く且つ前記プログラ
    ムの実行時間が制限時間を超えている時間超過ジョブ要
    求から前記実行権を剥奪し前記読み出したジョブ要求に
    実行権を付与するとともに、その実行権が剥奪された時
    間超過ジョブ要求の制限時間を増大させる、という処理
    を実行するようになっていることを特徴とするプログラ
    ム実行権管理装置。
  4. 【請求項4】 前記実行権管理手段は、前記実行権に余
    りがなく前記読み出したジョブ要求の優先度が高いか否
    かの判断を、前記待ち行列に加わった時点の前記優先度
    に基づいて行うようになっている請求項3記載のプログ
    ラム実行権管理装置。
  5. 【請求項5】 同時実行数の上限値が設定されているプ
    ログラムの実行権を管理する方法であって、 前記プログラムの実行を要求した各ジョブ要求に制限時
    間を付与する一方、前記実行権に余りがない状況下で優
    先度の高いジョブ要求があった場合には、前記プログラ
    ムを実行中のジョブ要求のうち実行時間が前記制限時間
    を超えているジョブ要求の実行権を剥奪して前記優先度
    の高いジョブ要求に実行権を付与するとともに、前記実
    行権が剥奪されたジョブ要求に関しては前記制限時間を
    増大させるようになっていることを特徴とするプログラ
    ム実行権管理方法。
  6. 【請求項6】 同時実行数の上限値が設定されているプ
    ログラムの実行権を管理する方法をコンピュータで実行
    させるためのプログラムを記録したコンピュータ読み取
    り可能な記録媒体において、 前記プログラムの実行を要求した各ジョブ要求に制限時
    間を付与する一方、前記実行権に余りがない状況下で優
    先度の高いジョブ要求があった場合には、前記プログラ
    ムを実行中のジョブ要求のうち実行時間が前記制限時間
    を超えているジョブ要求の実行権を剥奪して前記優先度
    の高いジョブ要求に実行権を付与するとともに、前記実
    行権が剥奪されたジョブ要求に関しては前記制限時間を
    増大させるようになっていることを特徴とするプログラ
    ム実行権管理方法をコンピュータで実行させるためのプ
    ログラムを記録したコンピュータ読み取り可能な記録媒
    体。
JP2000062303A 2000-03-07 2000-03-07 プログラム実行権管理装置及び方法並びに該方法をコンピュータで実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体 Withdrawn JP2001249819A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000062303A JP2001249819A (ja) 2000-03-07 2000-03-07 プログラム実行権管理装置及び方法並びに該方法をコンピュータで実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000062303A JP2001249819A (ja) 2000-03-07 2000-03-07 プログラム実行権管理装置及び方法並びに該方法をコンピュータで実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体

Publications (1)

Publication Number Publication Date
JP2001249819A true JP2001249819A (ja) 2001-09-14

Family

ID=18582332

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000062303A Withdrawn JP2001249819A (ja) 2000-03-07 2000-03-07 プログラム実行権管理装置及び方法並びに該方法をコンピュータで実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体

Country Status (1)

Country Link
JP (1) JP2001249819A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010198184A (ja) * 2009-02-24 2010-09-09 Nec Corp ジョブ管理システム、その方法及びそのプログラム
US9459916B2 (en) 2013-11-13 2016-10-04 Fujitsu Limited System and method for controlling execution of jobs performed by plural information processing devices

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010198184A (ja) * 2009-02-24 2010-09-09 Nec Corp ジョブ管理システム、その方法及びそのプログラム
US9459916B2 (en) 2013-11-13 2016-10-04 Fujitsu Limited System and method for controlling execution of jobs performed by plural information processing devices

Similar Documents

Publication Publication Date Title
JP3922070B2 (ja) 分散制御方法及び装置
JP3951949B2 (ja) 分散型資源管理システムおよび分散型資源管理方法並びにプログラム
JP2008015888A (ja) 負荷分散制御システム及び負荷分散制御方法
JPH0477938B2 (ja)
JP2002073576A (ja) バッチジョブ制御システム
US20070124547A1 (en) Method, apparatus and computer program product for managing access to storage
JP3664021B2 (ja) サービスレベルによる資源割当方式
US7454579B1 (en) Managing access to shared resources
JP2008544371A (ja) ロック関連の一貫性欠如を処理する方法
JP2001249819A (ja) プログラム実行権管理装置及び方法並びに該方法をコンピュータで実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
JPH0798663A (ja) 非同期i/o制御方式
US7240043B2 (en) Method of controlling storage control apparatus, storage control apparatus, and computer readable program for controlling the same
US20140366162A1 (en) Starvationless Kernel-Aware Distributed Scheduling of Software Licenses
JP2008225641A (ja) コンピュータシステム、割り込み制御方法及びプログラム
JP4151330B2 (ja) ネットワークファイルシステム用i/o制御方法
JP2921501B2 (ja) オンライン処理システムにおける高負荷時のタスク実行優先度変更方式
JPH09160792A (ja) データ処理装置
JPH11175357A (ja) タスク管理方法
JP3006491B2 (ja) トランザクション実行状態管理システム、管理方法、および管理プログラムを記憶する媒体
CN108170757B (zh) 一种数据文件读取方法、装置及设备
JP2003122712A (ja) クライアント監視方法、サーバー装置、プログラム及び記録媒体
JP2001075850A (ja) データキャッシュ処理方法及びキャッシュ装置
JPH05100875A (ja) トランザクシヨンの実行順序制御装置
JPH1040140A (ja) データロギング方式及びその方法
JP3112287B2 (ja) メッセージ管理処理装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070605