ダウンロード
Magazine
開発
アカウント
ダウンロード
Magazine
開発
ログイン
アカウント/パスワードを忘れた
アカウント作成
言語
ヘルプ
言語
ヘルプ
×
ログイン
ログイン名
パスワード
×
アカウント/パスワードを忘れた
日本語の翻訳状況
カテゴリ:
ソフトウェア
人物
PersonalForge
Magazine
Wiki
検索
OSDN
>
ソフトウェアを探す
>
システム
>
オペレーティングシステム カーネル
>
Hyper Operating System(ITRON仕様OS)
>
フォーラム
>
ヘルプ
>
CRE_FLGについて
Hyper Operating System(ITRON仕様OS)
Fork
概要
プロジェクト概要
開発ダッシュボード
Webページ
開発メンバー
画像ギャラリー
公開フィード一覧
活動
統計情報
活動履歴
ダウンロード
リリース一覧
統計
ソースコード
コードリポジトリリスト
Git
hos-v4a
CVS
リポジトリ閲覧
チケット
チケット一覧
マイルストーン一覧
チケットの種類一覧
コンポーネント一覧
よく使われるチケット一覧のリスト/RSS
新規チケット登録
文書
コミュニケーション
フォーラム
フォーラム一覧
開発者 (758)
ヘルプ (688)
公開討議 (342)
メーリングリスト
MLの一覧
hos-cvs
hos-git
ニュース
フォーラム:
ヘルプ
(スレッド #5831)
話題(スレッド)一覧に戻る
RSS
CRE_FLGについて (2004-08-24 15:36 by
匿名
#10725)
返信
チケットに引用
また初歩的な質問ですみません。
静的生成でIDを連続した番号でなく飛び飛びな番号で生成可能でしょうか?
連続しない番号の場合、セマフォオブジェクトがアロケートされていないエリアまで初期化されているような気がします。動的生成の場合もHOS_MAX_FLGIDで指定した範囲を初期化してしまうようです。
メッセージ #10725 への返信
×
題名
本文
メッセージ #10725 への返信 > また初歩的な質問ですみません。 > 静的生成でIDを連続した番号でなく飛び飛びな番号で生成可能でしょうか? > > 連続しない番号の場合、セマフォオブジェクトがアロケートされていないエリアまで初期化されているような気がします。動的生成の場合もHOS_MAX_FLGIDで指定した範囲を初期化してしまうようです。 > >
Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。
ログインする
ニックネーム
プレビュー
投稿
キャンセル
RE: CRE_FLGについて (2004-08-24 15:43 by
匿名
#10726)
返信
チケットに引用
すみません、セマフォでなくてフラグの場合です。
#10725
への返信
メッセージ #10726 への返信
×
題名
本文
メッセージ #10726 への返信 > すみません、セマフォでなくてフラグの場合です。
Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。
ログインする
ニックネーム
プレビュー
投稿
キャンセル
RE: CRE_FLGについて (2004-08-24 16:04 by
hamayan
#10727)
返信
チケットに引用
試しに
HOS_MAX_FLGID(16);
CRE_FLG(FID_RTLINT, {TA_TFIFO | TA_WSGL , 0});
CRE_FLG(FID_RTLINTSND, {TA_TFIFO | TA_WSGL , 0});
CRE_FLG(FID_RTLINTOVW, {TA_TFIFO | TA_WSGL , 0});
CRE_FLG(10, {TA_TFIFO | TA_WSGL , 0});
CRE_FLG(12, {TA_TFIFO | TA_WSGL , 0});
CRE_FLG(14, {TA_TFIFO | TA_WSGL , 0});
CRE_FLG(16, {TA_TFIFO | TA_WSGL , 0});
と書いて、コンフィギュレータ-に掛けたら、
/* ------------------------------------------ */
/* create event flag objects */
/* ------------------------------------------ */
/* event flag control block for rom area */
const T_KERNEL_FLGCB_ROM kernel_flgcb_rom[7] =
{
{(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)},
{(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)},
{(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)},
{(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)},
{(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)},
{(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)},
{(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)},
};
/* event flag control block for ram area */
T_KERNEL_FLGCB_RAM kernel_flgcb_ram[7];
/* event flag control block table */
T_KERNEL_FLGCB_RAM *kernel_flgcb_ram_tbl[16] =
{
&kernel_flgcb_ram[0],
&kernel_flgcb_ram[1],
&kernel_flgcb_ram[2],
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
&kernel_flgcb_ram[3],
NULL,
&kernel_flgcb_ram[4],
NULL,
&kernel_flgcb_ram[5],
NULL,
&kernel_flgcb_ram[6],
};
/* event flag control block count */
const INT kernel_flgcb_cnt = 16;
と生成してきたのですが、そう言う事ではなくて?。
しかし、実際にIDを飛び飛びに設定して、正しく動くかどうかまでは確認していません。
誰かやった人、居ます?。
#10726
への返信
メッセージ #10727 への返信
×
題名
本文
メッセージ #10727 への返信 > 試しに > HOS_MAX_FLGID(16); > > CRE_FLG(FID_RTLINT, {TA_TFIFO | TA_WSGL , 0}); > CRE_FLG(FID_RTLINTSND, {TA_TFIFO | TA_WSGL , 0}); > CRE_FLG(FID_RTLINTOVW, {TA_TFIFO | TA_WSGL , 0}); > CRE_FLG(10, {TA_TFIFO | TA_WSGL , 0}); > CRE_FLG(12, {TA_TFIFO | TA_WSGL , 0}); > CRE_FLG(14, {TA_TFIFO | TA_WSGL , 0}); > CRE_FLG(16, {TA_TFIFO | TA_WSGL , 0}); > > と書いて、コンフィギュレータ-に掛けたら、 > /* ------------------------------------------ */ > /* create event flag objects */ > /* ------------------------------------------ */ > > /* event flag control block for rom area */ > const T_KERNEL_FLGCB_ROM kernel_flgcb_rom[7] = > { > {(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)}, > {(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)}, > {(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)}, > {(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)}, > {(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)}, > {(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)}, > {(ATR)(TA_TFIFO | TA_WSGL), (FLGPTN)(0)}, > }; > > /* event flag control block for ram area */ > T_KERNEL_FLGCB_RAM kernel_flgcb_ram[7]; > > /* event flag control block table */ > T_KERNEL_FLGCB_RAM *kernel_flgcb_ram_tbl[16] = > { > &kernel_flgcb_ram[0], > &kernel_flgcb_ram[1], > &kernel_flgcb_ram[2], > NULL, > NULL, > NULL, > NULL, > NULL, > NULL, > &kernel_flgcb_ram[3], > NULL, > &kernel_flgcb_ram[4], > NULL, > &kernel_flgcb_ram[5], > NULL, > &kernel_flgcb_ram[6], > }; > > /* event flag control block count */ > const INT kernel_flgcb_cnt = 16; > > と生成してきたのですが、そう言う事ではなくて?。 > > しかし、実際にIDを飛び飛びに設定して、正しく動くかどうかまでは確認していません。 > 誰かやった人、居ます?。
Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。
ログインする
ニックネーム
プレビュー
投稿
キャンセル
RE: CRE_FLGについて NULLの部分が? (2004-08-24 17:11 by
匿名
#10730)
返信
チケットに引用
すみません、回答ありがとうございます。
ソースのkernel_ini_flgを見るとNULLをチェックしていないので、単純にIDの最初から順番に初期化されるのではないでしょうか?
#10725
への返信
メッセージ #10730 への返信
×
題名
本文
メッセージ #10730 への返信 > すみません、回答ありがとうございます。 > ソースのkernel_ini_flgを見るとNULLをチェックしていないので、単純にIDの最初から順番に初期化されるのではないでしょうか?
Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。
ログインする
ニックネーム
プレビュー
投稿
キャンセル
RE: CRE_FLGについて NULLの部分が? (2004-08-24 17:32 by
hamayan
#10731)
返信
チケットに引用
確かに、他のセマとかタスクの場合はNULLのチェックが入っていますね。
KERNEL_FLGID_TO_FLGCB_RAM(i)->flgptn = KERNEL_FLGID_TO_FLGCB_RAM(i)->flgcb_rom->iflgptn;
なので、コンフィギュレータでNULLに初期化されている領域の代入を行った場合、特に0番地がROMでは無いシステムの場合は、問題が有るかも。
セマのコードをぱくって、
if ( KERNEL_FLGID_TO_FLGCB_RAM(i) != NULL )
KERNEL_FLGID_TO_FLGCB_RAM(i)->flgptn = KERNEL_FLGID_TO_FLGCB_RAM(i)->flgcb_rom->iflgptn;
となるのでしょうか?。
そろそろm-araiさんの登場の予感。
#10730
への返信
メッセージ #10731 への返信
×
題名
本文
メッセージ #10731 への返信 > 確かに、他のセマとかタスクの場合はNULLのチェックが入っていますね。 > KERNEL_FLGID_TO_FLGCB_RAM(i)->flgptn = KERNEL_FLGID_TO_FLGCB_RAM(i)->flgcb_rom->iflgptn; > なので、コンフィギュレータでNULLに初期化されている領域の代入を行った場合、特に0番地がROMでは無いシステムの場合は、問題が有るかも。 > > セマのコードをぱくって、 > if ( KERNEL_FLGID_TO_FLGCB_RAM(i) != NULL ) > KERNEL_FLGID_TO_FLGCB_RAM(i)->flgptn = KERNEL_FLGID_TO_FLGCB_RAM(i)->flgcb_rom->iflgptn; > > となるのでしょうか?。 > そろそろm-araiさんの登場の予感。
Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。
ログインする
ニックネーム
プレビュー
投稿
キャンセル
RE: CRE_FLGについて NULLの部分が? (2004-08-24 20:19 by
m-arai
#10733)
返信
チケットに引用
http://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/hos/hos/hos-v4/src/kernel/flg/ini_flg.c.diff?r1=1.5&r2=1.6
#10731
への返信
メッセージ #10733 への返信
×
題名
本文
メッセージ #10733 への返信 > http://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/hos/hos/hos-v4/src/kernel/flg/ini_flg.c.diff?r1=1.5&r2=1.6
Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。
ログインする
ニックネーム
プレビュー
投稿
キャンセル
RE: CRE_FLGについて NULLの部分が? (2004-08-24 21:19 by
hamayan
#10734)
返信
チケットに引用
素早い対応、有難うございます。(’-’*)
#10733
への返信
メッセージ #10734 への返信
×
題名
本文
メッセージ #10734 への返信 > 素早い対応、有難うございます。(’-’*)
Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。
ログインする
ニックネーム
プレビュー
投稿
キャンセル
RE: CRE_FLGについて ありがとうございます。 (2004-08-24 23:10 by
匿名
#10736)
返信
チケットに引用
すみません、HOSの恩恵を受ける身で質問ばかりで、いろいろと対応していだだきまして、ありがとうございます。
#10725
への返信
メッセージ #10736 への返信
×
題名
本文
メッセージ #10736 への返信 > すみません、HOSの恩恵を受ける身で質問ばかりで、いろいろと対応していだだきまして、ありがとうございます。
Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。
ログインする
ニックネーム
プレビュー
投稿
キャンセル
RE: CRE_FLGについて ありがとうございます。 (2004-08-24 23:29 by
m-arai
#10737)
返信
チケットに引用
いえいえ、こうして問題点を適切に指摘するバグ報告を
していただけたからには、既に一方的な受益者では
ありません。
お蔭様でまた一つバグが減りました。今後ともよろしく
お願いします。
#10736
への返信
メッセージ #10737 への返信
×
題名
本文
メッセージ #10737 への返信 > いえいえ、こうして問題点を適切に指摘するバグ報告を > していただけたからには、既に一方的な受益者では > ありません。 > お蔭様でまた一つバグが減りました。今後ともよろしく > お願いします。
Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。
ログインする
ニックネーム
プレビュー
投稿
キャンセル