JPH01154237A - 時分割タスク実行装置 - Google Patents

時分割タスク実行装置

Info

Publication number
JPH01154237A
JPH01154237A JP62312716A JP31271687A JPH01154237A JP H01154237 A JPH01154237 A JP H01154237A JP 62312716 A JP62312716 A JP 62312716A JP 31271687 A JP31271687 A JP 31271687A JP H01154237 A JPH01154237 A JP H01154237A
Authority
JP
Japan
Prior art keywords
time
task
execution
queue
executing
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
JP62312716A
Other languages
English (en)
Inventor
Koichi Yoshida
孝一 吉田
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP62312716A priority Critical patent/JPH01154237A/ja
Publication of JPH01154237A publication Critical patent/JPH01154237A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、マイクロプロセッサ−を用いて制御するシス
テムにおいて、2つ以上のタスク(仕事)を1つのマイ
クロプロセッサ−で時分割に実行し、優先順位を持つ複
数のキューでタスクを実行し、実行待ちのタスクは各々
指定されたキューに対する待行列にキューインされ、存
在するキューの数までのタスクの時分割並列処理を可能
とする時分割マルチタスク実行装置に関するものである
従来の技術 マイクロプロセッサ−を利用してタスクを実行する場合
、1つのマイクロプロセッサ−に対して、レジスタ群、
スタックポインタ、ステータスレジスタ等からなる1組
のレジスタファイルを準備し、マイクロプロセッサ−か
らの命令に応じてレジスタファイルに必要なデータを転
送しながらタスクを実行する方式のものが多い。ところ
が、この方式では常時1つのタスクしか実行できないか
ら、実行効率が悪(なる。そこで従来から、1つのマイ
クロプロセッサ−に対して設けられた1組のレジスタフ
ァイルを時分割で使用し、複数のタスクを時分割で実行
する方式が考えられている。そのうち、最も典型的なも
のは、マイクロプロセッサ−の1命令毎にタスクを切り
換える方式である。ところがこの方式では、2つ以上の
タスクを1命令毎に順次切り換えて実行するだけである
から、複数のタスク間に実行時間の優先順位をもたせる
ことができない。しかもタスクを切り換えるたびに、そ
れまでレジスタファイルに格納されていたデータを、−
旦メモリ−(スタック)領域に退避させ、次のタスクに
必要なデータを別のメモリー空間等からレジスタファイ
ルに呼び込む操作が必要となる。このデータの切り換え
時間中はタスクを実行することができず、したがって時
間的なロスが大きくなる。
一方、このような1命令毎のタスク切り換えではなく、
ユーザープログラムによって複数のタスクの時間管理を
行い、割込み処理等を用いてタスク切り換えを行う方式
も知られている。この方式によれば、プログラムの作成
時に予め複数のタスクの実行時間に優先順位を設けるこ
とも可能である。しかし、プログラムによって優先順位
を設定するにはプログラム内容に対する高度な理解が必
要であり、マイクロプロセッサ−を使用するユーザーが
、そのユーザーの仕様に合ったプログラムを作成し、優
先順位を設定することは実際上極めて困難である。しか
も、この場合でも1つのマイクロプロセッサ−に対して
1組のレジスタファイルしか存在しないから、タスクの
切り換えのたびにデータの退避と呼び込みを繰り返す必
要があり、したがって時間的なロスは依然として解消さ
れない。
このような問題点を解決するために、1つのマイクロプ
ロセッサ−に対して複数のレジスタファイルを準備し、
マイクロプロセッサ−(プログラム)からの命令に従っ
てマルチプレクサ−を切り換え、複数のレジスタファイ
ルを順次切り換えながら複数のタスクを時分割で実行す
る方式もある。このようにすれば、1つのタスクに対し
て1つのレジスタファイルが準備されているから、切り
換え時にデータを退避させたり、呼び込んだりする必要
はなく、したがって時間的なロスは少なくなる。しかし
この場合でも複数のタスクの切り換え設定や各タスクの
実行時間の優先順位はプログラムによって設定しなけれ
ばならない。このためユーザーが、ユーザーの仕様に合
わせてプログラムを作成するには相当大きな負担がかか
ることになる。
発明が解決しようとする問題点 このように、従来複数のタスクを1つのマイクロプロセ
ッサ−で実行させる場合には、仮にレジスタファイルが
複数あったとしても、タスク毎のデータ管理、実行時間
管理、優先順位等をプログラムで設定しなければならな
いため、ユーザーに大きな負担をかけるという問題があ
った。
本発明は、タスク実行キュー毎にレジスタファイルを持
ち、実行タスクを切り換える時のデータ退避にかかる時
間的ロスをなくし、また、タスク実行キュー毎にタスク
実行予定時間のデータを持ち、複数のタスクが時分割で
並列実行している時、そのタスクが実行予定時間内に終
了しない時、そのタスクの優先順位を自動的に高め、タ
スクが並列実行しているときにも、そのタスクがある時
間内に実行を終了するように自動的にタスクスケジュー
ルを行なう機能を持たせることにより、従来の問題を解
決するものである。
問題点を解決するための手段 本発明は上述の問題点を解決するために、タスク実行キ
ューの数だけレジスタファイルを設けるとともに、各レ
ジスタファイル中にタスク実行予定時間のデータレジス
タを設け、システムのカウンタに対し、そのデータレジ
スタ値を設定し、そのタスクの実行が行なわれていると
き、システムのカウンタが、タスク実行キューのタスク
実行予定時間を越した場合、そのタスクの実行優先順位
を高め、複数のタスクの時分割並列実行をさせるように
したものである。
作用 このようにすれば、タスク実行キューに対し予め優先順
位をつけておいて、複数のタスクの時分割並列実行を行
なわせている時、優先順位の低いキューがほとんど実行
していないような状況に面しても、その低いキューに対
するタスク実行予定時間を越してもなお実行が終了しな
い時、自動的に優先順位を高めほぼ実行予定時間内にそ
のタスクを終了することが可能となる。
実施例 本発明の一実施例を図に示すブロック図を用いて詳しく
述べる。この例では2つのタスク実行キューが存在する
場合をのべる。第1図において、レジスタファイル1は
レジスタファイルA。
Bの2つから成る。各レジスタファイルには、レジスタ
群(汎用レジスタあるいはデータレジスタ、データポイ
ンタ等から成る)、スタックポインタ、ステータスレジ
スタ、プログラムカウンターを備えている。タスク実行
予定時間データレジスタ2はレジスタファイル−個に対
し一つ存在し、そのレジスタファイルを使用するタスク
の実行終了予定時間を記憶するデータレジスタである。
システムカウンタ3はシステムより発生される(図示せ
ず)カウントクロックにより自動的にカウントを行うカ
ウンターである。実行キュー指定回路4は、レジスタフ
ァイルAあるいはレジスタファイルBのどちらを使用す
るタスク実行キューを実行させるかを決定する回路であ
る。MPX(マルチプレクサ−)5は、タスク実行予定
時間データレジスタAあるいは同Bのデータのいずれを
使用すべきかを選択する回路である。比較器6は、シス
テムカウンターの値と、タスク実行予定時間データレジ
スタ値との比較を行ない、システムカウンターの値が、
タスク実行予定時間データレジスタの値より大きくなる
と、タスク実行キュー優先順位決定回路へ制御するよう
に信号を発生する回路である。タスク実行キュー優先順
位決定回路7は、比較器6より発生した信号を受け、実
行キュー指定回路4に対し制御信号を発生する回路であ
る。
例として、レジスタファイルAを使用するキューをキュ
ーA、レジスタファイルBを使用するキューをキューB
とする。優先順位として、キューAにAカウントクロッ
ク数の連続実行、キューB l: Bカウントクロック
数の連続実行が設定され、 (Aカウントクロック)〉(Bカウントクロック)の条
件であったとする。この場合キューAは、カウントクロ
ックA回分連続実行し、その後キューAは停止しキュー
Bが、カウントクロックB回分連続実行し、その後、キ
ューAがまたカウントクロックA回分の連続実行を行う
。このようにキューAとキューBが交互に時分割並列実
行を行う、この場合レジスタファイルはA、B別々に持
っているため、キューを切り換える時に生じるオーバヘ
ッドは生じない。ここで、前記の不等式で示した優先順
位によれば、キューAはキューBに対して優先順位が高
(設定されていることになる。
ここで、 (タスク実行予定時間データレジスタ)〈(システムカ
ウンタ) の条件のもとてタスクの実行が終了すれば、この優先順
位の設定のまま次のタスクがキューインされ、前回と同
様の時分割並列実行を行う。
次にタスク実行中に、 (タスク実行予定時間データレジスタ)〉(システムカ
ウンタ) の条件が成立した時(この条件は比較器6により常時チ
エツクされている)タスク実行キュー優先順位決定回路
7により、自動的にキューBに対する連続実行するカウ
ントクロック数をA回に設定し、キューAとキューBの
優先順位を同等なものにまでレベルを高め処理を実行す
る。このタスクが終了すると、キューBの連続実行する
カウントクロック数は設定されていたBカウントクロッ
ク数に自動的に再設定される。
このようにユーザーは、実行しようとするタスクがシス
テムカウンターに対し、いつまでに終了すべきかをタス
ク実行予定時間データレジスタ2に設定するだけで、自
動的に指定時間内に処理を終了することができる。した
がって、ユーザーが実行プログラムによって優先順位を
操作したり、特別な優先順位処理を行う必要はなく、ユ
ーザープログラムの負担を大幅に軽減することができる
。もちろん、この場合にもレジスタファイルは各タスク
毎に設けられているから、タスク切り換え時のデータの
退避や呼び込みは不要となり、タスク切り換え(実行キ
ューの切り換え)に伴うロスは生じない。
発明の詳細 な説明したように、本発明によれば、簡単な制御回路に
より、ユーザープログラムに負担をかけずに1つのマイ
クロプロセッサ−で複数個のタスクを時分割で、タスク
毎の優先順位をつけ実行することができる。
【図面の簡単な説明】
図面は本発明の一実施例の時分割タスク実行装置のブロ
ック図である。 1・・・・・・レジスタファイル、2・・・・・・タス
ク実行予定時間データレジスタ、3・・・・・・システ
ムカウンター、4・・・・・・実行キュー指定回路、5
・・・・・・MPX(マルチプレクサ−)、6・・・・
・・比較器、7・・・・・・タスク実行キュー優先順位
決定回路。

Claims (1)

    【特許請求の範囲】
  1. 1つのマイクロプロセッサーで時分割にタスクを切り換
    える装置において優先度をつけることができる複数のタ
    スク実行キューを備え、各々の前記キューに対応する複
    数のレジスタファイルを備え、上記各レジスタファイル
    中にはそれぞれタスク実行予定時間を決定するデータレ
    ジスタおよび前記タスク実行キューの実行時間を管理す
    るカウンタをそなえた時分割タスク実行装置。
JP62312716A 1987-12-10 1987-12-10 時分割タスク実行装置 Pending JPH01154237A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62312716A JPH01154237A (ja) 1987-12-10 1987-12-10 時分割タスク実行装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62312716A JPH01154237A (ja) 1987-12-10 1987-12-10 時分割タスク実行装置

Publications (1)

Publication Number Publication Date
JPH01154237A true JPH01154237A (ja) 1989-06-16

Family

ID=18032564

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62312716A Pending JPH01154237A (ja) 1987-12-10 1987-12-10 時分割タスク実行装置

Country Status (1)

Country Link
JP (1) JPH01154237A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03188531A (ja) * 1989-12-18 1991-08-16 Matsushita Electric Ind Co Ltd 時分割マルチタスク実行装置
JPH04180131A (ja) * 1990-11-14 1992-06-26 Matsushita Electric Ind Co Ltd 割込み処理装置
JPH06202887A (ja) * 1992-12-28 1994-07-22 Matsushita Electric Ind Co Ltd マイクロコンピュータ
JPH07182184A (ja) * 1991-09-26 1995-07-21 Internatl Business Mach Corp <Ibm> 実行タスクのオーバーラン状態を監視する方法、タスク実行サイクルオーバーランを監視し制御する方法、及びタスク実行サイクルオーバーランを検出する装置
US8549526B2 (en) * 2007-03-20 2013-10-01 Fujitsu Limited Access control apparatus and access control method
JP2020095441A (ja) * 2018-12-12 2020-06-18 日立オートモティブシステムズ株式会社 演算制御装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60181934A (ja) * 1984-02-29 1985-09-17 Fujitsu Ltd タスク優先度制御方式
JPS6243734A (ja) * 1985-08-20 1987-02-25 Nec Corp マイクロプロセツサ
JPS62145432A (ja) * 1985-12-20 1987-06-29 Nec Corp デ−タ処理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60181934A (ja) * 1984-02-29 1985-09-17 Fujitsu Ltd タスク優先度制御方式
JPS6243734A (ja) * 1985-08-20 1987-02-25 Nec Corp マイクロプロセツサ
JPS62145432A (ja) * 1985-12-20 1987-06-29 Nec Corp デ−タ処理装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03188531A (ja) * 1989-12-18 1991-08-16 Matsushita Electric Ind Co Ltd 時分割マルチタスク実行装置
JPH04180131A (ja) * 1990-11-14 1992-06-26 Matsushita Electric Ind Co Ltd 割込み処理装置
JPH07182184A (ja) * 1991-09-26 1995-07-21 Internatl Business Mach Corp <Ibm> 実行タスクのオーバーラン状態を監視する方法、タスク実行サイクルオーバーランを監視し制御する方法、及びタスク実行サイクルオーバーランを検出する装置
JPH06202887A (ja) * 1992-12-28 1994-07-22 Matsushita Electric Ind Co Ltd マイクロコンピュータ
US8549526B2 (en) * 2007-03-20 2013-10-01 Fujitsu Limited Access control apparatus and access control method
JP2020095441A (ja) * 2018-12-12 2020-06-18 日立オートモティブシステムズ株式会社 演算制御装置

Similar Documents

Publication Publication Date Title
EP0384635B1 (en) Adaptive job scheduling for multiprocessing systems
US5390329A (en) Responding to service requests using minimal system-side context in a multiprocessor environment
US7962913B2 (en) Scheduling threads in a multiprocessor computer
US5247671A (en) Scalable schedules for serial communications controller in data processing systems
US5666523A (en) Method and system for distributing asynchronous input from a system input queue to reduce context switches
EP0783734B1 (en) System and method for providing cooperative interrupts in a preemptive task scheduling environment
US6473780B1 (en) Scheduling of direct memory access
US6408324B1 (en) Operating system having a non-interrupt cooperative multi-tasking kernel and a method of controlling a plurality of processes with the system
JPH01154237A (ja) 時分割タスク実行装置
EP0052713B1 (en) A process management system for scheduling work requests in a data processing system
JP2636722B2 (ja) マルチタスク実行管理方式
JP2002163117A (ja) タスクスケジューリング装置
JPH07141208A (ja) マルチタスク処理装置
JPH0199132A (ja) マルチタスク実行装置
JP2579008B2 (ja) 時分割マルチタスク実行装置
JP2553698B2 (ja) 時分割マルチタスク実行装置
JPH05108380A (ja) データ処理システム
JPH10177489A (ja) タスクのスケジュール方法
JPH0644234B2 (ja) タスク管理装置
JPH0588917A (ja) ジヨブスケジユーリング方式
KR100728899B1 (ko) 복수의 레지스터 집합과 하드웨어 작업 관리자를 가진고성능 멀티쓰레드 임베디드 프로세서
JPH0895803A (ja) タスクスケジュール方法
JP3374480B2 (ja) データ処理装置
JPH01169540A (ja) 時分割マルチタスク実行装置
JPH0462093B2 (ja)