[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2000122883A - Task managing method - Google Patents

Task managing method

Info

Publication number
JP2000122883A
JP2000122883A JP10296725A JP29672598A JP2000122883A JP 2000122883 A JP2000122883 A JP 2000122883A JP 10296725 A JP10296725 A JP 10296725A JP 29672598 A JP29672598 A JP 29672598A JP 2000122883 A JP2000122883 A JP 2000122883A
Authority
JP
Japan
Prior art keywords
task
execution
cycle
tasks
time
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
JP10296725A
Other languages
Japanese (ja)
Inventor
Mutsumi Abe
睦 阿部
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.)
Ultra High Speed Network and Computer Technology Laboratories
Original Assignee
Ultra High Speed Network and Computer Technology Laboratories
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 Ultra High Speed Network and Computer Technology Laboratories filed Critical Ultra High Speed Network and Computer Technology Laboratories
Priority to JP10296725A priority Critical patent/JP2000122883A/en
Publication of JP2000122883A publication Critical patent/JP2000122883A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To improve service quality by discriminatingly managing a repetitive execution task which is changeable in service quality and re-executing the repetitive execution time in an excessive task execution allocation time when the excessive time is available at the time of task switching. SOLUTION: A task which performs a process for input to an input device and a process for output to an output device 107 is recorded in a storage device 103. An accepting process performed by a task acceptance part 110 is started when a request to set a cycle set previously for the task and a process time is made. The execution of a service quality task registered in a task management table 112 is checked by a task which has a short cycle at the time of task switching and when a task reaching the start time of the cycle is found, the task is executed until the process time of the task is consumed. Here, when a task having a shorter cycle than the task reaches the start time of the cycle during the task execution, the execution of the task is interrupted and the task having the shorter cycle is executed.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、タスク管理方法に
関し、特にタスクの実行を制御することでアプリケーシ
ョンのサービス品質を制御するタスク管理方法に関する
ものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a task management method, and more particularly to a task management method for controlling service quality of an application by controlling execution of a task.

【0002】[0002]

【従来の技術】一般に、動画や音声などのリアルタイム
情報を送受信する通信端末では、これら情報の受信、表
示、送信などのタスクをリアルタイムで並列的に実行す
る必要があり、このような通信端末では、マルチタスク
システムを用いてこれら複数のタスクを切換実行するこ
とにより、各種アプリケーションを提供するものとなっ
ている。このようなマルチタスクシステムでは、各タス
クに対してそれぞれ所定周期ごとに所定処理時間を確実
に割当てて実行することにより、アプリケーションのサ
ービス品質を制御する必要がある。
2. Description of the Related Art Generally, in a communication terminal that transmits and receives real-time information such as moving images and audios, it is necessary to perform tasks such as reception, display, and transmission of such information in parallel in real time. By switching and executing these tasks using a multitask system, various applications are provided. In such a multitask system, it is necessary to control the quality of service of an application by reliably assigning a predetermined processing time to each task at a predetermined cycle and executing the task.

【0003】なお、アプリケーションのサービス品質と
は、各アプリケーションを実行する際に個別に要求され
るものである。例えば、画像データを転送するアプリケ
ーションであれば、単位時間当たりに転送できる画面フ
レーム数や、画面データの解像度などに相当し、音声デ
ータを転送する場合は、再生した音声の音質などに相当
する。したがって、マルチタスクシステムでは、個々に
要求されたサービス品質を確実に提供できるように、各
アプリケーションのタスクに対する処理時間の割り当て
制御が行われる。
[0003] The service quality of an application is required individually when each application is executed. For example, an application for transferring image data corresponds to the number of screen frames that can be transferred per unit time, the resolution of screen data, and the like, and when transferring audio data, it corresponds to the sound quality of reproduced sound. Therefore, in the multitask system, the processing time is controlled to be allocated to the task of each application so as to reliably provide the individually requested service quality.

【0004】従来、タスクの実行を制御することでアプ
リケーションのサービス品質を制御するタスク管理方法
として、新たなタスクを予約する場合に、新たなタスク
と予約済のすべてのタスクとを、それぞれに要求された
サービス品質で実行可能かどうか判断し、実行可能な場
合にのみ新たなタスクの受付けを行うことにより、周期
的な実行および実行時からの遅延保証が必要なタスクを
実行するタスク管理方法が提案されている(例えば、特
開平10−171667号など参照)。
Conventionally, as a task management method for controlling the service quality of an application by controlling the execution of a task, when a new task is reserved, a new task and all reserved tasks are requested separately. A task management method that performs tasks that require periodic execution and guarantees of delay from the time of execution by determining whether or not the service can be executed with the specified service quality and accepting new tasks only when the It has been proposed (see, for example, JP-A-10-171667).

【0005】[0005]

【発明が解決しようとする課題】しかしながら、このよ
うな従来のタスク管理方法は、タスク実行前の予約処理
で実行可能かどうか判断し、全てのタスクについて確実
にサービス品質制御を行える場合にのみ、タスクの受付
けを行ってタスクの実行を行うものとなっていた。これ
は、マルチタスクシステムで実行されるサービス品質タ
スクが、要求されたサービス品質が固定的なタスク、す
なわち各タスクがその周期内に1回だけ実行される単一
実行タスクから構成されており、さらに各タスクに必要
な処理時間として各タスクの最大負荷時に必要とされる
処理時間が設定することが前提とされていたからであ
る。
However, such a conventional task management method judges whether or not the task can be executed by a reservation process before executing the task, and only when the service quality control can be surely performed for all tasks, The task was accepted and the task was executed. This is because the service quality task executed in the multitask system is composed of tasks in which the requested service quality is fixed, that is, a single execution task in which each task is executed only once in the cycle, Further, it is assumed that the processing time required for each task at the maximum load is set as the processing time required for each task.

【0006】したがって、サービス品質が可変なタスク
については対応できず、例えば、ある程度のサービス品
質を確保しつつ、他のタスクの処理時間が余ったときに
は、サービス品質が可変なタスクに対してタスクの処理
時間を割当てることにより、サービス品質を高めるとい
ったことができないという問題点があった。
[0006] Therefore, it is not possible to cope with a task whose service quality is variable. For example, when a certain service quality is secured and the processing time of another task is left, the task of the task whose service quality is variable cannot be performed. There is a problem that the service quality cannot be improved by allocating the processing time.

【0007】例えば、ネットワークに接続されたビデオ
オンデマンドシステムからビデオデータをダウンロード
しながら、そのビデオデータのチェックしたいという場
合を考えると、ビデオデータの表示を行うタスクに対し
て確保できるサービス品質が低く設定されている場合、
ダウンロードの負荷が設定値よりも軽く、割当時間が余
ったときでも、ビデオデータの表示タスクに、その余っ
た割当時間を割当てることでサービス品質を高めるとい
ったことができない。
For example, when a user wants to check video data while downloading the video data from a video-on-demand system connected to a network, the service quality that can be ensured for the task of displaying video data is low. If set,
Even when the download load is lighter than the set value and the allocated time is left, the service quality cannot be improved by allocating the remaining allocated time to the video data display task.

【0008】本発明はこのような課題を解決するための
ものであり、所定のサービス品質を確保しつつ、タスク
割当時問が余った場合にサービス品質が可変なタスクに
割当てることによりサービス品質を高めることができる
タスク管理方法を提供することを目的としている。
The present invention has been made to solve such a problem, and while maintaining a predetermined service quality, the service quality is allocated to a task having a variable service quality when there is an extra task assignment time. It aims to provide a task management method that can be enhanced.

【0009】[0009]

【課題を解決するための手段】このような目的を達成す
るために、本発明によるタスク管理方法は、前述の特開
平10−171667号公報に記載されたタスク管理方
法に加えて、サービス品質タスクのうちサービス品質が
可変な重複実行タスクを区別して管理し、タスク切換時
に、タスク実行割当て時間が余っている場合は、その余
り時間で重複実行タスクを再実行するようにしたもので
ある。
In order to achieve the above object, a task management method according to the present invention includes a service quality task in addition to the task management method described in Japanese Patent Laid-Open No. Hei 10-171667. Among them, the duplication execution task whose service quality is variable is distinguished and managed, and when the task execution assignment time is left at the time of task switching, the duplication execution task is re-executed in the surplus time.

【0010】より詳細には、サービス品質制御が必要な
サービス品質タスクとして、その周期内に1回だけ実行
する単一実行タスクと、その周期内に複数回実行可能な
重複実行タスクとを設けるとともに、各タスクの予約時
にいずれのタスクかをタスク管理テーブルに設定し、タ
スク切換時に、それぞれの周期内でまだ実行していない
単一タスクおよび重複実行タスクが存在する場合は、こ
れらタスクを選択して実行し、これらタスクが存在しな
い場合は、タスク実行割当て時間が余っていると判断
し、その余り時間で重複実行タスクのうちのいずれかを
選択して再実行するようにしたものである。
More specifically, as service quality tasks requiring service quality control, there are provided a single execution task that is executed only once in the cycle and a duplicate execution task that can be executed a plurality of times in the cycle. When a task is reserved, set which task is set in the task management table. At the time of task switching, if there are single tasks and duplicate tasks that have not been executed within each cycle, select these tasks. If these tasks do not exist, it is determined that the task execution allotted time is left, and one of the duplicately executed tasks is selected and re-executed in the surplus time.

【0011】[0011]

【発明の実施の形態】次に、本発明について図面を参照
して説明する。なお、本発明では、マルチタスクシステ
ムで切換制御されるタスクのうち、サービス品質制御が
必要なタスクをサービス品質タスクといい、サービス品
質制御が不要なタスクを通常タスクという。また、サー
ビス品質タスクのうち、要求されるサービス品質が固定
的でありその周期内に1回だけ実行するタスクを単一実
行タスクといい、これとは別に、要求されるサービス品
質が可変でありその周期内に複数回実行可能なタスクを
重複実行タスクという。
Next, the present invention will be described with reference to the drawings. In the present invention, among tasks switched and controlled by the multitask system, a task requiring service quality control is called a service quality task, and a task not requiring service quality control is called a normal task. Also, among the service quality tasks, a task that requires a fixed service quality and is executed only once within the cycle is called a single execution task. Apart from this, the required service quality is variable. A task that can be executed a plurality of times in that cycle is called a duplicate execution task.

【0012】図1は本発明の一実施の形態となるタスク
管理方法に用いるマルチタスクシステムのブロック図で
ある。マルチタスクシステム100は、CPU101、
タイマ102、例えばハードディスク装置等の記憶装置
103、メモリ105、キーボードやマウス等のような
入力装置106、ディスプレイといった出力装置107
を備えている。
FIG. 1 is a block diagram of a multitask system used in a task management method according to an embodiment of the present invention. The multitask system 100 includes a CPU 101,
Timer 102, storage device 103 such as a hard disk device, memory 105, input device 106 such as a keyboard or mouse, and output device 107 such as a display
It has.

【0013】これらCPU101、タイマ102、記憶
装置103、メモリ105、入力装置106、出力装置
107はバス104で相互に接続されている。タイマ1
02は、設定時間ごとにCPU101に割り込みをかけ
る機能を持ち、この割り込みによって設定時間の経過を
CPU101に通知することが可能である。記憶装置1
03にはタスクプログラムなどが記録されており、必要
に応じてメモリ105に読み出される。
The CPU 101, timer 102, storage device 103, memory 105, input device 106, and output device 107 are interconnected by a bus 104. Timer 1
02 has a function of interrupting the CPU 101 at each set time, and it is possible to notify the CPU 101 of the elapse of the set time by this interrupt. Storage device 1
In 03, a task program and the like are recorded, and are read out to the memory 105 as needed.

【0014】入力装置106に対する入力処理や出力装
置107に対する出力処理を行うタスクも同様に記憶装
置103に記録されており、必要に応じてメモリ105
に読み出され、実行される。メモリ105上には、後述
するタスク受付処理をCPU101に実行させるための
タスク受付プログラムが格納されるタスク受付部110
と、タスクをCPU101に実行させるためのタスク実
行プログラムが格納されるタスク実行部111とが設け
られている。
The tasks of performing input processing for the input device 106 and output processing for the output device 107 are also recorded in the storage device 103, and are stored in the memory 105 as necessary.
Is read and executed. A task receiving unit 110 in which a task receiving program for causing the CPU 101 to execute a task receiving process described later is stored on the memory 105.
And a task execution unit 111 that stores a task execution program for causing the CPU 101 to execute the task.

【0015】また、メモリ105上には、マルチタスク
システムを実現するのに必要なタスクの情報を記録する
ためのタスク管理テーブル112があり、タスクの受付
および実行の際に使用される。図2はタスク管理テーブ
ル112の構成の一例を示す説明図である。タスク管理
テーブル112は、管理可能なタスク数分のタスク識別
子201、タスク情報202、サービス品質タスク管理
情報203の記憶領域から構成される。
The memory 105 has a task management table 112 for recording information on tasks necessary for realizing the multitask system, and is used when accepting and executing tasks. FIG. 2 is an explanatory diagram showing an example of the configuration of the task management table 112. The task management table 112 includes storage areas for task identifiers 201, task information 202, and service quality task management information 203 for the number of manageable tasks.

【0016】このうち、タスク識別子201は、各タス
クを区別するために用いられるものである。タスク情報
202は、通常のマルチタスクシステムでタスク管理に
必要な情報を格納するためのものである。タスク識別子
201とタスク情報202は、通常のマルチタスクシス
テムでもよく使用されるものである。サービス品質タス
ク管理情報203は、本発明で新たに設けたものであ
る。
The task identifier 201 is used to distinguish each task. The task information 202 is for storing information necessary for task management in a normal multitask system. The task identifier 201 and the task information 202 are often used in a normal multitask system. The service quality task management information 203 is newly provided in the present invention.

【0017】図3はサービス品質タスク管理情報203
の構成の一例を示す説明図である。タスクタイプ301
は、サービス品質タスクの種類を示すためのものであ
る。ここでは、処理時間304で指定される処理時間が
タスクに割当てられて実行された後、周期302で指定
される同一周期内に同じタスクを再度実行することが可
能なタスクすなわち重複実行タスクであることを示すた
めに使用する。
FIG. 3 shows service quality task management information 203.
FIG. 4 is an explanatory diagram showing an example of the configuration of FIG. Task type 301
Is for indicating the type of service quality task. Here, after the processing time specified by the processing time 304 is assigned to the task and executed, the task is a task that can execute the same task again within the same cycle specified by the cycle 302, that is, a task that is a duplicate execution task. Used to indicate that

【0018】周期302は、タスクに周期が設定された
ときの設定値を記録しておくためのものである。周期カ
ウンタ303は、周期と処理時間が設定されたタスクを
実行する際に、周期の経過時間を記録するためのもので
ある。処理時間304は、タスクに対する処理時間が設
定されたときの設定値を記録しておくためのものであ
る。
The cycle 302 is for recording a set value when the cycle is set for the task. The cycle counter 303 records the elapsed time of the cycle when executing a task in which the cycle and the processing time are set. The processing time 304 is for recording a set value when the processing time for the task is set.

【0019】また、処理時間カウンタ305は、タスク
が実行された分の時間を記録するためのものである。再
実行カウンタ306は、重複実行タスクについて、処理
時間304で指定される処理時間がタスクに割当てられ
た後に、周期302で指定される周期内に同じタスクを
再実行した回数を記録するためのものである。
The processing time counter 305 is used to record the time during which the task is executed. The re-execution counter 306 is for recording the number of times the same task is re-executed within the cycle specified by the cycle 302 after the processing time specified by the processing time 304 is assigned to the task for the duplicate execution task. It is.

【0020】以下、図4を参照して、本発明のタスク受
付処理について説明する。図4は本発明を用いた場合の
サービス品質タスクの受付を行う動作の一例を示すフロ
ーチャートである。周期および処理時間が設定されるサ
ービス品質タスクの受付処理は、タスク受付部110で
行なわれる。この受付処理は、タスクに対して予め設定
される(またはユーザから指定される)周期と処理時間
の設定要求が発生すると開始される(ステップ40
1)。
Hereinafter, the task receiving process of the present invention will be described with reference to FIG. FIG. 4 is a flowchart showing an example of an operation for receiving a service quality task when the present invention is used. The reception process of the service quality task in which the cycle and the processing time are set is performed by the task reception unit 110. This reception processing is started when a request for setting a cycle and a processing time set in advance (or designated by the user) for the task occurs (step 40).
1).

【0021】次に、周期と処理時間をタスクに設定し
て、各タスクが設定された周期に処理時間を割当てられ
るかどうかを判断して、要求が受付けられるかどうか判
断を行う(ステップ402)。判断方法は、既に周期と
処理時間が設定されたタスクと新たに設定が要求された
タスクに対して、以下の条件を満たせば各タスクが周期
ごとに処理時間の割当が可能と判断し、要求を受付け
る。
Next, the cycle and the processing time are set for the task, and it is determined whether the processing time can be allocated to the set cycle for each task, and it is determined whether the request can be accepted (step 402). . The determination method is as follows: For tasks for which the cycle and processing time have already been set and for tasks for which new setting has been requested, it is determined that the processing time can be assigned to each task if the following conditions are satisfied. Accept.

【0022】条件:n個(nは2以上の整数)のタスク
を周期の短い順に並び替え、そのi番目(iは1≦i<
nとなる整数)のタスクiについて、その周期をFi、
1周期当りの処理時間をPiとし、XをYで割った余り
をmod(X/Y)と表した場合、 mod(Fn/Fi)=0のとき、Ri=Fn/Fi mod(Fn/Fi)≠0のとき、Ri=Fn/Fi+
1 Fn−Pn>Σ(RixPi)(但し、1≦i<n)
Condition: n tasks (n is an integer of 2 or more) are rearranged in the order of shortest cycle, and the i-th task (i is 1 ≦ i <
n), the period of the task i is Fi,
When the processing time per cycle is Pi, and the remainder obtained by dividing X by Y is expressed as mod (X / Y), when mod (Fn / Fi) = 0, Ri = Fn / Fi mod (Fn / Fi) ) ≠ 0, Ri = Fn / Fi +
1 Fn-Pn> Σ (RixPi) (where 1 ≦ i <n)

【0023】これは、最も周期が長いタスクnの周期F
nにおける、タスクnよりも短い周期のタスクiの実行
回数Riと、そのタスクiの処理時間Piとの積(Ri
×Pi)の総和が、タスクnの周期Fnでの空き時間
(Fn−Pn)より短いという条件を示している。した
がって、この条件を満たすことで、全てのタスクに対し
て各タスクの周期内でそれぞれの処理時間分だけ実行時
間を割当てることが可能となる。
This corresponds to the cycle F of the task n having the longest cycle.
n, the product of the number of executions Ri of the task i having a shorter cycle than the task n and the processing time Pi of the task i (Ri
XPi) indicates a condition that the sum total of the tasks n is shorter than the idle time (Fn-Pn) in the cycle Fn of the task n. Therefore, by satisfying this condition, it becomes possible to allocate an execution time to all the tasks in the cycle of each task by the processing time.

【0024】ここで、要求が受付けられなかった場合は
(ステップ402:N0)、受付失敗として値を返し
(ステップ403)、終了する(ステップ408)。ま
た、要求が受付けられた場合は(ステップ402:YE
S)、要求が受付けられたタスクに設定された周期と処
理時間を、このタスクのタスク識別子に対応するサービ
ス品質タスク管理情報203の周期302と処理時間3
04に記録し、タスクタイプ301をサービス品質タス
クとして登録する(ステップ404)。
If the request is not accepted (step 402: N0), the value is returned as acceptance failure (step 403), and the process is terminated (step 408). If the request is accepted (step 402: YE
S), the cycle and the processing time set for the task for which the request has been accepted are set to the cycle 302 and the processing time 3 of the service quality task management information 203 corresponding to the task identifier of this task.
04, and the task type 301 is registered as a service quality task (step 404).

【0025】さらに、このタスクがサービス品質が可変
であると指定されていた場合は(ステップ405:YE
S)、このタスクのタスクタイプ301を重複実行タス
クとして登録し(ステップ406)、受付成功として値
を返し(ステップ407)、終了する(ステップ40
8)。また、サービス品質が可変でない単一実行タスク
の場合は(ステップ405:N0)、受付成功として値
を返し(ステップ407)、終了する(ステップ40
8)。
Further, if the task is designated to have variable service quality (step 405: YE
S), the task type 301 of this task is registered as a duplication execution task (step 406), a value is returned as success reception (step 407), and the process ends (step 40).
8). In the case of a single execution task whose service quality is not variable (step 405: N0), a value is returned as success of reception (step 407), and the process ends (step 40).
8).

【0026】このようにして、タスク管理テーブル11
2に登録されたサービス品質タスクの実行は、タスク切
換時にその周期の短いタスクからチェックされ、周期の
開始時間となったタスクが見つかればそのタスクの処理
時間が消費されるまで実行する。ここで、タスク実行中
にそのタスクより周期の短いタスクの周期の開始時間と
なった場合、タスクの実行を中断し周期の短いタスクを
実行する。
As described above, the task management table 11
The execution of the service quality task registered in 2 is checked starting from the task with the shortest cycle when the task is switched, and if a task having the cycle start time is found, the task is executed until the processing time of the task is consumed. Here, if the start time of the cycle of the task having a shorter cycle than the task is reached during the task execution, the execution of the task is interrupted and the task with the shorter cycle is executed.

【0027】サービス品質タスクとして受け付けられた
すべてのタスクが、それぞれ所定の処理時間を消費して
しまった場合は、いずれかのタスクの次の周期の開始時
間まで重複実行タスクが実行される。これにより、サー
ビス品質タスクのうち、単一実行タスクが要求するサー
ビス品質を正確に提供できるとともに、重複実行タスク
に対してよりよいサービス品質を提供できる。
When all the tasks accepted as service quality tasks consume a predetermined processing time, the duplicate execution task is executed until the start time of the next cycle of any task. As a result, among the service quality tasks, the service quality required by the single execution task can be accurately provided, and the better service quality can be provided for the duplicate execution task.

【0028】図5は本発明を用いた場合のタスク切換時
の処理動作の一例を示すフローチャートである。タスク
の切り換えは、そのマルチタスクシステムに予め設定さ
れたタスク切換単位時間ごと、あるいは各タスクの終了
時などに実行される(ステップ501)。まず、前回の
タスク切換時から経過した時間を元に、周期と処理時間
が設定されているすぺてのサービス品質タスクの周期カ
ウンタ303を更新する。
FIG. 5 is a flowchart showing an example of a processing operation at the time of task switching when the present invention is used. The task switching is performed at every task switching unit time set in the multitask system or at the end of each task (step 501). First, the cycle counters 303 of all the service quality tasks for which the cycle and the processing time are set are updated based on the time elapsed since the previous task switching.

【0029】続いて、直前まで実行していたタスクがサ
ービス品質タスクであれば(ステップ503:YE
S)、そのタスクの処理時間カウンタ305を更新する
(ステップ504)。次に、周期カウンタ303が周期
302に到達したサービス品質タスクがあれば(ステッ
プ505:YES)、そのタスクの周期カウンタ30
3、処理時間カウンタ305、および再実行カウンタ3
06をそれぞれリセットする(ステップ506)。
Subsequently, if the task executed immediately before is a service quality task (step 503: YE
S), the processing time counter 305 of the task is updated (step 504). Next, if there is a service quality task whose cycle counter 303 has reached the cycle 302 (step 505: YES), the cycle counter 30 of that task
3, processing time counter 305, and re-execution counter 3
06 are reset (step 506).

【0030】そして、その周期内でまだ実行していない
動作可能な単一実行タスクおよび重複実行タスクがある
かを検出する(ステップ507)。この場合、周期の短
いタスクから調べていき、処理時間カウンタ305が処
理時間304より小さいタスクが見つかった場合、その
タスクを次に動作するタスクとする。
Then, it is detected whether there is an operable single execution task and a duplicate execution task that have not been executed within the cycle (step 507). In this case, the task is examined starting from the task with the shortest cycle. If a task whose processing time counter 305 is smaller than the processing time 304 is found, the task is set as the next operation task.

【0031】また、処理時間カウンタ305が処理時間
304より小さいタスクが見つからなかった場合は、サ
ービス品質タスクで次に動作可能なタスクは無いものと
判断する。したがって、ステップ503において、次に
動作するタスクがあった場合は(ステップ507:YE
S)、そのタスクへのタスクの切り換えを行い(ステッ
プ508)、タスクの切り換えを終了する(ステップ5
09)。
If the processing time counter 305 finds no task smaller than the processing time 304, it is determined that there is no next operable service quality task. Therefore, in step 503, when there is a task to be operated next (step 507: YE
S), the task is switched to that task (step 508), and the task switching is completed (step 5).
09).

【0032】一方、次に動作するタスクがない場合は
(ステップ503:NO)、タスク実行割当て時間が余
っていると判断し、再実行可能な重複実行タスクがある
かどうかを判断する(ステップ510)。ここでは、重
複実行タスクが存在するかどうかを各品質サービスタス
クのタスクタイプ301をチェックし、重複実行タスク
を示すタスクタイプ301がなければステップ510の
判断をN0とする。
On the other hand, when there is no task to be operated next (step 503: NO), it is determined that the task execution allocation time is left, and it is determined whether there is a re-executable duplicate execution task (step 510). ). Here, the task type 301 of each quality service task is checked whether there is a duplicate execution task, and if there is no task type 301 indicating a duplicate execution task, the determination in step 510 is set to N0.

【0033】なお、ステップ510において、重複実行
タスクが複数存在する場合は、それらの再実行カウンタ
306をチェックし、各再実行カウンタ306がそれぞ
れ所定回数に達している場合は、ステップ510の判断
をNOとする。これにより、タスク実行割当て時間の余
り時間が、すべて重複実行タスクで使用されることがな
くなり、品質サービス制御が不要な通常タスクにも処理
時間が割当てられ、通常タスクが全く動かない状態に陥
るのを回避できる。
In step 510, if there are a plurality of overlapping execution tasks, the re-execution counters 306 are checked. If each of the re-execution counters 306 has reached a predetermined number, the judgment in step 510 is made. NO. As a result, the surplus time of the task execution allocation time is not used by the duplication execution task, and the processing time is allocated to the normal task that does not need the quality service control, and the normal task does not move at all. Can be avoided.

【0034】したがって、ステップ510:NOの場合
は、通常タスクの実行のために既存のタスク切換処理を
行い(ステップ511)、タスクの切換処理を終了する
(ステップ509)。また、通常タスクが全く動かない
状態になってもよい場合は、サービス品質が可変なタス
クが存在するとき、常にステップ510の判断をYES
としてもよい。
Therefore, if step 510: NO, an existing task switching process is performed to execute a normal task (step 511), and the task switching process ends (step 509). In a case where the normal task may not be moved at all, if there is a task with a variable service quality, the determination of step 510 is always YES.
It may be.

【0035】一方、ステップ510:YESの場合は、
重複実行タスクにタスクの実行を切り換え(ステップ5
12)、処理を終了する(ステップ509)。この場
合、重複実行タスクが1つの場合は、そのタスクに切り
換える。また、重複実行タスクが複数ある場合は、タス
クの割当を平等にするために、最初は重複実行タスクの
うちから周期が一番短くかつ最も登録の早いタスクを選
び、そのタスク識別子を記録し、次回以降は周期の短さ
と登録順で順番とし、タスクを切り換える。
On the other hand, if step 510: YES,
Switch task execution to duplicate execution task (Step 5
12), end the process (step 509). In this case, if there is one duplicate execution task, the task is switched to that task. In addition, when there are a plurality of duplicate execution tasks, in order to equalize the task assignment, first, from the duplicate execution tasks, select the task with the shortest cycle and the earliest registration, and record the task identifier, From the next time on, tasks are switched in order of short cycle and registration order, and tasks are switched.

【0036】なお、重複実行タスクが複数存在する場合
は、それらの再実行カウンタ306をチェックし、その
再実行回数の少ない重複実行タスクから優先して選択実
行するようにしてもよい。これにより、重複実行タスク
間での実行回数の偏りを抑止でき、平等に実行できる。
When there are a plurality of duplicate execution tasks, the re-execution counter 306 may be checked, and the re-execution task having the smaller number of re-executions may be preferentially selected and executed. As a result, it is possible to suppress a bias in the number of executions among the duplication tasks, and to execute the tasks equally.

【0037】このように、タスク切換時に、それぞれの
周期内でまだ実行していない動作可能な単一実行タスク
および重複実行タスクがある場合は、その周期および処
理時間に基づきそのタスクを実行し、その周期内でまだ
実行していない動作可能な単一実行タスクおよび重複実
行タスクがなく、タスク実行割当て時間が余っている場
合は、重複実行タスクを再実行するようにしたので、各
タスクに要求されたサービス品質制御が正確に実行され
るとともに、重複実行タスクについてはその余剰時間を
利用して実行量を増やすことが可能となる。
As described above, at the time of task switching, if there are operable single-execution tasks and duplicate-execution tasks that have not been executed in each cycle, the tasks are executed based on the cycle and the processing time. If there are no operable single-execution tasks and duplicate execution tasks that have not yet been executed within the cycle and the task execution allocation time has been left, the duplicate execution task is re-executed. The performed service quality control is executed accurately, and the execution amount of the duplicate execution task can be increased by using the surplus time.

【0038】[0038]

【発明の効果】以上説明したように、本発明は、サービ
ス品質が可変なタスクの実行において、周期と処理時間
が設定されたタスクの実行が行われない余剰時間を利用
して、サービス品質が可変な重複実行タスクを再実行す
るようにしたので、周期と処理時間が設定されたサービ
ス品質タスクの実行を妨げることなく、サービス品質が
可変なタスクのタスク割当機会を増やし、結果としてサ
ービス品質が可変なタスクのサービス品質を向上するこ
とができるとともに、タスク割当ての余剰時間を有効利
用できる。
As described above, according to the present invention, in the execution of a task whose service quality is variable, the service quality can be improved by utilizing the surplus time during which the task whose period and processing time are set is not executed. Re-executing variable overlapping execution tasks increases the task allocation opportunities for tasks with variable service quality without hindering the execution of service quality tasks with a set period and processing time, resulting in higher service quality. The service quality of the variable task can be improved, and the surplus time of task assignment can be effectively used.

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

【図1】 本発明の一実施の形態であるタスク管理方法
が適用されるマルチタスクシステムのブロック図であ
る。
FIG. 1 is a block diagram of a multitask system to which a task management method according to an embodiment of the present invention is applied.

【図2】 タスク管理テープルの構成の一例を示す説明
図である。
FIG. 2 is an explanatory diagram illustrating an example of a configuration of a task management table.

【図3】 サービス品質タスク管理情報の構成の一例を
示す説明図である。
FIG. 3 is an explanatory diagram illustrating an example of a configuration of service quality task management information.

【図4】 周期と処理時間の設定の受付動作の一例を示
すフローチャートである。
FIG. 4 is a flowchart illustrating an example of a receiving operation for setting a cycle and a processing time.

【図5】 タスク切換時の処理動作の一例を示すフロー
チャートである。
FIG. 5 is a flowchart illustrating an example of a processing operation at the time of task switching.

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

100…マルチタスクシステム、101…CPU、10
2…タイマ、103…記録装置、104…バス、105
…メモリ、106…入力装置、107…出力装置、11
0…タスク受付部、111…タスク実行部、112…タ
スク管埋テーブル、201…タスク識別子、202…タ
スク情報、203…サービス品質タスク管理情報、30
1…タスクタイプ、302…周期、303…周期カウン
タ、304…処理時間、305…処理時間カウンタ、3
06…再実行カウンタ。
100: Multitask system, 101: CPU, 10
2: timer, 103: recording device, 104: bus, 105
... memory, 106 ... input device, 107 ... output device, 11
0: task reception unit, 111: task execution unit, 112: task management table, 201: task identifier, 202: task information, 203: service quality task management information, 30
1: Task type, 302: Period, 303: Period counter, 304: Processing time, 305: Processing time counter, 3
06 ... Re-execution counter.

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 マルチタスクシステムで切換制御される
複数のタスクのうち、サービス品質制御が必要となるタ
スクについて、そのタスクを実行する周期と、その1周
期内でタスク実行に使用可能な処理時間とをタスク管理
テープルで管理し、これら周期と処理時間に基づいて各
タスクの実行制御を行うことにより、タスクのサービス
品質制御を行うタスク管理方法において、 サービス品質制御が必要なタスクとして、その周期内に
1回だけ実行する単一実行タスクと、その周期内に複数
回実行可能な重複実行タスクとを設けるとともに、各タ
スクの予約時にいずれのタスクかをタスク管理テーブル
に設定し、 タスク切換時に、それぞれの周期内でまだ実行していな
い単一タスクおよび重複実行タスクが存在する場合は、
これらタスクを選択して実行し、これらタスクが存在し
ない場合は、タスク実行割当て時間が余っていると判断
し、その余り時間で重複実行タスクのうちのいずれかを
選択して再実行することを特徴とするタスク管理方法。
1. Among a plurality of tasks switched and controlled by a multitask system, for a task that requires service quality control, a cycle for executing the task, and a processing time available for executing the task within one cycle In a task management method that controls service quality of tasks by managing the execution of each task based on these cycles and processing time, the task management table manages A single execution task that is executed only once within a task and a duplicate execution task that can be executed multiple times within the cycle are provided. When each task is reserved, which task is set in the task management table, , If there are single and duplicate tasks that have not yet been executed in each cycle,
If these tasks are selected and executed, and these tasks do not exist, it is determined that the task execution allotted time is left, and it is determined that one of the duplicate execution tasks is selected and re-executed in the surplus time. A featured task management method.
【請求項2】 請求項1記載のタスク管理方法におい
て、 重複実行タスクを再実行する場合、各重複実行タスクの
うち、次に実行すべき単一タスクの実行開始までの余り
時間より短い処理時間を有する重複実行タスクを選択し
て再実行することを特徴とするタスク管理方法。
2. The task management method according to claim 1, wherein when re-executing the duplicate execution task, a processing time shorter than a remaining time until the start of execution of a single task to be executed next among the duplicate execution tasks. A task management method characterized by selecting and re-executing a duplicate execution task having the following.
【請求項3】 請求項1記載のタスク管理方法におい
て、 各重複実行タスクごとに、その周期内での再実行回数を
タスク管理テーブルで管理し、 重複実行タスクを再実行する場合、すべての重複実行タ
スクの再実行回数が所定回数に達している場合は、重複
実行タスクの再実行を行わず、その余り時間でサービス
品質制御が不要な通常タスクを実行することを特徴とす
るタスク管理方法。
3. The task management method according to claim 1, wherein the number of re-executions in the cycle is managed in a task management table for each of the duplicate execution tasks. A task management method characterized in that, when the number of re-executions of an execution task has reached a predetermined number, a re-execution of the duplicate execution task is not performed, and a normal task that does not require service quality control is executed in the remaining time.
【請求項4】 請求項1記載のタスク管理方法におい
て、 各重複実行タスクごとに、その周期内での再実行回数を
タスク管理テーブルで管理し、 重複実行タスクを再実行する場合、その再実行回数が小
さい重複実行タスクから順に選択して実行することを特
徴とするタスク管理方法。
4. The task management method according to claim 1, wherein the number of re-executions in the cycle is managed in a task management table for each of the duplication tasks, and when the duplication task is re-executed, the re-execution is performed. A task management method, wherein a task is selected and executed in order from a duplication execution task having a small number of times.
JP10296725A 1998-10-19 1998-10-19 Task managing method Pending JP2000122883A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10296725A JP2000122883A (en) 1998-10-19 1998-10-19 Task managing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10296725A JP2000122883A (en) 1998-10-19 1998-10-19 Task managing method

Publications (1)

Publication Number Publication Date
JP2000122883A true JP2000122883A (en) 2000-04-28

Family

ID=17837295

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10296725A Pending JP2000122883A (en) 1998-10-19 1998-10-19 Task managing method

Country Status (1)

Country Link
JP (1) JP2000122883A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007058601A (en) * 2005-08-24 2007-03-08 Matsushita Electric Ind Co Ltd Task execution device and method
CN102339029A (en) * 2011-06-30 2012-02-01 电子科技大学 Method for realizing timing protection of embedded operating system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007058601A (en) * 2005-08-24 2007-03-08 Matsushita Electric Ind Co Ltd Task execution device and method
JP4580845B2 (en) * 2005-08-24 2010-11-17 パナソニック株式会社 Task execution device
US8370846B2 (en) 2005-08-24 2013-02-05 Panasonic Corporation Task execution device and method
CN102339029A (en) * 2011-06-30 2012-02-01 电子科技大学 Method for realizing timing protection of embedded operating system

Similar Documents

Publication Publication Date Title
US6539415B1 (en) Method and apparatus for the allocation of audio/video tasks in a network system
JP2611746B2 (en) Input / output interface device and control method thereof
US8276156B2 (en) Task switching based on assigned time slot
US6560628B1 (en) Apparatus, method, and recording medium for scheduling execution using time slot data
TWI235952B (en) Thread dispatch mechanism and method for multiprocessor computer systems
US7069558B1 (en) System and method for interactively utilizing a user interface to manage device resources
WO2004111847A1 (en) Resource management method and device, resource management program, and storage medium
JP2003058382A (en) Preferential execution controlling method in information processing system, device and program therefor
JPH1091357A (en) Data storage device and method therefor
KR970012201A (en) On-demand video system and video scheduling method of the system, physical resource scheduling method of on-demand customer service system, computer readable memory
JPH08123763A (en) Memory assigning system for distributed processing system
WO2001029665A2 (en) Method for implementing scheduling mechanisms with selectable resource modes
CN110333961B (en) Multisystem audio frequency controller equipment, method and computer readable storage medium
US20070186064A1 (en) Apparatus and method of managing storage space through time-variant consumption estimation
JP3664021B2 (en) Resource allocation method by service level
JPH06332833A (en) Server operation system
JP4377028B2 (en) Resource management system
JP2000122883A (en) Task managing method
JPH10240548A (en) Task scheduling device and method
JP2007328413A (en) Method for distributing load
JPH10171667A (en) Task management method
US20240031454A1 (en) System, method and computer-readable medium for data accessing
JPH11249915A (en) Task management method
JPH11175357A (en) Task management method
JP5056346B2 (en) Information processing apparatus, information processing system, virtual server movement processing control method, and program