JP3733402B2 - Processor resource selection method, processor resource selection system therefor, and computer-readable program recording medium - Google Patents
Processor resource selection method, processor resource selection system therefor, and computer-readable program recording medium Download PDFInfo
- Publication number
- JP3733402B2 JP3733402B2 JP35776398A JP35776398A JP3733402B2 JP 3733402 B2 JP3733402 B2 JP 3733402B2 JP 35776398 A JP35776398 A JP 35776398A JP 35776398 A JP35776398 A JP 35776398A JP 3733402 B2 JP3733402 B2 JP 3733402B2
- Authority
- JP
- Japan
- Prior art keywords
- processor
- class
- job
- priority
- processors
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Multi Processors (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、クラスに類別された各ジョブにプロセッサを割り当てるプロセッサ資源選択処理に関し、特に、クラス単位で、優先利用できるプロセッサ資源(優先プロセッサ)と予備的に利用可能なプロセッサ資源(拡張プロセッサ)とをあらかじめ指定しておき、実行ジョブの該当クラスの優先プロセッサに空きがないときには拡張プロセッサの利用可能性を検討するプロセッサ資源選択処理に関する。
【0002】
一般に、ジョブをその性質やそれが必要とするシステム資源の種類などで類別し、そのクラス単位で利用できるプロセッサ資源をあらかじめ決めておき、実行ジョブにはその該当クラスのプロセッサ資源を割り当てている。
【0003】
このとき、
・プロセッサ資源の空きがなく当該資源の割当て待ちのジョブ(以下「資源待ちジョブ」という。)を持つクラスと、資源待ちジョブはなくプロセッサ資源にも空きがあるクラスと、が併存してプロセッサ資源の全体を有効に利用できないといった状態
・プロセッサ資源を共有するクラス間で当該資源を公平に利用できないといった状態
などの発生を防止することが望ましく、本発明はこのような要請に応えるものである。
【0004】
【従来の技術】
図5および図6は、従来の、プロセッサ資源選択の概要を示す説明図であり、41,42,43,44は入力装置(図示省略)から読み込まれたジョブがそのジョブステ−トメントのクラス・パラメ−タに基づいて振り分けられるキュ−、45はキュ−41が使用するプロセッサ資源、46はキュ−42が使用するプロセッサ資源、47はキュ−43およびキュ−44が共用するプロセッサ資源をそれぞれ示している。
【0005】
図5の場合、キュ−41に配分されたプロセッサ資源45はそれぞれ使用中であり、当該キュ−には複数の資源待ちジョブがつながっている。
【0006】
一方、キュ−42に配分されたプロセッサ資源46はそれぞれ空きのままであって、また当該キュ−には資源待ちジョブも存在せず、プロセッサ資源45,46の全体が有効利用されていない。
【0007】
図6の場合、プロセッサ資源47を共有するキュ−43およびキュ−44の前者(キュ−43)に連続してジョブを投入し、その後でキュ−44にジョブを投入したときの状況を示している。
【0008】
ここで、共有のプロセッサ資源47は最初に投入されたキュ−43のジョブのみに割り当てられており、キュ−間でのプロセッサ資源の公平利用が確保されていない。
【0009】
【発明が解決しようとする課題】
このように、従来の、クラス化された各ジョブにプロセッサを割り当てるプロセッサ資源選択手法では、各クラスで使用するプロセッサの設定範囲について柔軟性を持たせてない。
【0010】
そのため、クラスAのプロセッサは空いているのに、クラスBのプロセッサはすべて使用中で当該ジョブクラスへの投入ジョブがプロセッサ資源の割当て待ち状態のままとなることや、複数のクラスで共有する各プロセッサが一方のクラスのジョブのみに割り当てられてしまうことなどが生じ、ジョブクラス間でプロセッサ資源が有効に、また公平に利用されていないという問題点があった。
【0011】
そこで、本発明では、各ジョブクラスに、そこで優先使用するプロセッサ資源(優先プロセッサ)とは別に予備的利用が可能なプロセッサ資源(拡張プロセッサ)も分配しておき、資源待ちジョブの該当ジョブクラスに優先プロセッサの空きがないときには所定の条件下でこの資源待ちジョブに拡張プロセッサを割り当てることにより、プロセッサ資源全体の有効利用および公平利用を図ることを目的とする。
【0012】
【課題を解決するための手段】
本発明は、この課題を次のようにして解決する。
(1)情報処理装置が、クラスに類別された各ジョブにプロセッサを割り当てるプロセッサ資源選択方法において、
前記情報処理装置は、
前記クラスごとの、優先プロセッサと予備的に割当て可能な拡張プロセッサとを定義したプロセッサ配分定義表を少なくとも参照することにより、
実行対象の第1の前記クラスに定義された前記優先プロセッサに空きがあるときには当該優先プロセッサを当該クラスのジョブに割り当て、
実行対象の第1の前記クラスに定義された前記優先プロセッサに空きがないときには、当該クラスの空き状態の前記拡張プロセッサを求めてその中で、それを優先プロセッサとして定義する第2の前記クラスに資源待ちジョブが入っていない状況の拡張プロセッサを、第1の当該クラスのジョブに割り当てる。
(2)クラスに類別された各ジョブにプロセッサを割り当てるプロセッサ資源選択システムにおいて、
前記クラスごとの、優先プロセッサと予備的に割当て可能な拡張プロセッサとを定義したプロセッサ配分定義表と、
少なくとも前記プロセッサ配分定義表を参照して、実行対象の第1の前記クラスに定義された前記優先プロセッサに空きがあるときには、当該優先プロセッサを当該クラスのジョブに割り当て、実行対象の第1の前記クラスに定義された前記優先プロセッサに空きがないときには、当該クラスの空き状態の前記拡張プロセッサの中で、それを優先プロセッサとして定義する第2の前記クラスに資源待ちジョブが入っていない状況の拡張プロセッサを、第1の当該クラスのジョブに割り当てる資源割当て手段と、
を設ける。
【0013】
本発明によれば、このように例えば図2のジョブクラスのC対象ジョブ(資源待ちジョブ)にプロセッサを割り当てるに際して、少なくともプロセッサ配分定義表14を参照することにより、
(a) ジョブクラスCの優先プロセッサPE21〜30がすべて使用中で、かつ、当該ジョブクラスの拡張プロセッサPE2が空き状態の場合、
(b) この拡張プロセッサPE2を対象ジョブに直ちに割り当てるのではなく、
(c) この拡張プロセッサPE2が優先プロセッサとして定義されるジョブクラスAをプロセッサ配分定義表14から求め、キュー12の当該ジョブクラスAに資源待ちジョブが入っていないことを確認したときに初めて当該拡張プロセッサPE2を対象ジョブに割り当てている。
【0014】
これにより、本発明は、プロセッサ資源全体のいっそうの有効利用および公平利用を図っている。
【0015】
本発明は、この機能をコンピュ−タに実現させるためのプログラムを格納したコンピュ−タ読み取り可能なプログラム記録媒体も対象としている。
【0016】
【発明の実施の形態】
図1乃至図4を用いて本発明の実施の形態を説明する。
【0017】
図1はプロセッサ資源選択システムの概要を示す説明図、図2はプロセッサ資源割当て処理を担当するプロセッサを示して説明図であり、
1は、入力装置から読み込まれたジョブにプロセッサを割り当てるプロセッサ資源割当て部,
11は、ジョブをそのジョブステ−トメントで指定されたジョブクラスに基づいて後述のキュ−に投入するエントリ−プログラム,
12は、投入された資源待ちジョブをジョブクラスごとに保持するキュ−,
13は、資源待ちジョブをキュ−12から取り出してプロセッサ資源を割り当てる資源割当てプログラム,
14は、各ジョブクラスで優先使用するプロセッサ資源(優先プロセッサ)と、予備的利用が可能なプロセッサ資源(拡張プロセッサ)とを示すプロセッサ配分定義表(テ−ブル形式の記憶部),
15は、プロセッサ資源がそれぞれが使用されているかどうかを示すプロセッサ使用状況表(テ−ブル形式の記憶部)、
21乃至25は、プロセッサ資源を構成する各プロセッサ,
をそれぞれ示している。
【0018】
図1において、プロセッサ資源の各ジョブクラスへの配分状況は、
・クラスAの場合、優先プロセッサはプロセッサ21,22,23で拡張プロセッサはプロセッサ24〜N、
・クラスBの場合、優先プロセッサはプロセッサ25〜N′で拡張プロセッサはプロセッサ21,22,23、
・クラスCの場合、優先プロセッサはプロセッサ22,23,24で拡張プロセッサはプロセッサ25〜N″、
となっている。なお、各ジョブクラスに配分する優先プロセッサ同士の重複や拡張プロセッサ同士の重複を認めるかどうかは任意である。
【0019】
プロセッサ資源割当て部1は、入力装置から読み込まれたジョブに対し、この定義内容を参照しながら後述のプロセッサ資源割当て処理(図3参照)を実行して利用プロセッサを特定する。
【0020】
図2において、
・キュー12には、クラスBおよびクラスCの資源待ちキューが入っており、
・プロセッサ配分定義表14は、例えばクラスAの優先プロセッサがプロセッサPE1乃至PE10で、拡張プロセッサがプロセッサPE11乃至PE20であることを示し、
・プロセッサ使用状況表15は、例えばプロセッサPE1が使用中で、プロセッサPE1が空いていることを示している。
【0021】
エントリ−プログラム11は入力装置(図示省略)から送られる各ジョブをクラス分けした上でキュ−12に投入する。
【0022】
また、資源割当てプログラム13は、ジョブステ−トメントで記述された開始優先権に基づいてキュ−12から資源待ちジョブを取り出し、プロセッサ配分定義表14およびプロセッサ使用状況表15を参照して当該ジョブに優先プロセッサまたは拡張プロセッサを割り当てる。
【0023】
図3は、ジョブクラスごとのプロセッサ資源割当て処理手順を示す説明図であり、その内容は次のようになっている。
(S1)キュ−12に該当ジョブクラスのジョブ(資源待ちジョブ)が入っているかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合は一連の処理をいったん終了する。
(S2)プロセッサ配分定義表14およびプロセッサ使用状況表15を参照して該当ジョブクラスの優先プロセッサに空きがあるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(S5)に進む。
(S3)空き状態の優先プロセッサを一つ選択して、次のステップに進む。
(S4)キュ−12から該当ジョブクラスのジョブ(資源待ちジョブ)をその開始優先権に基づいて一つ取り出し、このジョブに前のステップで選択した優先プロセッサを割り当てて、一連の処理をいったん終了する。
(S5)プロセッサ配分定義表14の該当ジョブクラスで定義されている拡張プロセッサ中に、今回の割当て処理でまだ選択していないプロセッサが残っているかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合は一連の処理をいったん終了する。
(S6)この残りの中からプロセッサを一つ選択して、次のステップに進む。
(S7)プロセッサ使用状況表15を参照してこの選択プロセッサが使用中であるかどうかを判断し、「YES 」の場合はステップ(S5)に戻り、「NO」の場合は次のステップに進む。
(S8)プロセッサ配分定義表14を検索して、上記選択プロセッサが優先プロセッサとして定義されるジョブクラスを求め、次のステップに進む。
(S9)キュ−12に、このジョブクラスのジョブ(資源待ちジョブ)が入っているかどうかを判断し、「YES 」の場合はステップ(S5)に戻り、「NO」の場合は次のステップに進む。
(S10) キュ−12からステップ(S1)の該当ジョブクラスのジョブ(資源待ちジョブ)を開始優先権に基づいて一つ取り出し、このジョブにステップ(S6)で選択したプロセッサを割り当てて、一連の処理を終了する。
【0024】
以上のプロセッサ資源割当て処理をクラスCについてその優先プロセッサPE21乃至PE30がすべて使用中という状況で実行すると、概略、
・キュ−12にはクラスCの資源待ちジョブが入っているので、ステップ(S1)は「YES 」となり、
・ステップ(S2)に進むと、上記のように優先プロセッサがすべて使用中なので、当該ステップは「NO」となり、
・ステップ(S5)に進んでプロセッサ配分定義表14のクラスCの拡張プロセッサ(プロセッサPE1乃至PE10)が例えばすべて未選択であるとき、当該ステップは「YES 」となり、
・ステップ(S6)に進んで例えばプロセッサPE1を選択し、
・ステップ(S7)に進んでプロセッサ使用状況表15を参照するとプロセッサPE1は「1:使用中」なので、当該ステップは「YES 」となり、
・ステップ(S5)に戻ると、まだプロセッサPE2乃至PE10が未選択なので、当該ステップは「NO」となり、
・ステップ(S6)に進んで例えばプロセッサPE2を選択し、
・ステップ(S7)に進んでプロセッサ使用状況表15を参照するとプロセッサPE2は「0:空き」なので、当該ステップは「NO」となり、
・ステップ(S8)に進んでプロセッサ配分定義表14を検索すると、プロセッサPE2を優先プロセッサとして定義するジョブクラス(クラスA)が求まり、
・ステップ(S9)に進んでキュー12をみるとクラスAの資源待ちジョブは入っていないので、当該ステップは「NO」となり、
・ステップ(S10) に進んでキュ−12からクラスCの資源待ちジョブを一つ取り出してプロセッサPE2を割り当てる、
ことになる。
【0025】
なお、図3のステップ(S5)の判断をするためには、例えばプロセッサ配分定義表14の拡張プロセッサのそれぞれにフラグを1対1対応で用意して、これを、ステップ(S6)の選択時に変化させ、ステップ(S5)で「NO」の終了時に初期値に戻せばよい。
【0026】
また、プロセッサ使用状況表15を設けずに、ステップ(S2)やステップ(S7)の参照処理時に該当する各プロセッサに使用中かどうかを問い合わせるようにしてもよい。
【0027】
図4は、コンピュ−タ読み取り可能な記録媒体からプログラムを読み取って実行するコンピュ−タシステムの概要を示す説明図であり、3はコンピュ−タシステム、31はCPUやディスクドライブ装置などを内蔵した本体部、32は本体部31からの指示により画像を表示するディスプレイ、33は表示画面、34はコンピュ−タシステム3に種々の情報を入力するためのキ−ボ−ド、35は表示画面33上の任意の位置を指定するマウス、36は外部のデ−タベ−ス(DASDなどの回線先メモリ)、37は外部のデ−タベ−ス36にアクセスするモデム、38はCD−ROMやフロッピ−ディスクなどの可搬型記録媒体をそれぞれ示している。
【0028】
プログラムを格納する記録媒体としては、
・プログラム提供者側のデ−タベ−ス36(回線先メモリ)
・可搬型記録媒体38
・本体部31側のメモリ
などのいずれでもよく、当該プログラムは本体部31にロ−ディングされてその主メモリ上で実行される。
【0029】
【発明の効果】
本発明は、このように、各ジョブの優先プロセッサに加えて予備的利用が可能な拡張プロセッサをクラス単位で定義した上で、ジョブにプロセッサ資源を割り当てるに際し、当該ジョブのクラスに優先プロセッサの空きがあるときにはこれを用い、また空きがないときには所定の条件下で当該クラスの拡張プロセッサを用いているので、プロセッサ資源全体の有効利用および公平利用を図ることができる。
【図面の簡単な説明】
【図1】本発明の、プロセッサ資源選択システムの概要を示す説明図である。
【図2】本発明の、プロセッサ資源割当て処理を担当するプロセッサを示す説明図である。
【図3】本発明の、ジョブクラスごとのプロセッサ資源割当て処理手順を示す説明図である。
【図4】本発明の、コンピュ−タ読み取り可能な記録媒体からプログラムを読み取って実行するコンピュ−タシステムの概要を示す説明図である。
【図5】従来の、プロセッサ資源選択処理の概要(その1)を示す説明図である。
【図6】従来の、プロセッサ資源選択処理の概要(その2)を示す説明図である。
【符号の説明】
1:プロセッサ資源割当て部
11:エントリ−プログラム
12:投入されたジョブをジョブクラスごとに保持するキュ−
13:資源割当てプログラム
14:プロセッサ配分定義表
15:プロセッサ使用状況表
21,22,23,24,25
:プロセッサ資源を構成する各プロセッサ
3:コンピュ−タシステム
31:CPUやディスクドライブ装置などを内蔵した本体部
32:ディスプレイ
33:表示画面
34:キ−ボ−ド
35:マウス
36:外部のデ−タベ−ス(DASDなどの回線先メモリ)
37:モデム
38:可搬型記録媒体
41,42,43,44:キュ−
45:キュ−41が使用するプロセッサ資源
46:キュ−42が使用するプロセッサ資源
47:キュ−43およびキュ−44が共用するプロセッサ資源[0001]
BACKGROUND OF THE INVENTION
The present invention relates to processor resource selection processing for assigning a processor to each job classified into classes, and in particular, processor resources (priority processors) that can be preferentially used and processor resources (extended processors) that can be used preliminarily in units of classes. This is related to processor resource selection processing in which the availability of an extended processor is examined when there is no free space in the priority processor of the corresponding class of the execution job.
[0002]
In general, jobs are classified according to their properties and the types of system resources required by them, processor resources that can be used for each class are determined in advance, and processor resources of the corresponding class are assigned to execution jobs.
[0003]
At this time,
-A processor resource that has both a class that has no available processor resources and has a job waiting to be allocated (hereinafter referred to as a "resource-waiting job") and a class that has no resource-waiting jobs and free processor resources. It is desirable to prevent the occurrence of a state where the entire resource cannot be used effectively or a state where the resource cannot be used fairly between classes sharing processor resources, and the present invention responds to such a demand.
[0004]
[Prior art]
5 and 6 are explanatory views showing an overview of conventional processor resource selection.
[0005]
In the case of FIG. 5, the
[0006]
On the other hand, the
[0007]
In the case of FIG. 6, the
[0008]
Here, the shared
[0009]
[Problems to be solved by the invention]
As described above, the conventional processor resource selection method for assigning a processor to each classified job does not provide flexibility in the setting range of the processor used in each class.
[0010]
For this reason, class A processors are available, but all class B processors are in use, and jobs submitted to the job class remain in a waiting state for allocation of processor resources. There is a problem that the processor is assigned to only one class of job, and the processor resources are not used effectively and fairly between job classes.
[0011]
Therefore, according to the present invention, processor resources (extended processors) that can be used for preliminary use are distributed to each job class separately from the processor resources (priority processors) that are used preferentially there, and assigned to the corresponding job classes of the resource waiting jobs. It is an object of the present invention to make effective use and fair use of the entire processor resources by allocating an extended processor to this resource waiting job under a predetermined condition when there is no available priority processor.
[0012]
[Means for Solving the Problems]
The present invention solves this problem as follows.
(1) In a processor resource selection method in which an information processing apparatus assigns a processor to each job classified into classes,
The information processing apparatus includes:
By at least referring to a processor allocation definition table defining priority processors and pre-assignable expansion processors for each class,
When there is a vacancy in the priority processor defined in the first class to be executed, the priority processor is assigned to a job of the class ,
When the priority processor defined in the first class to be executed has no free space, the extended processor in the free state of the class is obtained, and the second processor class that defines the extended processor as the priority processor is determined. An extended processor that does not contain a resource waiting job is assigned to a job of the first class.
(2) In a processor resource selection system that assigns a processor to each job classified into classes,
A processor allocation definition table defining priority processors and expansion processors that can be preliminarily allocated for each class ;
When at least the priority processor defined in the first class to be executed is empty with reference to at least the processor distribution definition table, the priority processor is assigned to a job of the class, and the first target to be executed is When there is no free space in the priority processor defined in the class, the extended state in which there is no resource waiting job in the second class that defines the priority processor as a priority processor among the extended processors in the free state of the class Resource allocating means for allocating a processor to a first job of the class;
Is provided.
[0013]
According to the present invention, when assigning processors to C target jobs (resource waiting jobs) of the job class of FIG. 2, for example, at least by referring to the processor allocation definition table 14,
(a) When all the priority processors PE21 to 30 of the job class C are in use and the extended processor PE2 of the job class is empty,
(b) Rather than immediately assigning this extended processor PE2 to the target job,
(c) The extension processor PE2 obtains the job class A defined as the priority processor from the processor distribution definition table 14 and confirms that there is no resource waiting job in the job class A in the queue 12 for the first time. The processor PE2 is assigned to the target job.
[0014]
As a result, the present invention achieves more effective utilization and fair utilization of the entire processor resources.
[0015]
The present invention is also directed to a computer-readable program recording medium storing a program for causing a computer to realize this function.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
An embodiment of the present invention will be described with reference to FIGS.
[0017]
FIG. 1 is an explanatory diagram showing an overview of a processor resource selection system, FIG. 2 is an explanatory diagram showing a processor in charge of processor resource allocation processing,
1 is a processor resource allocation unit that allocates a processor to a job read from an input device;
11 is an entry program for submitting a job to a queue, which will be described later, based on the job class specified in the job statement;
12 is a queue for holding the input resource waiting job for each job class;
13 is a resource allocation program for fetching a resource waiting job from the queue 12 and allocating processor resources;
14 is a processor allocation definition table (table format storage unit) indicating processor resources (priority processors) to be preferentially used in each job class and processor resources (extended processors) that can be used preliminarily;
15 is a processor usage status table (table format storage unit) indicating whether each processor resource is used;
Respectively.
[0018]
In FIG. 1, the distribution status of processor resources to each job class is as follows:
In the case of class A, the priority processors are
In the case of class B, the priority processors are
In the case of class C, the priority processors are
It has become. Whether or not duplication between priority processors allocated to each job class or duplication between extended processors is recognized is arbitrary.
[0019]
The processor
[0020]
In FIG.
Queue 12 contains class B and class C resource waiting queues,
The processor allocation definition table 14 indicates that, for example, the class A priority processors are the processors PE1 to PE10, and the extended processors are the processors PE11 to PE20.
The processor usage status table 15 indicates that, for example, the processor PE1 is in use and the processor PE1 is free.
[0021]
The entry program 11 classifies each job sent from an input device (not shown) and inputs it to the queue 12.
[0022]
Further, the
[0023]
FIG. 3 is an explanatory diagram showing a processor resource allocation processing procedure for each job class, and the contents thereof are as follows.
(S1) It is determined whether or not a job of the corresponding job class (resource waiting job) is included in the queue 12. If “YES”, the process proceeds to the next step, and if “NO”, a series of processing is temporarily terminated. To do.
(S2) Referring to the processor allocation definition table 14 and the processor usage status table 15, it is determined whether or not there is a vacant priority processor for the job class. If “YES”, the process proceeds to the next step. If so, go to Step (S5).
(S3) Select one free priority processor and go to the next step.
(S4) Take out a job (resource waiting job) of the corresponding job class from the queue 12 based on its start priority, assign the priority processor selected in the previous step to this job, and end the series of processes once To do.
(S5) It is determined whether there is any processor that has not yet been selected in the current allocation process among the extended processors defined in the corresponding job class in the processor distribution definition table 14. If “YES”, Proceeding to the step, if “NO”, the series of processing is once terminated.
(S6) One processor is selected from the remaining, and the process proceeds to the next step.
(S7) Referring to processor usage status table 15, it is determined whether or not this selected processor is in use. If “YES”, the process returns to step (S5), and if “NO”, the process proceeds to the next step. .
(S8) The processor distribution definition table 14 is searched to obtain a job class in which the selected processor is defined as a priority processor, and the process proceeds to the next step.
(S9) It is determined whether or not a job (job waiting for resources) of this job class is included in queue 12. If “YES”, the process returns to step (S5), and if “NO”, the next step is performed. move on.
(S10) One job (resource waiting job) of the corresponding job class in step (S1) is extracted from queue 12 based on the start priority, and the processor selected in step (S6) is assigned to this job. The process ends.
[0024]
When the above processor resource allocation process is executed for class C in a situation where all the priority processors PE21 to PE30 are in use,
-Since queue-12 contains class C resource waiting jobs, step (S1) is set to "YES"
-When proceeding to step (S2), since all the priority processors are in use as described above, the corresponding step becomes "NO"
Proceeding to step (S5), when all the class C extended processors (processors PE1 to PE10) in the processor distribution definition table 14 are not selected, for example, the corresponding step becomes “YES”,
Proceed to step (S6), for example, select processor PE1,
-Proceeding to step (S7) and referring to the processor usage status table 15, the processor PE1 is "1: busy", so that step is "YES"
When returning to step (S5), since the processors PE2 to PE10 are not yet selected, the corresponding step becomes “NO”.
Proceed to step (S6), for example, select processor PE2,
-Proceeding to step (S7) and referring to the processor usage status table 15, processor PE2 is "0: empty", so that step is "NO"
When the process proceeds to step (S8) and the processor distribution definition table 14 is searched, a job class (class A) that defines the processor PE2 as a priority processor is obtained.
-Proceeding to step (S9) and looking at the queue 12, there is no class A resource waiting job, so that step is "NO"
Proceeding to step (S10), taking out one class C resource waiting job from the queue 12, and assigning the processor PE2.
It will be.
[0025]
In order to determine step (S5) in FIG. 3, for example, a flag is prepared in a one-to-one correspondence with each of the extended processors in the processor distribution definition table 14, and this is determined when step (S6) is selected. It may be changed and returned to the initial value at the end of “NO” in step (S5).
[0026]
Further, without providing the processor usage status table 15, it may be inquired whether each processor in use is in use at the time of the reference processing in step (S2) or step (S7).
[0027]
FIG. 4 is an explanatory diagram showing an outline of a computer system that reads and executes a program from a computer-readable recording medium. 3 is a computer system, 31 is a main body unit incorporating a CPU, a disk drive device, and the like. , 32 is a display for displaying an image in accordance with an instruction from the
[0028]
As a recording medium for storing the program,
・ Program provider side database 36 (destination memory)
・
Any of the memories on the
[0029]
【The invention's effect】
As described above, according to the present invention, in addition to the priority processor of each job, an extended processor that can be used in a preliminary manner is defined for each class, and when allocating processor resources to a job, the priority processor free space is assigned to the job class. This is used when there is a space, and when there is no space, the extended processor of the class is used under a predetermined condition. Therefore, effective utilization and fair utilization of the entire processor resources can be achieved.
[Brief description of the drawings]
FIG. 1 is an explanatory diagram showing an overview of a processor resource selection system according to the present invention.
FIG. 2 is an explanatory diagram showing a processor in charge of processor resource allocation processing according to the present invention.
FIG. 3 is an explanatory diagram illustrating a processor resource allocation processing procedure for each job class according to the present invention.
FIG. 4 is an explanatory diagram showing an outline of a computer system that reads and executes a program from a computer-readable recording medium according to the present invention.
FIG. 5 is an explanatory diagram showing an outline (part 1) of conventional processor resource selection processing;
FIG. 6 is an explanatory diagram showing an outline (part 2) of a conventional processor resource selection process.
[Explanation of symbols]
1: Processor resource allocation unit 11: Entry-program 12: Queue for holding submitted jobs for each job class
13: Resource allocation program 14: Processor allocation definition table 15: Processor usage status tables 21, 22, 23, 24, 25
: Processors constituting processor resources 3: Computer system 31:
37: modem 38:
45: Processor resource used by queue 41: Processor resource used by queue 42: Processor resource shared by
Claims (3)
前記情報処理装置は、
前記クラスごとの、優先プロセッサと予備的に割当て可能な拡張プロセッサとを定義したプロセッサ配分定義表を少なくとも参照することにより、
実行対象の第1の前記クラスに定義された前記優先プロセッサに空きがあるときには当該優先プロセッサを当該クラスのジョブに割り当て、
実行対象の第1の前記クラスに定義された前記優先プロセッサに空きがないときには、当該クラスの空き状態の前記拡張プロセッサを求めてその中で、それを優先プロセッサとして定義する第2の前記クラスに資源待ちジョブが入っていない状況の拡張プロセッサを、第1の当該クラスのジョブに割り当てる、
ことを特徴とするプロセッサ資源選択方法。 In the processor resource selection method in which the information processing apparatus assigns a processor to each job classified into classes,
The information processing apparatus includes:
By at least referring to a processor allocation definition table defining priority processors and pre-assignable expansion processors for each class,
When there is a vacancy in the priority processor defined in the first class to be executed, the priority processor is assigned to a job of the class ,
When the priority processor defined in the first class to be executed has no free space, the extended processor in the free state of the class is obtained, and the second processor class that defines the extended processor as the priority processor is determined. Assign an extended processor in a state in which no resource waiting job is entered to a job of the first class.
And a processor resource selection method.
前記クラスごとの、優先プロセッサと予備的に割当て可能な拡張プロセッサとを定義したプロセッサ配分定義表と、
少なくとも前記プロセッサ配分定義表を参照して、実行対象の第1の前記クラスに定義された前記優先プロセッサに空きがあるときには、当該優先プロセッサを当該クラスのジョブに割り当て、実行対象の第1の前記クラスに定義された前記優先プロセッサに空きがないときには、当該クラスの空き状態の前記拡張プロセッサを求めてその中で、それを優先プロセッサとして定義する第2の前記クラスに資源待ちジョブが入っていない状況の拡張プロセッサを、第1の当該クラスのジョブに割り当てる資源割当て手段と、
を有することを特徴とするプロセッサ資源選択システム。In a processor resource selection system that assigns a processor to each job classified into classes,
A processor allocation definition table defining priority processors and expansion processors that can be preliminarily allocated for each class ;
When at least the priority processor defined in the first class to be executed is empty with reference to at least the processor distribution definition table, the priority processor is assigned to a job of the class, and the first target to be executed is When the priority processor defined in the class has no free space, the extended processor in the free state of the class is obtained, and among them, there is no resource waiting job in the second class that defines it as the priority processor. Resource allocating means for allocating the status extension processor to the first class of jobs;
A processor resource selection system comprising:
前記プログラムは、
前記クラスごとの、優先プロセッサと予備的に割当て可能な拡張プロセッサとを定義したプロセッサ配分定義表を少なくとも参照し、
実行対象の第1の前記クラスに定義された前記優先プロセッサに空きがあるときには当該優先プロセッサを当該クラスのジョブに割り当て、
実行対象の第1の前記クラスに定義された前記優先プロセッサに空きがないときには、当該クラスの空き状態の前記拡張プロセッサを求めてその中で、それを優先プロセッサとして定義する第2の前記クラスに資源待ちジョブが入っていない状況の拡張プロセッサを、第1の当該クラスのジョブに割り当てる、
機能をコンピュータに実現させるためのものであることを特徴とするコンピュータ読み取り可能なプログラム記録媒体。In a recording medium storing a program used for processor resource selection for assigning a processor to each job classified into classes,
The program is
At least referring to a processor allocation definition table defining priority processors and expansion processors that can be preliminarily allocated for each class;
When there is a vacancy in the priority processor defined in the first class to be executed, the priority processor is assigned to a job of the class ,
When the priority processor defined in the first class to be executed has no free space, the extended processor in the free state of the class is obtained, and the second processor class that defines the extended processor as the priority processor is determined. Assign an extended processor in a state in which no resource waiting job is entered to a job of the first class.
A computer-readable program recording medium characterized in that the function is realized by a computer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP35776398A JP3733402B2 (en) | 1998-12-16 | 1998-12-16 | Processor resource selection method, processor resource selection system therefor, and computer-readable program recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP35776398A JP3733402B2 (en) | 1998-12-16 | 1998-12-16 | Processor resource selection method, processor resource selection system therefor, and computer-readable program recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000181729A JP2000181729A (en) | 2000-06-30 |
JP3733402B2 true JP3733402B2 (en) | 2006-01-11 |
Family
ID=18455809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP35776398A Expired - Fee Related JP3733402B2 (en) | 1998-12-16 | 1998-12-16 | Processor resource selection method, processor resource selection system therefor, and computer-readable program recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3733402B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7487504B2 (en) | 2002-02-06 | 2009-02-03 | International Business Machines Corporation | Thread dispatch for multiprocessor computer systems |
JP4188281B2 (en) * | 2004-06-03 | 2008-11-26 | 株式会社日立製作所 | Program execution reservation method and apparatus, processing program therefor, and program execution system |
US20070198981A1 (en) * | 2006-02-17 | 2007-08-23 | Jacobs Paul E | System and method for multi-processor application support |
JP4421660B2 (en) * | 2008-08-15 | 2010-02-24 | 株式会社日立製作所 | Program execution reservation method and apparatus, processing program therefor, and program execution system |
-
1998
- 1998-12-16 JP JP35776398A patent/JP3733402B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000181729A (en) | 2000-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7650601B2 (en) | Operating system kernel-assisted, self-balanced, access-protected library framework in a run-to-completion multi-processor environment | |
EP0523863B1 (en) | Digital data processor for high level instructions | |
US20090300629A1 (en) | Scheduling of Multiple Tasks in a System Including Multiple Computing Elements | |
JPH0628053B2 (en) | Resource allocation control method for multiprocessor system | |
US5568635A (en) | Physical memory allocation system, program execution scheduling system, and information processor | |
JPH064405A (en) | Computer with extended virtual storage | |
JPH0131214B2 (en) | ||
US20060070072A1 (en) | Information processing apparatus, memory area management method, and computer program | |
US8291426B2 (en) | Memory allocators corresponding to processor resources | |
JP3733402B2 (en) | Processor resource selection method, processor resource selection system therefor, and computer-readable program recording medium | |
TWI783401B (en) | Memory management method and related product | |
JP4211645B2 (en) | A computer system with a dedicated processor | |
JPH0713823A (en) | File resource management system of virtual computer system | |
JPS58115569A (en) | Multiprocessor system | |
JPH06187312A (en) | Processing method and its device in multi-cpu system | |
JPH0395661A (en) | Process assignment device for parallel computer | |
JP2941810B2 (en) | Image processing method and apparatus | |
JPH11249917A (en) | Parallel computers, their batch processing method, and storage medium | |
JPH05113894A (en) | File resource managing system in virtual computer system | |
JP2003248620A (en) | Dynamic memory managing method and dynamic memory management information processing device | |
JPH09167114A (en) | Method for allocating stack of multi-thread task | |
JPH05113893A (en) | Volume resource managing system in virtual computer | |
JPH04107640A (en) | Computer system | |
JP2522161B2 (en) | Volume resource management method in virtual computer system | |
JP2943401B2 (en) | External storage device allocation processing method for virtual machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041029 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041221 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050221 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050823 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050825 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050915 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081028 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091028 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091028 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101028 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101028 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111028 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111028 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121028 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121028 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131028 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |