JP2002049497A - データ処理方法および処理装置 - Google Patents
データ処理方法および処理装置Info
- Publication number
- JP2002049497A JP2002049497A JP2000237269A JP2000237269A JP2002049497A JP 2002049497 A JP2002049497 A JP 2002049497A JP 2000237269 A JP2000237269 A JP 2000237269A JP 2000237269 A JP2000237269 A JP 2000237269A JP 2002049497 A JP2002049497 A JP 2002049497A
- Authority
- JP
- Japan
- Prior art keywords
- task
- data
- processed
- processing
- priority
- 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
Links
Abstract
化するような複数の処理対象データに対するマルチタス
ク処理を可能にし、ストリーミングに適したマルチタス
クデータ処理方法およびそれを用いた処理装置を提供す
る。 【解決手段】複数の処理対象データに対し複数の異なる
処理をマルチタスク処理にて実行するため、処理対象の
タスクを切り換えるにあたって、各タスクについて前記
複数の処理の入出力系統の現状に対する評価を行ってそ
れぞれの優先度を算出し、この優先度に基づき次の処理
対象のタスクを決定する。
Description
ネットやデジタル放送などで音楽や映像などのデータを
受信しながらリアルタイムに再生する(ストリーミン
グ)際のマルチタスクによるデータ処理方法およびそれ
を用いたデータ処理装置に関する。
ッサ)で処理する場合、時間分割して処理することが行
われている。ある時刻には1個のタスクが実行されてお
り、このタスクの実行が中断されると、制御プログラム
に制御が移され、制御プログラムは次に実行するタスク
を決定する。従来の方式では、制御プログラムは、実行
可能なタスクの中で、各タスクの優先順位を示す、あら
かじめ数値化された値の大小に基づいて、次に実行する
タスクを決定する。詳細な決定アルゴリズムは幾通りか
あるが、代表的なものは次の通りである。実行可能なタ
スクの中で、最も優先度の高いものが1個ある場合は、
それが選択される。最も優先度の高いものが2個以上あ
る場合には、それらがサイクリックに順番に実行される
ように決定される。
固定であるものや変化するものがある。変化するもの
は、タスク自身が値を変更するのが普通の方法である。
つまりプログラムの実行位置に応じて、高い優先度が必
要になった場合には優先度を上げ、低い優先度でも良く
なった場合には優先度を下げるのである。
などで音楽や映像などのデータを受信しながらリアルタ
イムに再生する(ストリーミング)際には、連続的に入
力されてくる音声データなどストリーミング・データを
処理するプログラムにおいては、未処理のデータが格納
されるバッファの占有量など、プログラムの実行位置で
なく、外的要因に応じて、優先度を変化させる必要があ
る。すなわち、未処理の入力データが少ないときは処理
を急がないが、未処理の入力データが多いときは処理を
急がないと入力データがオーバーフローしてしまい、デ
ータが欠落してしまう。あるいは、一定の遅延以内で処
理を行わないと、出力データに時間的切れ目が生じてし
まい、音声データならば音がとぎれるという間題が発生
する。
理は、固定の優先順位や、プログラム自身が設定する優
先度に基づいて処理対象のタスクの切り換えを制御する
ものであり、複数の処理の入出力系統の現状(入出力バ
ッファ内のデータ量)を評価してタスクの優先度を定め
る必要のあるストリーミングを行う際には適していない
という問題点があった。
統の現状が時々刻々と変化するような複数の処理対象デ
ータに対するマルチタスク処理を可能にし、ストリーミ
ングに適したマルチタスクデータ処理方法およびそれを
用いた処理装置を提供することを目的とする。
象データに対し複数の異なる処理をマルチタスク処理に
て実行するためのデータ処理方法であって、処理対象の
タスクを切り換えるにあたって、各タスクについて前記
複数の処理の入出力系統の現状に対する評価を行ってそ
れぞれの優先度を算出し、この優先度に基づき次の処理
対象のタスクを決定することにより、複数の処理の入出
力系統の現状が時々刻々と変化するような複数の処理対
象データに対するデータ処理をマルチタスク処理にて実
行することが可能となる。
処理の入出力系統の現状に対する評価を行うための関数
を用いて、それぞれのタスクの優先度を算出する。
数の異なる処理をマルチスク処理にて実行する処理装置
において、処理対象のタスクを切り換えるにあたって、
各タスクについて前記複数の処理の入出力系統の現状に
対する評価を行ってそれぞれの優先度を算出する算出手
段を具備し、この算出された優先度に基づき次の処理対
象のタスクを決定することにより、複数の処理の入出力
系統の現状が時々刻々と変化するような複数の処理対象
データに対するデータ処理をマルチタスク処理にて実行
することが可能となる。
処理の入出力系統の現状に対する評価を行うための関数
を用いて、それぞれのタスクの優先度を算出する。
図面を参照して説明する。
(以下、簡単に処理装置と呼ぶ)1の要部の構成を概念
的に示したものである。処理対象のデータが複数(ここ
では、例えばn系列)あり(入力データIDATA_1
〜IDATA_n)、それらはそれぞれ入力バッファI
BF_1〜入力バッファIBF_nに入力される。これ
ら入力データは、例えば、複数チャネルのオーディオ信
号やビデオ信号などである。これらのデータは、マクロ
的にはほぼ一定のレートで入力されることが多いが、ミ
クロ的には入力バッファに転送する側の性質に依存する
ものであり、バースト的に入力される場合もありうる。
データに対する処理が遅れると、入力バッファがオーバ
ーフローしてしまうため、それが起こらないように処理
しなければならない。
プロセッサで構成されており、この上で複数(ここで
は、例えばm個)のタスク(タスク(1)〜タスク
(m))が動作するものとする。
ファIBF_1〜IBF_nに格納されているデータを
逐次処理していくための処理プログラムである。
納されている入力データIDATA_1〜IDATA_
nは、タスク(1)〜タスク(m)で処理されて、複数
(ここでは、例えばs系列)の出力データODATA_
1〜ODATA_sとして出力され、それそれ出力バッ
ファOBF_1〜OBF_sに格納される。なお、出力
バッファがそのまま入力バッファに対応することもある
が、ここでは、説明の簡単のため、それぞれ別個に設け
られているものとする。なお、m=nおよびまたはn=
sであってもよい。
成されているので、同時には1個のタスクしか実行され
ず、m個のタスクは時間分割されて実行されることにな
る。なお、ここでは、単一のプロセッサで構成された処
理装置の場合を例にとり説明するが、一般的には、mよ
り少ない複数のプロセッサで構成された処理装置でも同
様である。
制御プログラム2である。タスクの時間割り当ては次の
ようにして行われる。ある時刻にタスク(k)(1≦k
≦mの整数)が実行されているとする。
断される。この条件は、従来の一般的なマルチタスク制
御方式においては、タスク(k)の実行が始まってから
一定時間が経過したときである。すなわち、時間を固定
長のタイム・スロットに分割し、各タイム・スロット毎
にタスクを割り当てる方式である。
ることも可能である。また、この方式を用いない場合と
しては、タスク(k)が自ら実行を中断する方式が考え
られる。後者の方式による利点は、自らの都合で中断を
行えるため、処理上区切りがよいところで中断すること
により、タスク切り替え時の時間が短くなり、効率がよ
いことである。すなわち逆に言えば、前者のように強制
的に中断される方式では、後で再開するときに必要な中
間データが大きくなり、中断時にそれらを保存したり、
再開時にそれらを復元したりするのに、より多くの時間
を費やすことになる。後者の方式における処理上の区切
りとは、例えば、入力データが圧縮符号化されたオーデ
ィオ信号の場合には、フレームの区切りとすると都合が
よい。
間経過したときタスクの処理を中断させてタスクをり換
える方式であっても、後者のタスク自身が例えばフレー
ムの区切りをきっかけに処理を中断してときタスクを切
り換える方式であっても適用可能である。
て、制御プログラム2のマルチタスク制御処理動作につ
いて説明する。
り実行され、その実行が中断されると、制御プログラム
2に処理が移される。制御プログラム2は、OS(オペ
レーションシステム)が存在するシステムの場合には、
通常、OSの一部である。制御プログラム2は、ある条
件により次に実行するタスクを決定するものである。
クに優先度を示す数値が設定されており、実行可能なタ
スクの中で、それらの数値の最も大きいものが次に実行
されるタスクとして選択される。ここで、実行可能と
は、図1のような処理系の場合には、各タスクに対応す
る処理の入出力系統において、その入力バッファが空で
なく、かつ対応する出力バッファがフルでないことであ
る。
タスクにあらかじめ優先度をつけておくことや、タスク
実行時に自分自身の優先度を設定しておくことは望まし
くない。なぜなら、ここでの優先度のあるべき姿は、入
力バッファがオーバーフローしないことや、出力バッフ
ァが空にならないことであり、これらの条件は当該タス
クが実行していない場合にも時々刻々と変化するからで
ある。すなわち優先度と表す数値が時々刻々と変化する
ようになっている必要がある。
実現するために、各タスク(1)〜タスク(m)のそれ
ぞれにステータス関数st_1〜st_mを対応付け、
制御プログラム2が次に実行すべきタスクを選択する時
点(タスクの切り換え時)において、すなわち、今まで
実行していたタスクが中断した後に、各タスク(1)〜
タスク(m)のそれぞれに対応したステータス関数st
_1〜st_mを呼び(ステップS1)、各ステータス
関数により、例えば、後述する算出方法にて優先度を算
出した結果を取得する(ステップS2)。
得られた値、すなわち、各タスクの優先度から、次に実
行すべきタスクとして、最も優先度の高いタスクを選択
する。ここでは、その選択されたタスクをタスク(k)
とする(ステップS3)。制御プログラムは、タスクの
切り換え時に、プロセッサに、この選択されたタスク
(k)を次の処理対象として実行させる。
それらに対応したタスクの入出力系統の現状を評価し、
それに応じた優先度を返すように作られている。また各
タスクが実行可能か実行不可能かの情報も返すようにす
ることも可能なようになっている。ここで実行不可能と
は、例えば入力バッファ占有量が空か、出力バッファ占
有量がフルの場合である。
て、これらすべてのステータス関数を呼んだ後、実行可
能なタスクの内で最も優先度が高いものを、次に実行す
るタスクとして選択する。
について、ここでは2例を挙げて説明する。なお、ステ
ータス関数の優先度の算出方法は、ここに挙げるものの
みに限るものではない。
数は、それに対応した入力バッファの占有量を調べ、そ
の占有量をある規則に従って優先度に変換する。ある規
則とは、例えば、占有量とあらかじめ予想される入力デ
ータのレートから、オーバーフローするまでの時間を推
測し、その時間が短いほど優先度が高くなり、その時間
が長いほど優先度が低くなるようなテーブルにより変換
する。
数は、それに対応したタスクが処理を完了しているデー
タのタイム・スタンプを調べ、その時刻と実際の時刻と
の差を優先度に変換して返す。この場合は、入力データ
IDATA_1〜IDATA_nがすべてタイム・スタ
ンプを持ったデータであることが条件である。また、処
理装置1には現在時刻を表す時計またはカウンタが具備
されているものとする。この例では、実時間に対する遅
延が最も大きいものに最も高い優先度が与えられる。
ば、各タスクにその対応する処理の入出力系統の現状に
対する評価を行うためのステータス関数を対応づけ、制
御プログラム2は、処理対象のタスクの切り換えるにあ
たって、各タスクのステータス関数から返ってきた値を
タスクの優先度として用いて、次の処理対象のタスクを
決定することにより、複数の処理の入出力系統の現状が
時々刻々と変化するような複数の処理対象データに対す
るデータ処理をマルチタスク処理にて実行することが可
能となり、例えば、ストリーミングの際に、処理が所定
の時刻に間に合うように行われ、入力バッファがオーバ
ーフローしたり、出力がとぎれたりすることがなくな
る。
るものではなく、実施段階ではその要旨を逸脱しない範
囲で種々に変形することが可能である。さらに、上記実
施形態には種々の段階の発明は含まれており、開示され
る複数の構成用件における適宜な組み合わせにより、種
々の発明が抽出され得る。例えば、実施形態に示される
全構成要件から幾つかの構成要件が削除されても、発明
が解決しようとする課題の欄で述べた課題(の少なくと
も1つ)が解決でき、発明の効果の欄で述べられている
効果(のなくとも1つ)が得られる場合には、この構成
要件が削除された構成が発明として抽出され得る。
複数の処理の入出力系統の現状が時々刻々と変化するよ
うな複数の処理対象データに対するデータ処理をマルチ
タスク処理にて実行することが可能となり、ストリーミ
ングに適したマルチタスクデータ処理を実現できる。
の構成を概念的に示した図。
説明するためのフローチャート。
Claims (4)
- 【請求項1】 複数の処理対象データに対し複数の異な
る処理をマルチタスク処理にて実行するためのデータ処
理方法において、 処理対象のタスクを切り換えるにあたって、各タスクに
ついて前記複数の処理の入出力系統の現状に対する評価
を行ってそれぞれの優先度を算出し、この優先度に基づ
き次の処理対象のタスクを決定することを特徴とするデ
ータ処理方法。 - 【請求項2】 複数の処理対象データに対し複数の異な
る処理をマルチタスク処理にて実行するためのデータ処
理方法において、 処理対象のタスクを切り換えるにあたって、各タスクに
ついて前記複数の処理の入出力系統の現状に対する評価
を行うための関数を用いて、それぞれのタスクの優先度
を算出し、この優先度に基づき次の処理対象のタスクを
決定することを特徴とするデータ処理方法。 - 【請求項3】 複数の処理対象データに対し複数の異な
る処理をマルチスク処理にて実行する処理装置におい
て、 処理対象のタスクを切り換えるにあたって、各タスクに
ついて前記複数の処理の入出力系統の現状に対する評価
を行ってそれぞれの優先度を算出する算出手段を具備
し、この算出された優先度に基づき次の処理対象のタス
クを決定することを特徴とする処理装置。 - 【請求項4】 複数の処理対象データに対し複数の異な
る処理をマルチタスク処理にて実行する処理装置におい
て、 処理対象のタスクを切り換えるにあたって、各タスクに
ついて前記複数の処理の入出力系統の現状に対する評価
を行うための関数を用いて、それぞれのタスクの優先度
を算出する算出手段を具備し、この算出された優先度に
基づき次の処理対象のタスクを決定することを特徴とす
る処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000237269A JP3840045B2 (ja) | 2000-08-04 | 2000-08-04 | データ処理方法及びデータ処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000237269A JP3840045B2 (ja) | 2000-08-04 | 2000-08-04 | データ処理方法及びデータ処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002049497A true JP2002049497A (ja) | 2002-02-15 |
JP3840045B2 JP3840045B2 (ja) | 2006-11-01 |
Family
ID=18729162
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000237269A Expired - Fee Related JP3840045B2 (ja) | 2000-08-04 | 2000-08-04 | データ処理方法及びデータ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3840045B2 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007522561A (ja) * | 2004-02-06 | 2007-08-09 | インテル・コーポレーション | 同時マルチスレッディングプロセッサを用いてバッファ型アプリケーションのエネルギー消費を低減する方法 |
JP2010204892A (ja) * | 2009-03-03 | 2010-09-16 | Nippon Telegr & Teleph Corp <Ntt> | 映像解析装置,映像解析方法および映像解析プログラム |
US11204799B2 (en) | 2018-10-31 | 2021-12-21 | Renesas Electronics Corporation | Semiconductor device and systems using the same |
US11263046B2 (en) | 2018-10-31 | 2022-03-01 | Renesas Electronics Corporation | Semiconductor device |
JP2022524746A (ja) * | 2019-09-28 | 2022-05-10 | テンセント・アメリカ・エルエルシー | ワークフローを処理する方法及び装置 |
JP2022524745A (ja) * | 2019-09-28 | 2022-05-10 | テンセント・アメリカ・エルエルシー | ステップ対応ワークフローのための方法及び装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109947570B (zh) * | 2019-03-21 | 2021-07-13 | 北京地平线机器人技术研发有限公司 | 视频处理任务项的创建方法及输入视频流的调度方法 |
-
2000
- 2000-08-04 JP JP2000237269A patent/JP3840045B2/ja not_active Expired - Fee Related
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007522561A (ja) * | 2004-02-06 | 2007-08-09 | インテル・コーポレーション | 同時マルチスレッディングプロセッサを用いてバッファ型アプリケーションのエネルギー消費を低減する方法 |
JP2010204892A (ja) * | 2009-03-03 | 2010-09-16 | Nippon Telegr & Teleph Corp <Ntt> | 映像解析装置,映像解析方法および映像解析プログラム |
US11204799B2 (en) | 2018-10-31 | 2021-12-21 | Renesas Electronics Corporation | Semiconductor device and systems using the same |
US11263046B2 (en) | 2018-10-31 | 2022-03-01 | Renesas Electronics Corporation | Semiconductor device |
JP2022524746A (ja) * | 2019-09-28 | 2022-05-10 | テンセント・アメリカ・エルエルシー | ワークフローを処理する方法及び装置 |
JP2022524745A (ja) * | 2019-09-28 | 2022-05-10 | テンセント・アメリカ・エルエルシー | ステップ対応ワークフローのための方法及び装置 |
JP7176129B2 (ja) | 2019-09-28 | 2022-11-21 | テンセント・アメリカ・エルエルシー | ステップ対応ワークフローのための方法及び装置 |
JP7233560B2 (ja) | 2019-09-28 | 2023-03-06 | テンセント・アメリカ・エルエルシー | ワークフローを処理する方法及び装置 |
Also Published As
Publication number | Publication date |
---|---|
JP3840045B2 (ja) | 2006-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8370846B2 (en) | Task execution device and method | |
US20070016908A1 (en) | Parallel operation apparatus | |
JP2003058382A (ja) | 情報処理システムにおける優先実行制御方法及びその装置並びにプログラム | |
US20110035751A1 (en) | Soft Real-Time Load Balancer | |
KR20070083460A (ko) | 다중 커널을 동시에 실행하는 방법 및 시스템 | |
JP2004362100A (ja) | 情報処理装置、プロセス制御方法、並びにコンピュータ・プログラム | |
US20110078702A1 (en) | Multiprocessor system | |
US20080295104A1 (en) | Realtime Processing Software Control Device and Method | |
US20070150711A1 (en) | Apparatus and method of exception handling for reconfigurable architecture | |
JP4609113B2 (ja) | プロセッサ | |
JP2002049497A (ja) | データ処理方法および処理装置 | |
CN112596898A (zh) | 一种任务执行器调度的方法及装置 | |
KR20030015234A (ko) | 차단 태스크로부터 예산을 회수하기 위한 시스템 및 방법 | |
JP2001117786A (ja) | プロセススケジューリング装置およびプロセススケジューリング方法 | |
US8615165B2 (en) | Video-recording and replaying apparatus, I/O scheduling method, and program | |
JP2002189604A (ja) | マルチタスク処理方法および処理装置 | |
JP2006059340A (ja) | 実時間処理ソフトウェア制御装置及び方法 | |
JP2002099434A (ja) | 制御装置 | |
JPH11237993A (ja) | タスクの優先度制御方法およびタスクの優先度制御装置 | |
JPH1063515A (ja) | マルチタスク制御のスケジューリング方法 | |
JP5452427B2 (ja) | マルチオペレーティングシステム計算機、マルチオペレーティングシステム管理方法およびマルチオペレーティングシステム管理プログラム | |
JPH10177489A (ja) | タスクのスケジュール方法 | |
JP6569388B2 (ja) | 制御装置、制御システム、制御方法、および、プログラム | |
US20080091438A1 (en) | Audio signal decoder and resource access control method | |
US20090106759A1 (en) | Information processing system and related method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050712 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050726 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050914 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060328 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060524 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060801 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060804 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090811 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100811 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100811 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110811 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |