ログインしていません。このフォーラムはログインユーザのみに投稿が許可されています。投稿する場合はログインしてください。
ダウンロード
Magazine
開発
アカウント
ダウンロード
Magazine
開発
ログイン
アカウント/パスワードを忘れた
アカウント作成
言語
ヘルプ
言語
ヘルプ
×
ログイン
ログイン名
パスワード
×
アカウント/パスワードを忘れた
日本語の翻訳状況
カテゴリ:
ソフトウェア
人物
PersonalForge
Magazine
Wiki
検索
OSDN
>
ソフトウェアを探す
>
システム
>
オペレーティングシステム カーネル
>
Hyper Operating System(ITRON仕様OS)
>
フォーラム
>
開発者
>
isig.timでのタイマハンドラ呼出しについて
Hyper Operating System(ITRON仕様OS)
Fork
概要
プロジェクト概要
開発ダッシュボード
Webページ
開発メンバー
画像ギャラリー
公開フィード一覧
活動
統計情報
活動履歴
ダウンロード
リリース一覧
統計
ソースコード
コードリポジトリリスト
Git
hos-v4a
CVS
リポジトリ閲覧
チケット
チケット一覧
マイルストーン一覧
チケットの種類一覧
コンポーネント一覧
よく使われるチケット一覧のリスト/RSS
新規チケット登録
文書
コミュニケーション
フォーラム
フォーラム一覧
開発者 (758)
ヘルプ (688)
公開討議 (342)
メーリングリスト
MLの一覧
hos-cvs
hos-git
ニュース
フォーラム:
開発者
(スレッド #37733)
話題(スレッド)一覧に戻る
RSS
isig.timでのタイマハンドラ呼出しについて (2016-05-20 01:04 by
komet
#78071)
チケットに引用
ohmshaのITRONプログラミング入門で勉強中の者です。
h8/3664でのsampleプログラムでの質問です。
システムクロック生成のためisig_tim.cというファイルがありますが、
そのなかで、タイマハンドラ呼出しというコードがあります。
isig_tim.cの66行目で
/* タイマハンドラ呼び出し */
tim_ptr->timhdr(tim_ptr, tic);
という記述があります。
knl_tim.hというファイルの
/* タイマオブジェクト構造体 */
typedef struct t_kernel_tim
{
struct t_kernel_tim *next;
struct t_kernel_tim *prev;
FP timhdr;
} T_KERNEL_TIM;
で関数ポインタになっているような
記述は見つけたのですが、
その先が見つかりません。
timhdrとは
どこかに
タイマハンドラとして
記述があるのでしょうか?
すみませんがご教授お願いいたします。
Re: isig.timでのタイマハンドラ呼出しについて (2016-05-20 09:23 by
hamayan
#78072)
チケットに引用
お世話になっております。
66行目辺りのループ文では、時間管理機能のサービスコールで登録されたハンドラを
呼び出しています。
周期ハンドラやアラームハンドラなどです。
以上、よろしくお願いいたします。
[メッセージ #78071 への返信]
> ohmshaのITRONプログラミング入門で勉強中の者です。
> h8/3664でのsampleプログラムでの質問です。
>
> システムクロック生成のためisig_tim.cというファイルがありますが、
> そのなかで、タイマハンドラ呼出しというコードがあります。
>
> isig_tim.cの66行目で
> /* タイマハンドラ呼び出し */
> tim_ptr->timhdr(tim_ptr, tic);
> という記述があります。
>
> knl_tim.hというファイルの
> /* タイマオブジェクト構造体 */
> typedef struct t_kernel_tim
> {
> struct t_kernel_tim *next;
> struct t_kernel_tim *prev;
> FP timhdr;
> } T_KERNEL_TIM;
> で関数ポインタになっているような
> 記述は見つけたのですが、
> その先が見つかりません。
>
> timhdrとは
> どこかに
> タイマハンドラとして
> 記述があるのでしょうか?
> すみませんがご教授お願いいたします。
#78071
への返信
Re: isig.timでのタイマハンドラ呼出しについて (2016-05-22 16:01 by
ryuz
#78079)
チケットに引用
お世話になります。Ryuzです。
タイマを使うオブジェクトの timhdr への登録は
alm\ini_alm.c 28行目
ini_cyc.c 28行目
kcre_cyc.c 43行目
などにあります。
ITRON機能のなかで時間を扱うものはいくつかありますが、HOSでは内部的に1つのキューに統合しており、各種静的API/動的APIでの生成オブジェクトの状態に応じて登録が行われます。
よろしくお願いいたします。
#78071
への返信