JP2000259429A - タイマー管理装置および方法 - Google Patents

タイマー管理装置および方法

Info

Publication number
JP2000259429A
JP2000259429A JP11065502A JP6550299A JP2000259429A JP 2000259429 A JP2000259429 A JP 2000259429A JP 11065502 A JP11065502 A JP 11065502A JP 6550299 A JP6550299 A JP 6550299A JP 2000259429 A JP2000259429 A JP 2000259429A
Authority
JP
Japan
Prior art keywords
timer
queue
time
timer queue
event
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
JP11065502A
Other languages
English (en)
Inventor
Atsushi Kamoki
厚志 鴨木
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP11065502A priority Critical patent/JP2000259429A/ja
Publication of JP2000259429A publication Critical patent/JP2000259429A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Electric Clocks (AREA)

Abstract

(57)【要約】 【課題】 一つのタイマー装置で複数の異なるシステム
動作を実現し、タイマ割込みの回数を減らしてシステム
の消費電流を減らすことができるタイマ管理装置および
方法を提供する。 【解決手段】 複数システムのタイマイベントを一元的
に管理することにより、一つのタイマー装置で複数の異
なるシステム動作を実現する。周期タイマイベントをワ
ンショット型タイマイベントと同様に扱うことにより、
両タイマイベントの管理を一元化する。時間的位相差が
ある場合であってもタイマイベントの同時発生を行わせ
ることにより、タイマ割込みの回数を減らすことができ
る。長時間タイマイベントを周期起動タイマイベント化
することにより、長時間タイマイベントを扱うことがで
きる。さらにタイマ値の精度を利用することにより、時
間的にごく近傍のタイマイベントを統合することができ
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、タイマー管理装置
および方法、特に通信、計測・制御システムなどにおい
て、1つのタイマによって複数の異なるシステムのタイ
マ制御を行ってタイマ資源を効率的に使用するタイマ管
理装置および方法に関する。
【0002】
【従来の技術】従来、通信、計測・制御等でスケジュー
リングなどのシステム制御を行う場合、またはリアルタ
イムオペレーティングシステム(OS)でタスク管理を行
う場合等において使用されていたタイマ管理方法には、
主として3つの方法があった。以下この3つの方法を順
に説明する。
【0003】(1)イベントタイマー管理テーブルを使
う方法。 1つのシステムは、機能により分割された複数の処理単
位(タスク)から構成されており、1つのタスクは複数
の動作状態を有している。
【0004】図17は、タスクの状態遷移を示す。図1
7に示されるように、1つのタスクは複数の動作状態を
持っており、この動作状態には実行状態(RUN)17
00、実行待ち状態(READY)1710、休眠状態
(WAIT)1720の3つの状態がある。各タスクは
その動作状況に応じて、実行状態1700と休眠状態と
の間(1725、1735)、休眠状態1720と実行
待ち状態1710との間(1745、1755)および
実行待ち状態1710と実行状態との間(1715、1
705)で、その動作状態を変化(遷移)させる。サブ
システムにおいて、実行状態(RUN)1700のタス
ク数は必ず1である。割込み等のイベントが発生する
と、実行状態1700または実行待ち状態1710にあ
る複数のタスクの内、最も優先順位の高いタスクがOS
によって選択(ディスパッチ)されて実行状態へ遷移等
する(1715)。実行状態1700のタスクは、ディ
スパッチされずに実行権を他のタスクに奪われた場合ま
たは自らイベント待ちをしたい場合等には、休眠状態1
720に遷移する。休眠状態1720のタスクは、イベ
ントの発生または実行状態にあるタスクからの起床指示
を受けた場合に実行待ち状態または実行状態へ遷移する
(1745、1735)。
【0005】上述のタスクに関する識別情報等を管理す
る従来の方法を以下に説明する。図18はタスクをタイ
マ使用者と考えた場合の、従来のリアルタイムOSにお
けるタイマイベントのタイマー管理テーブルを示す。図
18(A)において、タイマ管理テーブル1850の中の
タイマ使用者(タスク)の識別情報1800には、タス
クID(タスク番号)、タスクの実行優先順位、タスク
毎のスタックポインタ等が記録されている。タイマ値1
810は、動作中のタイマの残動作時間を表している。
タイマ値1810が0より大きいタスクはタイマイベン
ト待ちであり、タスクの動作状態1820は休眠状態
(WAIT)である。タイマ値1810が0より大きいタス
クがCPUの実行権を獲得することはない。タイマ値1
810が0のタスクの動作状態1820は、実行状態
(RUN)1700または実行待ち状態(READY)17
10である。タスクは、システムコールを発して休眠状
態1720に入るが、1つのタスクが同時に2つ以上の
タイマイベントを待って休眠状態1720に入ることは
無いものとする。すなわちタスクが休眠状態1720か
ら脱するように起動をかけるタイマイベントは1つのみ
であり、したがって、タイマイベントはタスク毎に1つ
存在するものとする。タイマイベント(タイマ割込み)
は一定時間毎に発生するものとする。この一定時間と
は、多くのOSの場合約10ms程度である。タイマイ
ベントを発行し登録した発行元タスクまたはタイマイベ
ントが発生した時にその通知を受ける通知先タスクへ、
タイマイベントの発生を何らかの信号により通知する機
能があるOSの場合、タスクはタイマイベントの発生を
待って休眠状態1720へ遷移する必要はない。このよ
うなOSの場合、タスクは休眠状態1720へ遷移せず
に複数のタイマイベントの発生を同時に待つことができ
る。一般的にはタイマイベントの発生(以下、「タイム
アップ」という)の通知はメールボックスで行われる。
複数のタイマイベントの発生を待つ例としては、1つ目
のタイマイベントの発生により装置の電源をオンにし、
2つ目のタイマイベントの発生により装置の電源をオフ
にする場合、または1つ目のタイマイベントAが発生す
る前にある処理を終了できれば正常終了としてタイマイ
ベントAを削除するが、タイマイベントAが発生してしま
うと異常であるとして停止処理を開始し、2つ目のタイ
マイベントBが発生してしまうと停止処理も失敗したも
のとして緊急停止させる等がある。
【0006】図18(B)は、上述のようにタスクが複数
のタイマイベントの発生を待つ場合のタイマ管理テーブ
ルを示す。図18(B)に示されるように、タイマ管理テ
ーブル1800はセル1830ないしセル1835をキ
ュー状に接続した構造(以下「タイマキュー」という)
となり、図18(A)のタイマ値1810(図18(B)の
符号1825)の部分にタイナキューへの先頭アドレス
(ポインタ)が置かれている。このように実際のタイマ
はタイマキューに接続されている。
【0007】図19は、従来のタイマ割込み処理を説明
するためのシステム1(1900)およびシステム2
(1910)の2つのサブシステムから構成されるシス
テムの例を示し、図20は従来のタイマ割込み処理のフ
ローチャートを示す。以下では図19および図20を用
いて従来のタイマ割込みの処理を説明する。図19に示
されるように、タイマ管理テーブル1920には各シス
テム1900、1910毎にタイマー使用者(タスク)
の識別情報(タスクID)1800およびタイマー値1
810等が記録されている。各システム1900、19
10は、タイマ管理テーブル1920へタイマイベント
登録1905を行い、各システム1900、1910へ
タイムアップ1915が通知される。タイマー装置19
30からの割込み1925(通常は10ms程度の周期
的割り込み)によって、タイマーテーブル1920のタ
イマ値1810が処理される。タイマ割り込み1925
が発生すると、タイマ値1810が0より大きいすべて
のタスクのタイマ値1810を1つ減らす(デクリメン
トする)。初めからタイマ値1810がゼロのタスクに
対しては何もしない。この処理は、登録されている全タ
スクについて行われる(図20のステップS202ない
しS208)。タイマ割込1925の処理において、タ
イマー値1810を1だけデクリメントして0になった
タスク、すなわちタイマち1810が1→0に変化した
タスクに対し、タスクの状態をタイマイベント待ち状態
(WAIT)1720から実行待ち状態(READY)
1710に遷移させる(ステップS208、S20
9)。タイマ割り込み1925において、タイマ値18
10のデクリメント処理(ステップS206)がすべて
終了と判断されると(ステップS202)、リアルタイ
ムOS等のディスパッチ処理へ戻る(ステップS20
3)。ディスパッチ処理ではOSの処理の一部として、
タイマ割り込み1925の処理を完了した時点で最も実
行優先順位の高いタスクにCPUの実行権をわたす。具
体的には、タイマ使用者(タスク)の識別情報1800
の中のスタックポインタ情報(タスクのコンテキスト
(context:実行文脈))を復元して、すなわちCPUの
スタックポインタレジスタに設定して、最も実行優先順
位の高いタスクに実行を移す。
【0008】図20を用いて上述のタスク割り込み処理
をより詳細に説明する。タイマーイベント(タイマー割
込)が発生するとタイマーテーブル1850または19
20の先頭から以下の動作を行う。初期設定(ステップ
S200)および全タイマイベントの終了判断(ステッ
プS202)後、タイマーが使用中かどうか判定する
(ステップS204)。タイマーが使用中の場合とは、
タイマーテーブル11850等におけるタイマー値18
10が1以上の場合である。タイマーが使用中の場合
は、タイマー値1810をマイナス1する(ステップS
206)。タイマー値1810が0になった場合はタイ
ムアップ処理を行う(ステップS208、S209)。
タイムアップ処理S209は上述のようにタイマイベン
トを登録したタスクヘタイマイベントの発生を通知する
処理である。タイマイベントの通知方式としては上述の
ようにメールボックスを用いたり、タイマテーブル18
50等の中にイベントフラグを立ててOSに処理させた
りする方法等がある。全タイマイベントの処理が終了す
るとOSのディスパッチャにジャンプする。
【0009】上述のように、従来の方法においても1個
のタイマーにより複数のタスクを管理することは可能で
ある。しかし、従来の方法では複数のサブシステムから
なるシステムに対しては、タイマテーブル1920上に
複数のサブシステムが混在することになり、複数のシス
テム間の管理方法が非常に複雑なものとなるという問題
があった。すなわち、一つのタイマ管理テーブル中に異
なるシステムが混在することになり、あるシステムの運
転状態が別の他のシステムのタイマの管理に影響を与え
ることがあった。さらにある1つのシステムが実行を中
断した楊台、中断したシステムも稼働中のシステムも同
一のタイマテーブル1920上に混在することになって
しまうこととなる。動作を中断しているシステムのタイ
マをタイムアップさせることはできないため、タイマテ
ーブル1920におけるデクリメント処理S206は稼
働中のシステムのタスクに対してだけ行い、停止中また
は中断中のシステムに対応するタイマテーブル1920
は変化させないという処理を行わなければならない。こ
のように従来の方法においては、タイマ割込みを複数の
システム毎に別々に用意していたため、複数のシステム
間の管理方法が非常に複雑なものとなるという問題があ
った。
【0010】(2)タイマキュー(差分タイマキュー)
を使用する方法。 図21は従来使用されている差分タイマキューのデータ
構造を示す。図21に示されるように、各システムのタ
イマイベント1(2118)等、タイマイベント1(2
118)等の発生時間間隔のタイマ値2016等および
次のシステムのタイマイベントへのポインタ(チェーン
情報)2114等を1つのセル2110等として、キュ
ー構造体(タイマキュー)2100を形成している。例
えば、セル2110はシステム1のセルであり、次にシ
ステム2のセル2120が接続されている。先頭セル2
110は先頭キュー2102に接続されており、空きキ
ュー2104には空きセル(不図示)の先頭セルが接続
されている。
【0011】図22はタイマキュー2100の設定方法
を通して差分タイマの動作を示す。図22において、横
軸は時間軸であり、全イベント発生時間の基準時間を時
間軸上で0とする。縦軸は4つの時間待ちタイマイベン
ト(70ms、100ms、150ms、200ms)
を示す。これらの4つのタイマイベントは同時に動作を
開始させたものとする。ハードウェアの時間計測単位
(時間分解能)は、10msとする。図22のい示され
る4つのタイマイベント1ないし4は、設定時間の小さ
いものから順にタイムアップする。例えば、タイマイベ
ント1の70msタイマイベントよりタイマイベント4
の200msタイマイベントが先にタイムアップするこ
とはない。4つのタイマイベント1ないし4は、時間軸
上で、70ms、30ms、50ms、50msの間隔
で発生する。すなわち各々の発生時刻はTE1(70m
s)、TE2(100ms)、TE3(150ms)お
よびTE4(200ms)の時刻である。したがってタ
イマキュー2100の先頭には、イベント1(211
8)のタイマ値2116が70msのセル2110を接
続する。2番目に接続するセル2120のタイマ値21
26には、タイマイベント2(2128)とタイマイベ
ント1(2118)の発生時刻の差分であるTE2−T
E1=100−70=30msを設定する。この差分値
のことを差分タイマ値という。3番目以降も同様であ
る。こうすることにより、一番目のセル2110がタイ
ムアップしたときには70ms経過し、そこから2番目
のセル2120がタイムアップするとさらに30ms経
過するので、時間ゼロ(タイマ発行時)から2番めのセ
ル2120がタイムアップするまで、70+30=10
0msだけ経過したことなる。同様に3番めのセル21
30、4番目のセル2140も、1つ前のセルのタイム
アップ時刻からの差分をタイマ値2126等として設定
すれば所要のタイマ動作を実現することができる。
【0012】以下の表1に、図22における数値の計算
方法を示す。
【0013】
【表1】
【0014】表1において、タイムアップ時間はイベン
ト毎のタイムアップ時間(開始時刻を0とする)を示
す。設定値はタイマキューに設定されるタイマ値を示
し、差分値は相対時間を示す。
【0015】図23は従来の差分タイマキューを用いた
処理のフローチャートを示す。図23において、タイマ
キュー2100に有効なタイマイベントが1つ以上つな
がっているかどうかチェックする(ステップS23
0)。ここで「有効な」とはタイマキューの要素である
各セル(以下「タイマキュー要素」という)のタイマ値
が0より大きい(タイマ値>0)ことをいう。有効なタ
イマキュー要素が一つも接続されていない場合、処理を
終了する。そうでない場合、タイマイベントを待ってい
る持っているタスクに対して信号を送る(ステップS2
32)。タイムアップした先頭のタイマキュー要素をタ
イマキューから外し、その後に他のタイマキュー要素か
接続されていれば、そのタイマキュー要素をタイマキュ
ー管理テーブルの先頭に登録する(ステップS23
6)。タイマキュ−先頭のタイマキュー要素のタイマ値
をハードウェアタイマに設定する(ステップS23
8)。
【0016】上述のように、従来の方法においても1個
のタイマーにより複数のタスクを管理することは可能で
ある。しかし、従来の方法では複数のサブシステムから
なるシステムに対しては、一つのタイマキュー中に異な
るシステムが混在することになり、あるシステムの運転
状態が別の他のシステムのタイマの管理に影響を与える
ことがあった。ある1つのシステムが実行を中断した楊
台、中断したシステムも稼働中のシステムも同一のタイ
マキュー中に混在することになってしまうこととなるの
で、あるシステムが停止中であれば、必ずしも先頭キュ
ーがタイムアップしなくなる。したがって稼動中のシス
テムを探索する必要が生じた。動作を中断しているシス
テムのタイマをタイムアップさせることはできないた
め、タイマキューにおけるキューからの取り外し処理は
稼働中のシステムのタスクに対してだけ行い、停止中ま
たは中断中のシステムに対応するタイマイベントは変化
させないという処理を行わなければならないという問題
があった。したがって従来の方法においては、タイマ
(割込み)を複数のシステム毎に別々に用意等していた
ため、複数のシステム間の管理方法が非常に複雑なもの
となるという問題があった。さらに、サブシステムごと
休止してしまった場合、例えば2システム運転から1シ
ステム運転へと変化した場合、タイマキュー中に無効な
データ(休止中のシステムに対応するデータ)が接続し
ていることになるため、タイマキューから外す処理(デ
キュー操作)が複雑になる。あるタイマキュー要素の直
後のチェーン情報だけではタイマキューからデキューす
る操作ができず、結果として何らかの方法によりチェー
ン情報をたどって該当する休止システムのタイマキュー
要素を探さなくてはいけないという問題があった。
【0017】(3)周期起動イベントに対するタスク管
理テーブル。 定期監視動作、例えば一定時間毎の状態確認動作のよう
に一定時間毎に動作、起動を行いたいタイマイベントに
対する従来の管理方法について説明する。
【0018】図24は従来の周期起動タスクの管理テー
ブル2450を示す。図24において、タイマ使用者
(タスク)の識別情報2400には周期起動タスクの初
期設定時に周期起動時間等を記録しておく。タイマ値2
410は、残動作タイマ値である。タイマ値2410が
0のタスクは動作中ではないタスクを示す。タイマ値2
410は、定時タイマ割込み(10ms割込み)が入る
毎にマイナス1される。タイマ値2410が0になった
ことを検出され瞬間に、タスクはタイマイベントの発生
を通知される。タイマ値2410にはタイマ使用者(タ
スク)の識別情報2400の周期起動時間を再設定され
る。タイマイベントの発生を通知されたタスクは、タス
ク動作を実行し終了すれば、実行待ち状態1710に戻
る。すなわち実行権を放棄してディスパッチャにジャン
プする。
【0019】図25(A)、(B)は従来のタスク管理
方法におけるタスクの動作を示す。周期起動タスクは複
数存在しうるがお互いに非同期である。図25(A)に
示されるように、TE10、TE20は周期起動タスク
の起動時刻であり、周期起動時間2500は本例では、
TE20−TE10=15−5=10msであり、タス
ク動作時間2550はTE15−TE10=10−5=
5msである。このように周期起動時間2500>タス
ク動作時間2550の場合には、周期起動タスクの動作
中にタイマ値2410が設定されて1ずつデクリメント
されていっても周期起動時間2500よりも短いタスク
時間2550でタスク動作が終了するためシステムの動
作には何の問題も発生しない。一方図25(B)に示さ
れるように、2度目のタスク起動時刻がTE25の時刻
であり、タスク動作時間2600がTE25−TE10
=20−5=15msの場合、周期起動時間2500<
タスク動作時間2600であるため周期起動時刻に起動
されたタスクが周期起動時間2500内に完了しない。
したがってTE20の時刻においてタスクが2重に起動
されることとなり、システムの動作に悪影響が出るとい
う問題があった。
【0020】上述のように従来の方法では、周期的な動
作、例えば、ls毎に動作状態を表示する等の周期起動
タスクのための管理テーブル2450を、タイマイベン
トを管理するためのタイマテーブル1850等と別に用
意する必要があった。周期起動動作は、タイマテーブル
1850等とは独立した機能として独立した管理テーブ
ル2450等により処理されていた。つまり、2種類の
タイマテーブル管理方法が必要であるという問題があっ
た。このように従来のタイマ管理方法では、周期起動タ
イマイベントは、周期的ではないワンショット型のタイ
マイベント処理とは分離して、独立して管理されてい
た。さらに、周期起動タイマイベント同士も独立して動
作していたため、同じ周期起動を持つ周期起動イベント
であっても、両者にタイマイベントの発生するタイミン
グの差である時間的位相差があれば、タイマイベントの
同時発生(同時処理)を行わせることはできなかった。
このためタイマ割込みの回数が増大する傾向にあり、タ
イマ割込みによるシステムの消費電流が増大する傾向が
あるという問題があった。例えばシステムが携帯電話シ
ステムである場合、通話中であっても通話回線はハード
ウェア的に保持されるため、通話中であっても何もする
ことが無ければCPUは休眠状態(WAIT)へ遷移
し、省電力化を行っている。すなわち、タスクだけでは
なくCPUそのものもスリープ(WAIT)させること
により省電力化を図っている。したがってタイマ割込み
等によりCPUが起動されると消費電力が増大するた
め、このタイマ割込みの回数が増えると、確実に消費電
力が増えるという問題があった。さらに、従来のタイマ
管理方法では、ハードウェア的に設定された時間計測範
囲よりも長い時間を図る場合には、ハードウェア上のタ
イマ管理とは別に、ソフトウェアによってビットサイズ
の大きいカウンタを設け長時間タイマイベントに対応し
ていた。このため、ハードウェア上の時間単位や時間計
測範囲が変わると、ソフトウェアによるタイマのカウン
ト処理も影響を受けていた。さらに、従来のタイマ管理
方法では、時間計測時の許容誤差という概念がなく、単
純にハードウェア的に設定されたタイマ時間の終了(タ
イムアップ)をもってタイマイベントを発生させてい
た。このため、あるタイマイベントがタイムアップした
とき、その近傍に(すぐ後に)同時にタイムアップさせ
ても時間計測上許容誤差範囲内となるタイマイベントが
接続されていたとしてもデキュー処理できなかった。す
なわち従来のタイマ管理方法では、時間的にごく近傍の
イベントを統合する機能が無いという問題があった。
【0021】
【発明が解決しようとする課題】上述のように従来のタ
イマ管理方法には、複数のサブシステムからなるシステ
ムに対して1つのタイマテーブル上に複数のサブシステ
ムを混在させていたため、複数のシステム間の管理方法
が非常に複雑なものとなるという問題があった。1個の
タイマーにより複数のタスクを管理することはできるも
のの、一つのタイマキュー中に異なるシステムが混在す
ることになり、あるシステムの運転状態が別の他のシス
テムのタイマの管理に影響を与えることがあった。さら
に周期起動タスクのための管理テーブルを、タイマイベ
ントを管理するためのタイマテーブルとは別に用意する
必要があった。同じ周期起動を持つ周期起動イベントで
あっても、時間的位相差がある場合はタイマイベントの
同時発生を行わせることがはできなかったため、タイマ
割込みの回数が増大する傾向にあり、タイマ割込みによ
るシステムの消費電流が増大する傾向があるという問題
があった。さらにハードウェアタイマのビット数の制限
によりソフトウェアを用いて長時間タイマイベントに対
応していたが、ハードウェア上条件が変わると、ソフト
ウェアによる処理も影響を受けていた。時間計測時の許
容誤差という概念がないため、時間的にごく近傍のタイ
マイベントを統合する機能が無いという問題があった。
【0022】そこで、本発明の目的は、上記問題を解決
するためになされたものであり、複数システムのタイマ
イベントを一元的に管理することにより、一つのタイマ
ー装置で複数の異なるシステム動作を実現することがで
きるタイマ管理装置および方法を提供することにある。
本発明の他の目的は、周期起動タイマイベントをワンシ
ョット型タイマイベントと同様に扱うことにより、周期
起動タイマイベントとワンショット型タイマイベントの
管理を一元化し、さらに時間的位相差がある場合であっ
てもタイマイベントの同時発生を行わせることができ、
タイマ割込みの回数を減らしてタイマ割込みによるシス
テムの消費電流を減らすことができるタイマ管理装置お
よび方法を提供することにある。本発明の他の目的は、
長時間タイマイベントを周期起動タイマイベント化する
ことにより、ハードウェアタイマのビット数内で長時間
タイマイベントを扱うことができるタイマ管理装置およ
び方法を提供することにある。さらに本発明の他の目的
は、タイマ値の精度を利用することにより、時間的にご
く近傍のタイマイベントを統合することができるタイマ
管理装置および方法を提供することにある。
【0023】
【課題を解決するための手段】本発明のタイマ管理装置
は、タイマイベントを待ち行列により管理するタイマ管
理装置であって、該タイマ管理装置は、タイマイベント
に対応するタイマキュー要素をタイマイベントの発行元
別に待ち行列により保持する1つ以上のタイマキュー手
段であって、該タイマキュー要素はタイマイベントのタ
イムアップ時刻と該タイマキューに接続された時刻との
差分をタイマ値として有するものと、タイマ割込みが発
生した場合、1つ以上の前記タイマキュー手段につい
て、別個のタイマキュー手段の先頭に保持された別個の
タイマキュー要素が有するタイマ値の中で最小のタイマ
値を有する最小タイマキュー要素を選択する選択手段
と、前記最小タイマキュー要素を保持するタイマキュー
手段について、該最小タイマキュー要素の次に保持され
たタイマキュー要素を先頭に保持し、該最小タイマキュ
ー要素を該タイマキュー手段から削除する並べ替え手段
と、前記最小タイマキュー要素が保持されたタイマキュ
ー手段と異なる他のタイマキュー手段について、各タイ
マキュー手段の先頭に保持された各タイマキュー要素が
有するタイマ値から前記最小のタイマ値を減じた値を新
たにタイマ値として再設定する再設定手段とを備えたも
のである。ここで、本発明のタイマ管理装置は、前記別
個のタイマキュー手段に各々対応する別個のタイマキュ
ー管理テーブル手段と、前記別個のタイマキュー管理テ
ーブル手段を所定の順に管理するシステムキュー管理テ
ーブル手段とをさらに備え、前記選択手段は、該所定の
順に別個の前記タイマキュー管理テーブル手段を選択
し、選択された別個の前記タイマキュー管理テーブル手
段に対応する別個の前記タイマキュー手段について最小
タイマキュー要素を選択するものである。ここで、本発
明のタイマ管理装置は、前記システムキュー管理テーブ
ル手段は、前記タイマキュー管理テーブルに対応するタ
イマイベントの発行元の動作状態が変化した場合、前記
タイマキュー管理テーブルとは異なる他のタイマキュー
管理テーブルを独立して管理するものである。ここで、
本発明のタイマ管理装置は、前記システムキュー管理テ
ーブル手段は、前記タイマキュー管理テーブルに対応す
るタイマイベントの発行元の存在状態が変化した場合、
前記タイマキュー管理テーブルとは異なる他のタイマキ
ュー管理テーブルを独立して管理するものである。ここ
で、本発明のタイマ管理装置は、前記並べ替え手段は、
前記タイマキュー手段から削除された前記最小タイマキ
ュー要素が所定の周期時間毎に起動される周期的タイマ
イベントに対応する場合、削除された前記最小タイマキ
ュー要素を前記タイマキュー手段中の該所定の周期時間
後に対応する位置に再接続するものである。ここで、本
発明のタイマ管理装置は、タイマイベントに対応するタ
イマキュー要素を新たに前記タイマキュー手段へ接続す
る接続手段をさらに備え、該接続手段は、第1周期時間
毎に起動される周期的タイマイベントに対応した第1タ
イマキュー要素が既に前記タイマキュー手段に接続され
ている状態で、第1周期時間と所定の関係を有する第2
周期時間毎に起動される周期的タイマイベントに対応し
た第2タイマキュー要素を新たに前記タイマキュー手段
に接続する場合、第1タイマキュー要素の最も早いタイ
ムアップ時刻と第2タイマキュー要素の第1回目のタイ
ムアップ時刻を同時刻にする接続をし、1回のタイマ割
込みで第1タイマキュー要素および第2タイマキュー要
素を同時にタイムアップさせる回数を増やし、タイマ割
込みによる消費電流を減らすものである。ここで、本発
明のタイマ管理装置は、第2周期時間の有する第1周期
時間との前記所定の関係は第2周期時間が第1周期時間
の倍数である関係であり、前記接続手段は、第1タイマ
キュー要素がタイムアップする最も早い時刻から現時刻
を引いた値を第2タイマキュー要素の第1回目のタイマ
値として接続し、第1タイマキュー要素のタイムアップ
時刻と第2タイマキュー要素のタイムアップ時刻を同時
刻にするものである。ここで、本発明のタイマ管理装置
は、第2周期時間の有する第1周期時間との前記所定の
関係は第2周期時間が第1周期時間の約数である関係で
あり、前記接続手段は、第1タイマキュー要素がタイム
アップする最も早い時刻から第2周期時間の整数倍を引
いた時刻が現時刻より遅くならない最も早い時刻に第2
タイマキュー要素を接続するものである。ここで、本発
明のタイマ管理装置は、第2周期時間の有する第1周期
時間との前記所定の関係は第2周期時間が第1周期時間
と互いに素である関係であり、前記接続手段は、第1周
期時間と第2周期時間との最小公倍数となる周期時間毎
に第1タイマキュー要素と第2タイマキュー要素とが同
時にタイムアップするように接続するものである。ここ
で、本発明のタイマ管理装置は、所定の起動時間を有す
るタイマイベントに対応するタイマキュー要素を新たに
前記タイマキュー手段へ接続する接続手段をさらに備
え、該接続手段は、前記タイマキュー要素を前記所定の
起動時間に基づく周期時間と繰り返し回数を有し、該周
期時間毎に該繰り返し回数分起動される周期的タイマイ
ベントに対応する周期的タイマキュー要素に変換して接
続するものである。ここで、本発明のタイマ管理装置
は、前記タイマキュー要素は前記タイマ値に対する許容
誤差をさらに備え、前記並べ替え手段は、前記最小タイ
マキュー要素を保持するタイマキュー手段について、該
最小タイマキュー要素の次に保持されたタイマキュー要
素の有する前記許容誤差が前記タイマ値から前記最小の
タイマ値を減じた値より小さい場合、該次に保持された
タイマキュー要素を該最小タイマキュー要素と共に該タ
イマキュー手段から削除するものである。
【0024】本発明のタイマ管理方法は、タイマイベン
トを待ち行列により管理するタイマ管理方法であって、
該タイマ管理方法は、タイマイベントに対応し、該タイ
マイベントのタイムアップ時間に応じたタイマ値を有す
るタイマキュー要素を該タイマイベントの発行元別に待
ち行列により1つ以上のタイマキュー手段に保持するス
テップと、タイマイベントに応じたタイマ割込みが発生
した場合、1つ以上の前記タイマキュー手段について、
別個のタイマキュー手段の先頭に保持された別個のタイ
マキュー要素が有するタイマ値の中で最小のタイマ値を
有する最小タイマキュー要素を選択する選択ステップ
と、前記最小タイマキュー要素を保持するタイマキュー
手段について、該最小タイマキュー要素の次に保持され
たタイマキュー要素を先頭に保持し、該最小タイマキュ
ー要素を該タイマキュー手段から削除する並べ替えステ
ップと、前記最小タイマキュー要素が保持されたタイマ
キュー手段と異なる他のタイマキュー手段について、各
タイマキュー手段の先頭に保持された各タイマキュー要
素が有するタイマ値から前記最小のタイマ値を減じた値
を新たにタイマ値として再設定する再設定ステップとを
備えたものである。
【0025】
【発明の実施の形態】以下、図面を参照して、本発明の
実施の形態を詳細に説明する。図1ないし図5は本発明
の実施の形態1ないし5において共通して用いられるデ
ータ構造体を示す。図1ないし図5に示されるデータ構
造体によって、1個のハードウェアタイマで複数のシス
テム、複数の時間精度、複数の動作、例えばワンショッ
ト動作、周期動作、長時間動作等を実現する。ここで、
ワンショット動作とはタイマキューにおいて1回だけ動
作するタイマイベント(以下「ワンショット型タイマイ
ベント」という)の動作であり、周期動作とはタイマキ
ューにおいて複数回繰り返し動作するタイマイベント
(以下「周期タイマイベント」という)の動作であり、
長時間動作とはタイマキューにおいてハードウェアタイ
マのカウント数が他のタイマイベントよりも比較的長い
タイマイベント(以下「長期タイマイベント」という)
の動作である。これらの動作を実現するために、複数の
等分タイマキューを用いて、1つのシステム内でのタイ
マイベントの発生タイミングを合わせるタイマキュー内
の時間的位相合わせ、および複数のシステム間でのタイ
マイベントの発生タイミングを合わせるタイマキュー間
の時間的位相合せを行う。
【0026】図1は、サブシステム毎のタイマキューの
構造を示す。図1に示されるように、サブシステムのタ
イマイベント1(118)等、タイマイベント1(11
8)等の発生時間間隔のタイマ値116等および次のタ
イマイベントへのポインタ(チェーン情報)114等を
1つのセル(タイマキュー要素)110等として、キュ
ー構造体(タイマキュー)100を形成している。例え
ば、タイマキュー要素110の次にタイマキュー要素1
20が接続されている。図1では図示されていないがタ
イマキューは双方向の線形リスト構造である。先頭タイ
マキュー要素110は先頭キュー102に接続されてお
り、空きキュー104には空きセル(不図示)の先頭セ
ルが接続されている。
【0027】図2はタイマキュー要素のデータ構造を示
す。図2において、前方リンク202はタイマキュー内
の前方タイマキュー要素へのポインタ、後方リンク20
4はタイマキュー内の後方タイマキュー要素へのポイン
タ、タイマID206はタイマイベント、したがって当
該タイマキュー要素の識別子、タイマ種別・精度208
は動作中のハードウェアタイマのビット幅またはタイマ
カウント単位(分解能、精度等)、タイマ値210は設
定するタイマ値である。タイマ値210は本明細書にお
いては差分タイマ値を用いるが、本発明は差分タイマ値
に限定されるものではない。さらに図2において、通知
先情報212はタイマイベントを発行したオブジェクト
のID、タイマ動作種別214はワンショット動作、周
期動作または長時間ワンショット動作(長時間動作でか
つワンショット動作)の種別、周期起動時間216は周
期動作を行う周期タイマイベントの周期起動時間または
長時間ワンショット動作を行う長時間タイマイベントの
初期設定値(後述の実施の形態4で示されるように長時
間タイマイベントは周期タイマイベント化される)、周
期起動カウンタ218は周期起動タイマイベントまたは
長時間タイマイベントの繰り返し回数、システム種別2
20は誤接続を検出するための動作中のシステム種別で
ある。タイマキュー要素200にはさらのその他のタイ
マキュー要素に関する情報を設定することもできる。
【0028】タイマキューの先頭タイマキュー要素の前
にはタイマキュー管理テーブルがある。このタイマキュ
ー管理テーブルは図1における先頭キュー102が該当
する。
【0029】図3はタイマキュー管理テーブルの前に接
続され、タイマキューを管理するタイマ管理テーブルの
データ構造を示す。タイマ管理テーブルはシステム毎に
用意される。図3において、前システムへのポインタ3
02は当該タイマ管理テ−ブル300により管理される
システムの前のシステムへのポインタ(リンク)、次シ
ステムへのポインタ304は当該タイマ管理テ−ブル3
00により管理されるシステムの次のシステムへのポイ
ンタ(リンク)、先頭キューへのポインタ306は当該
システムのタイマキュー管理テ−ブルへのポインタ、シ
ステムの動作状態308はシステムの動作中、停止中等
のシステムの動作状態を表示するためのフラグまたはス
テータス、システム種別310は動作中のシステム種別
である。タイマ管理テーブル300にはさらのその他の
当該システムに関する情報を設定することもできる。
【0030】図4は各システム毎のタイマ管理テーブル
300を管理するシステムキュー管理テーブルのデータ
構造を示す。図4において、システムへのリンク情報4
02はシステムキュー管理テーブル400が管理する各
システムをサブシステムとし、これらのサブシステムか
ら構成されるシステムを全体として1つのシステムとし
た場合、他のシステムへのポインタである。さらに図4
において、先頭キューへのポインタ404は先頭(サ
ブ)システムのタイマ管理テーブル300へのポイン
タ、空きキューへのポインタ406は空きタイマキュー
へのポインタ、システムの動作状態408は全体として
1つのシステムとした場合における当該システムの動作
中、停止中または中断中等の状態、その他管理情報41
0は当該システムの他の情報、システム種別412は動
作中の当該システム種別である。
【0031】図5は上述のシステムキュー管理テーブル
400、タイマ管理テーブル300、タイマキュー管理
テーブルおよびタイマキュー等の制御構造の関連を示
す。図5に示されるように、1つの(サブ)システムの
タイマキュー要素535等は各々キュー状に接続され、
このキューはタイマキュー管理テーブル532等によっ
て(サブ)システム毎に管理される。タイマキューとい
う場合、このタイマ管理テーブル532等を含む全体5
40等を指すが、単にタイマキュー要素535から始ま
るキューを指す場合もある。(サブ)システムは、(サ
ブ)システム毎のタイマ管理テーブル530等によって
管理され、各(サブ)システムはシステムキュー管理テ
ーブル510によって管理される。(サブ)システムの
例としては、符号分割多重(Code Division Multiple A
ccess : CDMA)システム、ディジタル携帯電話/自
動車電話(Personal Digital Cellular : PDC)シス
テムまたはPHS(Personal Handyphone System)等が
ある。空きタイマキュー520は、タイマがカウントア
ップして処理が終了したタイマキュー要素、つまり使い
終わったタイマキュー要素が接続されていく。空きタイ
マキュー要素が無くなると新規のタイマイベントは発行
できないため、適宜ガーベッジコレクション等を行う。
新規なタイマキュー要素をタイマキュー540等に接続
する場合、タイマキュー540等にタイマキュー要素5
35等がある場合は差分タイマ値を計算して新規なタイ
マキュー要素をタイマキューに接続する。一方タイマキ
ュー要素が無い場合は、タイマキュー540等の先頭に
タイマ値210をそのまま設定して新規なタイマキュー
要素をそのまま接続する。
【0032】実施の形態1.実施の形態1は、複数の
(サブ)システムのタイマキューを統合し、複数の(サ
ブ)システムのタイマイベントを一元的に管理すること
により、一つのタイマー装置で複数の異なる(サブ)シ
ステムの動作を実現することができるタイマ管理装置お
よび方法を示す。以下では、特に明示されない限りシス
テムといえばタイマ管理テーブル530等で管理される
各システムを指す。システムキュー管理テーブル510
で管理される全体として1つのシステムとの関係に及ぶ
場合は、全体として1つのシステムをシステムといい、
タイマ管理テーブル530等で管理される各システムを
サブシステムという。実施の形態1ではシステム毎のタ
イマキュー間の時間的位相合わせ方法、およびタイマイ
ベントが発生した時に、該タイマイベントに対応するシ
ステムの先頭タイマキュー要素を外す操作を中心として
説明する。制御データ構造は、図1ないし5で示された
データ構造等を使用する。
【0033】図6は、3つの(サブ)システム1ないし
3が存在する場合において、時刻Tiでタイマ割込みが
発生した状態のタイムチャートを示す。各システム1な
いし3は、各々図5におけるタイマキュー540ないし
580を有しており、各タイマキュー540等は、各シ
ステム1ないし3毎に独立である。図6において、時刻
Tiでタイマ割込みが発生した場合、各システム毎のタ
イマキュー540等の先頭のタイマキュー要素535等
を比較して最小のタイマ値210を有するタイマキュー
要素を選択する。図5の例では、システム1の先頭タイ
マキュー要素535のタイマ値210は10、システム
2の先頭タイマキュー要素555のタイマ値210は
7、システム3の先頭タイマキュー要素575のタイマ
値210は3であるため、システム3のタイマ値210
の3が最小である。したがって、システム3の先頭タイ
マキュー要素575がタイムアップしたと判断できる。
そこでシステム3の先頭タイマキュー要素575をタイ
マキュー580から外して、次のタイマキュー要素57
7(タイマ値210は2)をシステム3の先頭タイマキ
ュー要素とする。外されたタイマキュー要素は空きタイ
マキュー520に接続される。以上のようにしてシステ
ム3におけるタイマキュー要素575のタイムアップ時
の操作が完了する。この時システム1とシステム2のタ
イマキュー要素535および555はタイムアップして
いないが、各先頭タイマキュー要素のタイムアップ時間
はシステム3の先頭タイマキュー要素575のタイマ値
210である3の時間経過分だけ少なくする必要があ
る。そこでシステム1、2の各先頭タイマキュー要素5
35および555から、タイムアップしたシステム3の
タイマキュー要素575のタイマ値210の3を引いた
値をタイマ値210として再設定する。システム1の場
合タイマ値210は10−3=7、システム2の場合タ
イマ値210は、7−3=4が新しいタイマ値となり、
各々先頭タイマキュー要素535、555のタイマ値2
10の内容となる。各システム1ないし3の先頭タイマ
キュー要素のタイマ値210を再設定した後、その値の
最小のものをハードウェアタイマに設定し、タイマテー
ブル処理を完了する。本例の場合、システム3のタイマ
値210が2と最小であるため、ハードウェアタイマに
は2が設定される。本例では、1つのタイマキュー要素
575だけタイムアップしたが、設定されているタイマ
値210によっては、複数のシステムのタイマキュー要
素が同時にタイムアップすることがある。この場合は、
タイムアップしたタイマキュー要素はすべてタイマキュ
ー540等から外す処理を行う。
【0034】図7は本実施の形態1における処理をフロ
ーチャートで示す。図7において、各システム間でタイ
マーキュー540等の先頭タイマキュー要素535等の
値を比較する。ただし、タイマ管理テーブル530等の
システムの動作状態308により、システムが停止中ま
たは実装されていない場合、タイマキュー540等に有
効なタイマキュー要素が無い場合等で動作していないタ
イマキュー540等に対しては処理を行わない。この場
合は、タイマ管理テーブル530等の次システムへのポ
インタ304をたどって次のシステムのタイマキュー5
60等の処理を行う。同時にシステム種別310を記録
しておく(ステップS70)。タイマがタイムアップし
た時、先頭タイマキュー要素575等のタイマ値210
が最小のタイマキュー要素575等がタイムアップした
タイマキュー要素であるので、このタイマキュー要素5
75等タイマキュー580等から外す。2つのシステム
が同時にタイムアップする場合、すなわち先頭タイマキ
ュー要素575等の値が同じ場合は2つのタイマキュー
要素575等を外す。3つ以上同じ場合も同様に外す。
上述のシステム間でのタイマ値210の比較は、タイマ
管理テーブル530等の次システムへのポインタ304
をたどることにより行われる。したがってシステムを構
成するサブシステムの数によって本実施の形態の処理方
法が影響を受けることはない。システムの動作中にある
サブシステムが停止または削除されても、次システムへ
のポインタ304をたどって探索される際にそのシステ
ムがスキップされるだけであるため、他の動作中のサブ
システムの処理に影響を与えることはない。次に全サブ
システムの先頭タイマキュー要素535等のタイマ値2
10を補正する。初期設定としてシステム番号カウンタ
iをゼロクリアする(ステップS72)。全サブシステ
ムに対しての処理が終了するまでステップS76からS
79の処理を繰り返す(ステップS74)。まず、サブ
システムがタイムアップしたサブシステムかどうかを判
定する(ステップS76)。もしタイムアップしたサブ
システムならばタイマ値210の調整は不要であるの
で、ステップS79へとぶ。そうでない場合は、タイム
アップしてタイマキュー580等から外されたタイマキ
ュー要素575等の差分タイマ値210を、他のタイム
アップしなかったサブシステムの先頭タイマキュー要素
555等の差分タイマ値210から引く(ステップS7
8)。このデクリメントによりサブシステム間のタイマ
キュー540等ーの時間位相を合わせることができる。
次のサブシステムの先頭タイマキュー要素535等のタ
イマ値210の調整を行うために、システム番号カウン
タiに1を加算する(ステップS79)。ステップS7
4へ戻り、全サブシステムについて完了した場合は、先
頭タイマキュー要素555等のタイマ値210の内最小
の値を探して、ハードウェアタイマに設定する。
【0035】上述の実施の形態1において、サブシステ
ムごと削除する場合は、先頭タイマキュー要素535等
をシステムキュー管理テーブル510につないで、その
タイマキュー管理テーブル532等の内容を空にするだ
けで実現できる。逆にシステムを新規に増設する場合
は、独立の新規なタイマキュー、タイマキュー管理テー
ブルおよびタイマ管理テーブルを生成して、このタイマ
管理テーブルをシステムキュー管理テーブル510の管
理する他のサブシステムのタイマ管理テ−ブルのリスト
に追加し、新規なシステムの動作状態を示すシステムの
動作状態308を動作中にするだけで実現できる。した
がって、既存の他の部分に全く影響を与えずに新規シス
テムの増設を行うことができる。
【0036】以上より、実施の形態1によれば、複数の
サブシステムのタイマイベントを各サブシステム毎のタ
イマキューを用いて一元的に管理することにより、一つ
のハードウェアタイマーで複数の異なるサブシステムの
動作を実現することができる。
【0037】実施の形態2.実施の形態2は、周期タイ
マイベントを一般のワンショット型タイマイベントと同
様に扱うことにり、周期タイマイベントとワンショット
型タイマイベントの管理を一元化することができるタイ
マ管理装置および方法を示す。以下、本実施の形態2を
図8ないし11を用いて説明する。制御データ構造は、
図1ないし5で示されたデータ構造等を使用する。タイ
マキュー540等において、1回だけ動作するワンショ
ット型タイマイベントと設定値により繰返し動作する周
期タイマイベントとを同時に扱うために、図2のタイマ
キュー要素200中に動作識別情報をタイマ動作種別2
14、周期起動時間216として設けている。タイマ動
作種別214が周期動作であるタイマキュー要素(以下
「周期タイマキュー要素」という。これと区別するため
にワンショット型タイマイベントに対応するタイマキュ
ー要素を特にワンショット型タイマキュー要素とい
う。)は、周期起動時間216毎に周期起動される。
【0038】図8は実施の形態2における周期タイマイ
ベントの動作を示す。図8において、タイマキューの先
頭の周期タイマキュー要素802(周期起動時間216
=10)がタイムアップしたとする。この時、周期タイ
マキュー要素802は、タイマキューの先頭から外され
るが、周期起動時間216(=10)後には再び起動さ
れるため、タイマキューの周期起動時間216(=1
0)後の位置810に再接続される。図8に示されるよ
うに、ワンショット型タイマキュー要素804、806
の後に周期起動のタイマ値を3として再接続される。
【0039】図9は図8の動作をタイムチャートで示
す。図9に示されるように、周期タイマキュー要素80
2がタイムアップする時刻をTA、ワンショットタイマ
キュー要素804がタイムアップする時刻をTB、ワン
ショットタイマキュー要素806がタイムアップする時
刻をTC、ワンショットタイマキュー要素808がタイ
ムアップする時刻をTEとすると、再接続すべき周期タ
イマキュー要素810はその周期起動時間216が10
であるから、10−2−5=3の時間だけ経過した時刻
Dの位置に、タイマ値210を3に設定して再接続す
ればよいことがわかる。周期タイマキュー要素810を
再設定した後のタイマキューを、図10に示す。
【0040】図11は、実施の形態2における周期タイ
マイベントの処理をフローチャートで示す。図11にお
いて、タイマがタイムアップした時、タイマ発行元へイ
ベント通知を行う(ステップS110)。この処理はワ
ンシヨット動作のタイマイベントと同じ処理である。次
に、周期タイマイベントのタイムアップかどうかを判断
し(ステップS112)、そうであればタイムアップし
た周期タイマイベントをタイマキューに再接続する(ス
テップS114)。周期タイマキュー要素の次のタイマ
キュー要素が無かった場合は、周期タイマイベントが再
びタイマキューの先頭に接続されることになる。最後に
先頭タイマキュー要素のタイマ値210をハードウェア
タイマに設定する(ステップS116)。ステップS1
12で周期タイマイベントのタイムアップでない場合は
直接ステップS116へとぶ。
【0041】本実施の形態2によれば、同一の周期タイ
マイベントがタイマキュー上に2つ以上存在しないので
メモリを節約でき、かつタイマキューを探索する時間の
節約を図ることができる。周期タイマイベントを停止す
る場合は、タイマキュー上からその周期タイマイベント
を1つだけ削除すればよい。さらに、本実施の形態2に
より、ハードウェア的にタイマの最大カウント数(タイ
マのビット幅)が少ない場合でも、タイマキュー要素を
周期的に使うことにより、ハードウェア上の制約を無く
すことができる。例えば、タイマの分解能が10msで
周期起動時間が1時間を最長すると、1時間=60
(分)×60(秒/分)×100(カウント/秒)=3
60,000カウントであるから、この1時間の長期タ
イマイベントを実現するハードウェアタイマには約20
ビット必要となる。一方、実施の形態2によりこの周期
起動時間が1時間の長期タイマイベントを周期化して、
例えば10ms分解能で1分を最長とする周期タイマキ
ュー要素を用いると、1分=60秒×100(カウント
/秒)=6,000カウントとなる。したがって、この
1時間の長期タイマイベントを実現するハードウェアタ
イマは16ビットのビット幅で実現可能となり、約4ビ
ット少なくて済む。
【0042】以上より、実施の形態2によれば、周期タ
イマイベントをワンショット型のタイマイベント化する
ことにより、一般のワンショット型タイマイベントと同
様に扱うことができるため、周期タイマイベントとワン
ショット型タイマイベントの管理を一元化することがで
きる。
【0043】実施の形態3.実施の形態3は、周期タイ
マイベント間の時間的位相合わせを行うことによってハ
ードウェアタイマのタイムアップ回数を減らすことがで
きるタイマ管理装置および方法を示す。以下、本実施の
形態3を図12(A)、(B)を用いて説明する。制御
データ構造は、図1ないし5で示されたデータ構造等を
使用する。
【0044】図12(A)、(B)は実施の形態3にお
ける周期タイマイベントの動作をタイムチャートで示
す。図12(A)に示すように、例えば、周期起動時間
216が1秒毎の周期タイマイベント1と周期起動時間
216が2秒毎の周期タイマイベント2があるものとす
る。この場合、時間的位相合わせができていないと、す
なわちタイマイベント1とタイマイベント2とが非同期
であると、タイマイベント1がT2、T3、T5、T6
およびT8の計5回発生し、タイマイベント2がT1、
T4およびT7の計3回発生し、総計8回発生してい
る。
【0045】一方、図12(B)に示すように2つの周
期タイマイベント1およびタイマイベント2が発生する
時間的位相を合わせることによって、タイミングT1
2、T14およびT16で2つのタイマイベント1とタ
イマイベント2とを同時にタイムアップさせることがで
きる。これによって、タイマイベントの発生回数を8回
から5回に減らすことができる。以下、2つのタイマイ
ベントの時間的位相を合わせる方法について説明する。
図12(B)に示されるように、周期タイマイベント2
を起動させる時(Tz)は、タイマキュー上ですでに動
いている他の周期タイマイベント1の時間的位相に合わ
せてタイマイベント2の発行時間を調整し、タイマキュ
ーに接続を行う。タイマイベント2の登録を行う時(T
z)、他の周期タイマイベント1のタイムアップ時間T
12とTzとの差分Δt=T12−Tzを計算して、こ
のΔtを周期タイマイベント2の初めの(1回目の)タ
イマ値210として設定する。すなわちタイマ値210
=Δt、タイマ動作種別214=周期、周期起動時間2
16=周期起動したい時間等に設定する。このように他
の周期タイマイベント1の発生周期(=1)に同期する
ように、最初の1回だけタイマイベント2のタイマ値2
10を本来の周期起動時間216(=2)ではなくΔt
に設定する。T12で一度同期がとれると、後はT1
4、T16とも同期がとれていくことになる。この結果
ハードウェアタイマが発生するタイマ割り込みの回数を
減らすことができる。したがってタイマ割込み等により
CPUが起動されて消費される電力を減らすことができ
るため、携帯電話等の電池駆動型のシステムの場合には
大きく省電力化を測ることができる。
【0046】例えば、周期起動時間216が6の周期タ
イマイベントに周期起動時間216が12の周期タイマ
イベントと72のタイマイベントが追加される場合の動
作を説明する。周期起動時間216が6の周期に時間的
位相を合わせて、周期起動時間216が12,起動時間
216が72のタイマイベントを発行する。両タイマイ
ベントに対応するタイマキュー要素がタイマキューに接
続される。この場合、周期起動時間216の6、12、
72には最大公約数6があるので、周期起動時間216
が12、72の2つのタイマイベントを追加しても、C
PUがタイマイベントを処理するために起動される回数
は増えない。最大公約数があれば、メモリ等の条件を除
いて追加されるタイマイベントの数に制限はない。
【0047】逆に周期起動時間216が72のイベント
に周期起動時間216が6のタイマイベントを接続する
場合も同様である。周期起動時間216が72のイベン
トに周期起動時間216が6のタイマイベントを接続す
る場合、72と6との最大公約数は6であるので、周期
起動時間216が72のタイマイベントがタイムアップ
する時刻tから6×n時間を引いた数が0になる最大の
nを与えるタイミングで、周期起動時間216が6のイ
ベントを発行してタイマキューに接続すればよい。最大
のnを与えるタイミングとするのは、最も早いタイミン
グとするためである。
【0048】周期起動時間216が互いに素な場合の例
を示す。周期起動時間216が5のタイマイベントが動
作中に、周期起動時間216が3のタイマイベントを発
行するものとする。このとき周期起動時間216が5の
イベントと周期起動時間216が3のイベントとは互い
に素である、すなわち互いに素数で公約数かない。この
場合は、周期起動時間216が3と5との最小公倍数1
5(3×5)となる時間に2つのタイマイベントの発生
が重なるように、周期起動時間216が3のタイマイベ
ントの発行タイミングを調整すればよい。
【0049】以上より、実施の形態3によれば、周期タ
イマイベント間の時間的位相合わせを行うことによって
ハードウェアタイマのタイムアップ回数を減らすことが
できるため、タイマ割込み等によりCPUが起動されて
消費される電力を減らすことができる。
【0050】実施の形態4.実施の形態4は、長時間ワ
ンショットタイマイベントを周期タイマイベント化する
ことによって、ハードウェアタイマの最大カウント数以
上の長時間タイマを実現することができるタイマ管理装
置および方法を示す。以下、本実施の形態4を図13
(A)ないし(C)、図14を用いて説明する。制御デ
ータ構造は、図1ないし5で示されたデータ構造等を使
用する。
【0051】図13(A)ないし(C)は、実施の形態
4における周期タイマイベントの動作をタイムチャート
で示す。図13(A)ないし(C)において、周期タイ
マイベントの繰返し周期を200msとし、長時間タイ
マ1050msを実現する場合について動作を説明す
る。この繰返し周期は、ハードウェアタイマの最長計測
範囲(ビット幅によって決まる範囲)によって決められ
ることが望ましい。
【0052】図13(A)は初回の長時間タイマイベン
ト1300の動作を示す。図13(A)に示されるよう
に、長時間タイマ1050msを繰り返し周期200m
sと繰り返し回数(回)に分解し、剰余がある場合はこ
の剰余を初回のタイマ値1310として設定する。上記
の例では長時間タイマ1050ms=200ms×5
(回)+50であるため、剰余が50であることよりタ
イマ値1310の初回設定値は50msとなる。タイマ
動作種別1311は長時間に設定する。周期起動時間1
312は初回タイマ値1310と同様に初回は50ms
に設定し、繰り返し回数1314は6回(=5回+1
回)と設定する。繰返し回数1314は、処理の都合上
1回余分に設定する。
【0053】図13(B)は1回目のタイムアップがあ
った場合の長時間タイマイベント1328の動作を示
す。図13(B)において、1回目のタイムアップ時の
経過時間は、1回目にタイマ値1310に設定した50
msである。長時間タイマイベントの残りの動作は、2
00msの繰り返し周期を繰り返し回数5回分タイムア
ップすればよい。この設定では図13(A)の剰余50
msの分ですでに1回タイムアップしており、その後繰
り返し周期200msで5回タイムアップすることにな
るため、計6回(=1+5)のタイムアップを行うこと
になる。これが繰返し回数1314を1回余分に設定し
た理由である。1回目の再接続処理は、まずタイムアッ
プした周期タイマキュー要素1300を外し、次に元か
ら接続されていた先頭タイマキュー要素1302から起
算して繰り返し周期が200msとなる位置に周期タイ
マキュー要素1328を再接続する。図13(B)の例
では、200ms−タイマキュー要素1302のタイマ
値(=10)−タイマキュー要素1304のタイマ値
(=20)−タイマキュー要素1306のタイマ値(=
100)=70となるため、タイマキュー要素1328
のタイマ値1330には70が設定される。周期起動時
間1332は200msと設定し、周期カウンタ133
4は5回に設定される。
【0054】図13(C)は2回目のタイムアップがあ
った場合の長時間タイマイベント1348の動作を示
す。図13(C)において、まずタイムアップした周期
タイマキュー要素1330を外し、次に接続されていた
先頭タイマキュー要素1342から起算して繰り返し周
期が200msとなる位置に周期タイマキュー要素13
48を再接続する。図13(C)の例では、200ms
−タイマキュー要素1342のタイマ値(=80)−タ
イマキュー要素1344のタイマ値(=30)−タイマ
キュー要素1346のタイマ値(=10)=80となる
ため、タイマキュー要素1348のタイマ値1350に
は80が設定される。周期起動時間1352は200m
sのままであり、周期カウンタ1354は4回に設定さ
れる。周期カウンタ1354を1だけデクリメントする
と4となるが、まだ0とはならないので、図13(C)
と同様にして周期起動時間200msで設定し直してタ
イマキューに接続しなおす。以下5回目のタイムアップ
まで同様に繰り返す。6回目のタイムアップがあった場
合は、周期カウンタを1だけデクリメントすると0にな
るので、長時間ワンショットタイマイベントは完了した
ことになる。したがってこのときのタイマキュー要素を
タイマキューから外せばよく、周期タイマイベントのタ
イマキューへの再接続はもう必要ない。上述のように、
本実施の形態4のポイントは、初めの1回目に剰余をタ
イマ値として設定することにある。2回目以降の設定は
周期起動時間を設定する。設定する値が異なるが設定処
理方法は毎回同じである。
【0055】図14は実施の形態4における処理のフロ
ーチャートを示す。図14において、周期カウンタ13
32等が0であるか否かを判断し(ステップS14
0)、0出ない場合はさらに剰余が0であるか否かを判
断する(ステップS140)。初回は剰余が0ではない
ため剰余値を元にタイマキューに接続する(ステップS
148)。1回目のタイムアップ以降は剰余値が0であ
るため、周期カウンタの値から1だけ引く(ステップS
144)。次に周期起動時間1332等を元にタイマキ
ューに再接続する(ステップS146)。周期カウンタ
が0になれば処理は終了である。
【0056】以上より、実施の形態4によれば、長時間
ワンショットタイマイベントを周期タイマイベント化す
ることによって、ハードウェアタイマの最大カウント数
以上の長時間タイマを実現することができる。
【0057】実施の形態5.実施の形態5は、タイマキ
ューに接続されるタイマ値の精度を利用して一度にキュ
ーを外し、タイマイベントを統合化することできるタイ
マ管理装置および方法を示す。以下、本実施の形態5を
図15および図16を用いて説明する。制御データ構造
は、図1ないし5で示されたデータ構造等を使用する。
タイマ精度208には使用目的によって要求される精度
にばらつきがあるため、本実施の形態5では、この精度
のバラツキを利用してタイマイベントの発生回数を減ら
すものである。例えば、10msecタイマイベントが
タイムアップした時、その近傍にタイマ精度208が1
分であり、かつタイマ値210が1時間のタイマイベン
トがあった場合、10msecタイマイベントがタイム
アップすると同時に1時間タイマイベントをタイマキュ
ーから外しても、タイマの要求精度上、何ら問題ないと
考えられる。このような場合、タイマキューから外す、
すなわちタイムアップさせることによって、省電力化を
図ることができる。
【0058】図15は本実施の形態5の動作原理を示
す。図15に示されるように、タイマキュー要素A15
00は差分タイマ値210が100で動作するタイマイ
ベントに対応し、次に差分タイマ値210が2のタイマ
キュー要素B1510が接続されている。ここで先頭の
タイマキュー要素A1500がタイムアップしたとする
と、タイマキュー要素B1510を同時にタイムアップ
させたとしても、タイマキュー要素B1510のタイマ
値210は2であり許容誤差は10であるため、タイマ
キュー要素B1510の要求精度上何ら問題はない。こ
のようにタイマキュー要素A1500とタイマキュー要
素B1510とを同時にタイマキューーから外すことに
よって消費電力を削減することができる。図16は本実
施の形態5における処理のフローチャートを示す。図1
6に示されるように、まず先頭のタイマキュー要素外す
(ステップS160)。次のタイマキュー要素のタイマ
値と精度とを比較して(ステップS162)、タイマ値
が精度より小さい場合は、当該次のタイマキュー要素を
同時に外す(ステップS164)。この後、次の次にあ
たるタイマキュー要素をタイマキューの先頭の要素とす
るように接続する(ステップS168)。これによりこ
の先頭のタイマキュー要素のタイマ値がハードウェアタ
イマに設定される。ステップS162でタイマ値が精度
より大きい場合は何もしないで終了する。図16では図
示されていないが、本タイマテーブル処理が繰り返し呼
ばれることにより、タイマキュー要素のタイマ値が精度
より小さいタイマキュー要素を同時にタイムアップさせ
ていくことができる。
【0059】以上より、実施の形態5によれば、1つの
タイマイベントで同時に2つ以上のタイマ処理をおこな
うことができるため、タイマ割込み回数を減らすことが
でき、消費電流の低減化を達成することができる。
【0060】
【発明の効果】以上説明したように、本発明のタイマ管
理装置および方法によれば、複数システムのタイマイベ
ントを一元的に管理することにより、一つのタイマー装
置で複数の異なるシステム動作を実現することができる
タイマ管理装置および方法を提供することができる。周
期起動タイマイベントをワンショット型タイマイベント
と同様に扱うことにより、周期起動タイマイベントとワ
ンショット型タイマイベントの管理を一元化し、さらに
時間的位相差がある場合であってもタイマイベントの同
時発生を行わせることができ、タイマ割込みの回数を減
らしてタイマ割込みによるシステムの消費電流を減らす
ことができるタイマ管理装置および方法を提供すること
ができる。長時間タイマイベントを周期起動タイマイベ
ント化することにより、ハードウェアタイマのビット数
内で長時間タイマイベントを扱うことができるタイマ管
理装置および方法を提供することができる。さらに、タ
イマ値の精度を利用することにより、時間的にごく近傍
のタイマイベントを統合することができるタイマ管理装
置および方法を提供することができる。
【図面の簡単な説明】
【図1】 実施の形態1ないし5におけるサブシステム
毎のタイマキューの構造を示す図である。
【図2】 実施の形態1ないし5におけるタイマキュー
要素のデータ構造を示す図である。
【図3】 実施の形態1ないし5におけるタイマキュー
を管理するタイマ管理テーブルのデータ構造を示す図で
ある。
【図4】 実施の形態1ないし5における各システム毎
のタイマ管理テーブルを管理するシステムキュー管理テ
ーブルのデータ構造を示す図である。
【図5】 実施の形態1ないし5におけるシステムキュ
ー管理テーブル、タイマ管理テーブル、タイマキュー管
理テーブルおよびタイマキュー等の制御構造の関連を示
す図である。
【図6】 実施の形態1において、時刻Tiでタイマ割
込みが発生した状態を示すタイムチャートである。
【図7】 実施の形態1における処理を示すフローチャ
ートである。
【図8】 実施の形態2における周期タイマイベントの
動作を示す図である。
【図9】 図8の動作を示すタイムチャートである。
【図10】 実施の形態2における周期タイマキュー要
素を再設定した後のタイマキューを示す図である。
【図11】 実施の形態2における周期タイマイベント
の処理を示すフローチャートである。
【図12】 実施の形態3における周期タイマイベント
の動作を示すタイムチャートである。
【図13】 実施の形態4における周期タイマイベント
の動作を示すタイムチャートである。
【図14】 実施の形態4における処理のフローチャー
トである。
【図15】 実施の形態5の動作原理を示す図である。
【図16】 実施の形態5における処理のフローチャー
トである。
【図17】 タスクの状態遷移を示す図である。
【図18】 従来リアルタイムOSにおけるタイマイベ
ントのタイマー管理テーブルを示す図である。
【図19】 従来のタイマ割込み処理を説明するための
2つのサブシステムから構成されるシステムの例を示す
図である。
【図20】 従来のタイマ割込み処理のフローチャート
である。
【図21】 従来使用されている差分タイマキューのデ
ータ構造を示す図である。
【図22】 従来のタイマキューの設定方法を通して差
分タイマの動作を説明する図である。
【図23】 従来の差分タイマキューを用いた処理のフ
ローチャートである。
【図24】 従来の周期起動タスクの管理テーブルを示
す図である。
【図25】 従来のタスク管理方法におけるタスクの動
作を示す図である。
【符号の説明】 100、540、560、580、2100 タイマキ
ュー、 102、2102 先頭キュー、 104、5
20、2104 空きキュー、 110、200、53
5、555、575、577 タイマキュー要素、 3
00、530、550、570、1920 タイマ管理
テーブル、 400、510 システムキュー管理テー
ブル、 532、552、572 タイマキュー管理
テーブル、 802、810 周期タイマキュー要素、
804、806、808、1302、1304、13
06、1342、1344、1346、1500、15
10 ワンショット型タイマキュー要素、 1300、
1328、1348 長時間タイマキュー要素、 17
00 実行状態、 1710 実行待ち状態、 172
0 休眠状態、 1850、2450 タイマテーブ
ル、 1900、1910 システム、 2500 周
期起動時間、 2550、2600 タスク動作時間。

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 タイマイベントを待ち行列により管理す
    るタイマ管理装置であって、該タイマ管理装置は、 タイマイベントに対応するタイマキュー要素をタイマイ
    ベントの発行元別に待ち行列により保持する1つ以上の
    タイマキュー手段であって、該タイマキュー要素はタイ
    マイベントのタイムアップ時刻と該タイマキューに接続
    された時刻との差分をタイマ値として有するものと、 タイマ割込みが発生した場合、1つ以上の前記タイマキ
    ュー手段について、別個のタイマキュー手段の先頭に保
    持された別個のタイマキュー要素が有するタイマ値の中
    で最小のタイマ値を有する最小タイマキュー要素を選択
    する選択手段と、 前記最小タイマキュー要素を保持するタイマキュー手段
    について、該最小タイマキュー要素の次に保持されたタ
    イマキュー要素を先頭に保持し、該最小タイマキュー要
    素を該タイマキュー手段から削除する並べ替え手段と、 前記最小タイマキュー要素が保持されたタイマキュー手
    段と異なる他のタイマキュー手段について、各タイマキ
    ュー手段の先頭に保持された各タイマキュー要素が有す
    るタイマ値から前記最小のタイマ値を減じた値を新たに
    タイマ値として再設定する再設定手段とを備えたことを
    特徴とするタイマ管理装置。
  2. 【請求項2】 前記別個のタイマキュー手段に各々対応
    する別個のタイマキュー管理テーブル手段と、 前記別個のタイマキュー管理テーブル手段を所定の順に
    管理するシステムキュー管理テーブル手段とをさらに備
    え、前記選択手段は、該所定の順に別個の前記タイマキ
    ュー管理テーブル手段を選択し、選択された別個の前記
    タイマキュー管理テーブル手段に対応する別個の前記タ
    イマキュー手段について最小タイマキュー要素を選択す
    ることを特徴とする請求項1記載のタイマ管理装置。
  3. 【請求項3】 前記システムキュー管理テーブル手段
    は、前記タイマキュー管理テーブルに対応するタイマイ
    ベントの発行元の動作状態が変化した場合、前記タイマ
    キュー管理テーブルとは異なる他のタイマキュー管理テ
    ーブルを独立して管理することを特徴とする請求項2記
    載のタイマ管理装置。
  4. 【請求項4】 前記システムキュー管理テーブル手段
    は、前記タイマキュー管理テーブルに対応するタイマイ
    ベントの発行元の存在状態が変化した場合、前記タイマ
    キュー管理テーブルとは異なる他のタイマキュー管理テ
    ーブルを独立して管理することを特徴とする請求項2記
    載のタイマ管理装置。
  5. 【請求項5】 前記並べ替え手段は、前記タイマキュー
    手段から削除された前記最小タイマキュー要素が所定の
    周期時間毎に起動される周期的タイマイベントに対応す
    る場合、削除された前記最小タイマキュー要素を前記タ
    イマキュー手段中の該所定の周期時間後に対応する位置
    に再接続することを特徴とする請求項1記載のタイマ管
    理装置。
  6. 【請求項6】 タイマイベントに対応するタイマキュー
    要素を新たに前記タイマキュー手段へ接続する接続手段
    をさらに備え、 該接続手段は、第1周期時間毎に起動される周期的タイ
    マイベントに対応した第1タイマキュー要素が既に前記
    タイマキュー手段に接続されている状態で、第1周期時
    間と所定の関係を有する第2周期時間毎に起動される周
    期的タイマイベントに対応した第2タイマキュー要素を
    新たに前記タイマキュー手段に接続する場合、第1タイ
    マキュー要素の最も早いタイムアップ時刻と第2タイマ
    キュー要素の第1回目のタイムアップ時刻を同時刻にす
    る接続をし、1回のタイマ割込みで第1タイマキュー要
    素および第2タイマキュー要素を同時にタイムアップさ
    せる回数を増やし、タイマ割込みによる消費電流を減ら
    すことを特徴とする請求項1記載のタイマ管理装置。
  7. 【請求項7】 第2周期時間の有する第1周期時間との
    前記所定の関係は第2周期時間が第1周期時間の倍数で
    ある関係であり、前記接続手段は、第1タイマキュー要
    素がタイムアップする最も早い時刻から現時刻を引いた
    値を第2タイマキュー要素の第1回目のタイマ値として
    接続し、第1タイマキュー要素のタイムアップ時刻と第
    2タイマキュー要素のタイムアップ時刻を同時刻にする
    ことを特徴とする請求項6記載のタイマ管理装置。
  8. 【請求項8】 第2周期時間の有する第1周期時間との
    前記所定の関係は第2周期時間が第1周期時間の約数で
    ある関係であり、前記接続手段は、第1タイマキュー要
    素がタイムアップする最も早い時刻から第2周期時間の
    整数倍を引いた時刻が現時刻より遅くならない最も早い
    時刻に第2タイマキュー要素を接続することを特徴とす
    る請求項6記載のタイマ管理装置。
  9. 【請求項9】 第2周期時間の有する第1周期時間との
    前記所定の関係は第2周期時間が第1周期時間と互いに
    素である関係であり、前記接続手段は、第1周期時間と
    第2周期時間との最小公倍数となる周期時間毎に第1タ
    イマキュー要素と第2タイマキュー要素とが同時にタイ
    ムアップするように接続することを特徴とする請求項6
    記載のタイマ管理装置。
  10. 【請求項10】 所定の起動時間を有するタイマイベン
    トに対応するタイマキュー要素を新たに前記タイマキュ
    ー手段へ接続する接続手段をさらに備え、該接続手段
    は、前記タイマキュー要素を前記所定の起動時間に基づ
    く周期時間と繰り返し回数を有し、該周期時間毎に該繰
    り返し回数分起動される周期的タイマイベントに対応す
    る周期的タイマキュー要素に変換して接続することを特
    徴とする請求項1記載のタイマ管理装置。
  11. 【請求項11】 前記タイマキュー要素は前記タイマ値
    に対する許容誤差をさらに備え、 前記並べ替え手段は、前記最小タイマキュー要素を保持
    するタイマキュー手段について、該最小タイマキュー要
    素の次に保持されたタイマキュー要素の有する前記許容
    誤差が前記タイマ値から前記最小のタイマ値を減じた値
    より小さい場合、該次に保持されたタイマキュー要素を
    該最小タイマキュー要素と共に該タイマキュー手段から
    削除することを特徴とする請求項1記載のタイマ管理装
    置。
  12. 【請求項12】 タイマイベントを待ち行列により管理
    するタイマ管理方法であって、該タイマ管理方法は、 タイマイベントに対応し、該タイマイベントのタイムア
    ップ時間に応じたタイマ値を有するタイマキュー要素を
    該タイマイベントの発行元別に待ち行列により1つ以上
    のタイマキュー手段に保持するステップと、 タイマイベントに応じたタイマ割込みが発生した場合、
    1つ以上の前記タイマキュー手段について、別個のタイ
    マキュー手段の先頭に保持された別個のタイマキュー要
    素が有するタイマ値の中で最小のタイマ値を有する最小
    タイマキュー要素を選択する選択ステップと、 前記最小タイマキュー要素を保持するタイマキュー手段
    について、該最小タイマキュー要素の次に保持されたタ
    イマキュー要素を先頭に保持し、該最小タイマキュー要
    素を該タイマキュー手段から削除する並べ替えステップ
    と、 前記最小タイマキュー要素が保持されたタイマキュー手
    段と異なる他のタイマキュー手段について、各タイマキ
    ュー手段の先頭に保持された各タイマキュー要素が有す
    るタイマ値から前記最小のタイマ値を減じた値を新たに
    タイマ値として再設定する再設定ステップとを備えたこ
    とを特徴とするタイマ管理方法。
JP11065502A 1999-03-11 1999-03-11 タイマー管理装置および方法 Pending JP2000259429A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11065502A JP2000259429A (ja) 1999-03-11 1999-03-11 タイマー管理装置および方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11065502A JP2000259429A (ja) 1999-03-11 1999-03-11 タイマー管理装置および方法

Publications (1)

Publication Number Publication Date
JP2000259429A true JP2000259429A (ja) 2000-09-22

Family

ID=13288928

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11065502A Pending JP2000259429A (ja) 1999-03-11 1999-03-11 タイマー管理装置および方法

Country Status (1)

Country Link
JP (1) JP2000259429A (ja)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6260642A (ja) * 1985-09-11 1987-03-17 日立電線株式会社 複合防水シ−ト
JP2005235228A (ja) * 2004-02-20 2005-09-02 Sony Computer Entertainment Inc マルチプロセッサシステムにおけるタスク管理方法および装置
US7050940B2 (en) 2004-03-17 2006-05-23 International Business Machines Corporation Method and system for maintaining and examining timers for network connections
JP2006134318A (ja) * 2004-10-21 2006-05-25 General Electric Co <Ge> 計測システムおよび制御システム向けのイベントベースのオペレーティングシステム、方法、および装置
US7536580B2 (en) 2006-02-20 2009-05-19 Fujitsu Limited System and method for generating timer output corresponding to timer request from plurality of processes
JP2010033245A (ja) * 2008-07-28 2010-02-12 Nippon Signal Co Ltd:The 二重化データ処理回路
JP2011186591A (ja) * 2010-03-05 2011-09-22 Renesas Electronics Corp プロセッサ及びその制御方法
US8028292B2 (en) 2004-02-20 2011-09-27 Sony Computer Entertainment Inc. Processor task migration over a network in a multi-processor system
CN103150246A (zh) * 2011-12-07 2013-06-12 索尼电脑娱乐公司 电子设备和定时器时刻设定方法
JP2015022649A (ja) * 2013-07-22 2015-02-02 大日本印刷株式会社 処理装置、処理方法、及び処理プログラム
WO2015071978A1 (ja) * 2013-11-13 2015-05-21 富士通株式会社 イベント管理プログラム、イベント管理方法および分散システム
US20160302255A1 (en) * 2015-04-10 2016-10-13 Kabushiki Kaisha Toshiba Sensor data collecting device
JP2018503276A (ja) * 2014-09-26 2018-02-01 インテル コーポレイション 複数のクライアントの周期的位置決定リクエストに対する可変間隔
JP2018524837A (ja) * 2015-04-28 2018-08-30 ランディス・ギア イノベーションズ インコーポレイテッドLandis+Gyr Innovations, Inc. ネットワークイベントタイマの最適化技術

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6260642A (ja) * 1985-09-11 1987-03-17 日立電線株式会社 複合防水シ−ト
JP2005235228A (ja) * 2004-02-20 2005-09-02 Sony Computer Entertainment Inc マルチプロセッサシステムにおけるタスク管理方法および装置
US8028292B2 (en) 2004-02-20 2011-09-27 Sony Computer Entertainment Inc. Processor task migration over a network in a multi-processor system
US7050940B2 (en) 2004-03-17 2006-05-23 International Business Machines Corporation Method and system for maintaining and examining timers for network connections
JP2006134318A (ja) * 2004-10-21 2006-05-25 General Electric Co <Ge> 計測システムおよび制御システム向けのイベントベースのオペレーティングシステム、方法、および装置
US7536580B2 (en) 2006-02-20 2009-05-19 Fujitsu Limited System and method for generating timer output corresponding to timer request from plurality of processes
JP2010033245A (ja) * 2008-07-28 2010-02-12 Nippon Signal Co Ltd:The 二重化データ処理回路
JP2011186591A (ja) * 2010-03-05 2011-09-22 Renesas Electronics Corp プロセッサ及びその制御方法
US9292071B2 (en) 2011-12-07 2016-03-22 Sony Corporation Electronic device and method for setting time of timer
CN103150246A (zh) * 2011-12-07 2013-06-12 索尼电脑娱乐公司 电子设备和定时器时刻设定方法
JP2013120130A (ja) * 2011-12-07 2013-06-17 Sony Computer Entertainment Inc 電子機器およびタイマ時刻設定方法
JP2015022649A (ja) * 2013-07-22 2015-02-02 大日本印刷株式会社 処理装置、処理方法、及び処理プログラム
WO2015071978A1 (ja) * 2013-11-13 2015-05-21 富士通株式会社 イベント管理プログラム、イベント管理方法および分散システム
JP6056986B2 (ja) * 2013-11-13 2017-01-11 富士通株式会社 イベント管理プログラム、イベント管理方法および分散システム
US9733997B2 (en) 2013-11-13 2017-08-15 Fujitsu Limited Event management method and distributed system
JP2018503276A (ja) * 2014-09-26 2018-02-01 インテル コーポレイション 複数のクライアントの周期的位置決定リクエストに対する可変間隔
US20160302255A1 (en) * 2015-04-10 2016-10-13 Kabushiki Kaisha Toshiba Sensor data collecting device
CN106055068A (zh) * 2015-04-10 2016-10-26 株式会社东芝 传感器数据收集装置
US9839064B2 (en) 2015-04-10 2017-12-05 Kabushiki Kaisha Toshiba Sensor data collecting device
CN106055068B (zh) * 2015-04-10 2019-06-11 株式会社东芝 传感器数据收集装置
JP2018524837A (ja) * 2015-04-28 2018-08-30 ランディス・ギア イノベーションズ インコーポレイテッドLandis+Gyr Innovations, Inc. ネットワークイベントタイマの最適化技術

Similar Documents

Publication Publication Date Title
EP2230603B1 (en) Method and apparatus for timing and event processing in wireless systems
JP2002517035A (ja) リアルタイムスケジューリングロジックおよび時間確定的アーキテクチャを使用する分散コンピューティング環境
TWI441083B (zh) 計時器管理之裝置與方法
US7043729B2 (en) Reducing interrupt latency while polling
JP2001051747A (ja) クロック制御回路
US8458508B2 (en) Information processing device which specifies a waiting time until execution of a given event and makes a system call
US7085948B2 (en) Method, apparatus, and computer program product for implementing time synchronization correction in computer systems
US7536580B2 (en) System and method for generating timer output corresponding to timer request from plurality of processes
CN114448403A (zh) 一种异步唤醒电路
CN121979624A (zh) 一种基于lstm预测阈值的分级调度算法
JP2984670B1 (ja) タイマ回路
JP2003162412A (ja) Cpuの省電力回路
CN119597413A (zh) 一种定时器单元的实现系统、方法、程序和装置
JP2000252827A (ja) A/d変換機能を内蔵したシングルチップマイクロコンピュータ
JPS60187277A (ja) モ−タ駆動装置
JPH07325800A (ja) データフロープロセサ
JPH0432922A (ja) インタフェース制御回路
JPH1063545A (ja) 情報蓄積装置
JPS60179865A (ja) 割込み受付け制御方式
JP2008243220A (ja) 情報処理通信装置
JPH0668015A (ja) アサイン情報保持回路
JPH04192037A (ja) 半導体集積回路
JPH07281991A (ja) データ転送装置
JPH04271448A (ja) バス監視装置
JPH0458355A (ja) インタフェース制御回路