JP2002099435A - Control method of multi-task and information processor - Google Patents

Control method of multi-task and information processor

Info

Publication number
JP2002099435A
JP2002099435A JP2000286796A JP2000286796A JP2002099435A JP 2002099435 A JP2002099435 A JP 2002099435A JP 2000286796 A JP2000286796 A JP 2000286796A JP 2000286796 A JP2000286796 A JP 2000286796A JP 2002099435 A JP2002099435 A JP 2002099435A
Authority
JP
Japan
Prior art keywords
task
processor
load information
predicted load
processing
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
JP2000286796A
Other languages
Japanese (ja)
Inventor
Hiroshi Kogure
央 小暮
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2000286796A priority Critical patent/JP2002099435A/en
Publication of JP2002099435A publication Critical patent/JP2002099435A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a control method of multi-task and an information processor using the method capable of deciding in advance whether it is possible to perform a task within a performing capacity of a processor and capable of avoiding multi-task processing beyond the capacity. SOLUTION: In the method, when performing the task newly, at least the number of instruction code regarding to processing contents of the task is acquired from the task as a predicted load information using for a prediction of a load of the processor, so that the task decided to be performed within a reserve capacity of the processor based on the load information.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、リアルタイム・マ
ルチタスク・オペレーティング・システムにおけるマル
チタスク制御方法および情報処理装置に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to a multitask control method and an information processing apparatus in a real-time multitask operating system.

【0002】[0002]

【従来の技術】リアルタイム・マルチタスク・オペレー
ティング・システム(以下、リアルタイムOSと呼ぶ)
は、複数のタスクを実時間で処理する機能を備えたオペ
レーティング・システムである。リアルタイムOSにお
いて、特に高速応答性を要求されるような場合に、その
タスクの結果が必要になる処理制限時間内に処理が終了
できない場合があった。そこで従来から、複数のタスク
について、それぞれのタスクの処理時間内に処理を終了
できるようにタスクのスケジューリングを効率的に行う
方法が提案されてきた。具体的には、タスクの優先度を
タスクの発生時刻とその処理制限時間から動的に算出す
ることにより、タスクの優先順位を常に最適化すること
で、効率のよいタスク切り替えを実現する手段(特開平
第8−163538号公報)等が提案されている。
2. Description of the Related Art A real-time multitasking operating system (hereinafter, referred to as a real-time OS)
Is an operating system with a function to process a plurality of tasks in real time. In a real-time OS, particularly when high-speed responsiveness is required, there are cases where the processing cannot be completed within the processing time limit in which the result of the task is required. Therefore, a method of efficiently performing task scheduling has been proposed for a plurality of tasks so that the processing can be completed within the processing time of each task. Specifically, a means for achieving efficient task switching by constantly optimizing task priorities by dynamically calculating task priorities from task occurrence times and their processing time limits ( JP-A-8-163538) has been proposed.

【0003】[0003]

【発明が解決しようとする課題】しかし、従来提案され
ている技術には、タスクの受付制限がなく、プロセッサ
の処理能力を越えたタスクをシステムが実行しようとし
てしまい、いずれか又はすべてのタスクの処理ができな
くなるという問題点があった。
However, in the technology proposed in the past, there is no restriction on accepting tasks, the system attempts to execute a task exceeding the processing capability of the processor, and any or all of the tasks are executed. There is a problem that processing cannot be performed.

【0004】本発明は上記のような問題点を解決するた
めのものであって、新たなタスクを実行させる際に、プ
ロセッサの処理能力内でそのタスクを実行可能か否かを
予め判断でき、プロセッサの処理能力を超えるマルチタ
スク処理を回避することができるマルチタスク制御方法
およびそれを用いた情報処理装置を提供する。
SUMMARY OF THE INVENTION The present invention has been made to solve the above-described problems. When a new task is executed, it can be determined in advance whether or not the task can be executed within the processing capability of a processor. A multitask control method capable of avoiding multitask processing exceeding the processing capability of a processor and an information processing apparatus using the same are provided.

【0005】[0005]

【課題を解決するための手段】本発明は、複数の異なる
情報処理をマルチタスク処理にて実行するためのもので
あって、新たにタスクを実行させる際に、少なくともそ
のタスクの処理内容にかかる命令コードの数をプロセッ
サの負荷を予測するために用いる予測負荷情報として該
タスクから獲得し、この予測負荷情報に基づきプロセッ
サの余力内で実行可能と判断したタスクを実行させるこ
とにより、新たなタスクを実行させる際に、プロセッサ
の処理能力内でそのタスクを実行可能か否かを予め判断
でき、プロセッサの処理能力を超えるマルチタスク処理
を回避することができる。
SUMMARY OF THE INVENTION The present invention is to execute a plurality of different information processings in a multitasking process. When a new task is executed, at least the processing contents of the task are required. The number of instruction codes is obtained from the task as predicted load information used for predicting the load on the processor, and a task determined to be executable within the remaining capacity of the processor is executed based on the predicted load information, thereby creating a new task. Can be determined in advance whether or not the task can be executed within the processing capacity of the processor, and multitask processing exceeding the processing capacity of the processor can be avoided.

【0006】また、前記予測負荷情報に基づき実行不可
と判断したタスクに対しては、そのタスクの処理内容を
変えるパラメータを変更し、その結果変更された前記タ
スクの予測負荷情報を獲得して、該タスクを実行可能か
否かを判断することにより、新たなタスクを実行させる
際に、プロセッサの処理能力内でそのタスクを実行可能
か否かを予め判断でき、また、例えば、ストリーミング
のようなリアルタイム性を要求される場合に、実行不可
欠なタスクに対しては、その処理内容を変更させること
により、プロセッサの処理能力を超えるマルチタスク処
理を回避することができる。また、パラメータの変更に
より実行タスクの選択肢が増加し、プロセッサをその処
理能力内で効率よくマルチタスク処理が実行できる。
For a task determined to be unexecutable based on the predicted load information, a parameter for changing the processing content of the task is changed, and as a result, the predicted load information of the changed task is obtained. By determining whether or not the task can be executed, when a new task is executed, it can be determined in advance whether or not the task can be executed within the processing capacity of the processor. When a real-time property is required, multitask processing exceeding the processing capability of the processor can be avoided by changing the processing content of a task that is indispensable for execution. Further, the choice of the execution task increases due to the change of the parameter, and the multitask processing can be efficiently executed by the processor within its processing capacity.

【0007】[0007]

【発明の実施の形態】以下、本発明の実施形態について
図面を参照して説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0008】本発明に係るマルチタスク制御方法の第1
の実施形態について図2に示すフローチャートを参照し
て説明する。
[0008] First of the multitask control method according to the present invention
Will be described with reference to the flowchart shown in FIG.

【0009】なお、以下、第1〜第3の実施形態におい
て、タスクとは、それぞれが異なる種類の情報処理を行
う1つのモジュールであり、プロセッサが実行する複数
のタスクとしては、例えば、エンコーダ処理を実行する
タスクであったり、デコーダ処理を実行するタスクであ
ったりする。
In the following, in the first to third embodiments, a task is a single module that performs different types of information processing, and a plurality of tasks executed by a processor include, for example, an encoder process. Or a task to execute a decoder process.

【0010】また、各タスクの予測負荷情報とは、例え
ば、そのタスクの処理内容にかかる命令コードの数(概
算値)で、そのタスクを実行する際のプロセッサにかか
る最悪の負荷量を推測する指標となる量である。そのタ
スクに予め設定されるパラメータ(処理内容を変更する
ようなパラメータ)が変化すれば、命令コードの数も変
化するので、この予測負荷情報も変化する。このような
パラメータとしては、タスクの処理内容をアプリケーシ
ョンレベルで変更するためのもので、例えば、そのタス
クの処理対象データに対し、サンプリング周波数を変え
たり、フィルタ係数を変えたりするパラメータがある。
この予測負荷情報は、複数のパラメータがあれば、その
パラメータに対応してタスク自身が保持するか、あるい
は、計算するものである。その場合、タスクは、予測負
荷情報をパラメータに対応付けて保持あるいは計算する
部分とタスク本来の処理を行う部分に分かれているもの
とする。以下の実施形態では、説明の簡単のため、タス
クが1または複数のパラメータのそれぞれに自身の命令
コードの数(あるいは、命令コードの数にプロセッサに
依存するオーバーヘッド分を加算したもの)を対応付け
て予め保持するものとする。
The estimated load information of each task is, for example, the number (approximate value) of instruction codes related to the processing content of the task, and estimates the worst load amount applied to the processor when executing the task. This is an index amount. If the parameter set in advance for the task (a parameter that changes the processing content) changes, the number of instruction codes also changes, so the predicted load information also changes. Such parameters are for changing the processing contents of the task at the application level, and include, for example, parameters for changing the sampling frequency and the filter coefficient for the processing target data of the task.
If there are a plurality of parameters, the predicted load information is held by the task itself or calculated in accordance with the parameters. In this case, it is assumed that the task is divided into a part that holds or calculates the predicted load information in association with the parameter and a part that performs the original processing of the task. In the following embodiments, for the sake of simplicity, the task associates one or more parameters with the number of instruction codes of the task itself (or the number of instruction codes plus the overhead depending on the processor). Shall be held in advance.

【0011】あるタスクのタスク生成(実行)要求があ
った場合(ステップS3)、カーネル1はタスク2に予
測負荷情報の提供を依頼する。タスク2は該タスクの現
時点に設定されているパラメータに対応する命令コード
の数を予測負荷情報として(ステップS7)、カーネル
1に渡す。カーネル1はタスク2から予測負荷情報を獲
得すると(ステップS4)、その予測負荷情報とプロセ
ッサのMIPS(Million Instructi
ons Per Second)値とプロセッサの現時
点での稼働状況(例えば、ここでは、説明の簡単のた
め、MIPS値から求まるプロセッサが所定時間内に実
行可能な命令コードの数(処理能力)に対する、現時点
でマルチタスク処理で実行されている全てのタスクの命
令コードの数の合計値(実測値を用いる場合と、予測負
荷情報として各タスクから提示された命令コード数の合
計値であってもよい)の割合)に基づいて、プロセッサ
の余力内でのタスク2の実行可能性を判断し、タスク2
の優先順位を決定する(ステップS5)。このとき、カ
ーネル1は、タスク2から受け取った予測不可情報とし
ての命令コードの数をプロセッサのハードウエア構成に
依存する修正を行ってもよい。例えば、タクク2から受
け取った命令コードの数にプロセッサに依存するオーバ
ーヘッド分を加算してもよい。
When there is a task generation (execution) request for a task (step S3), the kernel 1 requests the task 2 to provide predicted load information. The task 2 passes the number of instruction codes corresponding to the parameters set at the present time of the task to the kernel 1 as predicted load information (step S7). When the kernel 1 acquires the predicted load information from the task 2 (step S4), the predicted load information and the MIPS (Million Instruction) of the processor are acquired.
ons Per Second) value and the current operating status of the processor (for example, here, for simplicity of description, the current value of the number of instruction codes (processing capacity) executable by the processor within a predetermined time, which is obtained from the MIPS value, The total value of the number of instruction codes of all tasks executed in the multitask process (the actual value may be used, or the total value of the instruction codes presented from each task as the predicted load information) Percentage), the feasibility of task 2 within the processor's spare capacity is determined,
Are determined (step S5). At this time, the kernel 1 may modify the number of instruction codes as unpredictable information received from the task 2 depending on the hardware configuration of the processor. For example, the overhead depending on the processor may be added to the number of instruction codes received from Tact2.

【0012】タスク2の予測負荷情報とプロセッサの稼
働状況とから、タスク2の命令コードの数がプロセッサ
の余力内で実行可能な命令コードの数であるとき、実行
可能と判断し、高い優先順位をタスク2に与え、一方、
プロセッサの余力内で実行可能な命令コードの数を越え
ているとき、実行可能性が低いと判断して、低い優先順
位をタスク2に与える。その後、優先順位に基づいてタ
スク2を生成(実行)し(ステップS6)、タスク2は
タスク処理を行う(ステップS8)。
When the number of instruction codes of task 2 is the number of instruction codes that can be executed within the available capacity of the processor, it is determined that the task code can be executed based on the predicted load information of task 2 and the operating state of the processor. To task 2, while
When the number of executable instruction codes exceeds the number of executable instruction codes within the remaining capacity of the processor, it is determined that the executable code is low and the task 2 is given a low priority. Thereafter, task 2 is generated (executed) based on the priority order (step S6), and task 2 performs task processing (step S8).

【0013】例えば、図4のように、プロセッサ20が
エンコーダ・タスク21とデコーダ・タスク22を実行
中だとして、フィルタA・タスク23の生成要求が発生
した場合(ステップS25)を考える。カーネル1はフ
ィルタA・タスク23から予測負荷情報を知らされ、カ
ーネルは予測負荷情報に基づいてフィルタA・タスク2
3の優先度を「10」と決定する。一方、フィルタB・
タスク24の生成要求が発生した場合に(ステップS2
6)、同様にして求められたフィルタB・タスク24の
優先度は「20」だとすると(図7参照)、カーネルは
優先度の高いフィルタB・タスク24を生成(実行)す
る。
For example, as shown in FIG. 4, it is assumed that the processor 20 is executing the encoder task 21 and the decoder task 22 and a request to generate the filter A task 23 is generated (step S25). The kernel 1 is informed of the predicted load information from the filter A / task 23, and the kernel receives the filter A / task 2 based on the predicted load information.
The priority of 3 is determined to be “10”. On the other hand, filter B
When a request to generate the task 24 is issued (step S2
6) Assuming that the priority of the filter B / task 24 obtained in the same manner is “20” (see FIG. 7), the kernel generates (executes) the filter B / task 24 having a higher priority.

【0014】本発明に係るマルチタスク制御方法の第2
実施形態について図1に示すフローチャートを参照して
説明する。
Second Embodiment of Multitask Control Method According to the Present Invention
An embodiment will be described with reference to the flowchart shown in FIG.

【0015】あるタスクのタスク生成(実行)要求があ
った場合(ステップS3)、カーネル1はタスク2に予
測負荷情報の提供を依頼する。タスク2は該タスクの現
時点に設定されているパラメータに対応する命令コード
の数を予測負荷情報として(ステップS7)、カーネル
1に渡す。カーネル1はタスク2から予測負荷情報を獲
得すると(ステップS4)、その予測負荷情報とプロセ
ッサのMIPS値とプロセッサの現時点での稼働状況
(例えば、ここでは、説明の簡単のため、MIPS値か
ら求まるプロセッサが所定時間内に実行可能な命令コー
ドの数(処理能力)に対する、現時点でマルチタスク処
理で実行されている全てのタスクの命令コードの数の合
計値(実測値を用いる場合と、予測負荷情報として各タ
スクから提示された命令コード数の合計値であってもよ
い)の割合)に基づいて、プロセッサの余力内でのタス
ク2が実行可能か否かを判断する(ステップS9)。こ
のとき、カーネル1は、タスク2から受け取った予測不
可情報としての命令コードの数をプロセッサのハードウ
エア構成に依存する修正を行ってもよい。例えば、タク
ク2から受け取った命令コードの数にプロセッサに依存
するオーバーヘッド分を加算してもよい。タスク2の予
測負荷情報とプロセッサの稼働状況とから、タスク2の
命令コードの数がプロセッサの余力内で実行可能な命令
コードの数であるとき、タスク2の実行可能と判断し、
一方、プロセッサの余力内で実行可能な命令コードの数
を越えているとき、タスク2の実行不可と判断する。実
行可能なら(ステップS10)タスク2を生成(実行)
する(ステップS6)。また、実行不可能な場合は(ス
テップS9)、タスク2の生成(実行)を拒否する(ス
テップS12)。
When there is a task generation (execution) request for a task (step S3), the kernel 1 requests the task 2 to provide predicted load information. The task 2 passes the number of instruction codes corresponding to the parameters set at the present time of the task to the kernel 1 as predicted load information (step S7). When the kernel 1 acquires the predicted load information from the task 2 (step S4), the predicted load information, the MIPS value of the processor, and the current operating status of the processor (for example, here, it is obtained from the MIPS value for simplicity of explanation). The total value of the number of instruction codes of all the tasks currently being executed in the multitask processing at the present time (the actual load and the predicted load It may be determined whether or not the task 2 can be executed within the remaining capacity of the processor (step S9) based on the ratio of the number of instruction codes presented from each task as information). At this time, the kernel 1 may modify the number of instruction codes received as unpredictable information from the task 2 depending on the hardware configuration of the processor. For example, an overhead depending on the processor may be added to the number of instruction codes received from Tact2. When the number of instruction codes of the task 2 is the number of instruction codes executable within the remaining capacity of the processor, it is determined that the task 2 is executable from the predicted load information of the task 2 and the operation state of the processor.
On the other hand, when the number of executable instruction codes exceeds the number of executable instructions within the remaining capacity of the processor, it is determined that the task 2 cannot be executed. If executable (step S10), generate task 2 (execute)
(Step S6). If the task 2 cannot be executed (step S9), the generation (execution) of the task 2 is rejected (step S12).

【0016】例えば、図4のようにプロセッサ20がエ
ンコーダ・タスク21とデコーダ・タスク22を実行中
だとして、フィルタA・タスク23の生成(実行)要求
25が発生した場合(ステップS25)を考える。ここ
で、プロセッサ20のMIPS値から所定時間内にその
プロセッサが実行可能な命令コードの数をプロセッサの
処理能力として定義する。ここでは、例えば、「10
0」とする。各タスクの予測負荷情報、すなわち、命令
コードの数は、図6のように与えられ、フィルタAはパ
ラメータ「2」を用いるものとする。現時点では、プロ
セッサ20は、エンコーダ・タスク21とデコーダ・タ
スク22とで、負荷が「80」の処理をしていることか
ら、プロセッサ20の処理能力は残り「20」である。
すなわち、このプロセッサ20は、命令コードの数が
「20」以内のタスクであれば実行可能である。
For example, consider a case where the processor 20 is executing the encoder task 21 and the decoder task 22 as shown in FIG. 4, and a generation (execution) request 25 of the filter A / task 23 is generated (step S25). . Here, the number of instruction codes executable by the processor within a predetermined time from the MIPS value of the processor 20 is defined as the processing capability of the processor. Here, for example, “10
0 ". The predicted load information of each task, that is, the number of instruction codes is given as shown in FIG. 6, and the filter A uses the parameter “2”. At this time, the processor 20 is performing the processing with the load of “80” between the encoder task 21 and the decoder task 22, so that the remaining processing capacity of the processor 20 is “20”.
That is, the processor 20 can execute the task if the number of instruction codes is within “20”.

【0017】まず、カーネル1はフィルタA・タスク2
3からその予測負荷が「30」であることを知らされ、
実行不可能であることが分かるので、フィルタA・タス
ク23の生成(実行)を拒否する。
First, kernel 1 is composed of filter A and task 2
3 informs that the predicted load is "30",
Since it is found that the execution is impossible, the generation (execution) of the filter A / task 23 is rejected.

【0018】一方、同様の条件でフィルタB・タスク2
4の生成(実行)求が発生した場合を考える(ステップ
S26)。すると、カーネル1はフィルタB・タスク2
4からその予測負荷が「10」であることを知らされ、
実行可能であることが分かるので、フィルタB・タスク
24を生成(実行)する。
On the other hand, under the same conditions, filter B and task 2
Consider a case where a request for generation (execution) of No. 4 occurs (step S26). Then, kernel 1 becomes filter B and task 2
4 informs that the predicted load is "10",
Since it is found that the execution is possible, the filter B / task 24 is generated (executed).

【0019】本発明に係るマルチタスク制御方法の第3
実施形態について図3に示すフローチャートを用いて説
明する。
Third Embodiment of the Multitask Control Method According to the Present Invention
The embodiment will be described with reference to the flowchart shown in FIG.

【0020】あるタスクのタスク生成(実行)要求があ
った場合(ステップS3)、カーネル1はタスク2に予
測負荷情報を依頼する。タスク2は該タスクの現時点に
設定されているパラメータに対応する命令コードの数を
予測負荷情報として(ステップS7)、カーネル1に渡
す。カーネル1は、タスク2から予測負荷情報を獲得す
ると(ステップS4)、その予測負荷情報とプロセッサ
のMIPS値とプロセッサの現時点での稼働状況(例え
ば、ここでは、説明の簡単のため、MIPS値から求ま
るプロセッサが所定時間内に実行可能な命令コードの数
(処理能力)に対する、現時点でマルチタスク処理で実
行されている全てのタスクの命令コードの数の合計値
(実測値を用いる場合と、予測負荷情報として各タスク
から提示された命令コード数の合計値であってもよい)
の割合)に基づいて、プロセッサの余力内でのタスク2
が実行可能か否かを判断する(ステップS9)。このと
き、カーネル1は、タスク2から受け取った予測不可情
報としての命令コードの数をプロセッサのハードウエア
構成に依存する修正を行ってもよい。例えば、タクク2
から受け取った命令コードの数にプロセッサに依存する
オーバーヘッド分を加算してもよい。プロセッサの余力
内で実行可能な命令コードの数であるとき、タスク2を
実行可能と判断し、一方、プロセッサの余力内で実行可
能な命令コードの数を越えているとき、タスク2を実行
不可と判断する。
When there is a task generation (execution) request for a task (step S3), the kernel 1 requests the task 2 for predicted load information. The task 2 passes the number of instruction codes corresponding to the parameters set at the present time of the task to the kernel 1 as predicted load information (step S7). When the kernel 1 acquires the predicted load information from the task 2 (step S4), the predicted load information, the MIPS value of the processor, and the current operation status of the processor (for example, here, for simplicity of explanation, the MIPS value The sum of the numbers of instruction codes of all the tasks currently being executed in the multitask processing with respect to the number of instruction codes executable by the processor within a predetermined time (processing capacity) (in the case where an actual measurement value is used, (It may be the total value of the number of instruction codes presented from each task as load information.)
Task 2 within the processor's spare capacity based on
It is determined whether or not is executable (step S9). At this time, the kernel 1 may modify the number of instruction codes received as unpredictable information from the task 2 depending on the hardware configuration of the processor. For example, Takuk 2
May be added to the number of instruction codes received from the processor. If the number of instruction codes that can be executed within the remaining capacity of the processor, the task 2 is determined to be executable. Judge.

【0021】実行可能なら(ステップS10)、タスク
2を生成(実行)する(ステップS6)。また、実行不
可能なら(ステップS9)、タスク2のパラメータを変
更し(ステップS13)、タスク2に再度予測負荷情報
の提示を要求し(ステップS7)、タスク2の実行可能
性を判断する(ステップS9)。この作業をタスク2が
実行可能になるまで繰り返す。
If executable (step S10), task 2 is generated (executed) (step S6). If the task cannot be executed (step S9), the parameter of the task 2 is changed (step S13), the presentation of the predicted load information is requested to the task 2 again (step S7), and the feasibility of the task 2 is determined (step S7). Step S9). This operation is repeated until task 2 becomes executable.

【0022】例えば、図5のようにプロセッサ20がエ
ンコーダ・タスク21とデコーダ・タスク22を実行中
だとして、フィルタA・タスク23の生成(実行)要求
が発生した場合(ステップS25)を考える。ここで、
プロセッサ20のMIPS値から所定時間内にそのプロ
セッサが実行可能な命令コードの数をプロセッサの処理
能力として定義する。ここでは、例えば、「100」と
する。各タスクの予測負荷情報、すなわち、命令コード
の数は、図6のように与えられ、フィルタA・タスク2
3は、パラメータ「2」を用いるものとする。現時点
で、プロセッサ20は、エンコーダ・タスク21とデコ
ーダ・タスク22とで、負荷が「80」の処理をしてい
ることから、プロセッサ20の処理能力は残り「20」
である。すなわち、このプロセッサ20は、所定時間内
に実行可能な命令コードの数が「20」以内のタスクで
あれば実行可能である。
For example, consider the case where the processor 20 is executing the encoder task 21 and the decoder task 22 as shown in FIG. 5 and a request to generate (execute) the filter A task 23 is generated (step S25). here,
The number of instruction codes executable by the processor within a predetermined time from the MIPS value of the processor 20 is defined as the processing capability of the processor. Here, for example, “100” is set. The predicted load information of each task, that is, the number of instruction codes is given as shown in FIG.
3 uses parameter "2". At this time, the processor 20 is performing the processing with the load of “80” between the encoder task 21 and the decoder task 22, and the processing capacity of the processor 20 is “20”.
It is. That is, the processor 20 can execute the task if the number of instruction codes executable within a predetermined time is within “20”.

【0023】まず、カーネル1はフィルタA・タスク2
3から予測負荷情報が「30」であることを知らされ、
実行不可能であることが分かるので、フィルタA・タス
ク23のパラメータを変更する(ステップS27)。例
えば、フィルタA・タスク23のパラメータを「1」に
変更した場合を考える。この変更に伴い、フィルタA・
タスク23の生成(実行)要求が再度発生すると(ステ
ップS28)、カーネル1はフィルタA・タスク23に
再度予測負荷情報の提供を依頼し、カーネル1はフィル
タA・タスク23から予測負荷が「20」であることを
知らされ、実行可能であることが分かるので、フィルタ
A・タスク23を生成(実行)する。
First, kernel 1 is composed of filter A and task 2
3 informs that the predicted load information is “30”,
Since it is found that the execution is impossible, the parameters of the filter A / task 23 are changed (step S27). For example, consider a case where the parameter of the filter A / task 23 is changed to “1”. With this change, filter A
When the generation (execution) request of the task 23 occurs again (step S28), the kernel 1 requests the filter A / task 23 to provide the predicted load information again. , And it is known that the process is executable, so that the filter A / task 23 is generated (executed).

【0024】なお、本発明は、上記実施形態に限定され
るものではなく、実施段階ではその要旨を逸脱しない範
囲で種々に変形することが可能である。さらに、上記実
施形態には種々の段階の発明は含まれており、開示され
る複数の構成用件における適宜な組み合わせにより、種
々の発明が抽出され得る。例えば、実施形態に示される
全構成要件から幾つかの構成要件が削除されても、発明
が解決しようとする課題の欄で述べた課題(の少なくと
も1つ)が解決でき、発明の効果の欄で述べられている
効果(のなくとも1つ)が得られる場合には、この構成
要件が削除された構成が発明として抽出され得る。
It should be noted that the present invention is not limited to the above-described embodiment, and that various modifications can be made in the implementation stage without departing from the scope of the invention. Furthermore, the above embodiments include inventions at various stages, and various inventions can be extracted by appropriate combinations of a plurality of disclosed configuration requirements. For example, even if some components are deleted from all the components shown in the embodiment, (at least one of) the problems described in the column of the problem to be solved by the invention can be solved, and the effect of the invention can be solved. If at least one of the effects described in (1) is obtained, a configuration from which this component is deleted can be extracted as an invention.

【0025】[0025]

【発明の効果】以上説明したように本発明によれば、新
たなタスクを実行させる際に、プロセッサの処理能力内
でそのタスクを実行可能か否かを予め判断できるので、
プロセッサの処理能力超えるマルチタスク処理を回避す
ることができる。
As described above, according to the present invention, when a new task is executed, it can be determined in advance whether or not the task can be executed within the processing capability of the processor.
Multitask processing exceeding the processing capability of the processor can be avoided.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明に係るマルチタスク制御方法の第2の実
施形態について説明するためのフローチャート。
FIG. 1 is a flowchart for explaining a second embodiment of the multitask control method according to the present invention.

【図2】本発明に係るマルチタスク制御方法の第1の実
施形態について説明するためのフローチャート。
FIG. 2 is a flowchart for explaining a first embodiment of a multitask control method according to the present invention.

【図3】本発明に係るマルチタスク制御方法の第3の実
施形態について説明するためのフローチャート。
FIG. 3 is a flowchart for explaining a third embodiment of the multitask control method according to the present invention.

【図4】図1、図2の処理動作を具体的に説明するため
の図。
FIG. 4 is a diagram for specifically explaining the processing operations of FIGS. 1 and 2;

【図5】図3の処理動作を具体的に説明するための図。FIG. 5 is a diagram for specifically explaining the processing operation of FIG. 3;

【図6】図1、図3の処理動作を実施の形態を説明する
ための説明図。
FIG. 6 is an explanatory diagram for describing an embodiment of the processing operation of FIGS. 1 and 3;

【図7】図2の処理動作を具体的に説明するための図。FIG. 7 is a diagram for specifically explaining the processing operation of FIG. 2;

【符号の説明】[Explanation of symbols]

1…カーネル 2…タスク 20…プロセッサ 21…エンコーダ・タスク 22…デコーダ・タスク 23…フィルタA・タスク 24…フィルタB・タスク 1 Kernel 2 Task 20 Processor 21 Encoder task 22 Decoder task 23 Filter A task 24 Filter B task

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 複数の異なる情報処理をマルチタスク処
理にて実行するためのマルチタスク制御方法において、 新たにタスクを実行させる際に、少なくともそのタスク
の処理内容にかかる命令コードの数をプロセッサの負荷
を予測するために用いる予測負荷情報として該タスクか
ら獲得し、この予測負荷情報に基づきプロセッサの余力
内で実行可能と判断したタスクを実行させることを特徴
とするマルチタスク制御方法。
In a multitask control method for executing a plurality of different information processes in a multitask process, when a new task is executed, at least the number of instruction codes related to the processing content of the task is determined by a processor. A multi-task control method comprising: acquiring from a task as predicted load information used for predicting a load; and executing a task determined to be executable within the remaining capacity of a processor based on the predicted load information.
【請求項2】 前記予測負荷情報に基づき実行不可と判
断したタスクに対しては、そのタスクの処理内容を変え
るパラメータを変更し、その結果変更された前記タスク
の予測負荷情報を獲得して、該タスクを実行可能か否か
を判断することを特徴とする請求項1記載のマルチタス
ク制御方法。
2. For a task determined to be unexecutable based on the predicted load information, a parameter that changes the processing content of the task is changed, and as a result, the changed predicted load information of the task is obtained. 2. The multitask control method according to claim 1, wherein it is determined whether the task can be executed.
【請求項3】 複数の異なる情報処理をマルチタスク処
理にて実行する情報処理装置において、 新たにタスクを実行する際に、少なくともそのタスクの
処理内容にかかる命令コードの数をプロセッサの負荷を
予測するために用いる予測負荷情報として該タスクから
獲得する手段と、 前記予測負荷情報に基づき、前記プロセッサの余力内で
実行可能と判断したタスクを実行させる手段と、 を具備したことを特徴とする情報処理装置。
3. An information processing apparatus for executing a plurality of different information processings by multitask processing, wherein when a new task is executed, at least the number of instruction codes related to the processing content of the task is estimated by predicting the load of the processor. Means for acquiring from the task as predicted load information used for performing the task, and means for executing a task determined to be executable within the remaining capacity of the processor based on the predicted load information. Processing equipment.
【請求項4】 前記タスクを実行不可と判断したとき、
そのタスクの処理内容を変えるパラメータを変更する手
段を具備し、 その結果変更された前記タスクの予測負荷情報を獲得し
て、前記パラメータの変更されたタスクから再度予測負
荷情報を獲得して、該タスクを実行可能か否かを判断す
ることを特徴とする請求項3記載の情報処理装置。
4. When it is determined that the task cannot be executed,
Means for changing a parameter for changing the processing content of the task, acquiring predicted load information of the task changed as a result, acquiring predicted load information again from the task whose parameter is changed, 4. The information processing apparatus according to claim 3, wherein it is determined whether the task can be executed.
JP2000286796A 2000-09-21 2000-09-21 Control method of multi-task and information processor Pending JP2002099435A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000286796A JP2002099435A (en) 2000-09-21 2000-09-21 Control method of multi-task and information processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000286796A JP2002099435A (en) 2000-09-21 2000-09-21 Control method of multi-task and information processor

Publications (1)

Publication Number Publication Date
JP2002099435A true JP2002099435A (en) 2002-04-05

Family

ID=18770661

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000286796A Pending JP2002099435A (en) 2000-09-21 2000-09-21 Control method of multi-task and information processor

Country Status (1)

Country Link
JP (1) JP2002099435A (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006048231A (en) * 2004-08-02 2006-02-16 Denso Wave Inc Controller and computer program
JP2006344283A (en) * 2005-06-08 2006-12-21 Toshiba Corp Video recording and reproducing device, and video recording and reproducing method
CN100382033C (en) * 2004-11-24 2008-04-16 松下电器产业株式会社 Computer system
WO2010137233A1 (en) * 2009-05-28 2010-12-02 パナソニック株式会社 Power saving control device for multiprocessor system, and mobile terminal
US8028051B2 (en) 2003-04-16 2011-09-27 Fujitsu Limited Apparatus for adjusting use resources of system and method thereof
WO2012104899A1 (en) * 2011-01-31 2012-08-09 トヨタ自動車株式会社 Safety control device and safety control method
JP2016046575A (en) * 2014-08-20 2016-04-04 株式会社日立製作所 Traffic management device and wireless network system
JP2018138987A (en) * 2016-10-28 2018-09-06 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America Information processing device and information processing method

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8028051B2 (en) 2003-04-16 2011-09-27 Fujitsu Limited Apparatus for adjusting use resources of system and method thereof
JP2006048231A (en) * 2004-08-02 2006-02-16 Denso Wave Inc Controller and computer program
CN100382033C (en) * 2004-11-24 2008-04-16 松下电器产业株式会社 Computer system
JP2006344283A (en) * 2005-06-08 2006-12-21 Toshiba Corp Video recording and reproducing device, and video recording and reproducing method
WO2010137233A1 (en) * 2009-05-28 2010-12-02 パナソニック株式会社 Power saving control device for multiprocessor system, and mobile terminal
WO2012104899A1 (en) * 2011-01-31 2012-08-09 トヨタ自動車株式会社 Safety control device and safety control method
JP5267737B2 (en) * 2011-01-31 2013-08-21 トヨタ自動車株式会社 SAFETY CONTROL DEVICE AND SAFETY CONTROL METHOD
CN103403628A (en) * 2011-01-31 2013-11-20 丰田自动车株式会社 Safety control device and safety control method
US8756606B2 (en) 2011-01-31 2014-06-17 Toyota Jidosha Kabushiki Kaisha Safety controller and safety control method in which time partitions are scheduled according to a scheduling pattern
JP2016046575A (en) * 2014-08-20 2016-04-04 株式会社日立製作所 Traffic management device and wireless network system
JP2018138987A (en) * 2016-10-28 2018-09-06 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America Information processing device and information processing method
JP7009092B2 (en) 2016-10-28 2022-01-25 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Information processing equipment and information processing method

Similar Documents

Publication Publication Date Title
JP5324934B2 (en) Information processing apparatus and information processing method
JP4367856B2 (en) Process control system and control method thereof
US5805892A (en) Method of and apparatus for debugging multitask programs
US7366814B2 (en) Heterogeneous multiprocessor system and OS configuration method thereof
US20050086030A1 (en) Software tool for synthesizing a real-time operating system
US20090158294A1 (en) Dynamic critical-path recalculation facility
JP2002099435A (en) Control method of multi-task and information processor
US5241676A (en) Method for controlling process priority in semaphore operation
US8555285B2 (en) Executing a general-purpose operating system as a task under the control of a real-time operating system
US6820153B2 (en) Interrupt processing and memory management method in an operation processing device and a device using the same
US20190121327A1 (en) Numerical controller
US20150363241A1 (en) Method and apparatus to migrate stacks for thread execution
JP2001236236A (en) Task controller and its task scheduling method
US5241634A (en) Method of handling system calls to an operating system of a computer by system service routines stored as firmware
JPS62284437A (en) Task control system
KR20130048504A (en) Apparatus and method for scheduling partition based criticality
CN110109743B (en) Real-time process scheduling method
JP2002041310A (en) Class dynamic bind system and its method
CN117992198B (en) Task processing method and system for adaptive scheduling
CN110308988B (en) Dynamic scheduling method and system applied to heterogeneous computing platform
JPH04362745A (en) Instruction tracing device
JP2822728B2 (en) Computer system
JP2000353100A (en) Task processing system
JPH09106358A (en) Scheduling method of virtual computer system and device therefor
JPH0424828A (en) Multi-task control system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050502

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050802

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050905

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060328