17.5.2 セマフォ情報

セマフォ情報では,

1 ) ID semid

2 ) 属性(キューイング方式)sematr

3 ) 初期資源数isemcnt

4 ) 最大資源数maxsem

といった項目を個々のセマフォに対して定義します。

なお,セマフォ情報として定義可能な数は,1つのIDに対して1個に限られます。

以下に,セマフォ情報の記述形式を示します。

 
 CRE_SEM ( semid, { sematr, isemcnt, maxsem } );


以下に,セマフォ情報で記述する項目について示します。

1 ) ID semid

セマフォのIDを指定します。
なお,semidとして指定可能な値は“0x1〜0xff,または名前”に限られます。


備考 semidに“名前”を指定した場合,CF850V4はIDの自動割り付け処理を行います。なお,名前とIDの対応は,下記形式でシステム情報ヘッダ・ファイルに出力されます。

 #define semid   	数値
2 ) 属性(キューイング方式)sematr

セマフォの属性(キューイング方式)を指定します。
なお,sematrとして指定可能な値は“TA_TFIFO,TA_TPRIのいずれか”に限られます。


TA_TFIFO: 資源の獲得要求を行った順

TA_TPRI: タスクの優先度順

3 ) 初期資源数isemcnt

セマフォの初期資源数を指定します。
なお,isemcntとして指定可能な値は“0x0〜最大資源数maxsem”に限られます。


4 ) 最大資源数maxsem

セマフォの最大資源数を指定します。
なお,maxsemとして指定可能な値は“0x1〜0xffff”に限られます。