(toppers-users 4073) Re: ASPのref_tsk()で初期値の優先度の戻り値が正しくないようです。

koizumi yoshiyuki koizumiyoshiyuki @ gmail.com
2013年 4月 13日 (土) 23:51:29 JST


 本田さん

ありがとうございます。初期優先度とベース優先度の違いを認識していませんでした。ベース優先度はミューテックスなので優先度が変化したとき戻るための優先度ですね。
拡張機能はあまり良く見ていませんでし。又、優先度を変更するとき、現行優先度をスタックに保存するシステム(変更時の記述に制限が付きます)を使っていたので勘違いをしていました。

 当方の勘違いですみませんでした。

 以上

2013年4月13日 20:50 Shinya Honda <honda @ ertl.jp>:

> こいさん
>
> 本田です.
>
> pk_rtsk->tskbpri  には,タスクの"初期優先度"ではなく,"ベース優先度"が格
> 納されます.
>
> ASPカーネルの場合は,優先度上限ミューテックスをサポートしていないため,"
> ベース優先度"と"現在優先度"は常に同じ値になるので,現状のコードで問題あ
> りません.
>
> 以上,よろしくお願いします.
>
> (2013/04/13 16:01), koizumi yoshiyuki wrote:
> > こいさんです。
> >
> > ASPの個別パッケージasp_stbee_armcc-20120310.zip(SJIS版)<
> https://www.toppers.jp/download.cgi/asp_stbee_armcc-20120310.zip
> >を使用しています。sample1を修正したプログラムでercd
> > = ref_tsk(task[i], &rtsk);を実行したところ、初期値優先度が実行時優先度と同じ値が戻ってきます。
> > task_refer.cのref_tsk()の優先度を戻す処理が変な気がします。
> >
> > pk_rtsk->tskpri = EXT_TSKPRI(p_tcb->priority);
> > // pk_rtsk->tskbpri = EXT_TSKPRI(p_tcb->priority);
> > pk_rtsk->tskbpri = EXT_TSKPRI(p_tcb->p_tinib->ipriority);
> >
> > コメントが元のソースです。次の行が当方で修正したもので、正しい値が帰っています。
> >
> > SSPではサポートされていません。HRPのHRPカーネル Release
> > 1.0<https://www.toppers.jp/download.cgi/hrp-1.0.zip>
> > も同様な記述になっています。その他は見ていません。
> >
> > この戻り値使うつもりはありませんが、たまたま確認して気が付きました。使い道が良くわかりません、仕様から削除したほうが良いかも知れませんね。
> > 今更なこんな指摘です。私の認識に誤りがあるかも知れません。よろしくお願いします。
> >
> > 以上
> >
>
>
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://www.toppers.jp/pipermail/users/attachments/20130413/03c8126f/attachment.html>