JP2002099432A - 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体 - Google Patents

演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体

Info

Publication number
JP2002099432A
JP2002099432A JP2000287882A JP2000287882A JP2002099432A JP 2002099432 A JP2002099432 A JP 2002099432A JP 2000287882 A JP2000287882 A JP 2000287882A JP 2000287882 A JP2000287882 A JP 2000287882A JP 2002099432 A JP2002099432 A JP 2002099432A
Authority
JP
Japan
Prior art keywords
processor
task
time
operating frequency
power supply
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
JP2000287882A
Other languages
English (en)
Inventor
Atsushi Togawa
敦之 戸川
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2000287882A priority Critical patent/JP2002099432A/ja
Priority to PCT/JP2001/008254 priority patent/WO2002025439A1/ja
Priority to EP01967792A priority patent/EP1321855A4/en
Priority to CNB018032443A priority patent/CN1288556C/zh
Priority to KR1020027006501A priority patent/KR100864964B1/ko
Priority to US10/130,566 priority patent/US6986068B2/en
Publication of JP2002099432A publication Critical patent/JP2002099432A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

(57)【要約】 【課題】 アプリケーションのリアルタイム要求に応え
つつプロセッサによる電力消費を削減する。 【解決手段】 プロセッサの動作周波数と電源電圧をオ
ペレーティング・システムの制御により変化させること
が可能なシステムにおいて、起動された周期リアルタイ
ム・タスク並びに非リアルタイム・タスクを遅滞なく処
理するために必要なプロセッサの動作周波数を適応的に
変化させるとともに、時々刻々と切り替わる動作周波数
に応じて最適なプロセッサ用電源電圧を決定していくこ
とで、プロセッサの消費電力を低減する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、1以上のタスクを
同時に実行するタイプのプロセッサに関する電力削減技
術に係り、特に、異なる周期で動作する1以上のタスク
を実行するプロセッサに関する電力削減技術に関する。
【0002】更に詳しくは、本発明は、次の周期の開始
までに実行を完了させる必要がある周期リアルタイム・
タスクとかかる制約のない非リアルタイム・タスクを並
行して実行するタイプのプロセッサに関する電力削減技
術に係り、特に、アプリケーションのリアルタイム要求
に応えつつプロセッサによる電力消費を削減する電力削
減技術に関する。
【0003】
【従来の技術】昨今のLSI(Large Scale Integratio
n)技術における革新的な進歩とも相俟って、各種の情
報処理機器や情報通信機器が開発され、市販されるよう
になってきた。この種の機器では、CPU(Central Pr
ocessing Unit)やその他のプロセッサが所定のプログ
ラム・コードを実行することによりさまざまな処理サー
ビスを提供するようになっている。
【0004】他方において、情報機器に関する消費電力
の削減が最重要課題の1つとされている。これは、バッ
テリ駆動式の情報機器においてはバッテリ持続時間の延
長に関わる問題だからである。また、商用電源で無尽蔵
に駆動することができる情報機器においても、資源有限
という社会生態学的な観点から省電力化が推奨されてい
る。
【0005】情報機器内では、そのメイン・コントロー
ラであるプロセッサの消費電力は、機器全体のそれに占
める割合は高い。言い換えれば、プロセッサの省電力化
は情報機器自体の省電力化にもつながる。一般には、プ
ロセッサは、動作周波数の増大に従って演算速度が向上
する一方で、その消費電力が増大する傾向にある。
【0006】例えば、特開平11−194849号公報
には、消費電力を無用に増加させることなく所定の処理
時間に所定の処理動作を完了することができ、タスクの
処理容量が変化する場合でも設定作業が簡単となるデー
タ処理方法及び装置について開示している。
【0007】同公報に開示されたデータ処理装置では、
マイクロコンピュータが各種の処理動作を実行する場合
の処理容量と処理時間を容量記憶手段と時間記憶手段と
に登録しておき、マイクロコンピュータが各種の処理動
作を実行する場合に対応する処理容量及び処理時間を選
出し、処理容量を処理時間で除算してマイクロコンピュ
ータの処理速度を算出して基準クロックの周波数を可変
としている。マイクロコンピュータの処理速度を処理容
量と処理時間に対応して可変するので、所定の処理動作
を所定の処理時間に確実に完了することができるととも
に、基準クロックの周波数を最適値に設定できるので、
データ処理装置における消費電力の無用な増加も防止す
ることができる。
【0008】しかしながら、同公報に開示されるデータ
処理方法及び装置では、プロセッサの動作クロック周波
数を変更するだけで消費電力の削減を図るものである。
言い換えれば、動作クロック周波数の削減によって、単
位時間あたりの消費電力は低下するものの、各処理を完
了させるための所要時間が長くなり、この結果、総電力
量を削減する効果はあまり高くない。すなわち、プロセ
ッサがアイドリング状態にあるときの消費電力量の範囲
を越えず、効果として不充分である。
【0009】また、同公報に開示されるデータ処理方法
及び装置は、各処理の処理タイミングがあらかじめ定ま
っており、且つ、各処理を中断することなく順次処理す
ることによってすべての処理を時間内に完了させること
が可能なことを前提とするものである。このため、ある
処理の実行を中断して、より緊急度が高い処理(例えば
リアルタイム処理)を行わせる必要があるシステムに対
しては適用することができない。
【0010】また、特開2000−122747号公報
には、デジタル信号演算処理部にクロックを供給するク
ロック発生部を設けて、このクロック発生部からデジタ
ル信号演算処理部へ供給するクロック周波数を、デジタ
ル信号演算処理部での演算処理量に基づいて制御するこ
とによって消費電力を低減する制御装置及び方法につい
て開示されている。
【0011】しかしながら、同公報に開示される制御装
置及び方法では、演算部の動作クロック周波数を変更す
るだけで消費電力の削減を図るものである。言い換えれ
ば、動作クロック周波数の削減によって、単位時間あた
りの消費電力は低下するものの、各処理を完了させるた
めの所要時間が長くなり、この結果、電力量の削減効果
は、演算部がアイドリング状態にあるときの消費電力量
の範囲を越えず、効果として不充分である。
【0012】また、同公報に開示される制御装置及び方
法では、アイドリング時間が占める割合から動作周波数
を算出するようになっている。ところが、異なる周期で
動作するタスクが多数実行されるようなマルチタスク環
境下では、アイドリング時間が占める割合を計算するこ
とはできない。
【0013】また、Takanori Okuma, Tohru Ishihara,
Hiroto Yasuura共著の論文"Real-Time Task Scheduling
for a Variable Voltage Processor"(IEEE 12th Inte
rnational Symposium on System Synthesis, November
1999)において提案されるSS及びSDなるスケジュー
リング手法では、システムの稼動前に、タスクの実行開
始時間が判っていることを前提としている。これは、タ
スクの追加や削除が行われる度に再度スケジューリング
を行う必要があることを意味する。さらに、このスケジ
ューリング処理は、各周期タスクの周期の最小公倍数を
周期とするスケジューリングを計算することによって行
わなければならない。それらの周期の最小公倍数が充分
に小さくない場合、タスクの追加や削除の効率が悪化す
る。
【0014】また、この論文で提案されているDDスケ
ジューリング手法は、周期スレッドのように、タスクが
特定のパターンで起動されることを考慮したスケジュー
リングを行っていない。このため、消費電力の削減効果
は不充分である。
【0015】また、Yann-Hang Lee, C. M. Krishna共著
の論文"Voltage-Clock Scaling forLow Energy Consump
tion in Real-time Embedded Systems"(IEEE Sixth In
ternational Conference on Real-Time Computing Syst
ems and Applications, December 1999)において提案
されている"Task based static schedulinig"なる手法
は、タスクを静的優先度法でスケジューリングすること
を前提としている。ところが、静的優先度スケジューリ
ング法は最早デッドライン優先度スケジューリングに比
べてスケジューリング能力が劣っていることで知られて
おり、電力削減の効果として不充分である。
【0016】一般には、プロセッサは、動作周波数の増
大に従って演算速度が向上する一方で、消費電力が増大
する傾向にある(前述)。また、プロセッサの動作周波
数とともにその電源電圧(言い換えれば消費電力)をつ
り上げていかなければならない。(但し、実際には、L
SI製造プロセスの微細化によって電源電圧の上限が制
限されているので、電圧を上げることによって周波数を
上げることは行われない。)
【0017】プロセッサの動作周波数と電源電圧を動的
制御により変化させることが可能なシステムであれば、
起動された各タスクを遅滞なく処理するために必要な動
作周波数を適応的に変化させるとともに、時々刻々と切
り替わる動作周波数に応じて最適な電源電圧を決定して
いくことで、プロセッサの消費電力を低減することが可
能と思料されるが、このようなことを実現した従来技術
は見当たらない。
【0018】
【発明が解決しようとする課題】本発明の目的は、異な
る周期で動作する1以上のタスクを実行するプロセッサ
のための、優れた電力削減技術を提供することにある。
【0019】本発明の更なる目的は、次の周期の開始ま
でに実行を完了させる必要がある周期リアルタイムタス
クと実行完了時間に関する制約のない非リアルタイムタ
スクを並行して実行するタイプのプロセッサのための、
優れた電力削減技術を提供することにある。
【0020】本発明の更なる目的は、アプリケーション
のリアルタイム要求に応えつつプロセッサによる電力消
費を削減することができる、優れた電力削減技術を提供
することにある。
【0021】本発明の更なる目的は、プロセッサの動作
周波数と電源電圧を動的制御により変化させることが可
能なシステムにおいて、起動された各タスクを遅滞なく
処理するために必要な動作周波数を適応的に変化させる
とともに、時々刻々と切り替わる動作周波数に応じて最
適な電源電圧を決定していくことで、プロセッサの消費
電力を低減することができる、優れた電力削減技術を提
供することにある。
【0022】
【課題を解決するための手段及び作用】本発明は、上記
課題を参酌してなされたものであり、その第1の側面
は、次の周期の開始までに実行を完了させる必要がある
周期リアルタイム・タスクと実行完了時刻の制約がない
非リアルタイム・タスクを並行して実行可能なプロセッ
サを含んだ演算処理システム又は演算制御方法であっ
て、前記プロセッサの稼動中の各時点において、各周期
リアルタイム・タスクに課せられた要求を満たすために
充分な動作周波数を算出する動作周波数算出手段又はス
テップと、前記動作周波数算出手段又はステップによる
算出結果に基づく動作周波数クロックを前記プロセッサ
に供給するプロセッサ・クロック生成手段又はステップ
と、を具備することを特徴とする演算処理システム又は
演算制御方法である。
【0023】但し、ここで言う「システム」とは、複数
の装置(又は特定の機能を実現する機能モジュール)が
論理的に集合した物のことを言い、各装置や機能モジュ
ールが単一の筐体内にあるか否かは特に問わない。
【0024】プロセッサが実行するタスクの管理や、タ
スク実行に必要なプロセッサの動作周波数の算出は、例
えば、オペレーティング・システムの機能として実装す
ることができる。
【0025】本発明の第1の側面に係る演算処理システ
ム及び演算処理制御方法によれば、起動された周期リア
ルタイム・タスク並びに非リアルタイム・タスクを遅滞
なく処理するために必要なプロセッサの動作周波数を適
応的に変化させるとともに、時々刻々と切り替わる動作
周波数に応じて最適なプロセッサ用電源電圧を決定して
いくことで、プロセッサの消費電力を低減することがで
きる。
【0026】本発明の第1の側面に係る演算処理システ
ム及び演算処理制御方法は、前記プロセッサの稼動中の
各時点において、与えられたタスクのうちいずれを実行
すべきかを選択して実行するタスク選択・実行手段又は
ステップをさらに備えることができる。より具体的に
は、実行可能な周期リアルタイム・タスクのリストの先
頭からタスクを取り出し、該リストが空の場合には、実
行可能な非リアルタイム・タスクのリストの先頭からタ
スクを取り出すようにすれば、周期リアルタイム・タス
クに課された要求を満たしながら各タスクを実行するこ
とができる。
【0027】また、前記プロセッサの稼動中の各時点に
おいて、実行すべきタスクがなくなったことに応答し
て、前記プロセッサを稼動率が低下したスリープ状態に
移行させるスリープ遷移手段又はステップをさらに備え
ることで、未処理タスクがない場合におけるプロセッサ
の消費電力を最大限に節約することができる。
【0028】また、本発明の第1の側面に係る演算処理
システム及び演算処理制御方法は、前記動作周波数算定
手段又はステップにより算出された動作周波数で前記プ
ロセッサを駆動させるために充分な電源電圧を算出する
電源電圧算出手段又はステップと、前記電源電圧算出手
段又はステップによる算出結果に基づく電源電圧を前記
プロセッサに供給するプロセッサ電源供給手段又はステ
ップと、をさらに備えるようにしてもよい。
【0029】一般に、プロセッサの動作周波数を増大さ
せるためには供給電源の電圧を吊り上げる必要がある。
プロセッサにおいて起動された各タスクを遅滞なく処理
するために必要な動作周波数を適応的に変化させるとと
もに、時々刻々と切り替わる動作周波数に応じて最適な
電源電圧を決定していくことで、プロセッサの消費電力
を効果的に低減することが可能となる。
【0030】また、本発明の第1の側面に係る演算処理
システム及び演算処理制御方法は、各周期リアルタイム
・タスクに課せられた、次の周期の開始時間、周期、一
周期あたりの処理負荷などの情報を、タスク実行前に記
録するタスク情報記録手段又はステップと、前記タスク
情報記録手段又はステップにより記録された情報を参照
して、電源電圧と動作周波数が前記プロセッサの限界を
越えず、及び/又は、既登録の周期リアルタイム・タス
クに課せられた要求が満たされるように、新たな周期リ
アルタイム・タスクの登録を制限するタスク登録制御手
段又はステップと、をさらに備えるようにしてもよい。
【0031】また、非リアルタイム・タスクが存在しな
いときに前記動作周波数算出手段又はステップによって
算出された動作周波数が所定の下限値を下回ったことに
応答して、前記プロセッサの動作周波数を該下限値に設
定する下限値設定手段又はステップをさらに備えるよう
にしてもよい。あるいは、非リアルタイム・タスクが存
在しないときに前記動作周波数算出手段又はステップに
よって算出された動作周波数が所定の下限値を下回った
ことに応答して、前記プロセッサの電源電圧を該下限値
に設定する下限値設定手段又はステップをさらに備える
ようにしてもよい。
【0032】このような場合、下限値に設定することに
よりプロセッサに生まれる余剰時間を利用して非リアル
タイム・タスクを実行することにより、周期リアルタイ
ム・タスクが次の周期の開始以前に実行を完了すること
を保証しつつ、非リアルタイム・タスクの実行によって
消費される電力量を削減することができる。
【0033】また、本発明の第2の側面は、1以上のタ
スクを実行可能なプロセッサを含んだ演算処理システム
又は演算制御方法であって、前記プロセッサが実行する
各タスクに課せられた要求を満たすために充分な動作周
波数を算出する動作周波数手段又はステップと、前記動
作周波数算出手段又はステップによる算出結果に基づく
動作周波数クロックを前記プロセッサに供給するプロセ
ッサ・クロック生成手段又はステップと、前記動作周波
数算定手段又はステップにより算出された動作周波数で
前記プロセッサを駆動させるために充分な電源電圧を算
出する電源電圧算出手段又はステップと、前記電源電圧
算出手段又はステップによる算出結果に基づく電源電圧
を前記プロセッサに供給するプロセッサ電源供給手段又
はステップと、を具備することを特徴とする演算処理シ
ステム又は演算制御方法である。
【0034】プロセッサが実行するタスクの管理や、タ
スク実行に必要なプロセッサの動作周波数の算出は、例
えば、オペレーティング・システムの機能として実装す
ることができる。
【0035】本発明の第2の側面に係る演算処理システ
ム及び演算処理制御方法によれば、起動された周期リア
ルタイム・タスク並びに非リアルタイム・タスクを遅滞
なく処理するために必要なプロセッサの動作周波数を適
応的に変化させるとともに、時々刻々と切り替わる動作
周波数に応じて最適なプロセッサ用電源電圧を決定して
いくことで、プロセッサの消費電力を低減することがで
きる。
【0036】また、本発明の第3の側面は、次の周期の
開始までに実行を完了させる必要がある周期リアルタイ
ム・タスクと実行完了時間の制約がない非リアルタイム
・タスクを並行して実行可能なプロセッサのためのタス
ク管理システム又は方法であって、各周期リアルタイム
・タスクに課せられた、次の周期の開始時間、周期、一
周期あたりの処理負荷などの情報を、タスク実行前に記
録するタスク情報記録手段又はステップと、前記プロセ
ッサに課された処理負荷に応じて前記プロセッサの電源
電圧と動作周波数を設定する動作設定手段又はステップ
と、前記タスク情報記録手段又はステップにより記録さ
れた情報を参照して、電源電圧と動作周波数が前記プロ
セッサの限界を越えず、及び/又は、既登録の周期リア
ルタイム・タスクに課せられた要求が満たされるよう
に、新たな周期リアルタイム・タスクの登録を制限する
タスク登録制御手段又はステップと、を具備することを
特徴とするタスク管理システム又は方法である。
【0037】本発明の第3の側面に係るタスク管理シス
テム又は方法によれば、電源電圧と動作周波数が前記プ
ロセッサの限界を越えず、且つ、既登録の周期リアルタ
イム・タスクに課せられた要求が満たされるように、新
たな周期リアルタイム・タスクの登録を制限することが
できる。
【0038】また、非リアルタイム・タスクが存在しな
いときに前記動作設定手段又はステップによって算出さ
れた動作周波数及び/又は電源電圧が所定の下限値を下
回ったことに応答して、前記プロセッサの動作周波数及
び/又は電源電圧を該下限値に設定する下限値設定手段
又はステップをさらに備えるようにしてもよい。
【0039】このような場合、下限値に設定することに
よりプロセッサに生まれる余剰時間を利用して非リアル
タイム・タスクを実行することにより、周期リアルタイ
ム・タスクが次の周期の開始以前に実行を完了すること
を保証しつつ、非リアルタイム・タスクの実行によって
消費される電力量を削減することができる。
【0040】また、本発明の第4の側面は、次の周期の
開始までに実行を完了させる必要がある周期リアルタイ
ム・タスクと実行完了時間の制約がない非リアルタイム
・タスクを並行して実行可能なプロセッサによる演算処
理の制御をコンピュータ・システム上で実行するように
記述されたコンピュータ・ソフトウェアをコンピュータ
可読形式で物理的に格納した記憶媒体であって、前記コ
ンピュータ・ソフトウェアは、前記プロセッサの稼動中
の各時点において、各周期リアルタイム・タスクに課せ
られた要求を満たすために充分な動作周波数を算出する
動作周波数算出ステップと、前記動作周波数算出ステッ
プによる算出結果に基づく動作周波数クロックを前記プ
ロセッサに供給するプロセッサ・クロック生成ステップ
と、を具備することを特徴とする記憶媒体である。
【0041】また、本発明の第5の側面は、1以上のタ
スクを実行可能なプロセッサによる演算処理の制御をコ
ンピュータ・システム上で実行するように記述されたコ
ンピュータ・ソフトウェアをコンピュータ可読形式で物
理的に格納した記憶媒体であって、前記コンピュータ・
ソフトウェアは、前記プロセッサが実行する各タスクに
課せられた要求を満たすために充分な動作周波数を算出
する動作周波数ステップと、前記動作周波数算出ステッ
プによる算出結果に基づく動作周波数クロックを前記プ
ロセッサに供給するプロセッサ・クロック生成ステップ
と、前記動作周波数算定ステップにより算出された動作
周波数で前記プロセッサを駆動させるために充分な電源
電圧を算出する電源電圧算出ステップと、前記電源電圧
算出ステップによる算出結果に基づく電源電圧を前記プ
ロセッサに供給するプロセッサ電源供給ステップと、を
具備することを特徴とする記憶媒体である。
【0042】また、本発明の第6の側面は、次の周期の
開始までに実行を完了させる必要がある周期リアルタイ
ム・タスクと実行完了時間の制約がない非リアルタイム
・タスクを並行して実行可能なプロセッサのためのタス
ク管理をコンピュータ・システム上で実行するように記
述されたコンピュータ・ソフトウェアをコンピュータ可
読形式で物理的に格納した記憶媒体であって、前記コン
ピュータ・ソフトウェアは、各周期リアルタイム・タス
クに課せられた、次の周期の開始時間、周期、一周期あ
たりの処理負荷などの情報を、タスク実行前に記録する
タスク情報記録ステップと、前記プロセッサに課された
処理負荷に応じて前記プロセッサの電源電圧と動作周波
数を設定する動作設定ステップと、前記タスク情報記録
ステップにより記録された情報を参照して、電源電圧と
動作周波数が前記プロセッサの限界を越えず、及び/又
は、既登録の周期リアルタイム・タスクに課せられた要
求が満たされるように、新たな周期リアルタイム・タス
クの登録を制限するタスク登録制御ステップと、を具備
することを特徴とする記憶媒体である。
【0043】本発明の第4、第5、及び第6の各側面に
係る記憶媒体は、例えば、様々なプログラム・コードを
実行可能な汎用性のコンピュータ・システムに対して、
コンピュータ・ソフトウェアをコンピュータ可読な形式
で物理的に提供する媒体である。このような媒体は、例
えば、CD(Compact Disc)やFD(Floppy Disc)、
MO(Magneto-Optical disc)などの着脱自在で可搬性
の記憶媒体である。あるいは、ネットワーク(ネットワ
ークは無線、有線の区別を問わない)などの伝送媒体な
どを経由してコンピュータ・ソフトウェアを特定のコン
ピュータ・システムにコンピュータ可読形式で提供する
ことも技術的に可能である。
【0044】このような記憶媒体は、コンピュータ・シ
ステム上で所定のコンピュータ・ソフトウェアの機能を
実現するための、コンピュータ・ソフトウェアと記憶媒
体との構造上又は機能上の協働的関係を定義したもので
ある。換言すれば、本発明の第4、第5、及び第6の各
側面に係る記憶媒体を介して所定のコンピュータ・ソフ
トウェアをコンピュータ・システムにインストールする
ことによって、コンピュータ・システム上では協働的作
用が発揮され、本発明の第1、第2、及び第3の各側面
に係る演算処理システム及び演算処理制御方法、タスク
管理システム及びタスク管理方法と同様の作用効果を得
ることができる。
【0045】本発明のさらに他の目的、特徴や利点は、
後述する本発明の実施例や添付する図面に基づくより詳
細な説明によって明らかになるであろう。
【0046】
【発明の実施の形態】以下、図面を参照しながら本発明
の実施例を詳解する。
【0047】1.システム構成 図1には、本発明の実施に供される演算処理システム1
0のハードウェア構成を模式的に示している。同図に示
すように、演算処理システム10は、プロセッサ11
と、RAM(Random Access Memory)12と、ROM
(Read Only Memory)13と、周辺デバイス14と、タ
イマ15とを含んでいる。
【0048】プロセッサ11は、演算処理システム10
のメイン・コントローラであり、オペレーティング・シ
ステム(OS)の制御下で、各種のプログラム・コード
を実行するようになっている。
【0049】オペレーティング・システムがプログラム
実行を管理・制御する単位は、一般に「タスク」と呼ば
れる。本実施例に係るプロセッサ11は、異なる周期で
動作する複数のタスクを同時に実行するマルチタスク機
構を備えているものとする。タスクには、次の周期の開
始までに実行を完了させる必要がある「周期リアルタイ
ム・タスク」と、このような実行完了時間に制約がない
「非リアルタイム・タスク」とに大別することができ
る。
【0050】プロセッサ11は、バス16によって他の
機器類(後述)と相互接続されている。バス16上の各
機器にはそれぞれ固有のメモリ・アドレス又はI/Oア
ドレスが付与されており、プロセッサ11はこれらアド
レスによって機器アクセスが可能となっている。バス1
6は、アドレス・バス、データ・バス、コントロール・
バスを含む共通信号伝送路である。
【0051】RAM12は、書き込み可能なメモリであ
り、プロセッサ11において実行されるプログラム・コ
ードをロードしたり、実行プログラムの作業データを一
時格納するために使用される。プログラム・コードに
は、例えば、BIOS(BasicInput/Output System:基
本入出力システム)、周辺機器をハードウェア操作する
ためのデバイス・ドライバ、オペレーティング・システ
ム、アプリケーションなどが挙げられる。
【0052】ROM13は、所定のコードやデータを恒
久的に記憶するための不揮発メモリであり、例えば、B
IOSや始動時の自己診断プログラム(Power On Self
Test:POST)などを格納している。
【0053】周辺デバイス14には、ディスプレイやプ
リンタのようなユーザ出力装置、キーボードやマウスの
ようなユーザ出力装置、ハード・ディスクやその他のメ
ディア・ドライブからなる外部記憶装置、ネットワーク
・インターフェース・カードのような通信装置が含まれ
る。
【0054】各周辺デバイスには、割り込みレベルが割
り当てられており、所定のイベント発生(例えばキーボ
ード入力やマウス・クリックなど)に応答して、割り込
み要求信号線19を介してプロセッサ11に通知するこ
とができる。
【0055】タイマ15は、タイマ信号を所定周期で発
生させる装置である。タイマ15にも割り込みレベルが
割り当てられており、割り込み要求信号線19を介して
プロセッサ11に対して周期的な割り込みを発生するよ
うになっている。(但し、周期の異なる複数の周期リア
ルタイム・タスクが存在する場合、タイマ信号は周期的
な割り込みにはならない。)
【0056】上述したようなシステム10の各コンポー
ネントには、電源装置17からの電力が電源供給線18
を介して供給される。電源装置17は、例えばバッテリ
や商用AC電源で構成されるが、AC/DCアダプタや
DC/DCコンバータによって一定の電源電圧を供給す
ることができる。
【0057】図示の例では、プロセッサ11に対して
は、専用のDC/DC変換器21が配設されている。本
実施例では、プロセッサ11は、オペレーティング・シ
ステムの制御下で、プロセッサ用DC/DC変換器21
からの供給電圧を設定する機構を備えている。
【0058】また、プロセッサ11は、プロセッサ・ク
ロック生成器22が発生する動作クロックを入力して、
その動作周波数に同期的に駆動する。一般には、動作周
波数の増大とともに、プロセッサ11のパフォーマンス
すなわち処理速度は向上するとともに、その消費電力も
増大する。本実施例では、プロセッサ11は、オペレー
ティング・システムの制御下で、プロセッサ・クロック
生成器22が生成するクロックの動作周波数を設定する
機構を備えている。
【0059】なお、プロセッサ11に対する電源電圧と
動作周波数の双方をプロセッサ用DC/DC変換器21
とプロセッサ・クロック生成器22の各々によって動的
に制御する必要は必ずしもなく、いずれか一方の動作に
よっても本発明の効果を実現することができる。言い換
えれば、オペレーティング・システムは、プロセッサ1
1の電源電圧と動作周波数の双方を動的制御するのでは
なく、いずれか一方のみを制御する場合であっても本発
明の効果を実現することができる。また、電源電圧と動
作周波数のいずれか一方のみを演算処理により設定し、
他方はその設定に自動的に追従するように構成してもよ
い(例えば、プロセッサ11の周波数をオペレーティン
グ・システムが設定することによって、その周波数で動
作するために必要な最小の電源電圧が自動的にプロセッ
サ11に供給されるように構成してもよい)。
【0060】2.アプリケーションに対するインターフ
ェース 演算処理システム10上における演算処理は、プロセッ
サ11がオペレーティング・システムの制御下でアプリ
ケーション・タスクを実行するという形式で実現される
(前述)。オペレーティング・システムとは、システム
10のハードウェア及びソフトウェアを総合的に管理す
るための基本ソフトウェアのことであり、アプリケーシ
ョンに対しては、オペレーティング・システムの基本機
能を呼び出す(コールする)ためのインターフェース、
すなわちAPI(Application Programming Interfac
e)を提供している。
【0061】オペレーティング・システムがアプリケー
ションの実行を管理・制御する単位は「タスク」と呼ば
れ、タスクには、次の周期の開始までに実行を完了させ
る必要がある「周期リアルタイム・タスク」と、このよ
うな実行完了時間に制約がない「非リアルタイム・タス
ク」とに大別される(前述)。
【0062】周期リアルタイム・タスクとは、ある周期
で定期的に起動されるタスクである。但し、各周期リア
ルタイム・タスクの周期は区々である。図2には、複数
の周期リアルタイム・タスクが異なる周期で同時に実行
されている様子を模式的に図解している。
【0063】周期リアルタイム・タスクは、各起動毎
に、あらかじめアプリケーション・プログラムによって
設定されたプロセッサ使用量を超えない範囲で実行が行
われる。ここで言う「プロセッサ使用量」とは、プロセ
ッサの動作周波数が最大値に固定された条件下で、一周
期の実行を完了させるために必要な時間のことを意味す
る。
【0064】本実施例に係るオペレーティング・システ
ムは、周期リアルタイム・タスクの実行が次の周期が開
始する以前に完了するように動作周波数の制御とタスク
実行順序の制御を行うようになっている。
【0065】また、非リアルタイム・タスクとは、その
実行完了時間に対する制約がないタスクである。
【0066】本実施例に係るオペレーティング・システ
ムは、アプリケーション・プログラムに対して、「周期
リアルタイム・タスクの登録」、「周期リアルタイム・
タスクの周期的実行」、「周期リアルタイム・タスクの
登録解除」、「非リアルタイム・タスクの実行開始」、
「非リアルタイム・タスクの実行完了」、「動作周波数
の下限値の設定」という各インターフェースを提供して
いる。
【0067】(1)周期リアルタイム・タスクの登録 アプリケーション・プログラムは、このインターフェー
スを利用する際に、以下の各情報をオペレーティング・
システムに与える。 タスクの起動周期:タスクが起動される周期である。 タスクの一周期あたりの処理負荷:処理負荷の表現方法
として様々なものを挙げることができる。例えば、プロ
セッサ11が最大動作周波数でこのタスクを実行し続け
るときに、一周期の処理に要する計算時間で表現するこ
とも可能である。 タスクの実行に必要なその他の情報:例えば、タスクの
実行開始アドレスやスタック領域の位置などを与えるこ
とが挙げられる。但し、この情報は、動作周波数や電源
電圧の制御やタスク実行順序の制御には本質的なもので
はない。
【0068】オペレーティング・システムは、これらの
情報を基に、既に登録された周期リアルタイム・タスク
の要求を満たしつつ、新たな周期リアルタイム・タスク
の実行がさらに可能か否かを判断する。実行不可能と判
断したときには、アプリケーション・プログラムに対し
てその旨を通知するとともに、タスクの登録を行わな
い。他方、実行可能と判断したときには、タスクの登録
を行う。
【0069】(2)周期リアルタイム・タスクの周期的
実行 上述のインターフェース「周期リアルタイム・タスクの
登録」によって登録に成功した周期リアルタイム・タス
クは、このインターフェースの呼び出しによって周期的
な起動を開始することができる。アプリケーション・プ
ログラムは、このインターフェースを利用する際に、タ
スクを特定できる値をオペレーティング・システムに与
える。
【0070】なお、このインターフェースを省略して、
タスクの登録成功と同時に起動を開始するように実装す
ることも可能である。また、指定された時間から周期的
な起動を始めることを要求するためのインターフェース
を用意することによっても実装可能である。
【0071】(3)周期リアルタイム・タスクの登録解
除 アプリケーション・プログラムは、このインターフェー
スを利用する際に、タスクを特定できる値をオペレーテ
ィング・システムに与える。
【0072】(4)非リアルタイム・タスクの実行開始 このインターフェースの呼び出しによって、指定された
非リアルタイム・タスクは実行可能状態となる。アプリ
ケーション・プログラムは、このインターフェースを利
用する際に、タスクの実行開始アドレスやスタック領域
の位置、さらに非リアルタイム・タスク間の実行優先順
位などの情報を、オペレーティング・システムに与え
る。
【0073】(5)非リアルタイム・タスクの実行完了 このインターフェースを呼び出すことによって、指定さ
れたタスクは以後実行されなくなる。但し、上述の「非
リアルタイム・タスクの実行開始」インターフェースの
呼び出しによって、再度実行を開始することができるよ
うに実装することも可能である。
【0074】(6)動作周波数の下限値の設定 オペレーティング・システムによって設定される動作周
波数が、ある閾値以下に低下しないように設定するため
のインターフェースである。オペレーティング・システ
ムは、通常、周期リアルタイム・タスクを適切に実行す
るのに充分な必要最低限の動作周波数でプロセッサを動
作させようとする。このため、非リアルタイム・タスク
の実行に費やされるプロセッサ時間が不充分となること
がある。このような場合には、この閾値を大きく設定す
ることによって、非リアルタイム・タスクを実行するだ
けの余地を与えることができる。
【0075】3.オペレーティング・システムの実装 本実施例に係るオぺレーティング・システムは、各タス
ク毎に、以下の変数を保持している。但し、各変数の添
え字iはタスクを識別するためのタスク番号であるとす
る。
【0076】ei:次の周期の開始時間 pi:周期 ci:一周期あたりの処理負荷
【0077】さらに、本実施例に係るオペレーティング
・システムは以下の変数を保持している。
【0078】lr:現在、オペレーティング・システム
に登録されている周期リアルタイム・タスクの処理負荷
を周期で割った値の合計値である。すなわち、プロセッ
サ11の使用率に相当し、0から1.0の値をとる。l
rが1.0未満の値であれば、プロセッサ11は新たに
周期リアルタイム・タスクを実行可能な状態である。l
rは、周期リアルタイム・タスク登録時に更新される値
である。
【0079】la:現在、オペレーティング・システム
に登録されており、且つ、起動要求が発行された周期リ
アルタイム・タスクの処理負荷を周期で割った値の合計
値である。すなわち、プロセッサ11の使用率に相当
し、0から1.0の値をとる。l aは、周期リアルタイ
ム・タスク起動時に更新される値である。
【0080】fmin:アプリケーション・プログラムに
よって設定された動作周波数の下限値である。
【0081】Rr:実行可能な周期リアルタイム・タス
クのリストである。このリストは、ある周期において起
動された後に、いまだその周期の実行を完了しておら
ず、且つ、様々なイベントの発生を待っていない状態に
あるすべての周期リアルタイム・タスクで構成される。
このリスト中の各タスクは、そのei(次の周期の開始
時間)の値が小さいものから順に並べられている。
【0082】Rb:実行可能な非リアルタイム・タスク
のリストである。このリストは、タスクが起動された後
に、いまだ実行を完了しておらず、且つ、様々なイベン
トの発生を待っていない状態にあるすべての非リアルタ
イム・タスクで構成される。このリスト中のタスクの順
序は任意でよいが(例えば、先入先出し(FIFO)方
式でもよい)、非リアルタイム・タスクに実行優先順位
を設定するような場合には、その優先順位に応じた順序
で並べるようにしてもよい。
【0083】図3には、本実施例に係るオぺレーティン
グ・システムの機能構成を、特にタスク管理機能に着目
して図解している。
【0084】図示の通り、オペレーティング・システム
は、スケジューラと、タイマ・マネージャとを含んでい
る。
【0085】タイマ・マネージャは、タイマ15から供
給されるタイマ信号に従ってプロセッサ11をタイマ管
理する機能モジュールである。タイマ・マネージャは、
要求された各タスクを所定の順序(例えば、実行開始時
刻に従った順序)で保持する待ち行列(queue)であ
る。待ち行列中の各タスクは、タスク識別子と実行開始
時刻(release time)を含んでいる。
【0086】図示の例では、タイマ・マネージャ内の待
ち行列には、タスク10をリリース時刻80で要求する
要求1と、タスク11をリリース時刻95で要求する要
求2が格納されている。
【0087】スケジューラは、起動された各タスクのス
ケジュール管理を行う機能モジュールであり、実行可能
なリアルタイム・タスクのリストRrと、実行可能な非
リアルタイム・タスクのリストRbを含んでいる。ま
た、スケジューラは、周期リアルタイム・タスクの処理
負荷を周期で割った値の合計値lr並びにlaを管理して
いる(lrは周期リアルタイム・タスク登録時の値であ
り、laは周期リアルタイム・タスク起動要求時の値で
ある)。
【0088】図示の例では、リストRrには、タスク
1、タスク3、タスク4、タスク2の順序で周期リアル
タイム・タスクが登録されている。また、リストRb
は、タスク6、タスク8、タスク7、タスク5の順序で
非リアルタイム・タスクが登録されている。また、処理
負荷を周期で割った値の合計値lr及びlaはともに80
%を示し、新たに周期リアルタイム・タスクが実行可能
な状態であることを示している。
【0089】タイマ・マネージャは、スケジューラに対
して、タスクの起動すなわちリリースを通知する。ま
た、スケジューラは、タイマ・マネージャに対して、タ
スク番号とタスク起動時刻を通知する。
【0090】アプリケーション・プログラムは、オペレ
ーティング・システム内のスケジューラに対して、周期
リアルタイムタスクの登録(pi,ciの通知を伴う)、
周期リアルタイム・タスクの起動・登録削除、非リアル
タイム・タスクの登録並びに登録削除などの要求を、上
述した各インターフェースによって受け付けるようにな
っている。
【0091】4.オペレーティング・システムによるタ
スク制御 続いて、上述したオペレーティング・システムの各イン
ターフェースを実装したプログラムによる処理動作につ
いて説明する。
【0092】図4には、周期リアルタイム・タスクを登
録するインターフェースにおいて実現される処理手順を
フローチャートの形式で示している。以下、このフロー
チャートに従って、周期リアルタイム・タスクの登録処
理について説明する。
【0093】まず、新規登録する周期リアルタイム・タ
スクにタスク番号iを付与し(ステップS1)、現在オ
ペレーティング・システムに登録されている周期リアル
タイム・タスクの処理負荷を周期で割った値の合計値l
rを試算してみる。
【0094】そして、lrが1より大きいか否かを比較
して(ステップS2)、lrが1を越える場合にはもは
や新たな周期リアルタイム・タスクを実行できなくなる
ので、登録失敗とする。他方、lrが1未満であれば新
たな周期リアルタイム・タスクをまだ実行可能な状態な
ので、lrの値を更新するとともに(ステップS3)、
登録成功とする。
【0095】図5には、周期リアルタイム・タスクを登
録解除するインターフェースにおいて実現される処理手
順をフローチャートの形式で示している。以下、このフ
ローチャートに従って、周期リアルタイム・タスクの登
録解除処理について説明する。
【0096】まず、登録削除すべき周期リアルタイム・
タスクにタスク番号iを付与し(ステップS11)、タ
イマ・マネージャにおけるタスクiを起動するためのタ
イマ登録をキャンセルする(ステップS12)。
【0097】次いで、現在オペレーティング・システム
に登録されている周期リアルタイム・タスクの処理負荷
を周期で割った値の合計値lr、並びに、現在オペレー
ティング・システムに登録され且つ起動要求が発行され
た周期リアルタイム・タスクの処理負荷を周期で割った
値の合計値laの値から、登録削除を行う周期リアルタ
イムタスクiの分ci/piを取り除く(ステップS1
3,S14)。
【0098】また、登録削除を行う周期リアルタイム・
タスクiが既にスケジューラ内の実行可能リアルタイム
・タスクのリストRr中に登録されている場合には、タ
スクiをリストRrから削除する(ステップS15)。
【0099】そして、別途定義された再スケジューリン
グ処理を行うことで(ステップS16)、本処理ルーチ
ン全体を終了する。再スケジューリング処理については
後に詳解する。
【0100】図6には、周期リアルタイム・タスクを起
動開始するインターフェースにおいて実現される処理手
順をフローチャートの形式で示している。以下、このフ
ローチャートに従って、周期リアルタイム・タスクの起
動開始処理について説明する。
【0101】まず、起動開始すべき周期リアルタイム・
タスクにタスク番号iを付与し(ステップS21)、現
在オペレーティング・システムに登録され且つ起動要求
が発行された周期リアルタイム・タスクの処理負荷を周
期で割った値に合計値laにタスクiの分ci/piを加
算する(ステップS22)。
【0102】次いで、現在オペレーティング・システム
に登録され且つ起動要求が発行された周期リアルタイム
・タスクの処理負荷を周期で割った値に合計値laと、
アプリケーション・プログラムによって設定された動作
周波数の下限値fminのうち、大きい値を変数fに設定
する(ステップS23)。
【0103】そして、プロセッサ11の動作周波数をf
に設定するとともに、プロセッサ11に供給する電源電
圧を周波数fで動作可能な最小の電圧に設定する(ステ
ップS24)。プロセッサ11の動作周波数や電源電圧
の変更は、プロセッサ・クロック生成器22並びにプロ
セッサ用DC/DC変換器21の各々に指示値を送信す
ることによって行われる(前述)。プロセッサ11に課
された処理負荷から求まる動作周波数がアプリケーショ
ン・プログラムによって設定された動作周波数の下限値
minを下回る場合には、下限値fminを動作周波数とし
て設定することにより、プロセッサ11に生まれる余剰
時間に非リアルタイム・タスクを実行することができ
る。この結果、周期リアルタイム・タスクが次の周期の
開始以前に実行を完了することを保証しつつ、非リアル
タイム・タスクの実行によって消費される電力量を削減
することができる。
【0104】次いで、現在時刻にタスクiが持つ周期p
iを加算した値を次の周期の開始時刻eiに代入して(ス
テップS25)、時刻eiにタスクiが起動するように
タイマ15を設定する(ステップS26)。
【0105】次いで、スケジューラ内の実行可能リアル
タイム・タスクのリストRr中にタスクiを追加登録す
る(ステップS27)。
【0106】そして、別途定義された再スケジューリン
グ処理を行うことで(ステップS28)、本処理ルーチ
ン全体を終了する。再スケジューリング処理については
後に詳解する。
【0107】図7には、周期リアルタイム・タスクを起
動するタイマの設定時刻に達したときにおける処理手順
をフローチャートの形式で示している。以下、このフロ
ーチャートに従って、周期リアルタイム・タスクに指定
された時刻に達したときの処理について説明する。
【0108】まず、起動すべき周期リアルタイム・タス
クにタスク番号iを付与する(ステップS31)。
【0109】次いで、現在時刻にタスクiが持つ周期p
iを加算した値を次の周期の開始時刻eiに代入して(ス
テップS32)、時刻eiにタスクiが起動するように
タイマ15を設定する(ステップS33)。
【0110】次いで、スケジューラ内の実行可能リアル
タイム・タスクのリストRr中にタスクiを追加登録す
る(ステップS34)。
【0111】そして、別途定義された再スケジューリン
グ処理を行うことで(ステップS35)、本処理ルーチ
ン全体を終了する。再スケジューリング処理については
後に詳解する。
【0112】図8には、非リアルタイム・タスクを登録
するインターフェースにおいて実現される処理手順をフ
ローチャートの形式で示している。以下、このフローチ
ャートに従って、非リアルタイム・タスクの登録処理に
ついて説明する。
【0113】まず、新規登録する非リアルタイム・タス
クにタスク番号iを付与する(ステップS41)。そし
て、このタスクiを、スケジューラ内の実行可能非リア
ルタイム・タスクのリストRbに追加登録する(ステッ
プS42)。
【0114】そして、別途定義された再スケジューリン
グ処理を行うことで(ステップS43)、本処理ルーチ
ン全体を終了する。再スケジューリング処理については
後に詳解する。
【0115】図9には、非リアルタイム・タスクを登録
削除するインターフェースにおいて実現される処理手順
をフローチャートの形式で示している。以下、このフロ
ーチャートに従って、非リアルタイム・タスクの登録削
除処理について説明する。
【0116】まず、登録削除する非リアルタイム・タス
クにタスク番号iを付与する(ステップS51)。
【0117】このタスクiがスケジューラ内の実行可能
非リアルタイム・タスクのリストR bに既に登録されて
いる場合には、タスクiを該リストRb中から削除する
(ステップS52)。
【0118】そして、別途定義された再スケジューリン
グ処理を行うことで(ステップS53)、本処理ルーチ
ン全体を終了する。再スケジューリング処理については
後に詳解する。
【0119】図10には、周期リアルタイム・タスクの
登録削除時、起動開始時、非リアルタイムタスクの登録
時、登録削除時の各々の処理ルーチンにおいて行なわれ
る再スケジューリング処理の手順をフローチャートの形
式で示している。以下、このフローチャートを参照しな
がら、タスクの再スケジューリング処理について説明す
る。
【0120】まず、スケジューラ内の実行可能周期リア
ルタイム・タスクのリストRrが空か否かをチェックす
る(ステップS61)。
【0121】リストRrが空でなければ、該リストRr
の先頭の周期リアルタイム・タスクにタスク番号iを付
与して(ステップS64)、タスクiに制御を移し(ス
テップS66)、本処理ルーチン全体を終了する。
【0122】リストRrが空の場合、さらに、スケジュ
ーラ内の実行可能非リアルタイム・タスクのリストRb
が空か否かをチェックする(ステップS62)。
【0123】リストRbが空でなければ、該リストRb
の先頭の非リアルタイム・タスクにタスク番号iを付与
して(ステップS65)、タスクiに制御を移し(ステ
ップS66)、本処理ルーチン全体を終了する。
【0124】スケジューラ内のリストRr及びリストRb
のいずれも空である場合には、現在プロセッサ11が実
行すべきタスクがないことになるので、プロセッサ11
をスリープ状態に移行させ(ステップS63)、次のタ
スクが発生するまでプロセッサ11を待機せしめる。
【0125】なお、ここで言うスリープ状態とは、プロ
セッサ11の活動を低下させて省電力化を図る動作モー
ドのことを指す。但し、スリープ状態の定義については
本発明の要旨とは直接関連しないので、ここでは敢えて
説明しない。
【0126】[追補]以上、特定の実施例を参照しなが
ら、本発明について詳解してきた。しかしながら、本発
明の要旨を逸脱しない範囲で当業者が該実施例の修正や
代用を成し得ることは自明である。
【0127】本明細書で紹介した実施の形態では、周期
リアルタイム・タスクはタイマで起動されるものとした
が、本発明の要旨は必ずしもこれに限定されない。最小
起動間隔が指定の周期を下回らない範囲で、自由な時刻
に周期リアルタイム・タスクを起動するようにしてもよ
い。例えば、ディスプレイ装置を備えた演算処理システ
ムにおいて、垂直帰線期間割り込み信号が発生したとき
に、タスクを起動することが考えられる。また、ネット
ワークからのパケット到着時に周期リアルタイム・タス
クを起動することも可能である。
【0128】要するに、例示という形態で本発明を開示
してきたのであり、限定的に解釈されるべきではない。
本発明の要旨を判断するためには、冒頭に記載した特許
請求の範囲の欄を参酌すべきである。
【0129】
【発明の効果】以上詳記したように、本発明によれば、
異なる周期で動作する1以上のタスクを実行するプロセ
ッサに対して適用することができる、優れた電力削減技
術を提供することができる。
【0130】また、本発明によれば、次の周期の開始ま
でに実行を完了させる必要がある周期リアルタイム・タ
スクとかかる制約のない非リアルタイム・タスクを並行
して実行するタイプのプロセッサに対して適用すること
ができる、優れた電力削減技術を提供することができ
る。
【0131】また、本発明によれば、アプリケーション
のリアルタイム要求に応えつつプロセッサによる電力消
費を削減することができる、優れた電力削減技術を提供
することができる。
【0132】また、本発明によれば、プロセッサの動作
周波数と電源電圧を動的制御により変化させることが可
能なシステムにおいて、起動された各タスクを遅滞なく
処理するために必要な動作周波数を適応的に変化させる
とともに、時々刻々と切り替わる動作周波数に応じて最
適なプロセッサ電源電圧を決定していくことで、プロセ
ッサの消費電力を低減することができる、優れた電力削
減技術を提供することができる。
【0133】また、本発明によれば、プロセッサの動作
周波数や電源電圧の変更頻度を低く抑えながら、プロセ
ッサによる電力消費を削減することができる。
【0134】周期リアルタイム・タスクは次の周期の開
始以前に処理を完了するタスクである。処理を完了すべ
き時間すなわちデッドラインを自由に設定可能なように
システムを拡張することも考えられるが、本発明では敢
えてこのように処理完了時間に制限を課すことによっ
て、タスクの登録や登録削除時に動作周波数を変化させ
るだけで充分に高い電力削減効果を得ることができる。
【0135】したがって、プロセッサの電源電圧や動作
周波数を変化させるために比較的長い時間を要するハー
ドウェアに対しても、本発明を適用することができる。
【0136】例えば、あるタスクiについて、デッドラ
インを次の周期の開始時間よりも前に設定することがシ
ステム構築上どうしても必要になった場合に、タスク起
動タイマの時刻設定を除く、変数piに対するすべての
参照をデッドラインに対する参照へと置き換えるだけで
よい。
【図面の簡単な説明】
【図1】本発明の実施に供される演算処理システム10
のハードウェア構成を模式的に示した図である。
【図2】複数の周期リアルタイム・タスクが異なる周期
で同時に実行されている様子を模式的に示した図であ
る。
【図3】本実施例に係るオぺレーティング・システムの
機能構成を模式的に示したブロック図である。
【図4】周期リアルタイム・タスクを登録するインター
フェースにおいて実現される処理手順を示したフローチ
ャートである。
【図5】周期リアルタイム・タスクを登録解除するイン
ターフェースにおいて実現される処理手順を示したフロ
ーチャートである。
【図6】周期リアルタイム・タスクを起動開始するイン
ターフェースにおいて実現される処理手順を示したフロ
ーチャートである。
【図7】周期リアルタイム・タスクを起動するタイマの
設定時刻に達したときにおける処理手順を示したフロー
チャートである。
【図8】非リアルタイム・タスクを登録するインターフ
ェースにおいて実現される処理手順を示したフローチャ
ートである。
【図9】非リアルタイム・タスクを登録削除するインタ
ーフェースにおいて実現される処理手順を示したフロー
チャートである。
【図10】周期リアルタイム・タスクの登録削除時、起
動開始時、非リアルタイムタスクの登録時、登録削除時
に行う再スケジューリング処理の手順を示したフローチ
ャートである。
【符号の説明】
10…演算処理システム 11…プロセッサ 12…RAM 13…ROM 14…周辺デバイス 15…タイマ 16…システム・バス 17…電源装置 18…電源供給線 19…割り込み要求線 21…プロセッサ用DC/DC変換器 22…プロセッサ・クロック生成器

Claims (23)

    【特許請求の範囲】
  1. 【請求項1】次の周期の開始までに実行を完了させる必
    要がある周期リアルタイム・タスクと実行完了時刻の制
    約がない非リアルタイム・タスクを並行して実行可能な
    プロセッサを含んだ演算処理システムであって、 前記プロセッサの稼動中の各時点において、各周期リア
    ルタイム・タスクに課せられた要求を満たすために充分
    な動作周波数を算出する動作周波数算出手段と、 前記動作周波数算出手段による算出結果に基づく動作周
    波数クロックを前記プロセッサに供給するプロセッサ・
    クロック生成手段と、を具備することを特徴とする演算
    処理システム。
  2. 【請求項2】前記プロセッサの稼動中の各時点におい
    て、与えられたタスクのうちいずれを実行すべきかを選
    択して実行するタスク選択・実行手段をさらに備えるこ
    とを特徴とする請求項1に記載の演算処理システム。
  3. 【請求項3】前記プロセッサの稼動中の各時点におい
    て、実行すべきタスクがなくなったことに応答して、前
    記プロセッサを稼動率が低下したスリープ状態に移行さ
    せるスリープ遷移手段をさらに備えることを特徴とする
    請求項1に記載の演算処理システム。
  4. 【請求項4】前記動作周波数算定手段により算出された
    動作周波数で前記プロセッサを駆動させるために充分な
    電源電圧を算出する電源電圧算出手段と、 前記電源電圧算出手段による算出結果に基づく電源電圧
    を前記プロセッサに供給するプロセッサ電源供給手段
    と、をさらに備えることを特徴とする請求項1に記載の
    演算処理システム。
  5. 【請求項5】各周期リアルタイム・タスクに課せられ
    た、次の周期の開始時間、周期、一周期あたりの処理負
    荷などの情報を、タスク実行前に記録するタスク情報記
    録手段と、 前記タスク情報記録手段により記録された情報を参照し
    て、電源電圧と動作周波数が前記プロセッサの限界を越
    えず、及び/又は、既登録の周期リアルタイム・タスク
    に課せられた要求が満たされるように、新たな周期リア
    ルタイム・タスクの登録を制限するタスク登録制御手段
    と、をさらに備えることを特徴とする請求項1に記載の
    演算処理システム。
  6. 【請求項6】非リアルタイム・タスクが存在しないとき
    に前記動作周波数算出手段によって算出された動作周波
    数が所定の下限値を下回ったことに応答して、前記プロ
    セッサの動作周波数を該下限値に設定する下限値設定手
    段をさらに備えることを特徴とする請求項1に記載の演
    算処理システム。
  7. 【請求項7】非リアルタイム・タスクが存在しないとき
    に前記電源電圧算出手段によって算出された前記プロセ
    ッサの電源電圧が所定の下限値を下回ったことに応答し
    て、前記プロセッサの電源電圧を該下限値に設定する下
    限値設定手段をさらに備えることを特徴とする請求項4
    に記載の演算処理システム。
  8. 【請求項8】1以上のタスクを実行可能なプロセッサを
    含んだ演算処理システムであって、 前記プロセッサが実行する各タスクに課せられた要求を
    満たすために充分な動作周波数を算出する動作周波数手
    段と、 前記動作周波数算出手段による算出結果に基づく動作周
    波数クロックを前記プロセッサに供給するプロセッサ・
    クロック生成手段と、 前記動作周波数算定手段により算出された動作周波数で
    前記プロセッサを駆動させるために充分な電源電圧を算
    出する電源電圧算出手段と、 前記電源電圧算出手段による算出結果に基づく電源電圧
    を前記プロセッサに供給するプロセッサ電源供給手段
    と、を具備することを特徴とする演算処理システム。
  9. 【請求項9】次の周期の開始までに実行を完了させる必
    要がある周期リアルタイム・タスクと実行完了時刻の制
    約がない非リアルタイム・タスクを並行して実行可能な
    プロセッサによる演算処理を制御する演算処理制御方法
    であって、 前記プロセッサの稼動中の各時点において、各周期リア
    ルタイム・タスクに課せられた要求を満たすために充分
    な動作周波数を算出する動作周波数算出ステップと、 前記動作周波数算出ステップによる算出結果に基づく動
    作周波数クロックを前記プロセッサに供給するプロセッ
    サ・クロック生成ステップと、を具備することを特徴と
    する演算処理制御方法。
  10. 【請求項10】前記プロセッサの稼動中の各時点におい
    て、与えられたタスクのうちいずれを実行すべきかを選
    択して実行するタスク選択・実行ステップをさらに備え
    ることを特徴とする請求項9に記載の演算処理制御方
    法。
  11. 【請求項11】前記プロセッサの稼動中の各時点におい
    て、実行すべきタスクがなくなったことに応答して、前
    記プロセッサを稼動率が低下したスリープ状態に移行さ
    せるスリープ遷移ステップをさらに備えることを特徴と
    する請求項9に記載の演算処理制御方法。
  12. 【請求項12】前記動作周波数算定ステップにより算出
    された動作周波数で前記プロセッサを駆動させるために
    充分な電源電圧を算出する電源電圧算出ステップと、 前記電源電圧算出ステップによる算出結果に基づく電源
    電圧を前記プロセッサに供給するプロセッサ電源供給ス
    テップと、をさらに備えることを特徴とする請求項9に
    記載の演算処理制御方法。
  13. 【請求項13】各周期リアルタイム・タスクに課せられ
    た、次の周期の開始時間、周期、一周期あたりの処理負
    荷などの情報を、タスク実行前に記録するタスク情報記
    録ステップと、 前記タスク情報記録ステップにより記録された情報を参
    照して、電源電圧と動作周波数が前記プロセッサの限界
    を越えず、及び/又は、既登録の周期リアルタイム・タ
    スクに課せられた要求が満たされるように、新たな周期
    リアルタイム・タスクの登録を制限するタスク登録制御
    ステップと、をさらに備えることを特徴とする請求項9
    に記載の演算処理制御方法。
  14. 【請求項14】非リアルタイム・タスクが存在しないと
    きに前記動作周波数算出ステップによって算出された動
    作周波数が所定の下限値を下回ったことに応答して、前
    記プロセッサの動作周波数を該下限値に設定する下限値
    設定ステップをさらに備えることを特徴とする請求項9
    に記載の演算処理制御方法。
  15. 【請求項15】非リアルタイム・タスクが存在しないと
    きに前記電源電圧算出ステップによって算出された前記
    プロセッサの電源電圧が所定の下限値を下回ったことに
    応答して、前記プロセッサの電源電圧を該下限値に設定
    する下限値設定ステップをさらに備えることを特徴とす
    る請求項12に記載の演算処理制御方法。
  16. 【請求項16】1以上のタスクを実行可能なプロセッサ
    による演算処理を制御する演算処理制御方法であって、 前記プロセッサが実行する各タスクに課せられた要求を
    満たすために充分な動作周波数を算出する動作周波数ス
    テップと、 前記動作周波数算出ステップによる算出結果に基づく動
    作周波数クロックを前記プロセッサに供給するプロセッ
    サ・クロック生成ステップと、 前記動作周波数算定ステップにより算出された動作周波
    数で前記プロセッサを駆動させるために充分な電源電圧
    を算出する電源電圧算出ステップと、 前記電源電圧算出ステップによる算出結果に基づく電源
    電圧を前記プロセッサに供給するプロセッサ電源供給ス
    テップと、を具備することを特徴とする演算処理制御方
    法。
  17. 【請求項17】次の周期の開始までに実行を完了させる
    必要がある周期リアルタイム・タスクと実行完了時間の
    制約がない非リアルタイム・タスクを並行して実行可能
    なプロセッサのためのタスク管理システムであって、 各周期リアルタイム・タスクに課せられた、次の周期の
    開始時間、周期、一周期あたりの処理負荷などの情報
    を、タスク実行前に記録するタスク情報記録手段と、 前記プロセッサに課された処理負荷に応じて前記プロセ
    ッサの電源電圧と動作周波数を設定する動作設定手段
    と、 前記タスク情報記録手段により記録された情報を参照し
    て、電源電圧と動作周波数が前記プロセッサの限界を越
    えず、及び/又は、既登録の周期リアルタイム・タスク
    に課せられた要求が満たされるように、新たな周期リア
    ルタイム・タスクの登録を制限するタスク登録制御手段
    と、を具備することを特徴とするタスク管理システム。
  18. 【請求項18】非リアルタイム・タスクが存在しないと
    きに前記動作設定手段によって算出された動作周波数及
    び/又は電源電圧が所定の下限値を下回ったことに応答
    して、前記プロセッサの動作周波数及び/又は電源電圧
    を該下限値に設定する下限値設定手段をさらに備えるこ
    とを特徴とする請求項17に記載のタスク管理システ
    ム。
  19. 【請求項19】次の周期の開始までに実行を完了させる
    必要がある周期リアルタイム・タスクと実行完了時間の
    制約がない非リアルタイム・タスクを並行して実行可能
    なプロセッサのためのタスク管理方法であって、 各周期リアルタイム・タスクに課せられた、次の周期の
    開始時間、周期、一周期あたりの処理負荷などの情報
    を、タスク実行前に記録するタスク情報記録ステップ
    と、 前記プロセッサに課された処理負荷に応じて前記プロセ
    ッサの電源電圧と動作周波数を設定する動作設定ステッ
    プと、 前記タスク情報記録ステップにより記録された情報を参
    照して、電源電圧と動作周波数が前記プロセッサの限界
    を越えず、及び/又は、既登録の周期リアルタイム・タ
    スクに課せられた要求が満たされるように、新たな周期
    リアルタイム・タスクの登録を制限するタスク登録制御
    ステップと、を具備することを特徴とするタスク管理方
    法。
  20. 【請求項20】非リアルタイム・タスクが存在しないと
    きに前記動作設定ステップによって算出された動作周波
    数及び/又は電源電圧が所定の下限値を下回ったことに
    応答して、前記プロセッサの動作周波数及び/又は電源
    電圧を該下限値に設定する下限値設定ステップをさらに
    備えることを特徴とする請求項19に記載のタスク管理
    方法。
  21. 【請求項21】次の周期の開始までに実行を完了させる
    必要がある周期リアルタイム・タスクと実行完了時刻の
    制約がない非リアルタイム・タスクを並行して実行可能
    なプロセッサによる演算処理の制御をコンピュータ・シ
    ステム上で実行するように記述されたコンピュータ・ソ
    フトウェアをコンピュータ可読形式で物理的に格納した
    記憶媒体であって、前記コンピュータ・ソフトウェア
    は、 前記プロセッサの稼動中の各時点において、各周期リア
    ルタイム・タスクに課せられた要求を満たすために充分
    な動作周波数を算出する動作周波数算出ステップと、 前記動作周波数算出ステップによる算出結果に基づく動
    作周波数クロックを前記プロセッサに供給するプロセッ
    サ・クロック生成ステップと、を具備することを特徴と
    する記憶媒体。
  22. 【請求項22】1以上のタスクを実行可能なプロセッサ
    による演算処理の制御をコンピュータ・システム上で実
    行するように記述されたコンピュータ・ソフトウェアを
    コンピュータ可読形式で物理的に格納した記憶媒体であ
    って、前記コンピュータ・ソフトウェアは、 前記プロセッサが実行する各タスクに課せられた要求を
    満たすために充分な動作周波数を算出する動作周波数ス
    テップと、 前記動作周波数算出ステップによる算出結果に基づく動
    作周波数クロックを前記プロセッサに供給するプロセッ
    サ・クロック生成ステップと、 前記動作周波数算定ステップにより算出された動作周波
    数で前記プロセッサを駆動させるために充分な電源電圧
    を算出する電源電圧算出ステップと、 前記電源電圧算出ステップによる算出結果に基づく電源
    電圧を前記プロセッサに供給するプロセッサ電源供給ス
    テップと、を具備することを特徴とする記憶媒体。
  23. 【請求項23】次の周期の開始までに実行を完了させる
    必要がある周期リアルタイム・タスクと実行完了時間の
    制約がない非リアルタイム・タスクを並行して実行可能
    なプロセッサのためのタスク管理をコンピュータ・シス
    テム上で実行するように記述されたコンピュータ・ソフ
    トウェアをコンピュータ可読形式で物理的に格納した記
    憶媒体であって、前記コンピュータ・ソフトウェアは、 各周期リアルタイム・タスクに課せられた、次の周期の
    開始時間、周期、一周期あたりの処理負荷などの情報
    を、タスク実行前に記録するタスク情報記録ステップ
    と、 前記プロセッサに課された処理負荷に応じて前記プロセ
    ッサの電源電圧と動作周波数を設定する動作設定ステッ
    プと、 前記タスク情報記録ステップにより記録された情報を参
    照して、電源電圧と動作周波数が前記プロセッサの限界
    を越えず、及び/又は、既登録の周期リアルタイム・タ
    スクに課せられた要求が満たされるように、新たな周期
    リアルタイム・タスクの登録を制限するタスク登録制御
    ステップと、を具備することを特徴とする記憶媒体。
JP2000287882A 2000-09-22 2000-09-22 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体 Pending JP2002099432A (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2000287882A JP2002099432A (ja) 2000-09-22 2000-09-22 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体
PCT/JP2001/008254 WO2002025439A1 (fr) 2000-09-22 2001-09-21 Systeme et methode de commande de traitement arithmetique, systeme et methode de gestion des taches, et support de stockage
EP01967792A EP1321855A4 (en) 2000-09-22 2001-09-21 ARITHMETIC PROCESSING SYSTEM AND CONTROL METHOD FOR ARITHMETIC PROCESSING, TASK MANAGEMENT SYSTEM AND TASK MANAGEMENT METHOD AND STORAGE MEDIUM
CNB018032443A CN1288556C (zh) 2000-09-22 2001-09-21 运算处理系统和控制方法,任务管理系统和方法
KR1020027006501A KR100864964B1 (ko) 2000-09-22 2001-09-21 연산처리시스템 및 연산처리 제어방법, 업무관리시스템 및업무관리방법과 기억매체
US10/130,566 US6986068B2 (en) 2000-09-22 2001-09-21 Arithmetic processing system and arithmetic processing control method, task management system and task management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000287882A JP2002099432A (ja) 2000-09-22 2000-09-22 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体

Publications (1)

Publication Number Publication Date
JP2002099432A true JP2002099432A (ja) 2002-04-05

Family

ID=18771557

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000287882A Pending JP2002099432A (ja) 2000-09-22 2000-09-22 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体

Country Status (6)

Country Link
US (1) US6986068B2 (ja)
EP (1) EP1321855A4 (ja)
JP (1) JP2002099432A (ja)
KR (1) KR100864964B1 (ja)
CN (1) CN1288556C (ja)
WO (1) WO2002025439A1 (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100365543C (zh) * 2006-03-10 2008-01-30 浙江大学 内核动态调节处理器频率的节能方法
JP2008104153A (ja) * 2006-08-29 2008-05-01 Nvidia Corp ビデオ復号時に動的周波数調整する方法及び装置
US7418358B2 (en) 2004-01-26 2008-08-26 Kabushiki Kaisha Toshiba Dynamic voltage controller
JP2011018352A (ja) * 2004-02-06 2011-01-27 Intel Corp 同時マルチスレッディングプロセッサを用いてバッファ型アプリケーションのエネルギー消費を低減する方法
WO2012017545A1 (ja) * 2010-08-05 2012-02-09 富士通株式会社 制御プログラム、制御装置、および制御方法
US8190935B2 (en) 2008-10-14 2012-05-29 Fujitsu Toshiba Mobile Communications Limited Information processing apparatus and method of controlling operating frequency of an information processing apparatus
JP2013131081A (ja) * 2011-12-21 2013-07-04 Fujitsu Ltd 情報処理装置の制御プログラム、制御方法及び情報処理装置
WO2014061141A1 (ja) * 2012-10-18 2014-04-24 トヨタ自動車株式会社 並列計算装置
JP2015069521A (ja) * 2013-09-30 2015-04-13 ルネサスエレクトロニクス株式会社 データ処理装置
JP2017076414A (ja) * 2005-09-28 2017-04-20 インテル コーポレイション 多コア・プロセッサによる信頼できるコンピューティング
JP2020537269A (ja) * 2017-10-10 2020-12-17 クロノ−セーフ リアルタイムタスク間の低レイテンシ通信を保証する順序付け計画を実行するための方法

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7941675B2 (en) 2002-12-31 2011-05-10 Burr James B Adaptive power control
US7180322B1 (en) 2002-04-16 2007-02-20 Transmeta Corporation Closed loop feedback control of integrated circuits
US8032891B2 (en) * 2002-05-20 2011-10-04 Texas Instruments Incorporated Energy-aware scheduling of application execution
US7076781B2 (en) * 2002-05-31 2006-07-11 International Business Machines Corporation Resource reservation for large-scale job scheduling
TWI324309B (en) * 2002-08-26 2010-05-01 Interdigital Tech Corp Communication circuit
US7953990B2 (en) 2002-12-31 2011-05-31 Stewart Thomas E Adaptive power control based on post package characterization of integrated circuits
US7228242B2 (en) 2002-12-31 2007-06-05 Transmeta Corporation Adaptive power control based on pre package characterization of integrated circuits
EP2431839B1 (en) * 2003-03-18 2015-09-23 Panasonic Intellectual Property Management Co., Ltd. Processor, driving method thereof, and information processing device
JP4033066B2 (ja) * 2003-05-07 2008-01-16 ソニー株式会社 周波数制御装置、情報処理装置、周波数制御方法及びプログラム
GB2403823B (en) * 2003-07-08 2005-09-21 Toshiba Res Europ Ltd Controller for processing apparatus
JP4025260B2 (ja) * 2003-08-14 2007-12-19 株式会社東芝 スケジューリング方法および情報処理システム
CN1294472C (zh) * 2003-12-16 2007-01-10 宏碁股份有限公司 以窗口为根据的电源管理方法及使用该方法的移动装置
US7692477B1 (en) 2003-12-23 2010-04-06 Tien-Min Chen Precise control component for a substrate potential regulation circuit
US7649402B1 (en) 2003-12-23 2010-01-19 Tien-Min Chen Feedback-controlled body-bias voltage source
US7012461B1 (en) 2003-12-23 2006-03-14 Transmeta Corporation Stabilization component for a substrate potential regulation circuit
US7129771B1 (en) 2003-12-23 2006-10-31 Transmeta Corporation Servo loop for well bias voltage source
CN100361040C (zh) * 2004-02-24 2008-01-09 中国科学院计算技术研究所 一种soc架构下的处理器核动态变频装置和方法
JP2005301812A (ja) * 2004-04-14 2005-10-27 Hitachi Ltd デジタル制御装置およびこれを用いたエンジン制御装置
JPWO2005106623A1 (ja) * 2004-04-28 2008-03-21 松下電器産業株式会社 Cpuクロック制御装置、cpuクロック制御方法、cpuクロック制御プログラム、記録媒体、及び伝送媒体
JP3862715B2 (ja) * 2004-06-01 2006-12-27 株式会社ソニー・コンピュータエンタテインメント タスク管理方法、タスク管理装置、半導体集積回路、電子装置、およびタスク管理システム
US7774625B1 (en) * 2004-06-22 2010-08-10 Eric Chien-Li Sheng Adaptive voltage control by accessing information stored within and specific to a microprocessor
US7562233B1 (en) 2004-06-22 2009-07-14 Transmeta Corporation Adaptive control of operating and body bias voltages
KR100598011B1 (ko) * 2004-06-29 2006-07-06 삼성전자주식회사 클럭 사용 회로 및 클럭 신호 발생 방법
JP4208783B2 (ja) * 2004-07-28 2009-01-14 キヤノン株式会社 画像処理装置および設定時刻調整方法およびプログラム
EP1820083A1 (en) * 2004-11-10 2007-08-22 Freescale Semiconductor, Inc. Apparatus and method for controlling voltage and frequency using multiple reference circuits
US7694080B2 (en) * 2004-12-29 2010-04-06 Intel Corporation Method and apparatus for providing a low power mode for a processor while maintaining snoop throughput
CN100371859C (zh) * 2005-06-23 2008-02-27 英特维数位科技股份有限公司 于播放视讯资料时调整处理器工作频率的方法
US8032889B2 (en) 2006-04-05 2011-10-04 Maxwell Technologies, Inc. Methods and apparatus for managing and controlling power consumption and heat generation in computer systems
US8694999B2 (en) * 2006-12-07 2014-04-08 Wind River Systems, Inc. Cooperative scheduling of multiple partitions in a single time window
TWI326818B (en) * 2006-12-15 2010-07-01 Inst Information Industry Dynamic voltage scheduling method, system thereof and record medium
WO2008075137A1 (en) * 2006-12-21 2008-06-26 Nokia Corporation Data processing apparatus
KR100951671B1 (ko) * 2008-02-14 2010-04-07 사단법인 한국전자정보통신산업진흥회 멀티미디어 ic칩의 전력제어 장치 및 방법
KR100950874B1 (ko) * 2008-03-06 2010-04-06 주식회사 텔레칩스 동적 전압 제어 시스템 및 그 제어 방법
CN101893927B (zh) * 2009-05-22 2012-12-19 中兴通讯股份有限公司 手持设备功耗管理方法
US8984523B2 (en) * 2009-05-26 2015-03-17 Telefonaktiebolaget L M Ericsson (Publ) Method for executing sequential code on the scalable processor at increased frequency while switching off the non-scalable processor core of a multicore chip
US8677361B2 (en) 2010-09-30 2014-03-18 International Business Machines Corporation Scheduling threads based on an actual power consumption and a predicted new power consumption
US8656408B2 (en) * 2010-09-30 2014-02-18 International Business Machines Corporations Scheduling threads in a processor based on instruction type power consumption
RU2577465C2 (ru) 2010-10-28 2016-03-20 Мэксвел Текнолоджиз, Инк. Система, способ и устройство для коррекции ошибки в мультипроцессорных системах
CN102541642B (zh) * 2011-12-30 2013-12-18 中国科学院软件研究所 一种增强实时性能的任务管理方法
DE102012112363A1 (de) * 2012-01-30 2013-08-01 Samsung Electronics Co., Ltd. Verfahren zum Verbreiten einer Mehrzahl von Interrupts, Interrupt-Anforderungssignal-Verbreitungsschaltungen und Ein-Chip-Systeme, welche dieselben aufweisen
US8869148B2 (en) * 2012-09-21 2014-10-21 International Business Machines Corporation Concurrency identification for processing of multistage workflows
CN104854535A (zh) * 2012-10-16 2015-08-19 雷蛇(亚太)私人有限公司 计算系统及用于控制计算系统的方法
US9152451B2 (en) * 2013-01-03 2015-10-06 GM Global Technology Operations LLC Method of distributing processor loading between real-time processor threads
CN104981744B (zh) * 2013-02-21 2017-06-06 丰田自动车株式会社 控制装置的设计方法以及控制装置
US9292344B2 (en) * 2013-04-19 2016-03-22 Cubic Corporation Reservation scheduler for real-time operating systems in wireless sensor networks
CN103345426B (zh) * 2013-06-26 2016-05-11 中国航天科技集团公司第九研究院第七七一研究所 一种非实时操作系统的并发过程处理方法
JP6633830B2 (ja) * 2014-02-24 2020-01-22 ジーエヌ ヒアリング エー/エスGN Hearing A/S リソース・マネージャ
US10928882B2 (en) 2014-10-16 2021-02-23 Futurewei Technologies, Inc. Low cost, low power high performance SMP/ASMP multiple-processor system
US10248180B2 (en) 2014-10-16 2019-04-02 Futurewei Technologies, Inc. Fast SMP/ASMP mode-switching hardware apparatus for a low-cost low-power high performance multiple processor system
CN104834564B (zh) * 2015-05-20 2018-12-14 百度在线网络技术(北京)有限公司 任务调度的方法和装置
EP3144927B1 (en) * 2015-09-15 2020-11-18 Harman Becker Automotive Systems GmbH Wireless noise and vibration sensing
TWI584667B (zh) * 2015-11-27 2017-05-21 財團法人工業技術研究院 多請求的排程方法及排程裝置
US10019292B2 (en) * 2015-12-02 2018-07-10 Fts Computertechnik Gmbh Method for executing a comprehensive real-time computer application by exchanging time-triggered messages among real-time software components
CN109933487A (zh) * 2017-12-19 2019-06-25 深圳光启合众科技有限公司 智能机器人的监测方法和装置
JP2019192110A (ja) * 2018-04-27 2019-10-31 ルネサスエレクトロニクス株式会社 半導体装置およびプロセッサ制御方法
CN108845873A (zh) * 2018-06-22 2018-11-20 复旦大学 一种低功耗的自适应流水线并行方法
US11900146B2 (en) * 2021-08-31 2024-02-13 Apple Inc. Memory controller with separate transaction table for real time transactions
CN114138095B (zh) * 2022-01-29 2022-05-10 阿里巴巴(中国)有限公司 互联网数据中心idc的功耗处理方法、设备和可读介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62150416A (ja) * 1985-12-24 1987-07-04 Nec Corp 低消費電力状態への移行方式
US5640563A (en) * 1992-01-31 1997-06-17 International Business Machines Corporation Multi-media computer operating system and method
US5812860A (en) * 1996-02-12 1998-09-22 Intel Corporation Method and apparatus providing multiple voltages and frequencies selectable based on real time criteria to control power consumption
CN1159021A (zh) * 1996-03-06 1997-09-10 三菱电机株式会社 系统时钟确定装置
JPH09270690A (ja) * 1996-03-29 1997-10-14 Toshiba Microelectron Corp 駆動電圧制御回路
JPH10171667A (ja) * 1996-12-13 1998-06-26 Chokosoku Network Computer Gijutsu Kenkyusho:Kk タスク管理方法
JPH11194849A (ja) * 1997-12-26 1999-07-21 Nec Corp データ処理方法および装置、情報記憶媒体
US6141762A (en) * 1998-08-03 2000-10-31 Nicol; Christopher J. Power reduction in a multiprocessor digital signal processor based on processor load
JP2000122747A (ja) * 1998-10-12 2000-04-28 Nec Corp ディジタル信号演算処理部の制御装置および方法
US6425086B1 (en) * 1999-04-30 2002-07-23 Intel Corporation Method and apparatus for dynamic power control of a low power processor

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7418358B2 (en) 2004-01-26 2008-08-26 Kabushiki Kaisha Toshiba Dynamic voltage controller
JP2011018352A (ja) * 2004-02-06 2011-01-27 Intel Corp 同時マルチスレッディングプロセッサを用いてバッファ型アプリケーションのエネルギー消費を低減する方法
US9323571B2 (en) 2004-02-06 2016-04-26 Intel Corporation Methods for reducing energy consumption of buffered applications using simultaneous multi-threading processor
JP2017076414A (ja) * 2005-09-28 2017-04-20 インテル コーポレイション 多コア・プロセッサによる信頼できるコンピューティング
CN100365543C (zh) * 2006-03-10 2008-01-30 浙江大学 内核动态调节处理器频率的节能方法
TWI448161B (zh) * 2006-08-29 2014-08-01 Nvidia Corp 於視訊解碼時動態頻率調整之方法、系統、與時鐘頻率控制器
JP2008104153A (ja) * 2006-08-29 2008-05-01 Nvidia Corp ビデオ復号時に動的周波数調整する方法及び装置
JP2012075145A (ja) * 2006-08-29 2012-04-12 Nvidia Corp ビデオ復号時に動的周波数調整する方法及び装置
TWI413418B (zh) * 2006-08-29 2013-10-21 Nvidia Corp 於視訊解碼時動態頻率調整之方法、系統、與時鐘頻率控制器
US8190935B2 (en) 2008-10-14 2012-05-29 Fujitsu Toshiba Mobile Communications Limited Information processing apparatus and method of controlling operating frequency of an information processing apparatus
WO2012017545A1 (ja) * 2010-08-05 2012-02-09 富士通株式会社 制御プログラム、制御装置、および制御方法
US9189359B2 (en) 2010-08-05 2015-11-17 Fujitsu Limited Computer product, control apparatus, and control method
JP2013131081A (ja) * 2011-12-21 2013-07-04 Fujitsu Ltd 情報処理装置の制御プログラム、制御方法及び情報処理装置
CN104718531A (zh) * 2012-10-18 2015-06-17 丰田自动车株式会社 并行计算装置
WO2014061141A1 (ja) * 2012-10-18 2014-04-24 トヨタ自動車株式会社 並列計算装置
JPWO2014061141A1 (ja) * 2012-10-18 2016-09-05 トヨタ自動車株式会社 並列計算装置
JP2015069521A (ja) * 2013-09-30 2015-04-13 ルネサスエレクトロニクス株式会社 データ処理装置
JP2020537269A (ja) * 2017-10-10 2020-12-17 クロノ−セーフ リアルタイムタスク間の低レイテンシ通信を保証する順序付け計画を実行するための方法
JP7266590B2 (ja) 2017-10-10 2023-04-28 クロノ-セーフ リアルタイムタスク間の低レイテンシ通信を保証する順序付け計画を実行するための方法

Also Published As

Publication number Publication date
KR100864964B1 (ko) 2008-10-22
CN1394308A (zh) 2003-01-29
CN1288556C (zh) 2006-12-06
US6986068B2 (en) 2006-01-10
EP1321855A4 (en) 2008-04-09
KR20020087388A (ko) 2002-11-22
WO2002025439A1 (fr) 2002-03-28
US20030115239A1 (en) 2003-06-19
EP1321855A1 (en) 2003-06-25

Similar Documents

Publication Publication Date Title
JP2002099432A (ja) 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体
JP2002099433A (ja) 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体
US7137117B2 (en) Dynamically variable idle time thread scheduling
US7849463B2 (en) Dynamically variable idle time thread scheduling
US9329671B2 (en) Power-efficient inter processor communication scheduling
JP4490298B2 (ja) プロセッサ電力制御装置及びプロセッサ電力制御方法
US7921281B2 (en) Processor and program execution method capable of efficient program execution
JP4370336B2 (ja) 低消費電力ジョブ管理方法及び計算機システム
JP4123640B2 (ja) 情報処理システム及びその制御方法、タスク割当て制御方法及び制御装置、並びにプログラム提供媒体
US5828568A (en) Information processing apparatus, processing method thereof, and power supply control method therefor
EP2434370A2 (en) Methods and systems for power management in a data processing system
WO2005106623A1 (ja) Cpuクロック制御装置、cpuクロック制御方法、cpuクロック制御プログラム、記録媒体、及び伝送媒体
JP2001318742A (ja) コンピュータシステムおよびコンピュータ読み取り可能な記録媒体
JP2008257578A (ja) 情報処理装置、スケジューラおよび情報処理置のスケジュール制御方法
JPH0969017A (ja) コンピュータ・システムの電力管理方法及び装置
JP2010152738A (ja) リソース管理装置、リソース管理プログラム、およびリソース管理方法
CN111625080B (zh) 一种服务器节能方法、装置及电子设备和存储介质
JP2004078322A (ja) タスク管理システム、プログラム、記録媒体、及び制御方法
JP2002304232A (ja) 演算処理システム及び演算処理制御方法、並びに記憶媒体
JP3093928B2 (ja) 情報処理方法とその装置
WO2016058149A1 (zh) 一种预测处理器利用率的方法、处理装置和终端设备
JP2001282560A (ja) 仮想計算機制御方法及びその実施装置並びにその処理プログラムを記録した記録媒体
JP3123714B2 (ja) タスクスケジューリング方法及び記録媒体
US9201707B2 (en) Distributed system, device, method, and program
JP2019109600A (ja) 情報処理装置、計算機制御方法、および計算機制御プログラム