JPH04147344A - マルチタスク実行制御方式 - Google Patents

マルチタスク実行制御方式

Info

Publication number
JPH04147344A
JPH04147344A JP27185790A JP27185790A JPH04147344A JP H04147344 A JPH04147344 A JP H04147344A JP 27185790 A JP27185790 A JP 27185790A JP 27185790 A JP27185790 A JP 27185790A JP H04147344 A JPH04147344 A JP H04147344A
Authority
JP
Japan
Prior art keywords
task
queue
processor
priority
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.)
Pending
Application number
JP27185790A
Other languages
English (en)
Inventor
Seiji Niida
仁井田 征司
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 Solution Innovators Ltd
Original Assignee
NEC Solution Innovators 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 NEC Solution Innovators Ltd filed Critical NEC Solution Innovators Ltd
Priority to JP27185790A priority Critical patent/JPH04147344A/ja
Publication of JPH04147344A publication Critical patent/JPH04147344A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はマルチタスク実行制御方式、特にマルチプロセ
ッサ構成の情報処理システムにおいて、実行プロセッサ
を指定しない任意のプロセッサで実行可能なタスクと実
行プロセッサを指定するタスクとを同時に含むマルチタ
スク制御方式に関する。
〔従来の技術〕
従来、この種のマルチタスク制御方式は、構成する台数
を上まわる数のタスクの実行を制御するために、システ
ムに唯一の実行待ち状態タスクの待ち行列と、タスクの
優先度と実行プロセッサとの指定手段とを有していて、
これらを用いてタスクの実行順序と実行プロセッサとを
決定している。
〔発明が解決しようとする課題〕
上述した従来のマルチタスク制御方式は、第一に、任意
のプロセッサで実行可能なタスク群と実行プロセッサを
指定するタスク群とが同一の待ち行列に混在するため、
定常状態で実行中のタスクの中でもっとも低い優先度を
持つタスクより高い優先度を待つタスクが待ち行列中に
存在する場合が有り、特定のプロセッサに負荷が偏よる
とこのプロセッサ以外を指定したタスクや任意のプロセ
ッサで実行可能なタスクが新たに発生した場合に、例え
発生したタスクの優先度が待ち行列中、最高でないとき
も、−旦は全プロセッサて実行状態にあるタスクの優先
度やプロセッサ指定情報を調べる必要があり、待ち行列
操作手順およびタスクの交替を決定する手順が複雑にな
るという欠点がある。第二に、待ち行列の操作を行なう
場合、排他的な操作か一つの待ち行列に集中するため、
プロセッサ台数が増加するにしたがい、待ち行列の操作
のための排他制御による実行停止時間か増加するという
欠点かある。
〔課題を解決するための手段〕
本発明のマルチタスク実行制御方式は、実行プロセッサ
を指定しない任意のプロセッサで実行可能なタスクと実
行プロセッサを指定するタスクとを同時に含むマルチプ
ロセッサ構成の情報処理システムにおいて、実行プロセ
ッサを指定しない実行待ちタスクを優先度順にチェーン
するシステムに一つの第1の待ち行列手段と、実行プロ
セッサを指定する実行待ちタスクを優先度順にチェーン
する第2〜第N+1の待ち行列手段と、前記第1〜第N
+1の待ち行列手段のそれぞれの待ち行列に最も優先度
の高いタスクが発生したとき、このタスクの優先度が実
行中の最も優先度の低いタスクより高いかを調べるタス
ク交替検出手段と、このタスク交替検出手段が高いこと
を検出したとき、比較されたタスクを実行しているプロ
セッサはそのタスクの実行を停止して、そのタスクが実
行プロセッサを指定している場合はそのプロセッサに対
応する待ち行列手段の先頭に、そのタスクが実行プロセ
ッサを指定していない場合は前記第1の待ち行列手段の
先頭にチェーンして、前記発生したタスクの実行を行な
うタスク交替手段とを有することにより、また前記タス
ク交替検出手段が各プロセッサで実行中のタスクのうち
最も値の小さい数値を選択するセレクタと、このセレク
タの出力とそれぞれの待ち行列の最も高い優先度のタス
クより高い優先度の発生したタスクとを比較する比較手
段とからなることにより構成される。
〔実施例〕
次に本発明について図面を参照して説明する。
第1図は本発明の一実施例の待ち行列の状態を示す構成
図で、2台のプロセッサて構成する情報処理システムに
適用した場合について示している。
第1図において、待ち行列1,2.3はそれぞれシステ
ムに一つの待ち行列およびプロセッサ#O,#1に対応
する待ち行列て、それぞれの待ち行列の先頭に位置する
構造体の番地を記憶装置に格納する領域11,21.3
1と、待ち行列中で実行を待合せているタスクの優先度
およびタスク情報を含む構造体12,13,14,22
23.32.33で構成される。なお優先度は図中の数
値が小さいものほど高いものとする。各構造体は次優先
度の構造体の番地を格納する領域を持つことにより待ち
行列を構成し、待ち行列の最後尾に位置する構造体には
、その領域に最後尾表示を格納する。また各タスクは待
ち行列の先頭に位置するものから順次実行状態に移行す
る。実行状態に移行したタスクに対応する待ち行列中の
構造体は、領域11,21.31の内容を更新すること
により待ち行列から取除かれる。
第2図はタスクの交替を説明するための状態遷移図であ
る。タスクは実行前状態41から待ち行列にそのタスク
に対応する構造体を追加することにより、実行待ち状態
42に遷移する。待ち行列から取除かれてタスクが実行
を開始すると、実行待ち状態42から実行状態43に遷
移する。そして、タスクの実行が終了すると実行状態4
3から終了状態44に遷移する。また、実行状態43で
タスク実行中にそのタフよりも高い優先度のタスクが発
生ずれば、実行状態43から実行待ち状態42に戻る。
これをタスクの交替と呼ぶ。
第3図は第1図の実施例におけるタスクの交替の可能性
の有無を検出するための交替検出回路の構成図を示して
いる。第3図において、セレクタ54は現在実行中のプ
ロセッサ#0およびプロセッサ#1で実行中タスクのそ
れぞれの優先度51および52のうち最も低い優先度を
出力し、比較器55は新たに実行待ち状態に遷移したタ
スクの優先度53がセレクタ54との出力より高い優先
度のとき交替信号56を出力する。
次に第1図の動作について説明を進めると、新しく発生
したタスクは最初にプロセッサ指定情報が調べられ、こ
れによりこのタスクを追加する待ち待列を決定する。次
に、このタスクの優先度を調べる。この優先度が待ち行
列中で最も高い場合は、交替検出回路を用いてプロセス
交替の有無を調べる。例えば第1図の状態において、プ
ロセッサ指定無し、優先度1のタスクが発生すると、待
ち行列1がこのタスクを追加する待ち行列として選択さ
れる。この場合、新しく発生したこのタスクは、待ち行
列1中に存在するすべてのタスクよりも優先度が高い。
そこで交替検出回路を用いてプロセスの交替の有無を調
べる。この場合は交替信号56が出力されるのでプロセ
スの交替が発生する可能性が有る。ここで交替するのは
実行中のタスクの中でもつとも優先度の低いタスクであ
る。この例では、プロセッサ#0で実行中のタスク4が
最も優先度が低いので、このタスクが交替の対象となる
。また、プロセッサ#Oで実行中のタスク4はプロセッ
サ#0を指定しているため、待ち行列2の先頭に戻るこ
とになる。
次に待ち行列2に新たにタスクが発生した場合について
説明する。待ち行列2に対して優先度2のタスクが発生
すると、このタスクの優先度は待ち行列2の中で最も高
いので、交替検出回路を用いてプロセス交替の有無を調
べる。この場合も交替信号56が出力されるのでプロセ
スの交替が発生する可能性がある。ここで交替するのは
プロセッサ#0で実行中のタスク4である。交替したタ
スク4は待ち行列2に戻される。
おわりに、待ち行列3に新たにタスクが発生した場合に
ついて説明する。待ち行列3に対して優先度2のタスク
が発生すると、このタスクの優先度は待ち行列3の中で
最も高いので、交替検出回路を用いてプロセス交替の有
無を調べる。この場合も交替信号56が出力されるので
、プロセスの交替が発生ずる可能性がある。新しく発生
したりスフの優先度はプロセッサ#1で実行中のタスク
5の優先度より低いか、タスク5はプロセッサ番号指定
が無い、そのため、タスク5は一旦待ち行列の1の先頭
に戻され、代りに新しく発生したタスクがプロセッサ#
1で実行状態に入る。タスク5の優先度はプロセッサ#
0で実行中のタスク4よりも高いので更にタスクの交替
が発生し、最終的にはタスク5かプロセッサ#0で実行
状態に入り、タスク4が待ち行列2の先頭に戻される。
〔発明の効果〕
以上説明したように本発明は、一つの任意のプロセッサ
で実行可能な実行待ちタスクの待ち行列と、各プロセッ
サごとに一つの実行プロセッサを指定する実行待ちタス
クの待ち行列とを有することにより、各待ち行列におい
て最も高い優先度のタスクが発生した場合のみプロセス
交替の可能性を調べ、必要に応じてプロセスの交替を行
ない、交替したプロセスは、基本的に待ち行列の先頭に
戻せば良いため、待ち行列の操作手順およびプロセス交
替の手順か単純化することか可能となる。
また、待ち行列操作において、待ち行列を複数に分割す
るため、排他制御の対象を分割することが可能となり、
待ち行列の排他制御による実行停止時間を短縮できる効
果がある。
【図面の簡単な説明】
第1図は本発明の一実施例の待ち行列の状態を示す構成
図、第2図はタスクの交替を説明するための状態遷移図
、第3図はタスクの交替の可能性を検出するための交替
検出回路の構成図である。 1、.2.3・・・待ち行列、4.5・・・実行中のタ
スク、54・・・セレクタ、55・・・比較器、56・
・・交替信号。

Claims (1)

  1. 【特許請求の範囲】 1、実行プロセッサを指定しない任意のプロセッサで実
    行可能なタスクと実行プロセッサを指定するタスクとを
    同時に含むマルチプロセッサ構成の情報処理システムに
    おいて、実行プロセッサを指定しない実行待ちタスクを
    優先度順にチェーンするシステムに一つの第1の待ち行
    列手段と、実行プロセッサを指定する実行待ちタスクを
    優先度順にチェーンする第2〜第N+1の待ち行列手段
    と、前記第1〜第N+1の待ち行列手段のそれぞれの待
    ち行列に最も優先度の高いタスクが発生したとき、この
    タスクの優先度が実行中の最も優先度の低いタスクより
    高いかを調べるタスク交替検出手段と、このタスク交替
    検出手段が高いことを検出したとき、比較されたタスク
    を実行しているプロセッサはそのタスクの実行を停止し
    て、そのタスクが実行プロセッサを指定している場合は
    そのプロセッサに対応する待ち行列手段の先頭に、その
    タスクが実行プロセッサを指定していない場合は前記第
    1の待ち行列手段の先頭にチェーンして、前記発生した
    タスクの実行を行なうタスク交替手段とを有することを
    特徴とするマルチタスク実行制御方式。 2、前記タスク交替検出手段が各プロセッサで実行中の
    タスクのうち最も値の小さい数値を選択するセレクタと
    、このセレクタの出力とそれぞれの待ち行列の最も高い
    優先度のタスクより高い優先度の発生したタスクとを比
    較する比較手段とからなることを特徴とする請求項第1
    記載のマルチタスク制御方式。
JP27185790A 1990-10-09 1990-10-09 マルチタスク実行制御方式 Pending JPH04147344A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27185790A JPH04147344A (ja) 1990-10-09 1990-10-09 マルチタスク実行制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27185790A JPH04147344A (ja) 1990-10-09 1990-10-09 マルチタスク実行制御方式

Publications (1)

Publication Number Publication Date
JPH04147344A true JPH04147344A (ja) 1992-05-20

Family

ID=17505854

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27185790A Pending JPH04147344A (ja) 1990-10-09 1990-10-09 マルチタスク実行制御方式

Country Status (1)

Country Link
JP (1) JPH04147344A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008090507A (ja) * 2006-09-29 2008-04-17 Fujitsu Ltd ジョブ実行のスケジューリングプログラム、ジョブ実行のスケジューリング方法、ジョブ実行のスケジューリング装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008090507A (ja) * 2006-09-29 2008-04-17 Fujitsu Ltd ジョブ実行のスケジューリングプログラム、ジョブ実行のスケジューリング方法、ジョブ実行のスケジューリング装置
US8161485B2 (en) 2006-09-29 2012-04-17 Fujitsu Limited Scheduling jobs in a plurality of queues and dividing jobs into high and normal priority and calculating a queue selection reference value

Similar Documents

Publication Publication Date Title
US6675191B1 (en) Method of starting execution of threads simultaneously at a plurality of processors and device therefor
JP3604091B2 (ja) マルチタスキングデータ処理システム
US4394727A (en) Multi-processor task dispatching apparatus
US5305455A (en) Per thread exception management for multitasking multithreaded operating system
US4074353A (en) Trap mechanism for a data processing system
US4286322A (en) Task handling apparatus
US7412590B2 (en) Information processing apparatus and context switching method
US20070294702A1 (en) Method and apparatus for implementing atomicity of memory operations in dynamic multi-streaming processors
US7689749B2 (en) Interrupt control function adapted to control the execution of interrupt requests of differing criticality
CN112416546A (zh) 多任务调度方法、电子装置和计算机存储介质
US6341301B1 (en) Exclusive multiple queue handling using a common processing algorithm
KR100902977B1 (ko) 하드웨어 공유 시스템 및 방법
JPH0454255B2 (ja)
US20060112394A1 (en) Computer system
US8108862B2 (en) Out-of-order thread scheduling based on processor idle time thresholds
CN103329102A (zh) 多处理器系统
US4851992A (en) Register/saving/restoring system for saving and restoring data in a register of a slave processor
EP2630577B1 (en) Exception control in a multiprocessor system
US20030037227A1 (en) Processor enabling exception handling to be set by program
JPH04147344A (ja) マルチタスク実行制御方式
JP2002163117A (ja) タスクスケジューリング装置
Zuepke et al. Fast user space priority switching
JPH0830562A (ja) マルチプロセッサシステム
JPH09282188A (ja) 割込処理方法およびこの方法を用いたシステム
JP2585905B2 (ja) マルチタスク実行装置