第 4 章 SMP T-Kernel/OS の機能
4.7 時間管理機能
4.7.1 システム時刻管理
システム時刻管理機能は、システム時刻を操作するための機能である。システム時刻を設定/参照する機能、シ ステム稼働時間を参照する機能が含まれる。
SMP T-Kernel のシステム時刻管理は、T-Kernel 1.00 仕様と差異はない。システム時刻管理のシステムコールを 以下の表にまとめる。詳細は各システムコールの説明を参照のこと。
コール名 機 能
T-Kernel 1.00仕様 との相違
tk_set_tim システム時刻設定 ○
tk_get_tim システム時刻参照 ○
tk_get_otm システム稼動時間参照 ○
T-Kernel 1.00 仕様との相違 ○:無し ×:有り △:アクセス保護で E_DACV エラーが返る点のみ異なる
Copyright © 2006-2017 T-Engine Forum. All Rights Reserved.
システム時刻設定 tk_set_tim
tk_set_tim:Set Time
【C 言語インタフェース】
ER ercd = tk_set_tim ( SYSTIM *pk_tim ) ;
【パラメータ】
SYSTIM* pk_tim Packet of CurrentTime 現在時刻を示すパケット
pk_tim の内容 システム設定用の現在時刻
W hi high 32bits システム設定用の現在時刻の上位 32 ビット W lo low 32bits システム設定用の現在時刻の上位 32 ビット
【リターンパラメータ】
ER ercd ErrorCode エラーコード
【エラーコード】
E_OK 正常終了
E_PAR パラメータエラー(pk_tim が不正,設定時間が不正)
【解説】
システム時刻の値を pk_tim で示される値に設定する。
システム時刻は、1985 年 1 月 1 日 0 時(GMT)からの通算のミリ秒数とする。
【補足事項】
システムの動作中に tk_set_tim を使ってシステム時刻を変更した場合にも、RELTIM や TMO で指定された相対時間 は変化しない。例えば、60 秒後にタイムアウトする様に指定した場合、タイムアウト待ちの間に tk_set_tim で時間 を 60 秒進めてもそこでタイムアウトすることはなく、60 秒後にタイムアウトする。したがって、tk_set_tim によ ってタイムアウトするシステム時刻は変化することになる。
【SMP T-Kernel に関する事項】
T-Kernel 1.00 仕様との相違点はない。
システム時刻参照 tk_get_tim
tk_get_tim:Get Time
【C 言語インタフェース】
ER ercd = tk_get_tim ( SYSTIM *pk_tim ) ;
【パラメータ】
SYSTIM* pk_tim Packet of CurrentTime 現在時刻を返す領域へのポインタ
【リターンパラメータ】
ER ercd ErrorCode エラーコード
pk_tim の内容 システムの現在時刻
W hi high 32bits システムの現在時刻の上位 32 ビット W lo low 32bits システムの現在時刻の上位 32 ビット
【エラーコード】
E_OK 正常終了
E_PAR パラメータエラー(pk_tim が不正)
【解説】
システム時刻の現在の値を読み出し、リターンパラメータ pk_tim に返す。
システム時刻は、1985 年 1 月 1 日 0 時(GMT)からの通算のミリ秒数とする。
【SMP T-Kernel に関する事項】
T-Kernel 1.00 仕様との相違点はない。
Copyright © 2006-2017 T-Engine Forum. All Rights Reserved.
システム稼働時間参照 tk_get_otm
tk_get_otm:Get Operating Time
【C 言語インタフェース】
ER ercd = tk_get_otm ( SYSTIM *pk_tim ) ;
【パラメータ】
SYSTIM* pk_tim Packet of Operating Time 稼働時間を返す返す領域へのポインタ
【リターンパラメータ】
ER ercd エラーコード
pk_tim の内容 システム稼働時間
W hi high 32bits システム稼働時間の上位 32 ビット W lo low 32bits システム稼働時間の上位 32 ビット
【エラーコード】
E_OK 正常終了
E_PAR パラメータエラー(pk_tim が不正)
【解説】
システム稼働時間を取得する。
システム稼働時間はシステム時刻(時刻)と異なり、システム起動時からの単純増加する稼働時間を表す。
tk_set_tim による時刻設定に影響されない。
システム稼働時間はシステム時刻と同じ精度でなければならない。
【SMP T-Kernel に関する事項】
T-Kernel 1.00 仕様との相違点はない。