Everything

第17章  システム・コンフィギュレーション・ファイル


本章では,RI850V4に提供するデータを保持した情報ファイル(システム情報テーブル・ファイルなど)を生成する際に必要となるシステム・コンフィギュレーション・ファイルの記述方法について解説しています。
17.1 概  要
以下に,システム・コンフィギュレーション・ファイルの表記方法を示します。
- 文字コード
システム・コンフィギュレーション・ファイルは,ASCIIコードで記述します。
なお,CF850V4では,英小文字(a~z)と英大文字(A~Z)の区別が行われます。
備考 コメントに限り,Shift-JIS,EUC-JPの記述が可能です。
- コメント
システム・コンフィギュレーション・ファイルでは,/*から*/で囲まれた部分,および// (連続する2個のスラッシュ)から行末までの部分がコメントとして扱われます。
- 数値
システム・コンフィギュレーション・ファイルでは,数字(0~9)で始まる単語が数値として扱われます。
なお,CF850V4では,数値を以下のように区別しています。
8進数: 0で始まる単語
10進数: 0以外の数字で始まる単語
16進数: 0x,または0Xで始まる単語
備考 特に指定のない限り,数値として指定可能な範囲は,0x0~0xffffffffに限られます。
- シンボル名
システム・コンフィギュレーション・ファイルでは,英字(a~z,A~Z),または_(アンダースコア)で始まる単語がシンボル名として扱われます。
また,システム・コンフィギュレーション・ファイルでは,“シンボル名 + オフセット”といった形式の記述も可能ではありますが,オフセットは定数式に限定されます。
以下に,シンボル名の記述例(良い例,悪い例)を示します。
なお,CF850V4では,シンボル名と名前をシステム・コンフィギュレーション・ファイルの文脈から区別しています。
【 良い例 】
      func + 0x80000          // funcは関数名
      symbol + 0x90 * 80      // symbolは変数名
      symbol + BASE           // BASEはデータ・マクロ
【 悪い例 】
      ( func + 0x8000 )       // 先頭文字が不正である
      0x8000 + func           // 先頭文字が不正である
      BASE + func             // データ・マクロBASEがシンボル名として扱われる
      func * 0x8000           // オフセットの形式になっていない
備考 シンボル名として指定可能な文字数は,オフセット,空白を含めて4095文字以内に限られます。
- 名前
システム・コンフィギュレーション・ファイルでは,英字(a~z,A~Z),または_(アンダースコア)で始まる単語が名前として扱われます。
なお,CF850V4では,名前とシンボル名をシステム・コンフィギュレーション・ファイルの文脈から区別しています。
備考 名前として指定可能な文字数は,255文字以内に限られます。
- キーワード
以下に示した単語は,CF850V4によってキーワードとして予約されています。このため,これらの単語を指定された用途以外に使用することは禁止されています。
ATT_INI  CLK_INTNO  CPU_TYPE  CRE_CYC
CRE_DTQ  CRE_FLG  CRE_MBX  CRE_MPF
CRE_MPL  CRE_MTX  CRE_SEM  CRE_TSK
DEF_EXC  DEF_FPSR  DEF_INH  DEF_SVC
DEF_TEX  DEF_TIM  INCLUDE  INT_STK
MAX_CYC  MAX_DTQ  MAX_FLG  MAX_INT
MAX_INTPRI  MAX_MBX  MAX_MPF  MAX_MPL
MAX_MTX  MAX_PRI  MAX_SEM  MAX_SVC
MAX_TSK  MEM_AREA  NULL  SERVICECALL
RI_SERIES  SIZE_AUTO  STK_CHK  SYS_STK
TA_ACT  TA_ASM  TA_CLR  TA_DISINT
TA_DISPREEMPT  TA_ENAINT  TA_HLNG  TA_MFIFO
TA_MPRI  TA_OFF  TA_ON  TA_PHS
TA_RSTR  TA_STA  TA_TFIFO  TA_TPRI
TA_WMUL  TA_WSGL  TBIT_FLGPTN  TBIT_TEXPTN
TIC_DENO  TIC_NUME  TKERNEL_MAKER  TKERNEL_PRID
TKERNEL_PRVER  TKERNEL_SPVER  TMAX_ACTCNT  TMAX_MPRI
TMAX_SEMCNT  TMAX_SUSCNT  TMAX_TPRI  TMAX_WUPCNT
TMIN_MPRI  TMIN_TPRI  TSZ_DTQ  TSZ_MBF
TSZ_MPF  TSZ_MPL  TSZ_MPRIHD  VATT_IDL
VDEF_RTN G3K  G3M  G3KH
G3MH
備考 CF850V4では,上記に示した単語のほかに,サービス・コール名(act_tsk,slp_tskなど),_kernel_で始まる単語,表B-1に示すRI850V4が使用するセクション名称をキーワードとして予約しています。
17.2 コンフィギュレーション情報
システム・コンフィギュレーション・ファイルに記述するデータ(コンフィギュレーション情報)は,以下に示した3種類に大別されます。
- 宣言情報
システム・コンフィギュレーション・ファイル内で使用するデータ・マクロの実体が定義されているヘッダ・ファイル(ヘッダ・ファイル名)に関するデータ
- システム情報
RI850V4が動作するうえで必要となるOS資源(リアルタイムOS名,CPU種別など)に関するデータ
- 静的API情報
システムで使用する管理オブジェクト(タスク,セマフォなど)に関するデータ
17.2.1 記述上の注意点
システム・コンフィギュレーション・ファイルにデータ(コンフィギュレーション情報)を記述する場合,以下の順序で行います。
1 ) 宣言情報の記述
2 ) システム情報の記述
3 ) 静的API情報の記述
なお,システム情報としてグルーピングされている各種情報(RIシリーズ情報基本情報など),および静的API情報としてグルーピングされている各種情報(タスク情報セマフォ情報など)については,グループ内であれば順不動で記述することができます。
以下に,システム・コンフィギュレーション・ファイルの記述イメージを示します。
図17-1  システム・コンフィギュレーション・ファイルの記述イメージ
 -- 宣言情報ヘッダ・ファイル情報)の記述
 ............
 ............
 
 -- システム情報RIシリーズ情報基本情報など)の記述
 ............
 ............
 
 -- 静的API情報タスク情報セマフォ情報など)の記述
 ............
 ............