[go: up one dir, main page]

JPS6152494B2 - - Google Patents

Info

Publication number
JPS6152494B2
JPS6152494B2 JP4177479A JP4177479A JPS6152494B2 JP S6152494 B2 JPS6152494 B2 JP S6152494B2 JP 4177479 A JP4177479 A JP 4177479A JP 4177479 A JP4177479 A JP 4177479A JP S6152494 B2 JPS6152494 B2 JP S6152494B2
Authority
JP
Japan
Prior art keywords
value
index
pointer
program
register
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
Application number
JP4177479A
Other languages
Japanese (ja)
Other versions
JPS55134452A (en
Inventor
Naoya Oono
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.)
NEC Corp
Original Assignee
Nippon Electric Co Ltd
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 Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP4177479A priority Critical patent/JPS55134452A/en
Publication of JPS55134452A publication Critical patent/JPS55134452A/en
Publication of JPS6152494B2 publication Critical patent/JPS6152494B2/ja
Granted legal-status Critical Current

Links

Description

【発明の詳細な説明】 本発明は、マルチプログラミング方式の情報処
理システムにおけるデイスパツチング方式に関す
る。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a dispatching method in a multi-programming information processing system.

情報処理装置においては、一般に中央処理装置
に比べて、入出力装置は低速である。このため、
主記憶上に複数のプログラムを格納しておき、あ
るプログラムが入出力動作を行つている間に他の
プログラムで実行することにより、計算機システ
ムにおける中央処理装置(以下CPUとよぶ)や
入出力装置等の物理的資源を有効に利用しようと
するいわゆるマルチプログラミング方式が一般に
行われている。
In information processing devices, input/output devices are generally slower than central processing units. For this reason,
By storing multiple programs in main memory and executing them while one program is performing input/output operations, the central processing unit (hereinafter referred to as CPU) and input/output device in a computer system A so-called multi-programming method is generally used to effectively utilize physical resources such as

このマルチプログラミング方式においては、
CPUで実行可能なプログラムが複数個ある場合
に、そのうちのいずれかを選択し、そのプログラ
ムにCPUを割当てる、即ちデイスパツチを行う
ことが必要となるが、これは通常各プログラムに
デイスパツチングにおけるプラオリテイ(以下
DPと略す)を割当て、このDPが最も高い値をも
つプログラムにCPUを割当てることが行われて
いる。
In this multiprogramming method,
When there are multiple programs that can be executed by a CPU, it is necessary to select one of them and allocate the CPU to that program, in other words, to perform dispatching. (below
(abbreviated as DP), and the CPU is allocated to the program with the highest DP value.

一般に、各プログラムにDPを割当てる場合に
はそのプログラムが応答時間の面から、どの程度
高速に処理される事が要求されるかという要因
と、そのプログラムに高いDPを割当てること
が、情報処理システムの物理的資源の有効利用に
どの程度貢献するかという二つの要因が考慮され
る。
In general, when assigning a DP to each program, the information processing system Two factors are considered: the extent to which it contributes to the effective use of physical resources.

即ち、あるプログラムに高いDPを割当てるこ
とによりCPUにおける待ち時間を短くすること
ができ、処理時間が短縮でき、また、入出力装置
を頻繁に使用するプログラムに、高いDPを割当
てることにより、入出力装置の使用率を高くする
ことができる。
In other words, by assigning a high DP to a certain program, it is possible to shorten the waiting time in the CPU and processing time, and by assigning a high DP to a program that frequently uses input/output devices, the input/output The utilization rate of the device can be increased.

本発明は、応答時間の要求の度合いを示す第1
の指標と、入出力装置の使用の度合を示す第2の
指標を組合わせて、DPを作成することにより、
応答時間の面からと資源の使用率の面からの要求
をともに満たすようなデイスパツチング方式を提
供するものである。
The present invention provides a first
By creating a DP by combining the index and a second index indicating the degree of use of input/output devices,
The purpose of this invention is to provide a dispatching method that satisfies both the requirements in terms of response time and resource utilization.

本発明においては、DPとして前記第1の指標
および第2の指標からなる二次元のDPを採用
し、かつ、前記第1の指標に対しては、その値に
閾値を設け、この閾値よりも低い値をもつ場合に
は、第1の指標は無視され、閾値よりも高い場合
には、その値がデイスパツチングに際して反映さ
れるようにすることにより、応答時間の要求によ
る、資源使用率の低下を最小限に留めようとする
ものであり、本発明によれば、特に応答時間を要
求されるプログラムのみが、デイスパツチングに
際してもその要求が考慮されることになり、かつ
応答時間の要求が等しい場合には入出力装置の使
用頻度の面からの第2の指標によりデイスパツチ
ングを行うことにより、資源の有効利用が計れる
ことになり、かつ、応答時間の要求にも対処でき
ることになる。
In the present invention, a two-dimensional DP consisting of the first index and the second index is adopted as the DP, and a threshold value is provided for the value of the first index, and the value is higher than the threshold value. If it has a low value, the first index is ignored, and if it is higher than a threshold, its value is reflected in dispatching, thereby reducing resource utilization due to response time requirements. According to the present invention, only programs that require a particularly high response time will have their requirements taken into account during dispatching, and If they are equal, by performing dispatching based on the second index from the perspective of the frequency of use of the input/output device, it becomes possible to measure the effective use of resources and also to meet the demands for response time. .

次に、本発明の一実施例を説明する。 Next, one embodiment of the present invention will be described.

本実施例においては、DPは一例として8ビツ
トで示され、その上位4ビツトとして応答時間の
要求の度合いを示す第1の指標が使用され下位4
ビツトとして、入出力装置の使用頻度による第2
の指標が使用される。
In this embodiment, the DP is represented by 8 bits as an example, and the first index indicating the degree of response time requirement is used as the upper 4 bits, and the lower 4
As a bit, the second bit depends on the frequency of use of the input/output device.
indicators are used.

本実施例においては、いくつかの応答時間要求
のタイプが設けられ各タイプ毎に、そのタイプに
与えられた目標応答時間、およびその目標応答時
間の達成のきびしさ、目標応答時間の達成の要求
の度合い等に応じて、第1の指標の初期値および
最終値第1の指標の上昇間隔が与えられる。
In this embodiment, several types of response time requests are provided, and for each type, the target response time given to that type, the severity of achieving the target response time, and the request for achieving the target response time. The initial value and final value of the first index and the increase interval of the first index are given depending on the degree of the increase.

そしてあるプログラムが情報処理装置に投入さ
れると、そのプログラムのタイプに対応した初期
値が与えられ、以後、そのタイプに対対応する時
間が経過するたびに、その値が最終値になるま
で、上昇させるというデツドライン制御が導入さ
れている。
When a certain program is input into an information processing device, an initial value corresponding to the type of the program is given, and from then on, each time the time corresponding to that type elapses, the value is changed to the final value. Deadline control has been introduced to raise the limit.

また、本実施例においては、各プログラムが
CPUを使用した時間、入出力装置を使用した回
数を計測する手段が設けられ各プログラムが一定
のCPU時間を使用する間に行つた入出力動作の
回数を測定し、この回数に応じて、4ビツトの値
を第2の指標を各プログラムに与える機能(以下
APG機能という)も備えられているとする。
In addition, in this example, each program
A means is provided to measure the time that the CPU is used and the number of times that the input/output device is used.The number of input/output operations that each program performs while using a certain amount of CPU time is measured, and depending on this number, 4 A function that gives each program a second indicator of the bit value (hereinafter referred to as
It is assumed that the device is also equipped with an APG function (called an APG function).

次に、本実施例の構成を説明する。 Next, the configuration of this embodiment will be explained.

本実施例においては、各プログラム毎にエント
リをもち、プログラム番号によりアクセスされる
制御テーブル1が用意される制御テーブルの各エ
ントリには、現時点での第1および第2の指標を
保持する、第1および第2の指標部11,12そ
のプログラムが現在CPUで実行可能であるかど
うかを示すレデイフラク部13、および現時点
で、次に高いDPをもつプログラムの番号を保持
するポインタ部14が用意されている。
In this embodiment, a control table 1 is prepared that has an entry for each program and is accessed by program number. 1 and a second index section 11, 12, a ready flag section 13 that indicates whether the program is currently executable on the CPU, and a pointer section 14 that holds the number of the program with the next highest DP at the present time. ing.

また、プログラムの中で、最大のDPをもつプ
ログラムの番号を保持するレジスタとしてトツプ
ポインタ2が設けられる。このトツプポインタ2
および制御テーブル1のポインタ部14により、
プログラムをDPの高い順番に管理するデイスパ
ツチングキユーが保持されることになる。なお、
キユーの最後即ち、最も低いDPをもつプログラ
ムのポインタ部は値―Iをもつとする。
Additionally, a top pointer 2 is provided as a register that holds the number of the program with the largest DP among the programs. This top pointer 2
and the pointer section 14 of the control table 1,
A dispatching queue is maintained that manages programs in descending order of DP. In addition,
It is assumed that the pointer section of the last program in the queue, that is, the program with the lowest DP, has the value -I.

また、前記閾値を保持する手段として、閾値レ
ジスタ3が用意される。そして、閾値以下の値を
第1の指標としてもつ場合にこれを無視すること
によりDPを修正する手段として、比較回路4お
よび抑止回路5が設けられる。制御テーブル1か
ら読出された第1の指標部11の値は比較回路4
により、前記閾値レジスタ3の値と比較され、こ
の値よりも大きな値をもつ場合には、第1の指標
の値がDPの上位4ビツトとして、またこの値よ
りも小さいかあるいは等しい値をもつ場合には、
読出された第1の指標の値が抑止回路5により抑
止され、値0がこの第1の指標値の修正された値
として出力されることになる、これがDPの上位
4ビツトとして用いられるDPの下位4ビツトと
しては第2の指標がそのまま使用される。
Further, a threshold value register 3 is provided as means for holding the threshold value. A comparison circuit 4 and a suppression circuit 5 are provided as means for correcting DP by ignoring a value less than or equal to a threshold value as a first index. The value of the first index section 11 read from the control table 1 is sent to the comparator circuit 4.
is compared with the value of the threshold register 3, and if the value is larger than this value, the value of the first index is used as the upper 4 bits of DP and has a value smaller than or equal to this value. in case of,
The read value of the first index is suppressed by the suppression circuit 5, and the value 0 is output as the corrected value of this first index value. This is the value of the DP used as the upper 4 bits of the DP. The second index is used as is as the lower four bits.

従つて、これらDPの修正手段により、あるプ
ログラムの第1の指標が指定された閾値よりも大
きい場合には、制御テーブルから読出されたプロ
グラムiの第1および第2の指標の8ビツトがそ
のままDPとして出力され、第1の指標が閾値よ
りも大きくない場合には、上位4ビツトの第1の
指標は0となり、下位4ビツトの第2の指標のみ
がDPとして出力されることになる。
Therefore, with these DP correction means, if the first index of a certain program is larger than the specified threshold value, the 8 bits of the first and second indexes of program i read from the control table remain unchanged. If the first index is not larger than the threshold, the first index of the upper four bits will be 0, and only the second index of the lower four bits will be output as the DP.

次に、本実施例における動作を説明する。 Next, the operation in this embodiment will be explained.

デツドライン制御により、あるプログラムiの
第1の指標が変化した場合あるいはAPG機能に
より、あるプログラムiの第2の指標が変化した
場合には、次の動作が行われる。なお、この動作
の行われている間は、通常のデイスパツチングは
行われないとする。
When the first index of a certain program i changes due to the deadline control or when the second index of a certain program i changes due to the APG function, the following operation is performed. It is assumed that normal dispatching is not performed while this operation is being performed.

ここでポインタ部14に保持されたデイスパツ
チングキユーの更新はプログラムiのデイスパツ
チングキユーからの削除、および適切な場所への
挿入という2段階の動作で行われる。なお、新し
いプログラムが登録された場合には、デイスパツ
チングキユーへの挿入だけが行われる。
Here, the updating of the dispatching queue held in the pointer section 14 is performed in two steps: deleting program i from the dispatching queue and inserting it into an appropriate location. Note that when a new program is registered, it is only inserted into the dispatching queue.

これを行うために、制御テーブル1から読出さ
れ、修正をうけたDPを保持するDPレジスタ10
1、DPレジスタ101の出力と制御テーブル1
から読出され修正をうけたDPを比較するDP比較
回路102、制御テーブル1から読出されたポイ
ンタ部14の値を保持する第1のポインタレジス
タ103、第1のポインタレジスタの値を入力と
する第2のポインタレジスタ104、DPの変更
されたプログラム番号iを保持する保持レジスタ
105、前記制御テーブル1のポインタ部14の
出力と、前記保持レジスタ105の出力とを比較
するポインタ比較回路106、および前記制御テ
ーブル1のポインタ部14の出力が−1であるこ
とを検出する検出回路107および関連する制御
回路108が用意される。
To do this, a DP register 10 holding the modified DP read from the control table 1
1. DP register 101 output and control table 1
A DP comparison circuit 102 that compares the corrected DP read from the control table 1, a first pointer register 103 that holds the value of the pointer section 14 read from the control table 1, and a first pointer register 103 that holds the value of the pointer section 14 read from the control table 1; 2, a holding register 105 that holds the changed program number i of the DP, a pointer comparison circuit 106 that compares the output of the pointer section 14 of the control table 1 with the output of the holding register 105, and the A detection circuit 107 that detects that the output of the pointer section 14 of the control table 1 is -1 and a related control circuit 108 are provided.

プログラムiのポインタ部1中におけるデイス
パツチングキユーからの削除は前記制御回路10
8の制御により、次のように行われる。まず、プ
ログラム番号iが保持レジスタ105にセツトさ
れ、トツプポインタ2の値が第1ポインタレジス
タ103にセツトされる、次にトツプポインタ2
の値と保持レジスタ105の値がポインタ比較回
路106により比較される。
Deletion of program i from the dispatching queue in the pointer section 1 is performed by the control circuit 10.
8, the following steps are performed. First, the program number i is set in the holding register 105, the value of the top pointer 2 is set in the first pointer register 103, and then the value of the top pointer 2 is set in the first pointer register 103.
The value of the holding register 105 is compared with the value of the holding register 105 by the pointer comparison circuit 106.

a 値が等しい場合には、即ち比較回路106が
一致を検出した場合には、第1ポインタレジス
タ103出力をアドレスとして制御テーブル1
が読出され、このポインタ部14の値が第1の
ポインタレジスタ103にセツトされ、この値
がトツプポインタ2に格納され削除が完了す
る。
a If the values are equal, that is, if the comparison circuit 106 detects a match, the first pointer register 103 output is used as the address in the control table 1.
is read out, the value of this pointer section 14 is set in the first pointer register 103, this value is stored in the top pointer 2, and the deletion is completed.

b 値が等しくない場合には、保持レジスタ10
5に格納されているiをアドレスとして制御テ
ーブル1を読出し、ポインタ部14の値を第1
ポインタレジスタ103を介して第2ポインタ
レジスタ104にセツトする。
b If the values are not equal, holding register 10
5 is stored in the control table 1 as an address, and the value of the pointer section 14 is set to the first
It is set in the second pointer register 104 via the pointer register 103.

c 次に第1ポインタレジスタ103の値をアド
レスとして、制御テーブル1を読出し、ポイン
タ部14の値と、保持レジスタ105の値をポ
インタ比較回路106で比較する。
c Next, the control table 1 is read using the value of the first pointer register 103 as an address, and the value of the pointer section 14 and the value of the holding register 105 are compared by the pointer comparison circuit 106.

d ポインタ比較回路106が一致を検出しない
場合には、読出されたポインタ部14の値を第
1ポインタレジスタ103にセツトし、これを
アドレスとして、制御テーブルをひきポインタ
比較回路106が一致を検出するまでdをくり
返す。
d If the pointer comparison circuit 106 does not detect a match, the read value of the pointer section 14 is set in the first pointer register 103, and using this as an address, the control table is run and the pointer comparison circuit 106 detects a match. Repeat d until.

e 一致が検出された場合には、第2ポインタレ
ジスタ104の値を第1ポインタレジスタ10
3でアドレスされる制御テーブル1のポインタ
部14に書き込み、プログラムiのデイスパツ
チングキユーからの削除が完了する。
e If a match is detected, the value of the second pointer register 104 is transferred to the first pointer register 10.
3 is written to the pointer section 14 of the control table 1 addressed by 3, and the deletion of program i from the dispatching queue is completed.

プログラムiのデイスパツチングキユーへの登
録は次のように行われる。
Program i is registered in the dispatching queue as follows.

a まず、保持レジスタ105にiをセツトし、
これをアドレスとして、制御テーブル1を読出
し、閾値レジスタ3により修正されたDPをDP
レジスタ101にセツトするとともに、トツプ
ポインタレジスタ2の値を第1ポインタレジス
タ103にセツトする。
a First, set i in the holding register 105,
Using this as an address, read control table 1 and set the DP corrected by threshold register 3 to DP.
At the same time, the value of top pointer register 2 is set in first pointer register 103.

b 次に、第1ポインタレジスタ103にアドレ
スとして制御テーブル1を読出し、読出された
修正済のDPとDPレジスタ101の値をDP比
較回路102により比較する。
b Next, the control table 1 is read as an address to the first pointer register 103, and the read corrected DP and the value of the DP register 101 are compared by the DP comparison circuit 102.

c このときDPレジスタ101の値の方が大き
い場合には、iが最も高いDPをもつことにな
り、これをデイスパツチングキユーの先頭にお
くために、次のc−1,c―2の処理が行われ
る。
c At this time, if the value of the DP register 101 is larger, i has the highest DP, and in order to place it at the beginning of the dispatching queue, the next c-1, c-2 processing is performed.

c―1保持レジスタ105の値をトツプポイン
タレジスタ2にセツトする。
The value of c-1 holding register 105 is set to top pointer register 2.

c―2保持レジスタ105によりアドレスされ
る制御テーブル1のポインタ部に、第1ポ
インタレジスタ103の値を書き込み、処
理が終了する。
The value of the first pointer register 103 is written into the pointer section of the control table 1 addressed by the c-2 holding register 105, and the process ends.

d cにおいて、DPレジスタ103の値の方が
大きくない場合には e 第1ポインタレジスタ103の値が第2ポイ
ンタレジスタ104にセツトされるとともに、
第1ポインタレジスタ103には、制御テーブ
ルのポインタ部14の値がセツトされ、bに示
したと同じ処理が行われる。
If the value in the DP register 103 is not larger in dc, the value in the first pointer register 103 is set in the second pointer register 104, and
The value of the pointer section 14 of the control table is set in the first pointer register 103, and the same processing as shown in b is performed.

f このときcにおいてDPレジスタ101の値
の方が大きい場合にはデイスパツチングキユー
において第2ポインタレジスタ104と、第1
ポインタレジスタ103で示されるプログラム
の間に、プログラムiを挿入するために次のf
―1,f―2の処理を行いデイスパツチングキ
ユーの更新を終了する。
f At this time, if the value of the DP register 101 is larger at c, the second pointer register 104 and the first
In order to insert program i between the programs indicated by pointer register 103, the following f
-1 and f-2 are performed, and the updating of the dispatching queue is completed.

f―1第2ポインタレジスタ104をアドレス
として、保持レジスタ105の値を、制御
テーブル1のポインタ部14に書き込む。
f-1 The value of the holding register 105 is written to the pointer section 14 of the control table 1 using the second pointer register 104 as an address.

f―2保持レジスタ105をアドレスとして、
第1ポインタレジスタの値を、制御テーブ
ル1のポインタ部14に書き込む。
Using the f-2 holding register 105 as the address,
The value of the first pointer register is written to the pointer section 14 of the control table 1.

g fにおいて、DPレジスタ101の値の方が
大きくない場合には、eの動作が繰返される。
If the value of the DP register 101 is not larger in gf, the operation in e is repeated.

なおdまたはgにおいて、読出された制御テ
ーブル1のポインタ部の値が−1であつた場合
即ち、デイスパツチングキユーの最終であつた
場合には、次の処理が行われる。即ち、第1ポ
インタレジスタでアドレスされている制御テー
ブル1のポインタ部14に保持レジスタ105
の値を書き込み、次に保持レジスタ105をア
ドレスとして、制御テーブル1のポインタ部1
4に値−1を書き込む。
Note that if the value of the pointer portion of the read control table 1 is -1 in d or g, that is, if it is the last dispatching queue, the following processing is performed. That is, the holding register 105 is stored in the pointer section 14 of the control table 1 addressed by the first pointer register.
, and then use the holding register 105 as an address to write the value in the pointer section 1 of the control table 1.
Write the value -1 to 4.

なお、本実施例においてはデイスパツチングは
従来の情報処理装置と同様であり、次のように行
われる。
In this embodiment, dispatching is the same as in the conventional information processing apparatus, and is performed as follows.

まず、現在実行中のプログラムが入出力命令を
実行しCPUでの処理を続行できなくなつた場合
には、前記制御テーブルの対応するエントリのレ
デイフラグを0にするとともに、デイスパツチヤ
が起動される。
First, if the currently executing program executes an input/output instruction and the CPU cannot continue processing, the ready flag of the corresponding entry in the control table is set to 0 and the dispatcher is activated.

また、入出力動作が終了した場合には、割込み
が発生し、割込み解析ルーチンにより、その原因
が解析され、対応するプログラムのレデイフラグ
をセツトするとともに、デイスパツチヤが起動さ
れる。
When the input/output operation is completed, an interrupt occurs, the cause of which is analyzed by the interrupt analysis routine, the ready flag of the corresponding program is set, and the dispatcher is activated.

デイスパツチヤが起動されると、デイスパツチ
ヤは、まず、トツプポインタ2により、デイスパ
ツチングキユーをサーチし、レデイフラグが1と
なつている最初のプログラムを見つけだし、その
プログラムに対してデイスパツチヤを行う。
When the dispatcher is activated, the dispatcher first searches the dispatch queue using the top pointer 2, finds the first program whose ready flag is set to 1, and dispatches that program. .

以上、本発明の一実施例を説明したが、本発明
の主旨は応答要求を示す第1の指標、および、資
源使用の度合いを示す第2の指標を組合せて、
DPを作成する場合には、指定された閾値より
も、第1の指標が高い場合には、第2の指標より
も第1の指標を優先し、第1の指標よりも大きく
ない場合には、これを無視し第2の指標だけを、
DPとして使用することにより、応答時間の要求
およびスルーブツトの要求に応できるようなDP
を与える手段を提供することにあり、この主旨に
直接関連しない動作に関しては、従来の技術によ
り実現されるので詳細な説明は行つていない。
An embodiment of the present invention has been described above, but the gist of the present invention is to combine the first indicator indicating the response request and the second indicator indicating the degree of resource usage,
When creating a DP, if the first index is higher than the specified threshold, the first index is given priority over the second index, and if it is not higher than the first index, then the first index is given priority over the second index. , ignore this and only use the second indicator,
A DP that can be used as a DP to meet response time and throughput requirements.
The purpose of this invention is to provide a means for providing the following information, and since operations not directly related to this purpose are realized by conventional techniques, detailed explanations are not provided.

たとえば、本実施例では、デツドライン制御あ
るいはAPG機能の具体的な動作に関しては詳細
な動作の説明は行つていないが、これはたとえば
APG機能についていえば制御テーブルにある時
点からのI/O回数、CPU消費時間を保持するフイ
ールドを設け、I/O命令発生、デイスパツチング
の発生毎に、これらの対応するフイールドを積算
し、一定時間毎に、この比を計算することによ
り、第2の指標を得ることができる。
For example, this embodiment does not provide a detailed explanation of the specific operations of the deadline control or APG function;
Regarding the APG function, fields are provided in the control table to hold the number of I/Os and CPU consumption time from a certain point, and these corresponding fields are integrated every time an I/O command or dispatching occurs. By calculating this ratio at regular intervals, the second index can be obtained.

また、本実施例においては、デイスパツチング
キユーにはCPUを使用できる状態にあるもの
(レデイ状態にあるもの)も、そうでないものも
ポインタにより接続されているとしているが、必
ずしもこのようにする必要はなく、レデイ状態に
あるプログラムのみをデイスパツチングキユーに
登録するように構成することもできる、また、本
実施例においては、応答性の要求を示す第1の指
標は、従来知られているデツドライン制御によ
り、タイマ割込みが発生され、制御テーブルの第
1の指標が書換えられることを規定しているが、
本発明は必ずしもデツドライン制御を必要とする
ものではなく、すべてのプログラム、あるいは一
部のプログラムに対しては、デツドライン制御が
適用されず、投入された時点の第1の指標がプロ
グラム完了まで保持されてもよい。
In addition, in this embodiment, it is assumed that the dispatching queues are connected to the CPU by pointers, whether they are in a state where the CPU can be used (those in the ready state) or not. It is not necessary to do this, and it is also possible to configure so that only programs in the ready state are registered in the dispatching queue.In addition, in this embodiment, the first index indicating the responsiveness requirement is the conventional one. It stipulates that a timer interrupt is generated and the first index of the control table is rewritten by the deadline control that is specified.
The present invention does not necessarily require deadline control, and deadline control may not be applied to all or some programs, and the first index at the time of input is retained until the program is completed. It's okay.

また、本実施例においては、すべてのプログラ
ムにして、APG機能が適用され、すべてのプロ
グラムについて、そのプログラムの使用した
CPUタイム、I/O回数を記録し、これにより第2
の指標を計算するとしているが、この機能に関し
ても必ずしも全プログラムについてAPG機能を
使用する必要はなく、一部あるいは全部のプログ
ラムについて、プログラムの特性がわかつている
ものについては、あらかじめ第2の指標を与えて
おくことも可能で、この場合には、プログラムの
実行中に測定を行う必要がない。
In addition, in this embodiment, the APG function is applied to all programs, and the APG function is applied to all programs.
Record the CPU time and I/O number, and use this to record the second
However, it is not necessary to use the APG function for all programs, and if the characteristics of some or all programs are known, the second index is calculated in advance. It is also possible to provide the following values, in which case there is no need to perform measurements while the program is running.

【図面の簡単な説明】[Brief explanation of the drawing]

図は本発明の一実施例を示すもので、1は制御
テーブル、2はトツプポインタ、3は閾値レジス
タ、4は比較回路、5は抑止回路、101はDP
レジスタ、102はDP比較回路、103は第1
ポインタレジスタ、104は第2ポインタレジス
タ、105は保持レジスタ、106はポインタ比
較回路、107は−1の検出回路、108は制御
回路を示す。
The figure shows an embodiment of the present invention, in which 1 is a control table, 2 is a top pointer, 3 is a threshold register, 4 is a comparison circuit, 5 is an inhibition circuit, and 101 is a DP.
register, 102 is the DP comparison circuit, 103 is the first
104 is a second pointer register, 105 is a holding register, 106 is a pointer comparison circuit, 107 is a -1 detection circuit, and 108 is a control circuit.

Claims (1)

【特許請求の範囲】[Claims] 1 各プログラムの応答要求の度合いにより設定
される第1の指標、および入出力装置の使用の度
合いにより設定される第2の指標を保持する手段
と、前記第1の指標に対する閾値を保持し、各プ
ログラムの第1の指標がこの閾値よりも大きい場
合には、第1の指標と第2の指標をそのプログラ
ムのデイスパツチングプライオリテイとして出力
し、前記保持されている閾値よりも大きくない場
合には、第1の指標を無視し、第2の指標のみを
デイスパツチングプライオリテイとして出力する
デイスパツチングプライオリテイ修正手段と、前
記デイスパツチングプライオリテイ修正手段によ
り修正された各プログラムのデイスパツチングプ
ライオリテイの大小関係をデイスパツチングキユ
ーとして保持する手段、特定のプログラムにおけ
る第1あるいは第2の指標の変更に際して変更さ
れた指標に応するデイスパツチングプライオリテ
イに応じて、前記デイスパツチングキユーを更新
する手段をもつことを特徴とするデイスパツチン
グ方式。
1 means for holding a first index set according to the degree of response request of each program and a second index set according to the degree of use of the input/output device, and a threshold value for the first index; If the first index of each program is greater than this threshold, the first index and the second index are output as the dispatching priority of that program, and if it is not greater than the held threshold. includes a dispatching priority correction means that ignores the first index and outputs only the second index as the dispatching priority, and dispatching of each program modified by the dispatching priority modification means. Means for maintaining the magnitude relationship of the dispatching priorities as a dispatching queue; A dispatching method characterized by having means for updating a dispatching queue.
JP4177479A 1979-04-06 1979-04-06 Dispatching system Granted JPS55134452A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4177479A JPS55134452A (en) 1979-04-06 1979-04-06 Dispatching system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4177479A JPS55134452A (en) 1979-04-06 1979-04-06 Dispatching system

Publications (2)

Publication Number Publication Date
JPS55134452A JPS55134452A (en) 1980-10-20
JPS6152494B2 true JPS6152494B2 (en) 1986-11-13

Family

ID=12617718

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4177479A Granted JPS55134452A (en) 1979-04-06 1979-04-06 Dispatching system

Country Status (1)

Country Link
JP (1) JPS55134452A (en)

Also Published As

Publication number Publication date
JPS55134452A (en) 1980-10-20

Similar Documents

Publication Publication Date Title
US5161226A (en) Microprocessor inverse processor state usage
US7689809B2 (en) Transparent return to parallel mode by rampoline instruction subsequent to interrupt processing to accommodate slave processor not supported by operating system
JP2000040022A (en) Execution multi-thread time profiling method, execution state deciding method for selected thread, time profiling system and computer redable recording medium
US7590774B2 (en) Method and system for efficient context swapping
US20160357689A1 (en) Operating System-Managed Interrupt Steering in Multiprocessor Systems
US7225443B2 (en) Stack usage in computer-related operating systems
JP5136658B2 (en) Virtual computer allocation method, allocation program, and information processing apparatus having virtual computer environment
US8601488B2 (en) Controlling the task switch timing of a multitask system
US7856635B2 (en) Dynamic address windowing on a PCI bus
US7689749B2 (en) Interrupt control function adapted to control the execution of interrupt requests of differing criticality
US7584464B2 (en) Software processing method and software processing system
JPS6152494B2 (en)
US20220188154A1 (en) Method for monitoring a task and an apparatus implementing the same method
JPH02242434A (en) Task scheduling method
JPH0612395A (en) Task allocation method in multiprocessor system
JPS6236260B2 (en)
CN114035847A (en) Method and apparatus for parallel execution of core programs
JPH0668725B2 (en) Device for responding to interrupt condition in data processing system and method for responding to asynchronous interrupt condition
JPS6323588B2 (en)
US11681527B2 (en) Electronic device and multiplexing method of spatial
JP4755232B2 (en) compiler
JP3374480B2 (en) Data processing device
JPH08137703A (en) Task switching device
KR100297744B1 (en) Thread exception handling system and method
JP3413369B2 (en) Information processing device