Ignore:
Timestamp:
Aug 23, 2017, 9:27:43 AM (7 years ago)
Author:
coas-nagasima
Message:

文字コードを設定

Location:
EcnlProtoTool/trunk/asp3_dcre/include
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • EcnlProtoTool/trunk/asp3_dcre/include/itron.h

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-chdr to text/x-chdr;charset=UTF-8
    r270 r321  
    88 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    99 *
    10  *  上記著作権è€
    11 ã¯ï¼Œä»¥ä¸‹ã®(1)~(4)の条件を満たす場合に限り,本ソフトウェ
    12  *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
    13  *  変・再é
    14 å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
    15  *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
    16  *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
    17  *      スコード中に含まれていること.
    18  *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
    19  *      用できる形で再é
    20 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é
    21 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
    22  *      è€
    23 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—作権表示,この利用条件および下記
    24  *      の無保証規定を掲載すること.
    25  *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
    26  *      用できない形で再é
    27 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
    28  *      と.
    29  *    (a) 再é
    30 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€
    31 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—
    32  *        作権表示,この利用条件および下記の無保証規定を掲載すること.
    33  *    (b) 再é
    34 å¸ƒã®å½¢æ
    35 ‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
    36  *        報告すること.
    37  *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
    38  *      害からも,上記著作権è€
    39 ãŠã‚ˆã³TOPPERSプロジェクトをå
    40 è²¬ã™ã‚‹ã“と.
    41  *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
    42  *      由に基づく請求からも,上記著作権è€
    43 ãŠã‚ˆã³TOPPERSプロジェクトを
    44  *      å
    45 è²¬ã™ã‚‹ã“と.
     10 *  上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
     11 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     12 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     13 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     14 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     15 *      スコード中に含まれていること.
     16 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     17 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     18 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     19 *      の無保証規定を掲載すること.
     20 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     21 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     22 *      と.
     23 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     24 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     25 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     26 *        報告すること.
     27 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     28 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     29 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     30 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     31 *      免責すること.
    4632 *
    47  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    48 ãŠ
    49  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
    50  *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
    51  *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
    52  *  の責任を負わない.
     33 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     34 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     35 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     36 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     37 *  の責任を負わない.
    5338 *
    5439 *  $Id$
     
    5641
    5742/*
    58  *              ITRON仕様å
    59 ±é€šè¦å®šã®ãƒ‡ãƒ¼ã‚¿åž‹ãƒ»å®šæ•°ãƒ»ãƒžã‚¯ãƒ­
     43 *              ITRON仕様共通規定のデータ型・定数・マクロ
    6044 *
    61  *  このヘッダファイルは,ITRON仕様å
    62 ±é€šè¦å®šã®ãƒ‡ãƒ¼ã‚¿åž‹ãƒ»å®šæ•°ãƒ»ãƒžã‚¯ãƒ­ã®ä¸­
    63  *  で,TOPPERSå
    64 ±é€šãƒ˜ãƒƒãƒ€ãƒ•ã‚¡ã‚¤ãƒ«ã«å«ã¾ã‚Œãªã„ものの定義を含む.ITRON仕
    65  *  様との互換性をå¿
    66 è¦ã¨ã™ã‚‹ã‚¢ãƒ—リケーションがインクルードすることを想
    67  *  定している.
     45 *  このヘッダファイルは,ITRON仕様共通規定のデータ型・定数・マクロの中
     46 *  で,TOPPERS共通ヘッダファイルに含まれないものの定義を含む.ITRON仕
     47 *  様との互換性を必要とするアプリケーションがインクルードすることを想
     48 *  定している.
    6849 *
    69  *  アセンブリ言語のソースファイルからこのファイルをインクルードする時
    70  *  は,TOPPERS_MACRO_ONLYを定義しておく.これにより,マクロ定義以外を
    71  *  除くようになっている.
     50 *  アセンブリ言語のソースファイルからこのファイルをインクルードする時
     51 *  は,TOPPERS_MACRO_ONLYを定義しておく.これにより,マクロ定義以外を
     52 *  除くようになっている.
    7253 */
    7354
     
    8061
    8162/*
    82  *  TOPPERSå
    83 ±é€šãƒ˜ãƒƒãƒ€ãƒ•ã‚¡ã‚¤ãƒ«
     63 *  TOPPERS共通ヘッダファイル
    8464 */
    8565#include <t_stddef.h>
    8666
    8767/*
    88  *  ITRON仕様å
    89 ±é€šãƒ‡ãƒ¼ã‚¿åž‹
     68 *  ITRON仕様共通データ型
    9069 */
    9170#ifndef TOPPERS_MACRO_ONLY
    9271
    9372#ifdef INT8_MAX
    94 typedef int8_t                  B;                      /* 符号付き8ビット整数 */
     73typedef int8_t                  B;                      /* 符号付き8ビット整数 */
    9574#endif /* INT8_MAX */
    9675
    9776#ifdef UINT8_MAX
    98 typedef uint8_t                 UB;                     /* 符号無し8ビット整数 */
    99 typedef uint8_t                 VB;                     /* 型が定まらない8ビットの値 */
     77typedef uint8_t                 UB;                     /* 符号無し8ビット整数 */
     78typedef uint8_t                 VB;                     /* 型が定まらない8ビットの値 */
    10079#endif /* UINT8_MAX */
    10180
    102 typedef int16_t                 H;                      /* 符号付き16ビット整数 */
    103 typedef uint16_t                UH;                     /* 符号無し16ビット整数 */
    104 typedef uint16_t                VH;                     /* 型が定まらない16ビットの値 */
     81typedef int16_t                 H;                      /* 符号付き16ビット整数 */
     82typedef uint16_t                UH;                     /* 符号無し16ビット整数 */
     83typedef uint16_t                VH;                     /* 型が定まらない16ビットの値 */
    10584
    106 typedef int32_t                 W;                      /* 符号付き32ビット整数 */
    107 typedef uint32_t                UW;                     /* 符号無し32ビット整数 */
    108 typedef uint32_t                VW;                     /* 型が定まらない32ビットの値 */
     85typedef int32_t                 W;                      /* 符号付き32ビット整数 */
     86typedef uint32_t                UW;                     /* 符号無し32ビット整数 */
     87typedef uint32_t                VW;                     /* 型が定まらない32ビットの値 */
    10988
    11089#ifdef INT64_MAX
    111 typedef int64_t                 D;                      /* 符号付き64ビット整数 */
     90typedef int64_t                 D;                      /* 符号付き64ビット整数 */
    11291#endif /* INT64_MAX */
    11392
    11493#ifdef UINT64_MAX
    115 typedef uint64_t                UD;                     /* 符号無し64ビット整数 */
    116 typedef uint64_t                VD;                     /* 型が定まらない64ビットの値 */
     94typedef uint64_t                UD;                     /* 符号無し64ビット整数 */
     95typedef uint64_t                VD;                     /* 型が定まらない64ビットの値 */
    11796#endif /* UINT64_MAX */
    11897
    119 typedef void                    *VP;            /* 型が定まらないものへのポインタ */
     98typedef void                    *VP;            /* 型が定まらないものへのポインタ */
    12099
    121 typedef int_t                   INT;            /* 自然なサイズの符号付き整数 */
    122 typedef uint_t                  UINT;           /* 自然なサイズの符号無し整数 */
     100typedef int_t                   INT;            /* 自然なサイズの符号付き整数 */
     101typedef uint_t                  UINT;           /* 自然なサイズの符号無し整数 */
    123102
    124 typedef bool_t                  BOOL;           /* 真偽値 */
     103typedef bool_t                  BOOL;           /* 真偽値 */
    125104
    126 typedef size_t                  SIZE;           /* メモリ領域のサイズを表す符号無し整数*/
    127 typedef intptr_t                VP_INT;         /* ポインタまたは符号付き整数 */
     105typedef size_t                  SIZE;           /* メモリ領域のサイズを表す符号無し整数*/
     106typedef intptr_t                VP_INT;         /* ポインタまたは符号付き整数 */
    128107
    129108#endif /* TOPPERS_MACRO_ONLY */
    130109
    131110/*
    132  *  ITRON仕様å
    133 ±é€šå®šæ•°
     111 *  ITRON仕様共通定数
    134112 */
    135 #define TRUE            true                    /* 真 */
    136 #define FALSE           false                   /* 偽 */
     113#define TRUE            true                    /* */
     114#define FALSE           false                   /* */
    137115
    138116/*
    139  *  強制å¾
    140 ã¡çŠ¶æ
    141 ‹ã‹ã‚‰ã®å¼·åˆ¶å†é–‹
     117 *  強制待ち状態からの強制再開
    142118 */
    143119#define frsm_tsk(tskid)         rsm_tsk(tskid)
    144120
    145121/*
    146  *  オブジェクト属性の定義
     122 *  オブジェクト属性の定義
    147123 */
    148 #define TA_HLNG                 UINT_C(0x00)    /* 高級言語用インタフェース */
    149 #define TA_TFIFO                UINT_C(0x00)    /* タスクのå¾
    150 ã¡è¡Œåˆ—ã‚’FIFO順に */
    151 #define TA_WSGL                 UINT_C(0x00)    /* å¾
    152 ã¡ã‚¿ã‚¹ã‚¯ã¯1つのみ */
     124#define TA_HLNG                 UINT_C(0x00)    /* 高級言語用インタフェース */
     125#define TA_TFIFO                UINT_C(0x00)    /* タスクの待ち行列をFIFO順に */
     126#define TA_WSGL                 UINT_C(0x00)    /* 待ちタスクは1つのみ */
    153127
    154128/*
    155  *  ネスト回数の最大値
     129 *  ネスト回数の最大値
    156130 */
    157 #define TMAX_SUSCNT             UINT_C(1)               /* 強制å¾
    158 ã¡è¦æ±‚ネスト数の最大値 */
     131#define TMAX_SUSCNT             UINT_C(1)               /* 強制待ち要求ネスト数の最大値 */
    159132
    160133#ifdef __cplusplus
  • EcnlProtoTool/trunk/asp3_dcre/include/kernel.h

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-chdr to text/x-chdr;charset=UTF-8
    r270 r321  
    99 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    1010 *
    11  *  上記著作権è€
    12 ã¯ï¼Œä»¥ä¸‹ã®(1)~(4)の条件を満たす場合に限り,本ソフトウェ
    13  *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
    14  *  変・再é
    15 å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
    16  *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
    17  *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
    18  *      スコード中に含まれていること.
    19  *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
    20  *      用できる形で再é
    21 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é
    22 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
    23  *      è€
    24 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—作権表示,この利用条件および下記
    25  *      の無保証規定を掲載すること.
    26  *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
    27  *      用できない形で再é
    28 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
    29  *      と.
    30  *    (a) 再é
    31 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€
    32 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—
    33  *        作権表示,この利用条件および下記の無保証規定を掲載すること.
    34  *    (b) 再é
    35 å¸ƒã®å½¢æ
    36 ‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
    37  *        報告すること.
    38  *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
    39  *      害からも,上記著作権è€
    40 ãŠã‚ˆã³TOPPERSプロジェクトをå
    41 è²¬ã™ã‚‹ã“と.
    42  *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
    43  *      由に基づく請求からも,上記著作権è€
    44 ãŠã‚ˆã³TOPPERSプロジェクトを
    45  *      å
    46 è²¬ã™ã‚‹ã“と.
     11 *  上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
     12 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     13 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     14 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     15 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     16 *      スコード中に含まれていること.
     17 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     18 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     19 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     20 *      の無保証規定を掲載すること.
     21 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     22 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     23 *      と.
     24 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     25 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     26 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     27 *        報告すること.
     28 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     29 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     30 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     31 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     32 *      免責すること.
    4733 *
    48  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    49 ãŠ
    50  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
    51  *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
    52  *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
    53  *  の責任を負わない.
     34 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     35 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     36 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     37 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     38 *  の責任を負わない.
    5439 *
    5540 *  $Id$
     
    5742
    5843/*
    59  *              TOPPERS/ASPカーネル 標準ヘッダファイル
     44 *              TOPPERS/ASPカーネル 標準ヘッダファイル
    6045 *
    61  *  TOPPERS/ASPカーネルがサポートするサービスコールの宣言と,å¿
    62 è¦ãªãƒ‡ãƒ¼
    63  *  タ型,定数,マクロの定義を含むヘッダファイル.
     46 *  TOPPERS/ASPカーネルがサポートするサービスコールの宣言と,必要なデー
     47 *  タ型,定数,マクロの定義を含むヘッダファイル.
    6448 *
    65  *  アセンブリ言語のソースファイルからこのファイルをインクルードする時
    66  *  は,TOPPERS_MACRO_ONLYを定義しておく.これにより,マクロ定義以外を
    67  *  除くようになっている.
     49 *  アセンブリ言語のソースファイルからこのファイルをインクルードする時
     50 *  は,TOPPERS_MACRO_ONLYを定義しておく.これにより,マクロ定義以外を
     51 *  除くようになっている.
    6852 */
    6953
     
    7660
    7761/*
    78  *      TOPPERSå
    79 ±é€šã®ãƒ‡ãƒ¼ã‚¿åž‹ãƒ»å®šæ•°ãƒ»ãƒžã‚¯ãƒ­
     62 *      TOPPERS共通のデータ型・定数・マクロ
    8063 */
    8164#include <t_stddef.h>
    8265
    8366/*
    84  *  ターゲット依存部
     67 *  ターゲット依存部
    8568 */
    8669#include "target_kernel.h"
    8770
    8871/*
    89  *  サポートする機能
     72 *  サポートする機能
    9073 */
    9174#ifdef TOPPERS_TARGET_SUPPORT_DIS_INT
    92 #define TOPPERS_SUPPORT_DIS_INT                 /* dis_intがサポートされている */
     75#define TOPPERS_SUPPORT_DIS_INT                 /* dis_intがサポートされている */
    9376#endif /* TOPPERS_TARGET_SUPPORT_DIS_INT */
    9477
    9578#ifdef TOPPERS_TARGET_SUPPORT_ENA_INT
    96 #define TOPPERS_SUPPORT_ENA_INT                 /* ena_intがサポートされている */
     79#define TOPPERS_SUPPORT_ENA_INT                 /* ena_intがサポートされている */
    9780#endif /* TOPPERS_TARGET_SUPPORT_ENA_INT */
    9881
    99 #define TOPPERS_SUPPORT_DYNAMIC_CRE             /* 動的生成機能拡張 */
     82#define TOPPERS_SUPPORT_DYNAMIC_CRE             /* 動的生成機能拡張 */
    10083
    10184#ifndef TOPPERS_MACRO_ONLY
    10285
    10386/*
    104  *  データ型の定義
    105  */
    106 
    107 /*
    108  *  ビットパターンやオブジェクト番号の型定義
    109  */
    110 typedef uint_t          FLGPTN;         /* イベントフラグのビットパターン */
    111 typedef uint_t          INTNO;          /* 割込み番号 */
    112 typedef uint_t          INHNO;          /* 割込みハンドラ番号 */
    113 typedef uint_t          EXCNO;          /* CPU例外ハンドラ番号 */
    114 
    115 /*
    116  *  処理単位の型定義
     87 *  データ型の定義
     88 */
     89
     90/*
     91 *  ビットパターンやオブジェクト番号の型定義
     92 */
     93typedef uint_t          FLGPTN;         /* イベントフラグのビットパターン */
     94typedef uint_t          INTNO;          /* 割込み番号 */
     95typedef uint_t          INHNO;          /* 割込みハンドラ番号 */
     96typedef uint_t          EXCNO;          /* CPU例外ハンドラ番号 */
     97
     98/*
     99 *  処理単位の型定義
    117100 */
    118101typedef void    (*TASK)(intptr_t exinf);
     
    125108
    126109/*
    127  *  メモリ領域確保のための型定義
     110 *  メモリ領域確保のための型定義
    128111 */
    129112#ifndef TOPPERS_STK_T
    130113#define TOPPERS_STK_T   intptr_t
    131114#endif /* TOPPERS_STK_T */
    132 typedef TOPPERS_STK_T   STK_T;  /* スタック領域を確保するための型 */
     115typedef TOPPERS_STK_T   STK_T;  /* スタック領域を確保するための型 */
    133116
    134117#ifndef TOPPERS_MPF_T
    135118#define TOPPERS_MPF_T   intptr_t
    136119#endif /* TOPPERS_MPF_T */
    137 typedef TOPPERS_MPF_T   MPF_T;  /* 固定長メモリプール領域を確保するための型 */
    138 
    139 /*
    140  *  タイムイベントの通知方法のパケット形式の定義
    141  */
    142 typedef struct {
    143         intptr_t        exinf;          /* タイムイベントハンドラの拡張æƒ
    144 å ± */
    145         TMEHDR          tmehdr;         /* タイムイベントハンドラのå
    146 ˆé ­ç•ªåœ° */
     120typedef TOPPERS_MPF_T   MPF_T;  /* 固定長メモリプール領域を確保するための型 */
     121
     122/*
     123 *  タイムイベントの通知方法のパケット形式の定義
     124 */
     125typedef struct {
     126        intptr_t        exinf;          /* タイムイベントハンドラの拡張情報 */
     127        TMEHDR          tmehdr;         /* タイムイベントハンドラの先頭番地 */
    147128} T_NFY_HDR;
    148129
    149130typedef struct {
    150         intptr_t        *p_var;         /* 変数の番地 */
    151         intptr_t        value;          /* 設定する値 */
     131        intptr_t        *p_var;         /* 変数の番地 */
     132        intptr_t        value;          /* 設定する値 */
    152133} T_NFY_VAR;
    153134
    154135typedef struct {
    155         intptr_t        *p_var;         /* 変数の番地 */
     136        intptr_t        *p_var;         /* 変数の番地 */
    156137} T_NFY_IVAR;
    157138
    158139typedef struct {
    159         ID                      tskid;          /* タスクID */
     140        ID                      tskid;          /* タスクID */
    160141} T_NFY_TSK;
    161142
    162143typedef struct {
    163         ID                      semid;          /* セマフォID */
     144        ID                      semid;          /* セマフォID */
    164145} T_NFY_SEM;
    165146
    166147typedef struct {
    167         ID                      flgid;          /* イベントフラグID */
    168         FLGPTN          flgptn;         /* セットするビットパターン */
     148        ID                      flgid;          /* イベントフラグID */
     149        FLGPTN          flgptn;         /* セットするビットパターン */
    169150} T_NFY_FLG;
    170151
    171152typedef struct {
    172         ID                      dtqid;          /* データキューID */
    173         intptr_t        data;           /* 送信する値 */
     153        ID                      dtqid;          /* データキューID */
     154        intptr_t        data;           /* 送信する値 */
    174155} T_NFY_DTQ;
    175156
    176157typedef struct {
    177         intptr_t        *p_var;         /* 変数の番地 */
     158        intptr_t        *p_var;         /* 変数の番地 */
    178159} T_ENFY_VAR;
    179160
    180161typedef struct {
    181         ID                      dtqid;          /* データキューID */
     162        ID                      dtqid;          /* データキューID */
    182163} T_ENFY_DTQ;
    183164
    184165typedef struct {
    185         MODE    nfymode;                        /* 通知処理モード */
    186         union {                                         /* タイムイベントの通知に関する付随æƒ
    187 å ± */
     166        MODE    nfymode;                        /* 通知処理モード */
     167        union {                                         /* タイムイベントの通知に関する付随情報 */
    188168                T_NFY_HDR       handler;
    189169                T_NFY_VAR       setvar;         
     
    195175                T_NFY_DTQ       snddtq;
    196176        } nfy;
    197         union {                                         /* エラーの通知に関する付随æƒ
    198 å ± */
     177        union {                                         /* エラーの通知に関する付随情報 */
    199178                T_ENFY_VAR      setvar;
    200179                T_NFY_IVAR      incvar;         
     
    208187
    209188/*
    210  *  パケット形式の定義
     189 *  パケット形式の定義
    211190 */
    212191typedef struct t_ctsk {
    213         ATR                     tskatr;         /* タスク属性 */
    214         intptr_t        exinf;          /* タスクの拡張æƒ
    215 å ± */
    216         TASK            task;           /* タスクのメインルーチンのå
    217 ˆé ­ç•ªåœ° */
    218         PRI                     itskpri;        /* タスクの起動時優å
    219 ˆåº¦ */
    220         size_t          stksz;          /* タスクのスタック領域のサイズ */
    221         STK_T           *stk;           /* タスクのスタック領域のå
    222 ˆé ­ç•ªåœ° */
     192        ATR                     tskatr;         /* タスク属性 */
     193        intptr_t        exinf;          /* タスクの拡張情報 */
     194        TASK            task;           /* タスクのメインルーチンの先頭番地 */
     195        PRI                     itskpri;        /* タスクの起動時優先度 */
     196        size_t          stksz;          /* タスクのスタック領域のサイズ */
     197        STK_T           *stk;           /* タスクのスタック領域の先頭番地 */
    223198} T_CTSK;
    224199
    225200typedef struct t_rtsk {
    226         STAT    tskstat;        /* タスク状æ
    227 ‹ */
    228         PRI             tskpri;         /* タスクの現在優å
    229 ˆåº¦ */
    230         PRI             tskbpri;        /* タスクのベース優å
    231 ˆåº¦ */
    232         STAT    tskwait;        /* å¾
    233 ã¡è¦å›  */
    234         ID              wobjid;         /* å¾
    235 ã¡å¯¾è±¡ã®ã‚ªãƒ–ジェクトのID */
    236         TMO             lefttmo;        /* タイムアウトするまでの時間 */
    237         uint_t  actcnt;         /* 起動要求キューイング数 */
    238         uint_t  wupcnt;         /* 起床要求キューイング数 */
    239         bool_t  raster;         /* タスク終了要求状æ
    240 ‹ */
    241         bool_t  dister;         /* タスク終了禁止状æ
    242 ‹ */
     201        STAT    tskstat;        /* タスク状態 */
     202        PRI             tskpri;         /* タスクの現在優先度 */
     203        PRI             tskbpri;        /* タスクのベース優先度 */
     204        STAT    tskwait;        /* 待ち要因 */
     205        ID              wobjid;         /* 待ち対象のオブジェクトのID */
     206        TMO             lefttmo;        /* タイムアウトするまでの時間 */
     207        uint_t  actcnt;         /* 起動要求キューイング数 */
     208        uint_t  wupcnt;         /* 起床要求キューイング数 */
     209        bool_t  raster;         /* タスク終了要求状態 */
     210        bool_t  dister;         /* タスク終了禁止状態 */
    243211} T_RTSK;
    244212
    245213typedef struct t_csem {
    246         ATR             sematr;         /* セマフォ属性 */
    247         uint_t  isemcnt;        /* セマフォの初期資源数 */
    248         uint_t  maxsem;         /* セマフォの最大資源数 */
     214        ATR             sematr;         /* セマフォ属性 */
     215        uint_t  isemcnt;        /* セマフォの初期資源数 */
     216        uint_t  maxsem;         /* セマフォの最大資源数 */
    249217} T_CSEM;
    250218
    251219typedef struct t_rsem {
    252         ID              wtskid;         /* セマフォのå¾
    253 ã¡è¡Œåˆ—のå
    254 ˆé ­ã®ã‚¿ã‚¹ã‚¯ã®ID番号 */
    255         uint_t  semcnt;         /* セマフォの現在の資源数 */
     220        ID              wtskid;         /* セマフォの待ち行列の先頭のタスクのID番号 */
     221        uint_t  semcnt;         /* セマフォの現在の資源数 */
    256222} T_RSEM;
    257223
    258224typedef struct t_cflg {
    259         ATR             flgatr;         /* イベントフラグ属性 */
    260         FLGPTN  iflgptn;        /* イベントフラグの初期ビットパターン */
     225        ATR             flgatr;         /* イベントフラグ属性 */
     226        FLGPTN  iflgptn;        /* イベントフラグの初期ビットパターン */
    261227} T_CFLG;
    262228
    263229typedef struct t_rflg {
    264         ID              wtskid;         /* イベントフラグのå¾
    265 ã¡è¡Œåˆ—のå
    266 ˆé ­ã®ã‚¿ã‚¹ã‚¯ã®ID番号 */
    267         FLGPTN  flgptn;         /* イベントフラグの現在のビットパターン */
     230        ID              wtskid;         /* イベントフラグの待ち行列の先頭のタスクのID番号 */
     231        FLGPTN  flgptn;         /* イベントフラグの現在のビットパターン */
    268232} T_RFLG;
    269233
    270234typedef struct t_cdtq {
    271         ATR             dtqatr;         /* データキュー属性 */
    272         uint_t  dtqcnt;         /* データキュー管理領域に格納できるデータ数 */
    273         void    *dtqmb;         /* データキュー管理領域のå
    274 ˆé ­ç•ªåœ° */
     235        ATR             dtqatr;         /* データキュー属性 */
     236        uint_t  dtqcnt;         /* データキュー管理領域に格納できるデータ数 */
     237        void    *dtqmb;         /* データキュー管理領域の先頭番地 */
    275238} T_CDTQ;
    276239
    277240typedef struct t_rdtq {
    278         ID              stskid;         /* データキューの送信å¾
    279 ã¡è¡Œåˆ—のå
    280 ˆé ­ã®ã‚¿ã‚¹ã‚¯ã®ID番号 */
    281         ID              rtskid;         /* データキューの受信å¾
    282 ã¡è¡Œåˆ—のå
    283 ˆé ­ã®ã‚¿ã‚¹ã‚¯ã®ID番号 */
    284         uint_t  sdtqcnt;        /* データキュー管理領域に格納されているデータの数 */
     241        ID              stskid;         /* データキューの送信待ち行列の先頭のタスクのID番号 */
     242        ID              rtskid;         /* データキューの受信待ち行列の先頭のタスクのID番号 */
     243        uint_t  sdtqcnt;        /* データキュー管理領域に格納されているデータの数 */
    285244} T_RDTQ;
    286245
    287246typedef struct t_cpdq {
    288         ATR             pdqatr;         /* 優å
    289 ˆåº¦ãƒ‡ãƒ¼ã‚¿ã‚­ãƒ¥ãƒ¼å±žæ€§ */
    290         uint_t  pdqcnt;         /* 優å
    291 ˆåº¦ãƒ‡ãƒ¼ã‚¿ã‚­ãƒ¥ãƒ¼ç®¡ç†é ˜åŸŸã«æ ¼ç´ã§ãã‚‹ãƒ‡ãƒ¼ã‚¿æ•° */
    292         PRI             maxdpri;        /* 優å
    293 ˆåº¦ãƒ‡ãƒ¼ã‚¿ã‚­ãƒ¥ãƒ¼ã«é€ä¿¡ã§ãã‚‹ãƒ‡ãƒ¼ã‚¿å„ªå
    294 ˆåº¦ã®æœ€
    295                                                    å¤§å€¤ */
    296         void    *pdqmb;         /* 優å
    297 ˆåº¦ãƒ‡ãƒ¼ã‚¿ã‚­ãƒ¥ãƒ¼ç®¡ç†é ˜åŸŸã®å
    298 ˆé ­ç•ªåœ° */
     247        ATR             pdqatr;         /* 優先度データキュー属性 */
     248        uint_t  pdqcnt;         /* 優先度データキュー管理領域に格納できるデータ数 */
     249        PRI             maxdpri;        /* 優先度データキューに送信できるデータ優先度の最
     250                                                   大値 */
     251        void    *pdqmb;         /* 優先度データキュー管理領域の先頭番地 */
    299252} T_CPDQ;
    300253
    301254typedef struct t_rpdq {
    302         ID              stskid;         /* 優å
    303 ˆåº¦ãƒ‡ãƒ¼ã‚¿ã‚­ãƒ¥ãƒ¼ã®é€ä¿¡å¾
    304 ã¡è¡Œåˆ—のå
    305 ˆé ­ã®ã‚¿ã‚¹ã‚¯
    306                                                    ã®ID番号 */
    307         ID              rtskid;         /* 優å
    308 ˆåº¦ãƒ‡ãƒ¼ã‚¿ã‚­ãƒ¥ãƒ¼ã®å—ä¿¡å¾
    309 ã¡è¡Œåˆ—のå
    310 ˆé ­ã®ã‚¿ã‚¹ã‚¯
    311                                                    ã®ID番号 */
    312         uint_t  spdqcnt;        /* 優å
    313 ˆåº¦ãƒ‡ãƒ¼ã‚¿ã‚­ãƒ¥ãƒ¼ç®¡ç†é ˜åŸŸã«æ ¼ç´ã•ã‚Œã¦ã„るデー
    314                                                    ã‚¿ã®æ•° */
     255        ID              stskid;         /* 優先度データキューの送信待ち行列の先頭のタスク
     256                                                   のID番号 */
     257        ID              rtskid;         /* 優先度データキューの受信待ち行列の先頭のタスク
     258                                                   のID番号 */
     259        uint_t  spdqcnt;        /* 優先度データキュー管理領域に格納されているデー
     260                                                   タの数 */
    315261} T_RPDQ;
    316262
    317263typedef struct t_cmtx {
    318         ATR             mtxatr;         /* ミューテックス属性 */
    319         PRI             ceilpri;        /* ミューテックスの上限優å
    320 ˆåº¦ */
     264        ATR             mtxatr;         /* ミューテックス属性 */
     265        PRI             ceilpri;        /* ミューテックスの上限優先度 */
    321266} T_CMTX;
    322267
    323268typedef struct t_rmtx {
    324         ID              htskid;         /* ミューテックスをロックしているタスクのID番号 */
    325         ID              wtskid;         /* ミューテックスのå¾
    326 ã¡è¡Œåˆ—のå
    327 ˆé ­ã®ã‚¿ã‚¹ã‚¯ã®ID番号 */
     269        ID              htskid;         /* ミューテックスをロックしているタスクのID番号 */
     270        ID              wtskid;         /* ミューテックスの待ち行列の先頭のタスクのID番号 */
    328271} T_RMTX;
    329272
    330273typedef struct t_cmpf {
    331         ATR             mpfatr;         /* 固定長メモリプール属性 */
    332         uint_t  blkcnt;         /* 獲得できる固定長メモリブロックの数 */
    333         uint_t  blksz;          /* 固定長メモリブロックのサイズ */
    334         MPF_T   *mpf;           /* 固定長メモリプール領域のå
    335 ˆé ­ç•ªåœ° */
    336         void    *mpfmb;         /* 固定長メモリプール管理領域のå
    337 ˆé ­ç•ªåœ° */
     274        ATR             mpfatr;         /* 固定長メモリプール属性 */
     275        uint_t  blkcnt;         /* 獲得できる固定長メモリブロックの数 */
     276        uint_t  blksz;          /* 固定長メモリブロックのサイズ */
     277        MPF_T   *mpf;           /* 固定長メモリプール領域の先頭番地 */
     278        void    *mpfmb;         /* 固定長メモリプール管理領域の先頭番地 */
    338279} T_CMPF;
    339280
    340281typedef struct t_rmpf {
    341         ID              wtskid;         /* 固定長メモリプールのå¾
    342 ã¡è¡Œåˆ—のå
    343 ˆé ­ã®ã‚¿ã‚¹ã‚¯ã®
    344                                                    ID番号 */
    345         uint_t  fblkcnt;        /* 固定長メモリプール領域の空きメモリ領域に割り
    346                                                    ä»˜ã‘ることができる固定長メモリブロックの数 */
     282        ID              wtskid;         /* 固定長メモリプールの待ち行列の先頭のタスクの
     283                                                   ID番号 */
     284        uint_t  fblkcnt;        /* 固定長メモリプール領域の空きメモリ領域に割り
     285                                                   付けることができる固定長メモリブロックの数 */
    347286} T_RMPF;
    348287
    349288typedef struct t_ccyc {
    350         ATR                     cycatr;         /* 周期通知属性 */
    351         T_NFYINFO       nfyinfo;        /* 周期通知の通知方法 */
    352         RELTIM          cyctim;         /* 周期通知の通知周期 */
    353         RELTIM          cycphs;         /* 周期通知の通知位相 */
     289        ATR                     cycatr;         /* 周期通知属性 */
     290        T_NFYINFO       nfyinfo;        /* 周期通知の通知方法 */
     291        RELTIM          cyctim;         /* 周期通知の通知周期 */
     292        RELTIM          cycphs;         /* 周期通知の通知位相 */
    354293} T_CCYC;
    355294
    356295typedef struct t_rcyc {
    357         STAT    cycstat;        /* 周期通知の動作状æ
    358 ‹ */
    359         RELTIM  lefttim;        /* 次回通知時刻までの相対時間 */
     296        STAT    cycstat;        /* 周期通知の動作状態 */
     297        RELTIM  lefttim;        /* 次回通知時刻までの相対時間 */
    360298} T_RCYC;
    361299
    362300typedef struct t_calm {
    363         ATR                     almatr;         /* アラーム通知属性 */
    364         T_NFYINFO       nfyinfo;        /* アラーム通知の通知方法 */
     301        ATR                     almatr;         /* アラーム通知属性 */
     302        T_NFYINFO       nfyinfo;        /* アラーム通知の通知方法 */
    365303} T_CALM;
    366304
    367305typedef struct t_ralm {
    368         STAT    almstat;        /* アラーム通知の動作状æ
    369 ‹ */
    370         RELTIM  lefttim;        /* 通知時刻までの相対時間 */
     306        STAT    almstat;        /* アラーム通知の動作状態 */
     307        RELTIM  lefttim;        /* 通知時刻までの相対時間 */
    371308} T_RALM;
    372309
    373310typedef struct t_cisr {
    374         ATR                     isratr;         /* 割込みサービスルーチン属性 */
    375         intptr_t        exinf;          /* 割込みサービスルーチンの拡張æƒ
    376 å ± */
    377         INTNO           intno;          /* 割込みサービスルーチンを登録する割込み番号 */
    378         ISR                     isr;            /* 割込みサービスルーチンのå
    379 ˆé ­ç•ªåœ° */
    380         PRI                     isrpri;         /* 割込みサービスルーチン優å
    381 ˆåº¦ */
     311        ATR                     isratr;         /* 割込みサービスルーチン属性 */
     312        intptr_t        exinf;          /* 割込みサービスルーチンの拡張情報 */
     313        INTNO           intno;          /* 割込みサービスルーチンを登録する割込み番号 */
     314        ISR                     isr;            /* 割込みサービスルーチンの先頭番地 */
     315        PRI                     isrpri;         /* 割込みサービスルーチン優先度 */
    382316} T_CISR;
    383317
    384318/*
    385  *  サービスコールの宣言
    386  */
    387 
    388 /*
    389  *  タスク管理機能
     319 *  サービスコールの宣言
     320 */
     321
     322/*
     323 *  タスク管理機能
    390324 */
    391325extern ER_UINT  acre_tsk(const T_CTSK *pk_ctsk) throw();
     
    400334
    401335/*
    402  *  タスク付属同期機能
     336 *  タスク付属同期機能
    403337 */
    404338extern ER               slp_tsk(void) throw();
     
    412346
    413347/*
    414  *  タスク終了機能
     348 *  タスク終了機能
    415349 */
    416350extern ER               ext_tsk(void) throw();
     
    422356
    423357/*
    424  *  同期・通信機能
     358 *  同期・通信機能
    425359 */
    426360extern ER_ID    acre_sem(const T_CSEM *pk_csem) throw();
     
    481415
    482416/*
    483  *  メモリプール管理機能
     417 *  メモリプール管理機能
    484418 */
    485419extern ER_ID    acre_mpf(const T_CMPF *pk_cmpf) throw();
     
    493427
    494428/*
    495  *  時間管理機能
     429 *  時間管理機能
    496430 */
    497431extern ER               set_tim(SYSTIM systim) throw();
     
    513447
    514448/*
    515  *  システム状æ
    516 ‹ç®¡ç†æ©Ÿèƒ½
     449 *  システム状態管理機能
    517450 */
    518451extern ER               rot_rdq(PRI tskpri) throw();
     
    532465
    533466/*
    534  *  割込み管理機能
     467 *  割込み管理機能
    535468 */
    536469extern ER_ID    acre_isr(const T_CISR *pk_cisr) throw();
     
    542475
    543476/*
    544  *  CPU例外管理機能
     477 *  CPU例外管理機能
    545478 */
    546479extern bool_t   xsns_dpn(void *p_excinf) throw();
     
    549482
    550483/*
    551  *  非タスクコンテキストから呼び出せるサービスコール
     484 *  非タスクコンテキストから呼び出せるサービスコール
    552485 */
    553486#define iact_tsk(tskid)                                         act_tsk(tskid)
     
    578511
    579512/*
    580  *  オブジェクト属性の定義
    581  */
    582 #define TA_ACT                  UINT_C(0x01)    /* タスクを起動された状æ
    583 ‹ã§ç”Ÿæˆ */
    584 #define TA_NOACTQUE             UINT_C(0x02)    /* 起動要求をキューイングしない */
    585 
    586 #define TA_TPRI                 UINT_C(0x01)    /* タスクのå¾
    587 ã¡è¡Œåˆ—を優å
    588 ˆåº¦é †ã« */
    589 
    590 #define TA_WMUL                 UINT_C(0x02)    /* 複数のå¾
    591 ã¡ã‚¿ã‚¹ã‚¯ */
    592 #define TA_CLR                  UINT_C(0x04)    /* イベントフラグのクリア指定 */
    593 
    594 #define TA_CEILING              UINT_C(0x03)    /* 優å
    595 ˆåº¦ä¸Šé™ãƒ—ロトコル */
    596 
    597 #define TA_STA                  UINT_C(0x02)    /* 周期通知を動作状æ
    598 ‹ã§ç”Ÿæˆ */
    599 
    600 #define TA_NONKERNEL    UINT_C(0x02)    /* カーネル管理外の割込み */
    601 
    602 #define TA_ENAINT               UINT_C(0x01)    /* 割込み要求禁止フラグをクリア */
    603 #define TA_EDGE                 UINT_C(0x02)    /* エッジトリガ */
    604 
    605 /*
    606  *  サービスコールの動作モードの定義
    607  */
    608 #define TWF_ORW                 UINT_C(0x01)    /* イベントフラグのORå¾
    609 ã¡ */
    610 #define TWF_ANDW                UINT_C(0x02)    /* イベントフラグのANDå¾
    611 ã¡ */
    612 
    613 /*
    614  *  通知処理モードの定義
    615  */
    616 #define TNFY_HANDLER    UINT_C(0x00)            /* タイムイベントハンドラの呼出し */
    617 #define TNFY_SETVAR             UINT_C(0x01)            /* 変数の設定 */
    618 #define TNFY_INCVAR             UINT_C(0x02)            /* 変数のインクリメント */
    619 #define TNFY_ACTTSK             UINT_C(0x03)            /* タスクの起動 */
    620 #define TNFY_WUPTSK             UINT_C(0x04)            /* タスクの起床 */
    621 #define TNFY_SIGSEM             UINT_C(0x05)            /* セマフォの資源の返却 */
    622 #define TNFY_SETFLG             UINT_C(0x06)            /* イベントフラグのセット */
    623 #define TNFY_SNDDTQ             UINT_C(0x07)            /* データキューへの送信 */
    624 
    625 #define TENFY_SETVAR    UINT_C(0x10)            /* 変数の設定 */
    626 #define TENFY_INCVAR    UINT_C(0x20)            /* 変数のインクリメント */
    627 #define TENFY_ACTTSK    UINT_C(0x30)            /* タスクの起動 */
    628 #define TENFY_WUPTSK    UINT_C(0x40)            /* タスクの起床 */
    629 #define TENFY_SIGSEM    UINT_C(0x50)            /* セマフォの返却 */
    630 #define TENFY_SETFLG    UINT_C(0x60)            /* イベントフラグのセット */
    631 #define TENFY_SNDDTQ    UINT_C(0x70)            /* データキューへの送信 */
    632 
    633 /*
    634  *  オブジェクトの状æ
    635 ‹ã®å®šç¾©
    636  */
    637 #define TTS_RUN                 UINT_C(0x01)    /* 実行状æ
    638 ‹ */
    639 #define TTS_RDY                 UINT_C(0x02)    /* 実行可能状æ
    640 ‹ */
    641 #define TTS_WAI                 UINT_C(0x04)    /* å¾
    642 ã¡çŠ¶æ
    643 ‹ */
    644 #define TTS_SUS                 UINT_C(0x08)    /* 強制å¾
    645 ã¡çŠ¶æ
    646 ‹ */
    647 #define TTS_WAS                 UINT_C(0x0c)    /* 二重å¾
    648 ã¡çŠ¶æ
    649 ‹ */
    650 #define TTS_DMT                 UINT_C(0x10)    /* 休止状æ
    651 ‹ */
    652 
    653 #define TTW_SLP                 UINT_C(0x0001)  /* 起床å¾
    654 ã¡ */
    655 #define TTW_DLY                 UINT_C(0x0002)  /* 時間経過å¾
    656 ã¡ */
    657 #define TTW_SEM                 UINT_C(0x0004)  /* セマフォの資源獲得å¾
    658 ã¡ */
    659 #define TTW_FLG                 UINT_C(0x0008)  /* イベントフラグå¾
    660 ã¡ */
    661 #define TTW_SDTQ                UINT_C(0x0010)  /* データキューへの送信å¾
    662 ã¡ */
    663 #define TTW_RDTQ                UINT_C(0x0020)  /* データキューからの受信å¾
    664 ã¡ */
    665 #define TTW_SPDQ                UINT_C(0x0100)  /* 優å
    666 ˆåº¦ãƒ‡ãƒ¼ã‚¿ã‚­ãƒ¥ãƒ¼ã¸ã®é€ä¿¡å¾
    667 ã¡ */
    668 #define TTW_RPDQ                UINT_C(0x0200)  /* 優å
    669 ˆåº¦ãƒ‡ãƒ¼ã‚¿ã‚­ãƒ¥ãƒ¼ã‹ã‚‰ã®å—ä¿¡å¾
    670 ã¡ */
    671 #define TTW_MTX                 UINT_C(0x0080)  /* ミューテックスのロックå¾
    672 ã¡çŠ¶æ
    673 ‹ */
    674 #define TTW_MPF                 UINT_C(0x2000)  /* 固定長メモリブロックの獲得å¾
    675 ã¡ */
    676 
    677 #define TCYC_STP                UINT_C(0x01)    /* 周期通知が動作していない */
    678 #define TCYC_STA                UINT_C(0x02)    /* 周期通知が動作している */
    679 
    680 #define TALM_STP                UINT_C(0x01)    /* アラーム通知が動作していない */
    681 #define TALM_STA                UINT_C(0x02)    /* アラーム通知が動作している */
    682 
    683 /*
    684  *  その他の定数の定義
    685  */
    686 #define TSK_SELF                0                       /* 自タスク指定 */
    687 #define TSK_NONE                0                       /* 該当するタスクがない */
    688 
    689 #define TPRI_SELF               0                       /* 自タスクのベース優å
    690 ˆåº¦ */
    691 #define TPRI_INI                0                       /* タスクの起動時優å
    692 ˆåº¦ */
    693 
    694 #define TIPM_ENAALL             0                       /* 割込み優å
    695 ˆåº¦ãƒžã‚¹ã‚¯å
    696 ¨è§£é™¤ */
    697 
    698 /*
    699  *  構成定数とマクロ
    700  */
    701 
    702 /*
    703  *  優å
    704 ˆåº¦ã®ç¯„囲
    705  */
    706 #define TMIN_TPRI               1                       /* タスク優å
    707 ˆåº¦ã®æœ€å°å€¤ï¼ˆæœ€é«˜å€¤ï¼‰*/
    708 #define TMAX_TPRI               16                      /* タスク優å
    709 ˆåº¦ã®æœ€å¤§å€¤ï¼ˆæœ€ä½Žå€¤ï¼‰*/
    710 #define TMIN_DPRI               1                       /* データ優å
    711 ˆåº¦ã®æœ€å°å€¤ï¼ˆæœ€é«˜å€¤ï¼‰*/
    712 #define TMAX_DPRI               16                      /* データ優å
    713 ˆåº¦ã®æœ€å¤§å€¤ï¼ˆæœ€ä½Žå€¤ï¼‰*/
    714 #define TMIN_ISRPRI             1                       /* 割込みサービスルーチン優å
    715 ˆåº¦ã®æœ€å°å€¤ */
    716 #define TMAX_ISRPRI             16                      /* 割込みサービスルーチン優å
    717 ˆåº¦ã®æœ€å¤§å€¤ */
    718 
    719 /*
    720  *  バージョンæƒ
    721 å ±
    722  */
    723 #define TKERNEL_MAKER   UINT_C(0x0118)  /* カーネルのメーカーコード */
    724 #define TKERNEL_PRID    UINT_C(0x0007)  /* カーネルの識別番号 */
    725 #define TKERNEL_SPVER   UINT_C(0xf631)  /* カーネル仕様のバージョン番号 */
    726 #define TKERNEL_PRVER   UINT_C(0x3010)  /* カーネルのバージョン番号 */
    727 
    728 /*
    729  *  キューイング回数の最大値
    730  */
    731 #define TMAX_ACTCNT             UINT_C(1)               /* 起動要求キューイング数の最大値 */
    732 #define TMAX_WUPCNT             UINT_C(1)               /* 起床要求キューイング数の最大値 */
    733 
    734 /*
    735  *  ビットパターンのビット数
    736  */
    737 #ifndef TBIT_FLGPTN                                     /* イベントフラグのビット数 */
     513 *  オブジェクト属性の定義
     514 */
     515#define TA_ACT                  UINT_C(0x01)    /* タスクを起動された状態で生成 */
     516#define TA_NOACTQUE             UINT_C(0x02)    /* 起動要求をキューイングしない */
     517
     518#define TA_TPRI                 UINT_C(0x01)    /* タスクの待ち行列を優先度順に */
     519
     520#define TA_WMUL                 UINT_C(0x02)    /* 複数の待ちタスク */
     521#define TA_CLR                  UINT_C(0x04)    /* イベントフラグのクリア指定 */
     522
     523#define TA_CEILING              UINT_C(0x03)    /* 優先度上限プロトコル */
     524
     525#define TA_STA                  UINT_C(0x02)    /* 周期通知を動作状態で生成 */
     526
     527#define TA_NONKERNEL    UINT_C(0x02)    /* カーネル管理外の割込み */
     528
     529#define TA_ENAINT               UINT_C(0x01)    /* 割込み要求禁止フラグをクリア */
     530#define TA_EDGE                 UINT_C(0x02)    /* エッジトリガ */
     531
     532/*
     533 *  サービスコールの動作モードの定義
     534 */
     535#define TWF_ORW                 UINT_C(0x01)    /* イベントフラグのOR待ち */
     536#define TWF_ANDW                UINT_C(0x02)    /* イベントフラグのAND待ち */
     537
     538/*
     539 *  通知処理モードの定義
     540 */
     541#define TNFY_HANDLER    UINT_C(0x00)            /* タイムイベントハンドラの呼出し */
     542#define TNFY_SETVAR             UINT_C(0x01)            /* 変数の設定 */
     543#define TNFY_INCVAR             UINT_C(0x02)            /* 変数のインクリメント */
     544#define TNFY_ACTTSK             UINT_C(0x03)            /* タスクの起動 */
     545#define TNFY_WUPTSK             UINT_C(0x04)            /* タスクの起床 */
     546#define TNFY_SIGSEM             UINT_C(0x05)            /* セマフォの資源の返却 */
     547#define TNFY_SETFLG             UINT_C(0x06)            /* イベントフラグのセット */
     548#define TNFY_SNDDTQ             UINT_C(0x07)            /* データキューへの送信 */
     549
     550#define TENFY_SETVAR    UINT_C(0x10)            /* 変数の設定 */
     551#define TENFY_INCVAR    UINT_C(0x20)            /* 変数のインクリメント */
     552#define TENFY_ACTTSK    UINT_C(0x30)            /* タスクの起動 */
     553#define TENFY_WUPTSK    UINT_C(0x40)            /* タスクの起床 */
     554#define TENFY_SIGSEM    UINT_C(0x50)            /* セマフォの返却 */
     555#define TENFY_SETFLG    UINT_C(0x60)            /* イベントフラグのセット */
     556#define TENFY_SNDDTQ    UINT_C(0x70)            /* データキューへの送信 */
     557
     558/*
     559 *  オブジェクトの状態の定義
     560 */
     561#define TTS_RUN                 UINT_C(0x01)    /* 実行状態 */
     562#define TTS_RDY                 UINT_C(0x02)    /* 実行可能状態 */
     563#define TTS_WAI                 UINT_C(0x04)    /* 待ち状態 */
     564#define TTS_SUS                 UINT_C(0x08)    /* 強制待ち状態 */
     565#define TTS_WAS                 UINT_C(0x0c)    /* 二重待ち状態 */
     566#define TTS_DMT                 UINT_C(0x10)    /* 休止状態 */
     567
     568#define TTW_SLP                 UINT_C(0x0001)  /* 起床待ち */
     569#define TTW_DLY                 UINT_C(0x0002)  /* 時間経過待ち */
     570#define TTW_SEM                 UINT_C(0x0004)  /* セマフォの資源獲得待ち */
     571#define TTW_FLG                 UINT_C(0x0008)  /* イベントフラグ待ち */
     572#define TTW_SDTQ                UINT_C(0x0010)  /* データキューへの送信待ち */
     573#define TTW_RDTQ                UINT_C(0x0020)  /* データキューからの受信待ち */
     574#define TTW_SPDQ                UINT_C(0x0100)  /* 優先度データキューへの送信待ち */
     575#define TTW_RPDQ                UINT_C(0x0200)  /* 優先度データキューからの受信待ち */
     576#define TTW_MTX                 UINT_C(0x0080)  /* ミューテックスのロック待ち状態 */
     577#define TTW_MPF                 UINT_C(0x2000)  /* 固定長メモリブロックの獲得待ち */
     578
     579#define TCYC_STP                UINT_C(0x01)    /* 周期通知が動作していない */
     580#define TCYC_STA                UINT_C(0x02)    /* 周期通知が動作している */
     581
     582#define TALM_STP                UINT_C(0x01)    /* アラーム通知が動作していない */
     583#define TALM_STA                UINT_C(0x02)    /* アラーム通知が動作している */
     584
     585/*
     586 *  その他の定数の定義
     587 */
     588#define TSK_SELF                0                       /* 自タスク指定 */
     589#define TSK_NONE                0                       /* 該当するタスクがない */
     590
     591#define TPRI_SELF               0                       /* 自タスクのベース優先度 */
     592#define TPRI_INI                0                       /* タスクの起動時優先度 */
     593
     594#define TIPM_ENAALL             0                       /* 割込み優先度マスク全解除 */
     595
     596/*
     597 *  構成定数とマクロ
     598 */
     599
     600/*
     601 *  優先度の範囲
     602 */
     603#define TMIN_TPRI               1                       /* タスク優先度の最小値(最高値)*/
     604#define TMAX_TPRI               16                      /* タスク優先度の最大値(最低値)*/
     605#define TMIN_DPRI               1                       /* データ優先度の最小値(最高値)*/
     606#define TMAX_DPRI               16                      /* データ優先度の最大値(最低値)*/
     607#define TMIN_ISRPRI             1                       /* 割込みサービスルーチン優先度の最小値 */
     608#define TMAX_ISRPRI             16                      /* 割込みサービスルーチン優先度の最大値 */
     609
     610/*
     611 *  バージョン情報
     612 */
     613#define TKERNEL_MAKER   UINT_C(0x0118)  /* カーネルのメーカーコード */
     614#define TKERNEL_PRID    UINT_C(0x0007)  /* カーネルの識別番号 */
     615#define TKERNEL_SPVER   UINT_C(0xf631)  /* カーネル仕様のバージョン番号 */
     616#define TKERNEL_PRVER   UINT_C(0x3010)  /* カーネルのバージョン番号 */
     617
     618/*
     619 *  キューイング回数の最大値
     620 */
     621#define TMAX_ACTCNT             UINT_C(1)               /* 起動要求キューイング数の最大値 */
     622#define TMAX_WUPCNT             UINT_C(1)               /* 起床要求キューイング数の最大値 */
     623
     624/*
     625 *  ビットパターンのビット数
     626 */
     627#ifndef TBIT_FLGPTN                                     /* イベントフラグのビット数 */
    738628#define TBIT_FLGPTN             (sizeof(FLGPTN) * CHAR_BIT)
    739629#endif /* TBIT_FLGPTN */
    740630
    741631/*
    742  *  システム時刻の調整できる範囲(単位:μ秒)
    743  */
    744 #define TMIN_ADJTIM             -1000000                /* システム時刻の最小調整時間 */
    745 #define TMAX_ADJTIM             1000000                 /* システム時刻の最大調整時間 */
    746 
    747 /*
    748  *  メモリ領域確保のためのマクロ
     632 *  システム時刻の調整できる範囲(単位:μ秒)
     633 */
     634#define TMIN_ADJTIM             -1000000                /* システム時刻の最小調整時間 */
     635#define TMAX_ADJTIM             1000000                 /* システム時刻の最大調整時間 */
     636
     637/*
     638 *  メモリ領域確保のためのマクロ
    749639 *
    750  *  以下のTOPPERS_COUNT_SZとTOPPERS_ROUND_SZの定義は,unitが2の巾乗であ
    751  *  ることを仮定している.
     640 *  以下のTOPPERS_COUNT_SZとTOPPERS_ROUND_SZの定義は,unitが2の巾乗であ
     641 *  ることを仮定している.
    752642 */
    753643#ifndef TOPPERS_COUNT_SZ
     
    776666
    777667/*
    778  *  その他の構成定数
    779  */
    780 #define TMAX_MAXSEM             UINT_MAX        /* セマフォの最大資源数の最大値 */
     668 *  その他の構成定数
     669 */
     670#define TMAX_MAXSEM             UINT_MAX        /* セマフォの最大資源数の最大値 */
    781671
    782672#ifdef __cplusplus
  • EcnlProtoTool/trunk/asp3_dcre/include/log_output.h

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-chdr to text/x-chdr;charset=UTF-8
    r270 r321  
    88 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    99 *
    10  *  上記著作権è€
    11 ã¯ï¼Œä»¥ä¸‹ã®(1)~(4)の条件を満たす場合に限り,本ソフトウェ
    12  *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
    13  *  変・再é
    14 å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
    15  *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
    16  *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
    17  *      スコード中に含まれていること.
    18  *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
    19  *      用できる形で再é
    20 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é
    21 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
    22  *      è€
    23 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—作権表示,この利用条件および下記
    24  *      の無保証規定を掲載すること.
    25  *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
    26  *      用できない形で再é
    27 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
    28  *      と.
    29  *    (a) 再é
    30 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€
    31 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—
    32  *        作権表示,この利用条件および下記の無保証規定を掲載すること.
    33  *    (b) 再é
    34 å¸ƒã®å½¢æ
    35 ‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
    36  *        報告すること.
    37  *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
    38  *      害からも,上記著作権è€
    39 ãŠã‚ˆã³TOPPERSプロジェクトをå
    40 è²¬ã™ã‚‹ã“と.
    41  *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
    42  *      由に基づく請求からも,上記著作権è€
    43 ãŠã‚ˆã³TOPPERSプロジェクトを
    44  *      å
    45 è²¬ã™ã‚‹ã“と.
     10 *  上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
     11 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     12 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     13 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     14 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     15 *      スコード中に含まれていること.
     16 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     17 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     18 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     19 *      の無保証規定を掲載すること.
     20 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     21 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     22 *      と.
     23 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     24 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     25 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     26 *        報告すること.
     27 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     28 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     29 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     30 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     31 *      免責すること.
    4632 *
    47  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    48 ãŠ
    49  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
    50  *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
    51  *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
    52  *  の責任を負わない.
     33 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     34 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     35 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     36 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     37 *  の責任を負わない.
    5338 *
    5439 *  $Id$
     
    5641
    5742/*
    58  *              システムログのフォーマット出力
     43 *              システムログのフォーマット出力
    5944 */
    6045
     
    7055
    7156/*
    72  *  文字列整形出力
     57 *  文字列整形出力
    7358 *
    74  *  formatで指定されるフォーマット記述とp_argsで指定される引数列から作
    75  *  成したメッセージを,1文字出力関数putcを用いて出力する.
     59 *  formatで指定されるフォーマット記述とp_argsで指定される引数列から作
     60 *  成したメッセージを,1文字出力関数putcを用いて出力する.
    7661 */
    7762extern void     syslog_printf(const char *format, const intptr_t *p_args,
     
    7964
    8065/*
    81  *  ログæƒ
    82 å ±ã®å‡ºåŠ›
     66 *  ログ情報の出力
    8367 *
    84  *  p_syslogで指定されるログæƒ
    85 å ±ã‚’文字列に整形し,1文字出力関数putcを用
    86  *  いて出力する.
     68 *  p_syslogで指定されるログ情報を文字列に整形し,1文字出力関数putcを用
     69 *  いて出力する.
    8770 */
    8871extern void     syslog_print(const SYSLOG *p_syslog, void (*putc)(char)) throw();
    8972
    9073/*
    91  *  ログæƒ
    92 å ±å–ªå¤±ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸æ–‡å­—列
     74 *  ログ情報喪失メッセージ文字列
    9375 *
    94  *  lostlog個のログæƒ
    95 å ±ãŒå¤±ã‚ã‚ŒãŸæ—¨ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’,1文字出力関数putcを
    96  *  用いて出力する.
     76 *  lostlog個のログ情報が失われた旨のメッセージを,1文字出力関数putcを
     77 *  用いて出力する.
    9778 */
    9879extern void     syslog_lostmsg(uint_t lostlog, void (*putc)(char)) throw();
  • EcnlProtoTool/trunk/asp3_dcre/include/queue.h

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-chdr to text/x-chdr;charset=UTF-8
    r270 r321  
    88 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    99 *
    10  *  上記著作権è€
    11 ã¯ï¼Œä»¥ä¸‹ã®(1)~(4)の条件を満たす場合に限り,本ソフトウェ
    12  *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
    13  *  変・再é
    14 å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
    15  *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
    16  *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
    17  *      スコード中に含まれていること.
    18  *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
    19  *      用できる形で再é
    20 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é
    21 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
    22  *      è€
    23 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—作権表示,この利用条件および下記
    24  *      の無保証規定を掲載すること.
    25  *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
    26  *      用できない形で再é
    27 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
    28  *      と.
    29  *    (a) 再é
    30 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€
    31 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—
    32  *        作権表示,この利用条件および下記の無保証規定を掲載すること.
    33  *    (b) 再é
    34 å¸ƒã®å½¢æ
    35 ‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
    36  *        報告すること.
    37  *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
    38  *      害からも,上記著作権è€
    39 ãŠã‚ˆã³TOPPERSプロジェクトをå
    40 è²¬ã™ã‚‹ã“と.
    41  *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
    42  *      由に基づく請求からも,上記著作権è€
    43 ãŠã‚ˆã³TOPPERSプロジェクトを
    44  *      å
    45 è²¬ã™ã‚‹ã“と.
     10 *  上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
     11 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     12 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     13 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     14 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     15 *      スコード中に含まれていること.
     16 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     17 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     18 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     19 *      の無保証規定を掲載すること.
     20 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     21 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     22 *      と.
     23 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     24 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     25 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     26 *        報告すること.
     27 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     28 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     29 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     30 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     31 *      免責すること.
    4632 *
    47  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    48 ãŠ
    49  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
    50  *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
    51  *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
    52  *  の責任を負わない.
     33 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     34 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     35 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     36 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     37 *  の責任を負わない.
    5338 *
    5439 *  $Id$
     
    5641
    5742/*
    58  *              キュー操作ライブラリ
     43 *              キュー操作ライブラリ
    5944 *
    60  *  このキュー操作ライブラリでは,キューヘッダを含むリング構造のダブル
    61  *  リンクキューを扱う.å
    62 ·ä½“的には,キューヘッダの次エントリはキューの
    63  *  å
    64 ˆé ­ã®ã‚¨ãƒ³ãƒˆãƒªï¼Œå‰ã‚¨ãƒ³ãƒˆãƒªã¯ã‚­ãƒ¥ãƒ¼ã®æœ«å°¾ã®ã‚¨ãƒ³ãƒˆãƒªã¨ã™ã‚‹ï¼Žã¾ãŸï¼Œã‚­
    65  *  ューのå
    66 ˆé ­ã®ã‚¨ãƒ³ãƒˆãƒªã®å‰ã‚¨ãƒ³ãƒˆãƒªã¨ï¼Œã‚­ãƒ¥ãƒ¼ã®æœ«å°¾ã®ã‚¨ãƒ³ãƒˆãƒªã®æ¬¡ã‚¨ãƒ³
    67  *  トリは,キューヘッダとする.空のキューは,次エントリ,前エントリと
    68  *  も自分自身を指すキューヘッダであらわす.
     45 *  このキュー操作ライブラリでは,キューヘッダを含むリング構造のダブル
     46 *  リンクキューを扱う.具体的には,キューヘッダの次エントリはキューの
     47 *  先頭のエントリ,前エントリはキューの末尾のエントリとする.また,キ
     48 *  ューの先頭のエントリの前エントリと,キューの末尾のエントリの次エン
     49 *  トリは,キューヘッダとする.空のキューは,次エントリ,前エントリと
     50 *  も自分自身を指すキューヘッダであらわす.
    6951 */
    7052
     
    8062
    8163/*
    82  *  キューのデータ構造の定義
     64 *  キューのデータ構造の定義
    8365 */
    8466typedef struct queue {
    85         struct queue *p_next;           /* 次エントリへのポインタ */
    86         struct queue *p_prev;           /* 前エントリへのポインタ */
     67        struct queue *p_next;           /* 次エントリへのポインタ */
     68        struct queue *p_prev;           /* 前エントリへのポインタ */
    8769} QUEUE;
    8870
    8971/*
    90  *  キューの初期化
     72 *  キューの初期化
    9173 *
    92  *  p_queueにはキューヘッダを指定する.
     74 *  p_queueにはキューヘッダを指定する.
    9375 */
    9476Inline void
     
    10082
    10183/*
    102  *  キューの前エントリへの挿å
    103 ¥
     84 *  キューの前エントリへの挿入
    10485 *
    105  *  p_queueの前にp_entryを挿å
    106 ¥ã™ã‚‹ï¼Žp_queueにキューヘッダを指定した場
    107  *  合には,キューの末尾にp_entryを挿å
    108 ¥ã™ã‚‹ã“とになる.
     86 *  p_queueの前にp_entryを挿入する.p_queueにキューヘッダを指定した場
     87 *  合には,キューの末尾にp_entryを挿入することになる.
    10988 */
    11089Inline void
     
    11897
    11998/*
    120  *  キューの次エントリへの挿å
    121 ¥
     99 *  キューの次エントリへの挿入
    122100 *
    123  *  p_queueの次にp_entryを挿å
    124 ¥ã™ã‚‹ï¼Žp_queueにキューヘッダを指定した場
    125  *  合には,キューのå
    126 ˆé ­ã«p_entryを挿å
    127 ¥ã™ã‚‹ã“とになる.
     101 *  p_queueの次にp_entryを挿入する.p_queueにキューヘッダを指定した場
     102 *  合には,キューの先頭にp_entryを挿入することになる.
    128103 */
    129104Inline void
     
    137112
    138113/*
    139  *  エントリの削除
     114 *  エントリの削除
    140115 *
    141  *  p_entryをキューから削除する.
     116 *  p_entryをキューから削除する.
    142117 */
    143118Inline void
     
    149124
    150125/*
    151  *  キューの次エントリの取出し
     126 *  キューの次エントリの取出し
    152127 *
    153  *  p_queueの次エントリをキューから削除し,削除したエントリを返す.
    154  *  p_queueにキューヘッダを指定した場合には,キューのå
    155 ˆé ­ã®ã‚¨ãƒ³ãƒˆãƒªã‚’
    156  *  取り出すことになる.p_queueに空のキューを指定して呼び出してはなら
    157  *  ない.
     128 *  p_queueの次エントリをキューから削除し,削除したエントリを返す.
     129 *  p_queueにキューヘッダを指定した場合には,キューの先頭のエントリを
     130 *  取り出すことになる.p_queueに空のキューを指定して呼び出してはなら
     131 *  ない.
    158132 */
    159133Inline QUEUE *
     
    170144
    171145/*
    172  *  キューが空かどうかのチェック
     146 *  キューが空かどうかのチェック
    173147 *
    174  *  p_queueにはキューヘッダを指定する.
     148 *  p_queueにはキューヘッダを指定する.
    175149 */
    176150Inline bool_t
  • EcnlProtoTool/trunk/asp3_dcre/include/sil.h

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-chdr to text/x-chdr;charset=UTF-8
    r270 r321  
    88 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    99 *
    10  *  上記著作権è€
    11 ã¯ï¼Œä»¥ä¸‹ã®(1)~(4)の条件を満たす場合に限り,本ソフトウェ
    12  *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
    13  *  変・再é
    14 å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
    15  *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
    16  *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
    17  *      スコード中に含まれていること.
    18  *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
    19  *      用できる形で再é
    20 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é
    21 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
    22  *      è€
    23 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—作権表示,この利用条件および下記
    24  *      の無保証規定を掲載すること.
    25  *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
    26  *      用できない形で再é
    27 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
    28  *      と.
    29  *    (a) 再é
    30 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€
    31 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—
    32  *        作権表示,この利用条件および下記の無保証規定を掲載すること.
    33  *    (b) 再é
    34 å¸ƒã®å½¢æ
    35 ‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
    36  *        報告すること.
    37  *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
    38  *      害からも,上記著作権è€
    39 ãŠã‚ˆã³TOPPERSプロジェクトをå
    40 è²¬ã™ã‚‹ã“と.
    41  *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
    42  *      由に基づく請求からも,上記著作権è€
    43 ãŠã‚ˆã³TOPPERSプロジェクトを
    44  *      å
    45 è²¬ã™ã‚‹ã“と.
    46  *
    47  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    48 ãŠ
    49  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
    50  *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
    51  *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
    52  *  の責任を負わない.
     10 *  上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
     11 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     12 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     13 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     14 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     15 *      スコード中に含まれていること.
     16 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     17 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     18 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     19 *      の無保証規定を掲載すること.
     20 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     21 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     22 *      と.
     23 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     24 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     25 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     26 *        報告すること.
     27 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     28 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     29 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     30 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     31 *      免責すること.
     32 *
     33 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     34 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     35 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     36 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     37 *  の責任を負わない.
    5338 *
    5439 *  $Id$
     
    5641
    5742/*
    58  *              システムインタフェースレイヤ
     43 *              システムインタフェースレイヤ
    5944 *
    60  *  システムインタフェースレイヤのサービスコールの定義・宣言とマクロな
    61  *  どの定義を含むヘッダファイル.
     45 *  システムインタフェースレイヤのサービスコールの定義・宣言とマクロな
     46 *  どの定義を含むヘッダファイル.
    6247 *
    63  *  アセンブリ言語のソースファイルからこのファイルをインクルードする時
    64  *  は,TOPPERS_MACRO_ONLYを定義しておくことで,マクロ定義以外の記述を
    65  *  除くことができる.
     48 *  アセンブリ言語のソースファイルからこのファイルをインクルードする時
     49 *  は,TOPPERS_MACRO_ONLYを定義しておくことで,マクロ定義以外の記述を
     50 *  除くことができる.
    6651 */
    6752
     
    7459
    7560/*
    76  *      TOPPERSå
    77 ±é€šã®ãƒ‡ãƒ¼ã‚¿åž‹ãƒ»å®šæ•°ãƒ»ãƒžã‚¯ãƒ­
     61 *      TOPPERS共通のデータ型・定数・マクロ
    7862 */
    7963#include <t_stddef.h>
    8064
    8165/*
    82  *  ターゲット依存部
     66 *  ターゲット依存部
    8367 */
    8468#include "target_sil.h"
     
    8771
    8872/*
    89  *  å
    90 ¨å‰²è¾¼ã¿ãƒ­ãƒƒã‚¯çŠ¶æ
    91 ‹ã®åˆ¶å¾¡
     73 *  全割込みロック状態の制御
    9274 *
    93  *  SIL_PRE_LOC,SIL_LOC_INT(),SIL_UNL_INT()は,ターゲット依存部で用
    94  *  意する.デフォルトの定義は用意していない.
    95  */
    96 
    97 /*
    98  *  微少時間å¾
    99 ã¡
     75 *  SIL_PRE_LOC,SIL_LOC_INT(),SIL_UNL_INT()は,ターゲット依存部で用
     76 *  意する.デフォルトの定義は用意していない.
     77 */
     78
     79/*
     80 *  微少時間待ち
    10081 */
    10182extern void     sil_dly_nse(ulong_t dlytim) throw();
    10283
    10384/*
    104  *  エンディアンの反転
     85 *  エンディアンの反転
    10586 */
    10687#ifndef TOPPERS_SIL_REV_ENDIAN_UINT16
     
    11697
    11798/*
    118  *  メモリ空間アクセス関数
     99 *  メモリ空間アクセス関数
    119100 */
    120101#ifndef TOPPERS_OMIT_SIL_ACCESS
    121102
    122103/*
    123  *  8ビット単位の読出し/書込み
     104 *  8ビット単位の読出し/書込み
    124105 */
    125106#ifdef UINT8_MAX
     
    143124
    144125/*
    145  *  16ビット単位の読出し/書込み
     126 *  16ビット単位の読出し/書込み
    146127 */
    147128
     
    161142}
    162143
    163 #ifdef SIL_ENDIAN_BIG                   /* ビッグエンディアンプロセッサ */
     144#ifdef SIL_ENDIAN_BIG                   /* ビッグエンディアンプロセッサ */
    164145
    165146#define sil_reh_bem(mem)                sil_reh_mem(mem)
     
    188169#endif /* TOPPERS_OMIT_SIL_WRH_LEM */
    189170#else /* SIL_ENDIAN_BIG */
    190 #ifdef SIL_ENDIAN_LITTLE                /* リトルエンディアンプロセッサ */
     171#ifdef SIL_ENDIAN_LITTLE                /* リトルエンディアンプロセッサ */
    191172
    192173#define sil_reh_lem(mem)                sil_reh_mem(mem)
     
    222203
    223204/*
    224  *  32ビット単位の読出し/書込み
     205 *  32ビット単位の読出し/書込み
    225206 */
    226207
     
    240221}
    241222
    242 #ifdef SIL_ENDIAN_BIG                   /* ビッグエンディアンプロセッサ */
     223#ifdef SIL_ENDIAN_BIG                   /* ビッグエンディアンプロセッサ */
    243224
    244225#define sil_rew_bem(mem)                sil_rew_mem(mem)
     
    266247
    267248#endif /* TOPPERS_OMIT_SIL_WRW_LEM */
    268 #else /* SIL_ENDIAN_BIG */              /* リトルエンディアンプロセッサ */
     249#else /* SIL_ENDIAN_BIG */              /* リトルエンディアンプロセッサ */
    269250
    270251#define sil_rew_lem(mem)                sil_rew_mem(mem)
  • EcnlProtoTool/trunk/asp3_dcre/include/t_stddef.h

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-chdr to text/x-chdr;charset=UTF-8
    r270 r321  
    88 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    99 *
    10  *  上記著作権è€
    11 ã¯ï¼Œä»¥ä¸‹ã®(1)~(4)の条件を満たす場合に限り,本ソフトウェ
    12  *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
    13  *  変・再é
    14 å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
    15  *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
    16  *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
    17  *      スコード中に含まれていること.
    18  *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
    19  *      用できる形で再é
    20 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é
    21 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
    22  *      è€
    23 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—作権表示,この利用条件および下記
    24  *      の無保証規定を掲載すること.
    25  *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
    26  *      用できない形で再é
    27 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
    28  *      と.
    29  *    (a) 再é
    30 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€
    31 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—
    32  *        作権表示,この利用条件および下記の無保証規定を掲載すること.
    33  *    (b) 再é
    34 å¸ƒã®å½¢æ
    35 ‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
    36  *        報告すること.
    37  *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
    38  *      害からも,上記著作権è€
    39 ãŠã‚ˆã³TOPPERSプロジェクトをå
    40 è²¬ã™ã‚‹ã“と.
    41  *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
    42  *      由に基づく請求からも,上記著作権è€
    43 ãŠã‚ˆã³TOPPERSプロジェクトを
    44  *      å
    45 è²¬ã™ã‚‹ã“と.
    46  *
    47  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    48 ãŠ
    49  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
    50  *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
    51  *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
    52  *  の責任を負わない.
     10 *  上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
     11 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     12 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     13 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     14 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     15 *      スコード中に含まれていること.
     16 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     17 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     18 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     19 *      の無保証規定を掲載すること.
     20 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     21 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     22 *      と.
     23 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     24 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     25 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     26 *        報告すること.
     27 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     28 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     29 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     30 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     31 *      免責すること.
     32 *
     33 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     34 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     35 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     36 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     37 *  の責任を負わない.
    5338 *
    5439 *  $Id$
     
    5641
    5742/*
    58  *              TOPPERSå
    59 ±é€šãƒ˜ãƒƒãƒ€ãƒ•ã‚¡ã‚¤ãƒ«
    60  *
    61  *  TOPPERS関連のすべてのソースファイルでインクルードすべきヘッダファイ
    62  *  ル.各種のカーネルやソフトウェア部品でå
    63 ±é€šã«ç”¨ã„ることを想定してい
    64  *  る.TOPPERSの各種のカーネルやソフトウェア部品でå
    65 ±é€šã«ç”¨ã„るデータ型,
    66  *  定数,マクロの定義などを含む.
    67  *
    68  *  アセンブリ言語のソースファイルからこのファイルをインクルードする時
    69  *  は,TOPPERS_MACRO_ONLYを定義しておく.これにより,マクロ定義以外を
    70  *  除くようになっている.
     43 *              TOPPERS共通ヘッダファイル
     44 *
     45 *  TOPPERS関連のすべてのソースファイルでインクルードすべきヘッダファイ
     46 *  ル.各種のカーネルやソフトウェア部品で共通に用いることを想定してい
     47 *  る.TOPPERSの各種のカーネルやソフトウェア部品で共通に用いるデータ型,
     48 *  定数,マクロの定義などを含む.
     49 *
     50 *  アセンブリ言語のソースファイルからこのファイルをインクルードする時
     51 *  は,TOPPERS_MACRO_ONLYを定義しておく.これにより,マクロ定義以外を
     52 *  除くようになっている.
    7153 */
    7254
     
    7961
    8062/*
    81  *  ターゲット依存部
     63 *  ターゲット依存部
    8264 */
    8365#include "target_stddef.h"
    8466
    8567/*
    86  *  C言語/EC++でthrow()に対処するための定義
     68 *  C言語/EC++でthrow()に対処するための定義
    8769 */
    8870#if !defined(__cplusplus) || defined(__embedded_cplusplus)
     
    9375
    9476/*
    95  *  ターゲット依存のデータ型のマクロのデフォルト定義
     77 *  ターゲット依存のデータ型のマクロのデフォルト定義
    9678 */
    9779#ifndef TOPPERS_bool
    98 #define TOPPERS_bool    int                             /* ブール型 */
     80#define TOPPERS_bool    int                             /* ブール型 */
    9981#endif /* TOPPERS_bool */
    10082
     
    10284struct TOPPERS_dummy_t { int TOPPERS_dummy_field; };
    10385typedef void                    (*TOPPERS_fp_t)(struct TOPPERS_dummy_t);
    104 #define TOPPERS_fp              TOPPERS_fp_t    /* プログラムの起動番地 */
     86#define TOPPERS_fp              TOPPERS_fp_t    /* プログラムの起動番地 */
    10587#endif /* TOPPERS_fp */
    10688
    10789/*
    108  *  å
    109 ±é€šãƒ‡ãƒ¼ã‚¿åž‹
    110  */
    111 typedef TOPPERS_bool    bool_t;         /* 真偽値 */
    112 
    113 typedef signed int              int_t;          /* 自然なサイズの符号付き整数 */
    114 typedef unsigned int    uint_t;         /* 自然なサイズの符号無し整数 */
    115 
    116 typedef signed long             long_t;         /* 長めのサイズの符号付き整数 */
    117 typedef unsigned long   ulong_t;        /* 長めのサイズの符号無し整数 */
    118 
    119 typedef int_t                   FN;                     /* 機能コード */
    120 typedef int_t                   ER;                     /* エラーコード */
    121 typedef int_t                   ID;                     /* オブジェクトのID番号 */
    122 typedef uint_t                  ATR;            /* オブジェクトの属性 */
    123 typedef uint_t                  STAT;           /* オブジェクトの状æ
    124 ‹ */
    125 typedef uint_t                  MODE;           /* サービスコールの動作モード */
    126 typedef int_t                   PRI;            /* 優å
    127 ˆåº¦ */
    128 typedef uint32_t                TMO;            /* タイムアウト指定 */
    129 typedef uint32_t                RELTIM;         /* 相対時間[NGKI0550ï¼½*/
     90 *  共通データ型
     91 */
     92typedef TOPPERS_bool    bool_t;         /* 真偽値 */
     93
     94typedef signed int              int_t;          /* 自然なサイズの符号付き整数 */
     95typedef unsigned int    uint_t;         /* 自然なサイズの符号無し整数 */
     96
     97typedef signed long             long_t;         /* 長めのサイズの符号付き整数 */
     98typedef unsigned long   ulong_t;        /* 長めのサイズの符号無し整数 */
     99
     100typedef int_t                   FN;                     /* 機能コード */
     101typedef int_t                   ER;                     /* エラーコード */
     102typedef int_t                   ID;                     /* オブジェクトのID番号 */
     103typedef uint_t                  ATR;            /* オブジェクトの属性 */
     104typedef uint_t                  STAT;           /* オブジェクトの状態 */
     105typedef uint_t                  MODE;           /* サービスコールの動作モード */
     106typedef int_t                   PRI;            /* 優先度 */
     107typedef uint32_t                TMO;            /* タイムアウト指定 */
     108typedef uint32_t                RELTIM;         /* 相対時間[NGKI0550]*/
    130109#ifdef UINT64_MAX
    131 typedef uint64_t                SYSTIM;         /* システム時刻[NGKI0548ï¼½*/
     110typedef uint64_t                SYSTIM;         /* システム時刻[NGKI0548]*/
    132111#else /* UINT64_MAX */
    133 typedef uint32_t                SYSTIM;         /* システム時刻[NGKI0548ï¼½*/
     112typedef uint32_t                SYSTIM;         /* システム時刻[NGKI0548]*/
    134113#endif /* UINT64_MAX */
    135 typedef uint32_t                PRCTIM;         /* プロセッサ時間[NGKI0573ï¼½*/
    136 typedef uint32_t                HRTCNT;         /* 高分解能タイマのカウント値 */
    137 
    138 typedef TOPPERS_fp              FP;                     /* プログラムの起動番地 */
    139 
    140 typedef int_t                   ER_BOOL;        /* エラーコードまたは真偽値 */
    141 typedef int_t                   ER_ID;          /* エラーコードまたはID番号 */
    142 typedef int_t                   ER_UINT;        /* エラーコードまたは符号無し整数 */
    143 
    144 typedef uintptr_t               MB_T;           /* 管理領域を確保するためのデータ型 */
    145 
    146 typedef uint32_t                ACPTN;          /* アクセス許可パターン */
    147 typedef struct acvct {                          /* アクセス許可ベクタ */
    148         ACPTN           acptn1;                         /* 通常操作1のアクセス許可パターン */
    149         ACPTN           acptn2;                         /* 通常操作2のアクセス許可パターン */
    150         ACPTN           acptn3;                         /* 管理操作のアクセス許可パターン */
    151         ACPTN           acptn4;                         /* 参ç
    152 §æ“ä½œã®ã‚¢ã‚¯ã‚»ã‚¹è¨±å¯ãƒ‘ターン */
     114typedef uint32_t                PRCTIM;         /* プロセッサ時間[NGKI0573]*/
     115typedef uint32_t                HRTCNT;         /* 高分解能タイマのカウント値 */
     116
     117typedef TOPPERS_fp              FP;                     /* プログラムの起動番地 */
     118
     119typedef int_t                   ER_BOOL;        /* エラーコードまたは真偽値 */
     120typedef int_t                   ER_ID;          /* エラーコードまたはID番号 */
     121typedef int_t                   ER_UINT;        /* エラーコードまたは符号無し整数 */
     122
     123typedef uintptr_t               MB_T;           /* 管理領域を確保するためのデータ型 */
     124
     125typedef uint32_t                ACPTN;          /* アクセス許可パターン */
     126typedef struct acvct {                          /* アクセス許可ベクタ */
     127        ACPTN           acptn1;                         /* 通常操作1のアクセス許可パターン */
     128        ACPTN           acptn2;                         /* 通常操作2のアクセス許可パターン */
     129        ACPTN           acptn3;                         /* 管理操作のアクセス許可パターン */
     130        ACPTN           acptn4;                         /* 参照操作のアクセス許可パターン */
    153131} ACVCT;
    154132
     
    156134
    157135/*
    158  *  整数定数を作るマクロ
     136 *  整数定数を作るマクロ
    159137 */
    160138#ifndef UINT_C
    161 #define UINT_C(val)             (val ## U)              /* uint_t型の定数を作るマクロ */
     139#define UINT_C(val)             (val ## U)              /* uint_t型の定数を作るマクロ */
    162140#endif /* UINT_C */
    163141
    164142#ifndef ULONG_C
    165 #define ULONG_C(val)    (val ## UL)             /* ulong_t型の定数を作るマクロ */
     143#define ULONG_C(val)    (val ## UL)             /* ulong_t型の定数を作るマクロ */
    166144#endif /* ULONG_C */
    167145
    168146/*
    169  *  一般定数
     147 *  一般定数
    170148 */
    171149#ifndef NULL
    172 #define NULL            0                       /* 無効ポインタ */
     150#define NULL            0                       /* 無効ポインタ */
    173151#endif /* NULL */
    174152
    175153#ifndef true
    176 #define true            1                       /* 真 */
     154#define true            1                       /* */
    177155#endif /* true */
    178156
    179157#ifndef false
    180 #define false           0                       /* 偽 */
     158#define false           0                       /* */
    181159#endif /* false */
    182160
    183 #define E_OK            0                       /* 正常終了 */
    184 
    185 /*
    186  *  メインエラーコード
    187  */
    188 #define E_SYS           (-5)            /* システムエラー */
    189 #define E_NOSPT         (-9)            /* 未サポート機能 */
    190 #define E_RSFN          (-10)           /* 予約機能コード */
    191 #define E_RSATR         (-11)           /* 予約属性 */
    192 #define E_PAR           (-17)           /* パラメータエラー */
    193 #define E_ID            (-18)           /* 不正ID番号 */
    194 #define E_CTX           (-25)           /* コンテキストエラー */
    195 #define E_MACV          (-26)           /* メモリアクセス違反 */
    196 #define E_OACV          (-27)           /* オブジェクトアクセス違反 */
    197 #define E_ILUSE         (-28)           /* サービスコール不正使用 */
    198 #define E_NOMEM         (-33)           /* メモリ不足 */
    199 #define E_NOID          (-34)           /* ID番号不足 */
    200 #define E_NORES         (-35)           /* 資源不足 */
    201 #define E_OBJ           (-41)           /* オブジェクト状æ
    202 ‹ã‚¨ãƒ©ãƒ¼ */
    203 #define E_NOEXS         (-42)           /* オブジェクト未生成 */
    204 #define E_QOVR          (-43)           /* キューイングオーバーフロー */
    205 #define E_RLWAI         (-49)           /* å¾
    206 ã¡çŠ¶æ
    207 ‹ã®å¼·åˆ¶è§£é™¤ */
    208 #define E_TMOUT         (-50)           /* ポーリング失敗またはタイムアウト */
    209 #define E_DLT           (-51)           /* å¾
    210 ã¡ã‚ªãƒ–ジェクトの削除 */
    211 #define E_CLS           (-52)           /* å¾
    212 ã¡ã‚ªãƒ–ジェクトの状æ
    213 ‹å¤‰åŒ– */
    214 #define E_RASTER        (-53)           /* タスクの終了要求 */
    215 #define E_WBLK          (-57)           /* ノンブロッキング受付け */
    216 #define E_BOVR          (-58)           /* バッファオーバーフロー */
    217 #define E_COMM          (-65)           /* 通信エラー */
    218 
    219 /*
    220  *  オブジェクト属性
    221  */
    222 #define TA_NULL         UINT_C(0)       /* オブジェクト属性を指定しない */
    223 
    224 /*
    225  *  タイムアウト指定
    226  */
    227 #define TMO_POL         UINT_C(0)                       /* ポーリング */
    228 #define TMO_FEVR        (UINT32_MAX)            /* æ°¸ä¹
    229 å¾
    230 ã¡ */
    231 #define TMO_NBLK        (UINT32_MAX - 1)        /* ノンブロッキング */
    232 
    233 /*
    234  *  アクセス許可パターン
    235  */
    236 #define TACP_KERNEL     UINT_C(0)               /* カーネルドメインだけにアクセスを許可 */
    237 #define TACP_SHARED     (~UINT_C(0))    /* すべてのドメインからアクセスを許可 */
    238 
    239 /*
    240  *  型に関するæƒ
    241 å ±ã‚’取り出すためのマクロ
    242  *
    243  *  以下のALIGN_TYPEの定義は,アラインメントの単位が2の巾乗であることを
    244  *  仮定している.
     161#define E_OK            0                       /* 正常終了 */
     162
     163/*
     164 *  メインエラーコード
     165 */
     166#define E_SYS           (-5)            /* システムエラー */
     167#define E_NOSPT         (-9)            /* 未サポート機能 */
     168#define E_RSFN          (-10)           /* 予約機能コード */
     169#define E_RSATR         (-11)           /* 予約属性 */
     170#define E_PAR           (-17)           /* パラメータエラー */
     171#define E_ID            (-18)           /* 不正ID番号 */
     172#define E_CTX           (-25)           /* コンテキストエラー */
     173#define E_MACV          (-26)           /* メモリアクセス違反 */
     174#define E_OACV          (-27)           /* オブジェクトアクセス違反 */
     175#define E_ILUSE         (-28)           /* サービスコール不正使用 */
     176#define E_NOMEM         (-33)           /* メモリ不足 */
     177#define E_NOID          (-34)           /* ID番号不足 */
     178#define E_NORES         (-35)           /* 資源不足 */
     179#define E_OBJ           (-41)           /* オブジェクト状態エラー */
     180#define E_NOEXS         (-42)           /* オブジェクト未生成 */
     181#define E_QOVR          (-43)           /* キューイングオーバーフロー */
     182#define E_RLWAI         (-49)           /* 待ち状態の強制解除 */
     183#define E_TMOUT         (-50)           /* ポーリング失敗またはタイムアウト */
     184#define E_DLT           (-51)           /* 待ちオブジェクトの削除 */
     185#define E_CLS           (-52)           /* 待ちオブジェクトの状態変化 */
     186#define E_RASTER        (-53)           /* タスクの終了要求 */
     187#define E_WBLK          (-57)           /* ノンブロッキング受付け */
     188#define E_BOVR          (-58)           /* バッファオーバーフロー */
     189#define E_COMM          (-65)           /* 通信エラー */
     190
     191/*
     192 *  オブジェクト属性
     193 */
     194#define TA_NULL         UINT_C(0)       /* オブジェクト属性を指定しない */
     195
     196/*
     197 *  タイムアウト指定
     198 */
     199#define TMO_POL         UINT_C(0)                       /* ポーリング */
     200#define TMO_FEVR        (UINT32_MAX)            /* 永久待ち */
     201#define TMO_NBLK        (UINT32_MAX - 1)        /* ノンブロッキング */
     202
     203/*
     204 *  アクセス許可パターン
     205 */
     206#define TACP_KERNEL     UINT_C(0)               /* カーネルドメインだけにアクセスを許可 */
     207#define TACP_SHARED     (~UINT_C(0))    /* すべてのドメインからアクセスを許可 */
     208
     209/*
     210 *  型に関する情報を取り出すためのマクロ
     211 *
     212 *  以下のALIGN_TYPEの定義は,アラインメントの単位が2の巾乗であることを
     213 *  仮定している.
    245214 */
    246215#ifndef offsetof
     
    252221#endif /* alignof */
    253222
    254 #ifndef ALIGN_TYPE                              /* アラインメントのチェック */
     223#ifndef ALIGN_TYPE                              /* アラインメントのチェック */
    255224#define ALIGN_TYPE(addr, type) \
    256225                                                ((((uintptr_t)(addr)) & (alignof(type) - 1)) == 0U)
     
    258227
    259228/*
    260  *  assertマクロ
     229 *  assertマクロ
    261230 */
    262231#undef assert
     
    273242
    274243/*
    275  *  エラーコード生成・分解マクロ
    276  *
    277  *  以下のマクロ定義は,符号付き整数が2の補数で表現されており,右シフト
    278  *  演算子(>>)が算術シフトされることを仮定している.そうでない開発環
    279  *  境では,target_stddef.hでこれらの定義を上書きしなければならない.
    280  *
    281  *  MERCDマクロの定義は,メインエラーコードが負であることを仮定している.
    282  *  そうでない場合,2つの定義が一致しなくなる.
     244 *  エラーコード生成・分解マクロ
     245 *
     246 *  以下のマクロ定義は,符号付き整数が2の補数で表現されており,右シフト
     247 *  演算子(>>)が算術シフトされることを仮定している.そうでない開発環
     248 *  境では,target_stddef.hでこれらの定義を上書きしなければならない.
     249 *
     250 *  MERCDマクロの定義は,メインエラーコードが負であることを仮定している.
     251 *  そうでない場合,2つの定義が一致しなくなる.
    283252 */
    284253#ifndef ERCD
     
    300269
    301270/*
    302  *  アクセス許可パターン生成マクロ
    303  */
    304 #define TACP(domid)             (1U << ((domid) - 1))   /* domidだけにアクセスを許可 */
    305 
    306 /*
    307  *  相対時間(RELTIM)に指定できる最大値[NGKI0551ï¼½
    308  */
    309 #define TMAX_RELTIM             4000000000U                             /* 66分40秒まで指定可 */
     271 *  アクセス許可パターン生成マクロ
     272 */
     273#define TACP(domid)             (1U << ((domid) - 1))   /* domidだけにアクセスを許可 */
     274
     275/*
     276 *  相対時間(RELTIM)に指定できる最大値[NGKI0551]
     277 */
     278#define TMAX_RELTIM             4000000000U                             /* 66分40秒まで指定可 */
    310279
    311280#endif /* TOPPERS_T_STDDEF_H */
  • EcnlProtoTool/trunk/asp3_dcre/include/t_stdlib.h

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-chdr to text/x-chdr;charset=UTF-8
    r270 r321  
    88 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    99 *
    10  *  上記著作権è€
    11 ã¯ï¼Œä»¥ä¸‹ã®(1)~(4)の条件を満たす場合に限り,本ソフトウェ
    12  *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
    13  *  変・再é
    14 å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
    15  *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
    16  *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
    17  *      スコード中に含まれていること.
    18  *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
    19  *      用できる形で再é
    20 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é
    21 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
    22  *      è€
    23 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—作権表示,この利用条件および下記
    24  *      の無保証規定を掲載すること.
    25  *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
    26  *      用できない形で再é
    27 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
    28  *      と.
    29  *    (a) 再é
    30 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€
    31 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—
    32  *        作権表示,この利用条件および下記の無保証規定を掲載すること.
    33  *    (b) 再é
    34 å¸ƒã®å½¢æ
    35 ‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
    36  *        報告すること.
    37  *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
    38  *      害からも,上記著作権è€
    39 ãŠã‚ˆã³TOPPERSプロジェクトをå
    40 è²¬ã™ã‚‹ã“と.
    41  *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
    42  *      由に基づく請求からも,上記著作権è€
    43 ãŠã‚ˆã³TOPPERSプロジェクトを
    44  *      å
    45 è²¬ã™ã‚‹ã“と.
     10 *  上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
     11 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     12 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     13 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     14 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     15 *      スコード中に含まれていること.
     16 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     17 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     18 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     19 *      の無保証規定を掲載すること.
     20 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     21 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     22 *      と.
     23 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     24 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     25 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     26 *        報告すること.
     27 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     28 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     29 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     30 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     31 *      免責すること.
    4632 *
    47  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    48 ãŠ
    49  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
    50  *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
    51  *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
    52  *  の責任を負わない.
     33 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     34 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     35 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     36 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     37 *  の責任を負わない.
    5338 *
    5439 *  $Id$
     
    5641
    5742/*
    58  *              基本的なライブラリ関数
     43 *              基本的なライブラリ関数
    5944 */
    6045
     
    6954
    7055/*
    71  *  エラーメッセージ文字列を返す関数
     56 *  エラーメッセージ文字列を返す関数
    7257 *
    73  *  ercdで指定されたエラーコードのメインエラーコードの名称(E_PAR,
    74  *  E_OBJなど)の文字列を返す関数.
     58 *  ercdで指定されたエラーコードのメインエラーコードの名称(E_PAR,
     59 *  E_OBJなど)の文字列を返す関数.
    7560 */
    7661extern const char       *itron_strerror(ER ercd) throw();
    7762
    7863/*
    79  *  エラーメッセージのログ出力
     64 *  エラーメッセージのログ出力
    8065 *
    81  *  サービスコールがエラーを返した場合に,そのファイル名,行番号,メイ
    82  *  ンエラーコード等を表示するための関数.
     66 *  サービスコールがエラーを返した場合に,そのファイル名,行番号,メイ
     67 *  ンエラーコード等を表示するための関数.
    8368 */
    8469extern void             t_perror(uint_t prio, const char *file, int_t line,
  • EcnlProtoTool/trunk/asp3_dcre/include/t_syslog.h

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-chdr to text/x-chdr;charset=UTF-8
    r270 r321  
    99 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    1010 *
    11  *  上記著作権è€
    12 ã¯ï¼Œä»¥ä¸‹ã®(1)~(4)の条件を満たす場合に限り,本ソフトウェ
    13  *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
    14  *  変・再é
    15 å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
    16  *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
    17  *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
    18  *      スコード中に含まれていること.
    19  *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
    20  *      用できる形で再é
    21 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é
    22 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
    23  *      è€
    24 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—作権表示,この利用条件および下記
    25  *      の無保証規定を掲載すること.
    26  *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
    27  *      用できない形で再é
    28 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
    29  *      と.
    30  *    (a) 再é
    31 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€
    32 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—
    33  *        作権表示,この利用条件および下記の無保証規定を掲載すること.
    34  *    (b) 再é
    35 å¸ƒã®å½¢æ
    36 ‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
    37  *        報告すること.
    38  *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
    39  *      害からも,上記著作権è€
    40 ãŠã‚ˆã³TOPPERSプロジェクトをå
    41 è²¬ã™ã‚‹ã“と.
    42  *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
    43  *      由に基づく請求からも,上記著作権è€
    44 ãŠã‚ˆã³TOPPERSプロジェクトを
    45  *      å
    46 è²¬ã™ã‚‹ã“と.
     11 *  上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
     12 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     13 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     14 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     15 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     16 *      スコード中に含まれていること.
     17 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     18 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     19 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     20 *      の無保証規定を掲載すること.
     21 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     22 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     23 *      と.
     24 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     25 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     26 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     27 *        報告すること.
     28 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     29 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     30 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     31 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     32 *      免責すること.
    4733 *
    48  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    49 ãŠ
    50  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
    51  *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
    52  *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
    53  *  の責任を負わない.
     34 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     35 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     36 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     37 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     38 *  の責任を負わない.
    5439 *
    5540 *  $Id$
     
    5742
    5843/*
    59  *              システムログ出力を行うための定義
    60  *
    61  *  システムログサービスは,システムのログæƒ
    62 å ±ã‚’出力するためのサービス
    63  *  である.カーネルからのログæƒ
    64 å ±ã®å‡ºåŠ›ã«ã‚‚用いるため,å†
    65 éƒ¨ã§å¾
    66 ã¡çŠ¶æ
    67 ‹
    68  *  にはいることはない.
    69  *
    70  *  ログæƒ
    71 å ±ã¯ï¼Œã‚«ãƒ¼ãƒãƒ«å†
    72 ã®ãƒ­ã‚°ãƒãƒƒãƒ•ã‚¡ã«æ›¸ãè¾¼ã‚€ã‹ï¼Œä½Žãƒ¬ãƒ™ãƒ«ã®æ–‡å­—出
    73  *  力関数を用いて出力する.どちらを使うかは,拡張サービスコールで切り
    74  *  換えることができる.
    75  *
    76  *  ログバッファ領域がオーバフローした場合には,古いログæƒ
    77 å ±ã‚’消して上
    78  *  書きする.
    79  *
    80  *  アセンブリ言語のソースファイルからこのファイルをインクルードする時
    81  *  は,TOPPERS_MACRO_ONLYを定義しておくことで,マクロ定義以外の記述を
    82  *  除くことができる.
     44 *              システムログ出力を行うための定義
     45 *
     46 *  システムログサービスは,システムのログ情報を出力するためのサービス
     47 *  である.カーネルからのログ情報の出力にも用いるため,内部で待ち状態
     48 *  にはいることはない.
     49 *
     50 *  ログ情報は,カーネル内のログバッファに書き込むか,低レベルの文字出
     51 *  力関数を用いて出力する.どちらを使うかは,拡張サービスコールで切り
     52 *  換えることができる.
     53 *
     54 *  ログバッファ領域がオーバフローした場合には,古いログ情報を消して上
     55 *  書きする.
     56 *
     57 *  アセンブリ言語のソースファイルからこのファイルをインクルードする時
     58 *  は,TOPPERS_MACRO_ONLYを定義しておくことで,マクロ定義以外の記述を
     59 *  除くことができる.
    8360 */
    8461
     
    9370
    9471/*
    95  *  ログæƒ
    96 å ±ã®ç¨®åˆ¥ã®å®šç¾©
    97  */
    98 #define LOG_TYPE_COMMENT        UINT_C(0x01)    /* コメント */
    99 #define LOG_TYPE_ASSERT         UINT_C(0x02)    /* アサーションの失敗 */
    100 
    101 #define LOG_TYPE_INH            UINT_C(0x11)    /* 割込みハンドラ */
    102 #define LOG_TYPE_ISR            UINT_C(0x12)    /* 割込みサービスルーチン */
    103 #define LOG_TYPE_CYC            UINT_C(0x13)    /* 周期ハンドラ */
    104 #define LOG_TYPE_ALM            UINT_C(0x14)    /* アラームハンドラ */
    105 #define LOG_TYPE_OVR            UINT_C(0x15)    /* オーバランハンドラ */
    106 #define LOG_TYPE_EXC            UINT_C(0x16)    /* CPU例外ハンドラ */
    107 #define LOG_TYPE_TSKSTAT        UINT_C(0x21)    /* タスク状æ
    108 ‹å¤‰åŒ– */
    109 #define LOG_TYPE_DSP            UINT_C(0x31)    /* ディスパッチャ */
    110 #define LOG_TYPE_SVC            UINT_C(0x41)    /* サービスコール */
    111 
    112 #define LOG_ENTER                       UINT_C(0x00)    /* å
    113 ¥å£ï¼é–‹å§‹ */
    114 #define LOG_LEAVE                       UINT_C(0x80)    /* 出口/終了 */
    115 
    116 /*
    117  *  ログæƒ
    118 å ±ã®é‡è¦åº¦ã®å®šç¾©
    119  */
    120 #define LOG_EMERG                       UINT_C(0)               /* シャットダウンに値するエラー */
     72 *  ログ情報の種別の定義
     73 */
     74#define LOG_TYPE_COMMENT        UINT_C(0x01)    /* コメント */
     75#define LOG_TYPE_ASSERT         UINT_C(0x02)    /* アサーションの失敗 */
     76
     77#define LOG_TYPE_INH            UINT_C(0x11)    /* 割込みハンドラ */
     78#define LOG_TYPE_ISR            UINT_C(0x12)    /* 割込みサービスルーチン */
     79#define LOG_TYPE_CYC            UINT_C(0x13)    /* 周期ハンドラ */
     80#define LOG_TYPE_ALM            UINT_C(0x14)    /* アラームハンドラ */
     81#define LOG_TYPE_OVR            UINT_C(0x15)    /* オーバランハンドラ */
     82#define LOG_TYPE_EXC            UINT_C(0x16)    /* CPU例外ハンドラ */
     83#define LOG_TYPE_TSKSTAT        UINT_C(0x21)    /* タスク状態変化 */
     84#define LOG_TYPE_DSP            UINT_C(0x31)    /* ディスパッチャ */
     85#define LOG_TYPE_SVC            UINT_C(0x41)    /* サービスコール */
     86
     87#define LOG_ENTER                       UINT_C(0x00)    /* 入口/開始 */
     88#define LOG_LEAVE                       UINT_C(0x80)    /* 出口/終了 */
     89
     90/*
     91 *  ログ情報の重要度の定義
     92 */
     93#define LOG_EMERG                       UINT_C(0)               /* シャットダウンに値するエラー */
    12194#define LOG_ALERT                       UINT_C(1)
    12295#define LOG_CRIT                        UINT_C(2)
    123 #define LOG_ERROR                       UINT_C(3)               /* システムエラー */
    124 #define LOG_WARNING                     UINT_C(4)               /* 警告メッセージ */
     96#define LOG_ERROR                       UINT_C(3)               /* システムエラー */
     97#define LOG_WARNING                     UINT_C(4)               /* 警告メッセージ */
    12598#define LOG_NOTICE                      UINT_C(5)
    12699#define LOG_INFO                        UINT_C(6)
    127 #define LOG_DEBUG                       UINT_C(7)               /* デバッグ用メッセージ */
     100#define LOG_DEBUG                       UINT_C(7)               /* デバッグ用メッセージ */
    128101
    129102#ifndef TOPPERS_MACRO_ONLY
    130103
    131104/*
    132  *  ログæƒ
    133 å ±ã®ãƒ‡ãƒ¼ã‚¿æ§‹é€ 
     105 *  ログ情報のデータ構造
    134106 */
    135107
    136108#ifndef LOGTIM
    137 #define LOGTIM          HRTCNT                  /* ログ時刻のデータ型 */
     109#define LOGTIM          HRTCNT                  /* ログ時刻のデータ型 */
    138110#endif /* LOGTIM */
    139111
    140 #define TNUM_LOGPAR             6                       /* ログパラメータの数 */
     112#define TNUM_LOGPAR             6                       /* ログパラメータの数 */
    141113
    142114#ifndef LOGPAR
    143 #define LOGPAR          intptr_t                /* ログパラメータのデータ型 */
     115#define LOGPAR          intptr_t                /* ログパラメータのデータ型 */
    144116#define ULOGPAR         uintptr_t
    145117#endif /* LOGPAR */
    146118
    147119typedef struct {
    148         uint_t  logtype;                                /* ログæƒ
    149 å ±ã®ç¨®åˆ¥ */
    150         LOGTIM  logtim;                                 /* ログ時刻 */
    151         LOGPAR  logpar[TNUM_LOGPAR];    /* ログパラメータ */
     120        uint_t  logtype;                                /* ログ情報の種別 */
     121        LOGTIM  logtim;                                 /* ログ時刻 */
     122        LOGPAR  logpar[TNUM_LOGPAR];    /* ログパラメータ */
    152123} SYSLOG;
    153124
    154125/*
    155  *  ログæƒ
    156 å ±ã®é‡è¦åº¦ã®ãƒ“ットマップを作るためのマクロ
     126 *  ログ情報の重要度のビットマップを作るためのマクロ
    157127 */
    158128#define LOG_MASK(prio)          (1U << (prio))
     
    160130
    161131/*
    162  *  パケット形式の定義
     132 *  パケット形式の定義
    163133 */
    164134typedef struct t_syslog_rlog {
    165         uint_t  count;          /* ログバッファ中のログの数 */
    166         uint_t  lost;           /* 失われたログの数 */
    167         uint_t  logmask;        /* ログバッファに記録すべき重要度 */
    168         uint_t  lowmask;        /* 低レベル出力すべき重要度 */
     135        uint_t  count;          /* ログバッファ中のログの数 */
     136        uint_t  lost;           /* 失われたログの数 */
     137        uint_t  logmask;        /* ログバッファに記録すべき重要度 */
     138        uint_t  lowmask;        /* 低レベル出力すべき重要度 */
    169139} T_SYSLOG_RLOG;
    170140
     
    172142
    173143/*
    174  *  ログæƒ
    175 å ±ã‚’出力するためのライブラリ関数
    176  *
    177  *  TECSで記述されたシステムログ機能を直接呼び出す.
     144 *  ログ情報を出力するためのライブラリ関数
     145 *
     146 *  TECSで記述されたシステムログ機能を直接呼び出す.
    178147 */
    179148
     
    268237
    269238/*
    270  *  ログæƒ
    271 å ±ï¼ˆã‚³ãƒ¡ãƒ³ãƒˆï¼‰ã‚’出力するためのライブラリ関数(vasyslog.c)
     239 *  ログ情報(コメント)を出力するためのライブラリ関数(vasyslog.c)
    272240 */
    273241extern void     syslog(uint_t prio, const char *format, ...) throw();
     
    276244
    277245/*
    278  *  システムログ出力を抑止する場合
     246 *  システムログ出力を抑止する場合
    279247 */
    280248
     
    325293
    326294/*
    327  *  ログæƒ
    328 å ±ï¼ˆã‚³ãƒ¡ãƒ³ãƒˆï¼‰ã‚’出力するためのマクロ
    329  *
    330  *  formatおよび後続の引数から作成したメッセージを,重大度prioでログæƒ
    331 
    332  *  報として出力するためのマクロ.arg1~argnはLOGPAR型にキャストするた
    333  *  め,LOGPAR型に型変換できる任意の型でよい.
     295 *  ログ情報(コメント)を出力するためのマクロ
     296 *
     297 *  formatおよび後続の引数から作成したメッセージを,重大度prioでログ情
     298 *  報として出力するためのマクロ.arg1~argnはLOGPAR型にキャストするた
     299 *  め,LOGPAR型に型変換できる任意の型でよい.
    334300 */
    335301
     
    360326
    361327/*
    362  *  ログæƒ
    363 å ±ï¼ˆã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã®å¤±æ•—)を出力するためのマクロ
     328 *  ログ情報(アサーションの失敗)を出力するためのマクロ
    364329 */
    365330#ifndef TOPPERS_assert_fail
Note: See TracChangeset for help on using the changeset viewer.