JPH0344742A - マルチプロセッサにおけるタスク割り当て制御方法 - Google Patents

マルチプロセッサにおけるタスク割り当て制御方法

Info

Publication number
JPH0344742A
JPH0344742A JP1180977A JP18097789A JPH0344742A JP H0344742 A JPH0344742 A JP H0344742A JP 1180977 A JP1180977 A JP 1180977A JP 18097789 A JP18097789 A JP 18097789A JP H0344742 A JPH0344742 A JP H0344742A
Authority
JP
Japan
Prior art keywords
task
time
processing unit
executed
interruption
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.)
Granted
Application number
JP1180977A
Other languages
English (en)
Other versions
JP2815095B2 (ja
Inventor
Tsunemichi Shiozawa
塩澤 恒道
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 JP1180977A priority Critical patent/JP2815095B2/ja
Publication of JPH0344742A publication Critical patent/JPH0344742A/ja
Application granted granted Critical
Publication of JP2815095B2 publication Critical patent/JP2815095B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 「産業上の利用分野」 この発明は、マルチプロセッサにおいて、次に実行する
タスクを選択するためのタスク割り当て制御方式に関す
るものである。
「従来の技術」 第3図はマルチプロセッサ情報処理方式を示す。
複数の処理ユニット1,2.3がシステムバス4に接続
され、このシステムバス4にメインメモリ5、およびシ
ステムの現在時刻を示すタイマ6が接続される。処理ユ
ニット1,2.3はそれぞれプロセッサ10,20.3
0およびキャッシュメモリ11,21.31を有する。
このように複数の処理ユニットがメインメモリを共有し
て使用するマルチプロセッサシステムにおいては、各処
理ユニット、メインメモリ等のシステム資源の有効利用
を図るために、実行中のタスク(プログラム)が−時的
に休止した時、他のタスクの実行に処理ユニットを切り
替えて別の処理を行なうマルチプログラミングという形
態で複数の仕事を並行に処理している。このため、処理
ユニットは特定の処理に長時間無制限に使われること無
く、予め定められた手続きに従って計画的に時間を割り
当てられる。
タスクの割り当ては以下のように行なわれる。
特定のタスクが一定時間処理ユニットを占有すると、強
制的に処理ユニットは処理中のタスクから取り上げられ
て、処理ユニットは、処理待ち状態のタスクに割り当て
られる。また、実行中のタスクがメインメモリ資源の割
り当てを受けたり、外部から特定の情報を得るまで処理
を進めることができなくなった場合、そのタスクは自ら
処理ユニットを放棄し、他の実行待ち状態のタスクに処
理ユニットが割り当てられる。
一方、キャッシュメモリには、一般に、以下に示す動作
特性がある。タスクの処理を処理ユニットで初めて行な
う場合、処理ユニットにおいては、プロセッサが要求す
るメインメモリ上のブロックは自処理ユニットのキャッ
シュメモリに存在せず、プロセッサが要求するブロック
はシステムバスを介してメインメモリから転送(初期ブ
ロック転送)され、同時にキャッシュメモリにも格納さ
れる。
実行開始から一定時間が経過すると、プロセッサから要
求されるほとんどのブロックは、キャッシュメモリに存
在するようになり、そのキャッシュメモリのブロックを
利用するため、メインメモリからのブロック転送回数は
タスクの実行を開始した当初より減少する。第4図に初
めてタスクが実行された場合のメインメモリからキャッ
シュメモリへのブロック転送回数と時間との関係を示す
タスクの処理が開始された時点では、タスクが使用する
ほとんどのブロックがキャッシュメモリに格納されてい
ないため、ブロック転送回数が多い。
しかし、時間が経過するに伴い、タスクが使用するブロ
ックはキャッシュメモリ内に存在するようになるため、
ブロック転送回数は減少する。
プロセッサで実行されるタスクが使用するブロックが、
その処理ユニットのキャッシュメモリ内に存在しない場
合、当該ブロックをシステムバスを介してメインメモリ
から転送する必要がある。
メインメモリからのブロックの読み出し時間はキャッシ
ュメモリからの読み出し時間に比べて長く、タスクの処
理が遅くなる。また、第3図に示すようなマルチプロセ
ッサシステムにおいては、メインメモリから各処理ユニ
ットへのブロック転送回数が増加すると、システムバス
の使用率が高くなり、システムバスでの競合により、メ
インメモリからキャッシュメモリへのブロック転送時間
がさらに長くなる。このことより、メインメモリからキ
ャッシュメモリへのブロック転送回数を少なくすること
が望ましい。
「発明が解決しようとする!!i題」 従来のタスク割り当て制御方式では、予めタスクに与え
られた優先順位が高く、最も古く実行待ち状態となった
(IIも待ち時間が長い)タスクに優先して処理ユニッ
トが割り付けられるため、処理ユニットの数が増加する
程、再開したタスクが中断前に実行していた処理ユニッ
トと異なる処理ユニットに割り当てられることが多く、
再開したタスクが中断前に実行していた処理ユニットと
異なる処理ユニットに割り当てられた場合、メインメモ
リからの初期ブロック転送を行なう必要があるために、
メインメモリからのブロック転送回数が増加する欠点が
あった。
この発明の目的はこれらの欠点を除去するために、再開
するタスクを中断前に実行していた処理ユニットに優先
して割り当て、メインメモリからキャッシュメモリへの
ブロック転送回数を減少させ、システムバスの使用率を
減少させることができるマルチプロセッサにおけるタス
ク割り当て制御方式を提供することにある。
「課題を解決するための手段」 この発明によれば処理ユニットUが、実行中のタスクが
中断または終了し、実行を待っているタスクの中から次
に実行するタスクを選択する時に、中断前に実行してい
た処理ユニットがUであるタスク、または中断時間があ
らかじめ定めた時間以上であるタスク、あるいは初めて
実行されるタスりを選択する。
「実施例」 マルチプロゲラξングにより複数のタスクを並列に処理
するために、各タスクごとにタスクコントロールブロッ
ク(TCB)が設けられ、タスクの処理が中断した時に
、処理ユニットはそのタスクのTCBに中断した処理を
再開させるための情報を格納している。
この発明において処理ユニットUが次に実行するタスク
を選択する時に、中断前に実行していた処理ユニットが
Uであるタスク、または中断時間があらかじめ定めた時
間以上であるタスクを選択するが、このためにタスクの
処理が中断した時に、処理ユニットは第1図に示すよう
にタスクコントロールブロック(TCB)に、中断前に
タスクを実行していた処理ユニットの識別子と、タスク
が中断された時刻も格納させる。なおタスクが初めて実
行される場合は中断された時刻には値「0」が格納され
る。また初めて処理ユニットに割り付けられるタスクの
場合は、中断前にタスクを実行していた処理ユニットの
識別子の代りに他の値が格納される。
中断されたタスクのTCBは、タスクが中断される原因
が解消し、処理ユニットを割り当てられることにより実
行が可能な状態となった時、処理待ちタスクのTCBリ
ストに追加される。
タスクの処理を中断もしくは終了した処理ユニッl−U
は、第2図に示す一連の処理を行い、処理待ちタスクの
TCBリストがら次に実行するタスクのTCBを選択す
る。まずステップ41において、処理ユニットUは、処
理待ち状態にあるタスクのTCBリストからあらかしめ
定めた手続きに従い1つのTCBを選択する。
次にステップ42において、ステップ41で選択したタ
スクのTCBに格納されている中断された時刻が「0」
であれば(初めて実行されるタスクであれば)、ステッ
プ47に分岐し、ステップ41で選択したタスクのTC
Bを処理待ち状態にあるタスクのTCBリストから削除
し、その選択したタスクの実行を開始する。ステップ4
1で選択したタスクのTCBに格納されている中断され
た時刻が「0」でなければ、ステップ43を実行する。
ステップ43においては、中断時間(=現在時刻−中断
された時刻)が予め定めた値以上であるか、またはステ
ップ41で選択したタスクを中断前に実行していた処理
ユニットがUであれば、ステップ47に分岐し、ステッ
プ41−<’選択したタスクのTCBを処理待ち状態に
あるタスクのTCBリストから削除し、その選択したタ
スクの実行を開始する。他方、中断時間(−現在時刻−
中断された時刻)が予め定めた値より小さくかつステッ
プ41で選択したタスクを中断前に実行していた処理ユ
ニットがUでなければ、ステップ44を実行する。ステ
ップ44では処理待ち状態にあるタスクのTCBリスト
から予め定められた手続きに従い選択されていない1つ
のTCBを選択する。
次のステップ45ではステップ44で選択する前の状態
において、処理待ち状態にあるタスクのTCBリストに
選択されていないタスクが存在すればステップ42に戻
り、ステップ44で選択したTCBについてステップ4
2.43を実行する。
ステップ44で選択する前の状態で処理待ち状態にある
タスクのTCBリストに選択されていないタスクが存在
しなければステップ46を実行する。
ステップ46においては、以上の処理から、初めて実行
されるタスク、あるいは中断時間(−現在時刻−中断さ
れた時刻)が予め定めた値以上であるタスク、または中
断前に実行していた処理ユニットがUであるタスクが、
処理待ち状態にあるタスクのTCBリストに存在しない
ので、処理待ち状態にあるタスクのTCBリストからあ
らかじめ定めた手続きに従いlっのTCBを選択し、ス
テップ47を実行する。ステップ47においては、ステ
ップ46で選択したタスクのTCBを処理待ち状態にあ
るタスクのTCBリストがら削除し、ステップ46で選
択したタスクの実行を開始する。
以上のようにこの発明により、処理待ち状態のタスクか
ら次に実行するタスクを選択する際、中断されていたタ
スクを中断前に実行していた処理ユニットに優先して割
り当てることができ、メインメモリからキャッシュメモ
リへのブロック転送回数を減少させることが可能となる
また、この発明の方式では、単純に、中断されたタスク
を中断される+’61の処理ユニットに割り当てるだけ
でなく、タスクの中断時間が予め定めた時間を越えた場
合には、任意の処理ユニットに割り付けるようにしてい
る。これは、タスクが中断されている間、中断前の処理
ユニットで他のタスクのブロック転送が行なわれること
により、中断される以前に転送したブロックがキャッシ
ュメモリに存在しなくなった場合、中断されたタスクは
、中断前の処理ユニットで実行される必要性がなくなる
からでる。中断時間が予め定めた時間を越えたタスクを
任意の処理ユニットに割り付けることにより、中断され
たタスクが中断前に実行された処理ユニットに割り当て
られるまで、長い時間待つことがなくなり、タスクの実
行を行なっていない処理ユニットを有効に活用すること
が可能となる。
「発明の効果」 以上説明したように、この発明により、処理待ち状態の
タスクは、中断される前に実行されていた処理ユニット
に優先的に割り付けられ、中断前にメインメモリからキ
ャッシュメモリに格納したブロックをタスクの再開後も
使用することが可能となり、再開後のメインメモリから
キャッスメモリへのブロック転送回数を減少させること
が可能となる。
また、キャッシュメモリに格納されているブロックを書
き換えた場合、これと同一のブロックが格納されている
他のキャッシュメモリについてもそのブロックを書き換
えてこれら各キャンシュメモリ間で対応ブロックを一致
させる必要がある。
この発明ではタスクが同一の処理ユニットで実行される
ことにより、各キャッシュメモリに共通に格納されるブ
ロックの数が減少するため、キャッシュメモリに格納さ
れているブロックを書き換えた場合、各キャッシュメモ
リ間で対応ブロックを一致させるための処理の回数が減
少する利点もあ
【図面の簡単な説明】
第1図はこの発明に用いられるタスクコントロールブロ
ック(TCB)を示す図、第2図はこの発明の実施例の
動作例を示す流れ図、第3図はマルチプロセッサ情報処
理方式を示すブロソク図、第4図はメインメモリからキ
ャッシュメモリへのブロック転送回数と時間との関係を
示す図である。

Claims (1)

    【特許請求の範囲】
  1. (1)メインメモリと複数の処理ユニットとがシステム
    バスで接続され、各処理ユニットはそれぞれプロセッサ
    およびキャッシュメモリから成り、タスクの実行の際に
    必要とするメインメモリの内容を自己のキャッシュメモ
    リから読み出し、キャッシュメモリにその内容がない場
    合はその内容を上記メインメモリから読み出すと共にそ
    の読み出した内容を自己のキャッシュメモリに格納する
    マルチプロセッサ情報処理方式において、 処理ユニットUは、実行中のタスクが中断または終了し
    、実行を待っているタスクの中から次に実行するタスク
    を選択する時、中断前に実行していた処理ユニットがU
    であるタスクまたは、中断時間があらかじめ定めた時間
    以上であるタスク、あるいは初めて実行されるタスクを
    選択することを特徴とするマルチプロセッサにおけるタ
    スク割り当て制御方式。
JP1180977A 1989-07-12 1989-07-12 マルチプロセッサにおけるタスク割り当て制御方法 Expired - Fee Related JP2815095B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1180977A JP2815095B2 (ja) 1989-07-12 1989-07-12 マルチプロセッサにおけるタスク割り当て制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1180977A JP2815095B2 (ja) 1989-07-12 1989-07-12 マルチプロセッサにおけるタスク割り当て制御方法

Publications (2)

Publication Number Publication Date
JPH0344742A true JPH0344742A (ja) 1991-02-26
JP2815095B2 JP2815095B2 (ja) 1998-10-27

Family

ID=16092589

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1180977A Expired - Fee Related JP2815095B2 (ja) 1989-07-12 1989-07-12 マルチプロセッサにおけるタスク割り当て制御方法

Country Status (1)

Country Link
JP (1) JP2815095B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2007017932A1 (ja) * 2005-08-09 2009-02-19 富士通株式会社 スケジュール制御プログラム及びスケジュール制御方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5447545A (en) * 1977-09-22 1979-04-14 Nec Corp Multiple processor system
JPS5583951A (en) * 1978-12-21 1980-06-24 Toshiba Corp Information processing system
JPS62115567A (ja) * 1985-11-15 1987-05-27 Nec Corp 多重プロセサシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5447545A (en) * 1977-09-22 1979-04-14 Nec Corp Multiple processor system
JPS5583951A (en) * 1978-12-21 1980-06-24 Toshiba Corp Information processing system
JPS62115567A (ja) * 1985-11-15 1987-05-27 Nec Corp 多重プロセサシステム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2007017932A1 (ja) * 2005-08-09 2009-02-19 富士通株式会社 スケジュール制御プログラム及びスケジュール制御方法
JP4651671B2 (ja) * 2005-08-09 2011-03-16 富士通株式会社 スケジュール制御プログラム及びスケジュール制御方法
US8479205B2 (en) 2005-08-09 2013-07-02 Fujitsu Limited Schedule control program and schedule control method

Also Published As

Publication number Publication date
JP2815095B2 (ja) 1998-10-27

Similar Documents

Publication Publication Date Title
EP0547991A2 (en) Adaptive method for starting tasks in a multi-tasking operating system
JPH0628323A (ja) プロセス実行制御方法
JP2902746B2 (ja) 仮想計算機制御方式
JPH0344742A (ja) マルチプロセッサにおけるタスク割り当て制御方法
JP3019317B2 (ja) プロセススケジューリング方法
WO2020213397A1 (ja) プロセッサおよびレジスタの継承方法
JPS603229B2 (ja) 情報処理方式
JP3278457B2 (ja) プログラム実行制御装置及びプログラム実行制御方法
JPS63636A (ja) タスク制御方式
JPS6152761A (ja) 演算装置
JPH11249917A (ja) 並列型計算機及びそのバッチ処理方法及び記録媒体
JPH0532771B2 (ja)
JPH0452942A (ja) ファイル転送方式
JPH10312297A (ja) マルチタスク機能を有する情報処理システムにおける資源管理方法、資源管理装置及び記録媒体
JPH1153327A (ja) マルチプロセッサシステム
JPH09269902A (ja) 情報処理装置の資源管理装置、及び情報処理システムにおける資源管理方法
JPH03116335A (ja) 非特権cpuから特権cpuヘの乗り移り方式
JPS635790B2 (ja)
JPH0351918A (ja) タスク実行レベルによる有効ローディング方式
JPS58115569A (ja) マルチプロセツサ方式
JPH0528120A (ja) マルチプロセツサ処理方式
JPH02270032A (ja) ローディング方式
JPH04370838A (ja) 仮想計算機の起動方式
JPS63113637A (ja) ハツシユ・テ−ブル・エントリ排他処理方式
JPH04350728A (ja) 複数タスクの実時間処理装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees