Ignore:
Timestamp:
Mar 8, 2016, 8:37:45 PM (8 years ago)
Author:
coas-nagasima
Message:

MIMEにSJISを設定

File:
1 edited

Legend:

Unmodified
Added
Removed
  • UsbWattMeter/trunk/asp_dcre/kernel/kernel_impl.h

    • Property svn:mime-type changed from text/x-chdr to text/x-chdr; charset=SHIFT_JIS
    r164 r167  
    99 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    1010 *
    11  *  ã‹L’˜ìŒ ŽÒ‚́CˆÈ‰º‚Ì(1)`(4)‚ÌðŒ‚ð–ž‚½‚·ê‡‚ÉŒÀ‚èC–{ƒ\ƒtƒgƒEƒF
    12  *  ƒAi–{ƒ\ƒtƒgƒEƒFƒA‚ð‰ü•Ï‚µ‚½‚à‚Ì‚ðŠÜ‚ށDˆÈ‰º“¯‚¶j‚ðŽg—pE•¡»E‰ü
    13  *  •ÏEÄ”z•ziˆÈ‰ºC—˜—p‚ƌĂԁj‚·‚邱‚Ƃ𖳏ž‚Å‹–‘ø‚·‚éD
    14  *  (1) –{ƒ\ƒtƒgƒEƒFƒA‚ðƒ\[ƒXƒR[ƒh‚ÌŒ`‚Å—˜—p‚·‚éê‡‚ɂ́Cã‹L‚Ì’˜ì
    15  *      Œ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’肪C‚»‚Ì‚Ü‚Ü‚ÌŒ`‚Ń\[
    16  *      ƒXƒR[ƒh’†‚ÉŠÜ‚Ü‚ê‚Ä‚¢‚邱‚ƁD
    17  *  (2) –{ƒ\ƒtƒgƒEƒFƒA‚ðCƒ‰ƒCƒuƒ‰ƒŠŒ`Ž®‚ȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    18  *      —p‚Å‚«‚éŒ`‚ōĔz•z‚·‚éê‡‚ɂ́CÄ”z•z‚É”º‚¤ƒhƒLƒ
    19 ƒƒ“ƒgi—˜—p
    20  *      ŽÒƒ}ƒjƒ
    21 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L
    22  *      ‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    23  *  (3) –{ƒ\ƒtƒgƒEƒFƒA‚ðC‹@Ší‚É‘g‚ݍž‚ނȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    24  *      —p‚Å‚«‚È‚¢Œ`‚ōĔz•z‚·‚éê‡‚ɂ́CŽŸ‚Ì‚¢‚¸‚ê‚©‚ÌðŒ‚ð–ž‚½‚·‚±
    25  *      ‚ƁD
    26  *    (a) Ä”z•z‚É”º‚¤ƒhƒLƒ
    27 ƒƒ“ƒgi—˜—pŽÒƒ}ƒjƒ
    28 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜
    29  *        ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    30  *    (b) Ä”z•z‚ÌŒ`‘Ô‚ðC•Ê‚É’è‚ß‚é•û–@‚É‚æ‚Á‚āCTOPPERSƒvƒƒWƒFƒNƒg‚É
    31  *        •ñ‚·‚邱‚ƁD
    32  *  (4) –{ƒ\ƒtƒgƒEƒFƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚é‚¢‚©‚Ȃ鑹
    33  *      ŠQ‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð–Ɛӂ·‚邱‚ƁD
    34  *      ‚Ü‚½C–{ƒ\ƒtƒgƒEƒFƒA‚̃†[ƒU‚Ü‚½‚̓Gƒ“ƒhƒ†[ƒU‚©‚ç‚Ì‚¢‚©‚Ȃ闝
    35  *      —R‚ÉŠî‚­¿‹‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð
    36  *      –Ɛӂ·‚邱‚ƁD
    37  *
    38  *  –{ƒ\ƒtƒgƒEƒFƒA‚́C–³•ÛØ‚Å’ñ‹Ÿ‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Å‚ ‚éDã‹L’˜ìŒ ŽÒ‚¨
    39  *  ‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚́C–{ƒ\ƒtƒgƒEƒFƒA‚ÉŠÖ‚µ‚āC“Á’è‚ÌŽg—p–Ú“I
    40  *  ‚ɑ΂·‚é“K‡«‚àŠÜ‚߂āC‚¢‚©‚È‚é•ÛØ‚às‚í‚È‚¢D‚Ü‚½C–{ƒ\ƒtƒgƒEƒF
    41  *  ƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚½‚¢‚©‚Ȃ鑹ŠQ‚ÉŠÖ‚µ‚Ä‚àC‚»
    42  *  ‚̐ӔC‚𕉂í‚È‚¢D
     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 *      免責すること.
     33 *
     34 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     35 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     36 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     37 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     38 *  の責任を負わない.
    4339 *
    4440 *  @(#) $Id$
     
    4642
    4743/*
    48  *              TOPPERS/ASPƒJ[ƒlƒ‹“à•”Œü‚¯•W€ƒwƒbƒ_ƒtƒ@ƒCƒ‹
    49  *
    50  *  ‚±‚̃wƒbƒ_ƒtƒ@ƒCƒ‹‚́CƒJ[ƒlƒ‹‚ð\¬‚·‚éƒvƒƒOƒ‰ƒ€‚̃\[ƒXƒtƒ@ƒCƒ‹
    51  *  ‚Å•K‚¸ƒCƒ“ƒNƒ‹[ƒh‚·‚é‚ׂ«•W€ƒwƒbƒ_ƒtƒ@ƒCƒ‹‚Å‚ ‚éD
    52  *
    53  *  ƒAƒZƒ“ƒuƒŠŒ¾Œê‚̃\[ƒXƒtƒ@ƒCƒ‹‚©‚炱‚̃tƒ@ƒCƒ‹‚ðƒCƒ“ƒNƒ‹[ƒh‚·‚鎞
    54  *  ‚́CTOPPERS_MACRO_ONLY‚ð’è‹`‚µ‚Ä‚¨‚­D‚±‚ê‚É‚æ‚èCƒ}ƒNƒ’è‹`ˆÈŠO‚ð
    55  *  œ‚­‚悤‚É‚È‚Á‚Ä‚¢‚éD
     44 *              TOPPERS/ASPカーネル内部向け標準ヘッダファイル
     45 *
     46 *  このヘッダファイルは,カーネルを構成するプログラムのソースファイル
     47 *  で必ずインクルードするべき標準ヘッダファイルである.
     48 *
     49 *  アセンブリ言語のソースファイルからこのファイルをインクルードする時
     50 *  は,TOPPERS_MACRO_ONLYを定義しておく.これにより,マクロ定義以外を
     51 *  除くようになっている.
    5652 */
    5753
     
    6056
    6157/*
    62  *  ƒJ[ƒlƒ‹‚Ì“à•”Ž¯•Ê–¼‚̃Šƒl[ƒ€
     58 *  カーネルの内部識別名のリネーム
    6359 */
    6460#include "kernel_rename.h"
    6561
    6662/*
    67  *  ƒAƒvƒŠƒP[ƒVƒ‡ƒ“‚Æ‹¤’ʂ̃wƒbƒ_ƒtƒ@ƒCƒ‹
     63 *  アプリケーションと共通のヘッダファイル
    6864 */
    6965#include <kernel.h>
    7066
    7167/*
    72  *  ƒVƒXƒeƒ€ƒƒO‹@”\‚Ì‚½‚ß‚Ì’è‹`
     68 *  システムログ機能のための定義
    7369 */
    7470#include <t_syslog.h>
    7571
    7672/*
    77  *  Œ^ƒLƒƒƒXƒg‚ðs‚¤ƒ}ƒNƒ‚Ì’è‹`
     73 *  型キャストを行うマクロの定義
    7874 */
    7975#ifndef CAST
     
    8278
    8379/*
    84  *  ƒ^[ƒQƒbƒgˆË‘¶î•ñ‚Ì’è‹`
     80 *  ターゲット依存情報の定義
    8581 */
    8682#include "target_config.h"
    8783
    8884/*
    89  *  ‚·‚ׂĂ̊֐”‚ðƒRƒ“ƒpƒCƒ‹‚·‚邽‚ß‚Ì’è‹`
     85 *  すべての関数をコンパイルするための定義
    9086 */
    9187#ifdef ALLFUNC
     
    9490
    9591/*
    96  *  ƒrƒbƒgƒtƒB[ƒ‹ƒh‚Å‚Ì•„†–³‚µ®”Œ^
    97  *
    98  *  8ƒrƒbƒgˆÈ‰º‚Ì•‚̃rƒbƒgƒtƒB[ƒ‹ƒh‚ŁC•„†–³‚µ®”’l‚ð•ÛŽ‚µ‚½‚¢ê‡
    99  *  ‚É—p‚¢‚é‚ׂ«ƒf[ƒ^Œ^DANSI C‚ł́CƒrƒbƒgƒtƒB[ƒ‹ƒh‚̃f[ƒ^Œ^‚É‚Í
    100  *  int‚Æunsigned int‚µ‚©‹–‚³‚ê‚È‚¢‚½‚߁CƒfƒtƒHƒ‹ƒg‚Ì’è‹`‚Íunsigned
    101  *  int‚Æ‚µ‚Ä‚¢‚邪Cƒ^[ƒQƒbƒg‚¨‚æ‚уc[ƒ‹ˆË‘¶‚ŁCunsigned char‚Ü‚½‚Í
    102  *  unsigned short‚É’è‹`‚µ‚½•û‚ªŒø—¦‚ª—Ç‚¢ê‡‚ª‚ ‚éD
     92 *  ビットフィールドでの符号無し整数型
     93 *
     94 *  8ビット以下の幅のビットフィールドで,符号無し整数値を保持したい場合
     95 *  に用いるべきデータ型.ANSI Cでは,ビットフィールドのデータ型には
     96 *  intとunsigned intしか許されないため,デフォルトの定義はunsigned
     97 *  intとしているが,ターゲットおよびツール依存で,unsigned charまたは
     98 *  unsigned shortに定義した方が効率が良い場合がある.
    10399 */
    104100#ifndef BIT_FIELD_UINT
     
    107103
    108104/*
    109  *  ƒrƒbƒgƒtƒB[ƒ‹ƒh‚ł̃u[ƒ‹Œ^
    110  *
    111  *  1ƒrƒbƒg•‚̃rƒbƒgƒtƒB[ƒ‹ƒh‚ŁCƒu[ƒ‹’l‚ð•ÛŽ‚µ‚½‚¢ê‡‚É—p‚¢‚é‚ׂ«
    112  *  ƒf[ƒ^Œ^DƒfƒtƒHƒ‹ƒg‚Å‚ÍBIT_FIELD_UINT‚Æ“¯ˆê‚É’è‹`‚µ‚Ä‚¢‚邪Cƒu[
    113  *  ƒ‹’l‚ð•ÛŽ‚·‚邱‚Ƃ𖾎¦‚·‚邽‚ß‚É•Ê‚Ì–¼Ì‚Æ‚µ‚Ä‚¢‚éD
     105 *  ビットフィールドでのブール型
     106 *
     107 *  1ビット幅のビットフィールドで,ブール値を保持したい場合に用いるべき
     108 *  データ型.デフォルトではBIT_FIELD_UINTと同一に定義しているが,ブー
     109 *  ル値を保持することを明示するために別の名称としている.
    114110 */
    115111#ifndef BIT_FIELD_BOOL
     
    118114
    119115/*
    120  *  ƒIƒuƒWƒFƒNƒgID‚̍ŏ¬’l‚Ì’è‹`
    121  */
    122 #define TMIN_TSKID              1               /* ƒ^ƒXƒNID‚̍ŏ¬’l */
    123 #define TMIN_SEMID              1               /* ƒZƒ}ƒtƒHID‚̍ŏ¬’l */
    124 #define TMIN_FLGID              1               /* ƒtƒ‰ƒOID‚̍ŏ¬’l */
    125 #define TMIN_DTQID              1               /* ƒf[ƒ^ƒLƒ
    126 [ID‚̍ŏ¬’l */
    127 #define TMIN_PDQID              1               /* —Dæ“xƒf[ƒ^ƒLƒ
    128 [ID‚̍ŏ¬’l */
    129 #define TMIN_MBXID              1               /* ƒ[ƒ‹ƒ{ƒbƒNƒXID‚̍ŏ¬’l */
    130 #define TMIN_MPFID              1               /* ŒÅ’è’·ƒƒ‚ƒŠƒv[ƒ‹ID‚̍ŏ¬’l */
    131 #define TMIN_CYCID              1               /* ŽüŠúƒnƒ“ƒhƒ‰ID‚̍ŏ¬’l */
    132 #define TMIN_ALMID              1               /* ƒAƒ‰[ƒ€ƒnƒ“ƒhƒ‰ID‚̍ŏ¬’l */
    133 #define TMIN_ISRID              1               /* Š„ž‚݃T[ƒrƒXƒ‹[ƒ`ƒ“ID‚̍ŏ¬’l */
    134 
    135 /*
    136  *  —Dæ“x‚Ì’iŠK”‚Ì’è‹`
     116 *  オブジェクトIDの最小値の定義
     117 */
     118#define TMIN_TSKID              1               /* タスクIDの最小値 */
     119#define TMIN_SEMID              1               /* セマフォIDの最小値 */
     120#define TMIN_FLGID              1               /* フラグIDの最小値 */
     121#define TMIN_DTQID              1               /* データキューIDの最小値 */
     122#define TMIN_PDQID              1               /* 優先度データキューIDの最小値 */
     123#define TMIN_MBXID              1               /* メールボックスIDの最小値 */
     124#define TMIN_MPFID              1               /* 固定長メモリプールIDの最小値 */
     125#define TMIN_CYCID              1               /* 周期ハンドラIDの最小値 */
     126#define TMIN_ALMID              1               /* アラームハンドラIDの最小値 */
     127#define TMIN_ISRID              1               /* 割込みサービスルーチンIDの最小値 */
     128
     129/*
     130 *  優先度の段階数の定義
    137131 */
    138132#define TNUM_TPRI               (TMAX_TPRI - TMIN_TPRI + 1)
     
    141135
    142136/*
    143  *  ƒJ[ƒlƒ‹“à•”‚ÅŽg—p‚·‚é‘®«‚Ì’è‹`
    144  */
    145 #define TA_NOEXS                ((ATR)(-1))                     /* –¢“o˜^ó‘Ô */
     137 *  カーネル内部で使用する属性の定義
     138 */
     139#define TA_NOEXS                ((ATR)(-1))                     /* 未登録状態 */
    146140
    147141#ifndef TA_MEMALLOC
    148 #define TA_MEMALLOC             UINT_C(0x8000)          /* ƒƒ‚ƒŠ—̈æ‚ðƒJ[ƒlƒ‹‚ÅŠm•Û */
     142#define TA_MEMALLOC             UINT_C(0x8000)          /* メモリ領域をカーネルで確保 */
    149143#endif /* TA_MEMALLOC */
    150144#ifndef TA_MBALLOC
    151 #define TA_MBALLOC              UINT_C(0x4000)          /* ŠÇ——̈æ‚ðƒJ[ƒlƒ‹‚ÅŠm•Û */
     145#define TA_MBALLOC              UINT_C(0x4000)          /* 管理領域をカーネルで確保 */
    152146#endif /* TA_MBALLOC */
    153147
    154148/*
    155  *  ƒ^[ƒQƒbƒg’è‹`‚̃Gƒ‰[ƒ`ƒFƒbƒNƒ}ƒNƒ‚̃fƒtƒHƒ‹ƒg’l‚Ì’è‹`
     149 *  ターゲット定義のエラーチェックマクロのデフォルト値の定義
    156150 */
    157151#ifndef TARGET_TSKATR
    158 #define TARGET_TSKATR           0U              /* ƒ^[ƒQƒbƒg’è‹`‚̃^ƒXƒN‘®« */
     152#define TARGET_TSKATR           0U              /* ターゲット定義のタスク属性 */
    159153#endif /* TARGET_TSKATR */
    160154
    161155#ifndef TARGET_ISRATR
    162 #define TARGET_ISRATR           0U              /* ƒ^[ƒQƒbƒg’è‹`‚ÌISR‘®« */
     156#define TARGET_ISRATR           0U              /* ターゲット定義のISR属性 */
    163157#endif /* TARGET_ISRATR */
    164158
    165159/*
    166  *  ƒwƒbƒ_ƒtƒ@ƒCƒ‹‚ðŽ‚½‚È‚¢ƒ‚ƒWƒ
    167 [ƒ‹‚̊֐”E•Ï”‚̐錾
     160 *  ヘッダファイルを持たないモジュールの関数・変数の宣言
    168161 */
    169162#ifndef TOPPERS_MACRO_ONLY
    170163
    171164/*
    172  *  Šeƒ‚ƒWƒ
    173 [ƒ‹‚̏‰Šú‰»ikernel_cfg.cj
     165 *  各モジュールの初期化(kernel_cfg.c)
    174166 */
    175167extern void     initialize_object(void);
    176168
    177169/*
    178  *  ‰Šú‰»ƒ‹[ƒ`ƒ“‚ÌŽÀsikernel_cfg.cj
     170 *  初期化ルーチンの実行(kernel_cfg.c)
    179171 */
    180172extern void     call_inirtn(void);
    181173
    182174/*
    183  *  I—¹ˆ—ƒ‹[ƒ`ƒ“‚ÌŽÀsikernel_cfg.cj
     175 *  終了処理ルーチンの実行(kernel_cfg.c)
    184176 */
    185177extern void     call_terrtn(void);
    186178
    187179/*
    188  *  ”ñƒ^ƒXƒNƒRƒ“ƒeƒLƒXƒg—p‚̃Xƒ^ƒbƒN—̈æikernel_cfg.cj
    189  */
    190 extern const SIZE       istksz;         /* ƒXƒ^ƒbƒN—̈æ‚̃TƒCƒYiŠÛ‚ß‚½’lj */
    191 extern STK_T *const     istk;           /* ƒXƒ^ƒbƒN—̈æ‚̐擪”Ô’n */
     180 *  非タスクコンテキスト用のスタック領域(kernel_cfg.c)
     181 */
     182extern const SIZE       istksz;         /* スタック領域のサイズ(丸めた値) */
     183extern STK_T *const     istk;           /* スタック領域の先頭番地 */
    192184#ifdef TOPPERS_ISTKPT
    193 extern STK_T *const     istkpt;         /* ƒXƒ^ƒbƒNƒ|ƒCƒ“ƒ^‚̏‰Šú’l */
     185extern STK_T *const     istkpt;         /* スタックポインタの初期値 */
    194186#endif /* TOPPERS_ISTKPT */
    195187
    196188/*
    197  *  ƒJ[ƒlƒ‹‚ªŠ„‚è•t‚¯‚郁ƒ‚ƒŠ—̈æikernel_cfg.cj
    198  */
    199 extern const SIZE       kmmsz;          /* ƒJ[ƒlƒ‹‚ªŠ„‚è•t‚¯‚郁ƒ‚ƒŠ—̈æ‚̃TƒCƒY */
    200 extern MB_T *const      kmm;            /* ƒJ[ƒlƒ‹‚ªŠ„‚è•t‚¯‚郁ƒ‚ƒŠ—̈æ‚̐擪”Ô’n */
    201 
    202 /*
    203  *  ƒJ[ƒlƒ‹“®ìó‘Ôƒtƒ‰ƒOistartup.cj
     189 *  カーネルが割り付けるメモリ領域(kernel_cfg.c)
     190 */
     191extern const SIZE       kmmsz;          /* カーネルが割り付けるメモリ領域のサイズ */
     192extern MB_T *const      kmm;            /* カーネルが割り付けるメモリ領域の先頭番地 */
     193
     194/*
     195 *  カーネル動作状態フラグ(startup.c)
    204196 */
    205197extern bool_t   kerflg;
    206198
    207199/*
    208  *  ƒJ[ƒlƒ‹‚Ì‹N“®istartup.cj
     200 *  カーネルの起動(startup.c)
    209201 */
    210202extern void     sta_ker(void);
    211203
    212204/*
    213  *  ƒJ[ƒlƒ‹‚̏I—¹ˆ—istartup.cj
     205 *  カーネルの終了処理(startup.c)
    214206 */
    215207extern void     exit_kernel(void);
    216208
    217209/*
    218  *  ƒJ[ƒlƒ‹‚ÌŠ„‚è•t‚¯‚郁ƒ‚ƒŠ—̈æ‚ÌŠÇ—istartup.cj
     210 *  カーネルの割り付けるメモリ領域の管理(startup.c)
    219211 */
    220212extern void initialize_kmm(void);
Note: See TracChangeset for help on using the changeset viewer.