Ignore:
Timestamp:
Jul 23, 2017, 2:29:40 PM (7 years ago)
Author:
coas-nagasima
Message:

SVNプロパティを設定

File:
1 edited

Legend:

Unmodified
Added
Removed
  • rubycfg_asp/trunk/asp_dcre/kernel/interrupt.h

    • Property svn:mime-type changed from text/x-chdr to text/x-chdr; charset=UTF-8
    r313 r315  
    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  *              割込み管理機能
     44 *              割込み管理機能
    6045 */
    6146
     
    6651
    6752/*
    68  *  割込みサービスルーチン初期化ブロック
     53 *  割込みサービスルーチン初期化ブロック
    6954 */
    7055typedef struct isr_initialization_block {
    71         ATR                     isratr;                 /* 割込みサービスルーチン属性 */
    72         intptr_t        exinf;                  /* 割込みサービスルーチンの拡張æƒ
    73 å ± */
    74         INTNO           intno;                  /* 割込みサービスルーチンを登録する割込み番号 */
    75         QUEUE           *p_isr_queue;   /* 登録å
    76 ˆå‰²è¾¼ã¿ã‚µãƒ¼ãƒ“スルーチンキューの番地 */
    77         ISR                     isr;                    /* 割込みサービスルーチンのå
    78 ˆé ­ç•ªåœ° */
    79         PRI                     isrpri;                 /* 割込みサービスルーチン優å
    80 ˆåº¦ */
     56        ATR                     isratr;                 /* 割込みサービスルーチン属性 */
     57        intptr_t        exinf;                  /* 割込みサービスルーチンの拡張情報 */
     58        INTNO           intno;                  /* 割込みサービスルーチンを登録する割込み番号 */
     59        QUEUE           *p_isr_queue;   /* 登録先割込みサービスルーチンキューの番地 */
     60        ISR                     isr;                    /* 割込みサービスルーチンの先頭番地 */
     61        PRI                     isrpri;                 /* 割込みサービスルーチン優先度 */
    8162} ISRINIB;
    8263
    8364/*
    84  *  割込みサービスルーチン管理ブロック
     65 *  割込みサービスルーチン管理ブロック
    8566 */
    8667typedef struct isr_control_block {
    87         QUEUE           isr_queue;              /* 割込みサービスルーチン呼出しキュー */
    88         const ISRINIB *p_isrinib;       /* 初期化ブロックへのポインタ */
     68        QUEUE           isr_queue;              /* 割込みサービスルーチン呼出しキュー */
     69        const ISRINIB *p_isrinib;       /* 初期化ブロックへのポインタ */
    8970} ISRCB;
    9071
    9172/*
    92  *  割込みサービスルーチン呼出しキューを検索するためのデータ構造
     73 *  割込みサービスルーチン呼出しキューを検索するためのデータ構造
    9374 */
    9475typedef struct {
    95         INTNO           intno;                  /* 割込み番号 */
    96         QUEUE           *p_isr_queue;   /* 割込みサービスルーチン呼出しキュー */
     76        INTNO           intno;                  /* 割込み番号 */
     77        QUEUE           *p_isr_queue;   /* 割込みサービスルーチン呼出しキュー */
    9778} ISR_ENTRY;
    9879
    9980/*
    100  *  割込みサービスルーチンキューのエントリ数(kernel_cfg.c)
     81 *  割込みサービスルーチンキューのエントリ数(kernel_cfg.c)
    10182 */
    10283extern const uint_t tnum_isr_queue;
    10384
    10485/*
    105  *  割込みサービスルーチンキューリスト(kernel_cfg.c)
     86 *  割込みサービスルーチンキューリスト(kernel_cfg.c)
    10687 */
    10788extern const ISR_ENTRY isr_queue_list[];
    10889
    10990/*
    110  *  割込みサービスルーチンキューのエリア(kernel_cfg.c)
     91 *  割込みサービスルーチンキューのエリア(kernel_cfg.c)
    11192 */
    11293extern QUEUE isr_queue_table[];
    11394
    11495/*
    115  *  使用していない割込みサービスルーチン管理ブロックのリスト
     96 *  使用していない割込みサービスルーチン管理ブロックのリスト
    11697 */
    11798extern QUEUE    free_isrcb;
    11899
    119100/*
    120  *  割込みサービスルーチンIDの最大値(kernel_cfg.c)
     101 *  割込みサービスルーチンIDの最大値(kernel_cfg.c)
    121102 *
    122  *  静的に生成される割込みサービスルーチンはID番号を持たないため,
    123  *  tmax_isridは動的に生成される割込みサービスルーチンのID番号の最大値
    124  *  である.静的に生成される割込みサービスルーチンの数は,tnum_sisrに保
    125  *  持する.
     103 *  静的に生成される割込みサービスルーチンはID番号を持たないため,
     104 *  tmax_isridは動的に生成される割込みサービスルーチンのID番号の最大値
     105 *  である.静的に生成される割込みサービスルーチンの数は,tnum_sisrに保
     106 *  持する.
    126107 */
    127108extern const ID         tmax_isrid;
     
    129110
    130111/*
    131  *  割込みサービスルーチン初期化ブロックのエリア(kernel_cfg.c)
     112 *  割込みサービスルーチン初期化ブロックのエリア(kernel_cfg.c)
    132113 */
    133114extern const ISRINIB    sisrinib_table[];
     
    135116
    136117/*
    137  *  割込みサービスルーチン管理ブロックのエリア(kernel_cfg.c)
     118 *  割込みサービスルーチン管理ブロックのエリア(kernel_cfg.c)
    138119 */
    139120extern ISRCB    isrcb_table[];
    140121
    141122/*
    142  *  割込みサービスルーチン管理ブロックから割込みサービスルーチンIDを取
    143  *  り出すためのマクロ
     123 *  割込みサービスルーチン管理ブロックから割込みサービスルーチンIDを取
     124 *  り出すためのマクロ
    144125 */
    145126#define ISRID(p_isrcb)  ((ID)(((p_isrcb) - isrcb_table) \
     
    147128
    148129/*
    149  *  割込みサービスルーチン機能の初期化
     130 *  割込みサービスルーチン機能の初期化
    150131 */
    151132extern void initialize_isr(void);
    152133
    153134/*
    154  *  割込みサービスルーチンの呼出し
     135 *  割込みサービスルーチンの呼出し
    155136 */
    156137extern void call_isr(QUEUE *p_isr_queue);
     
    159140
    160141/*
    161  *  割込みハンドラ初期化ブロック
     142 *  割込みハンドラ初期化ブロック
    162143 */
    163144typedef struct interrupt_handler_initialization_block {
    164         INHNO           inhno;                  /* 割込みハンドラ番号 */
    165         ATR                     inhatr;                 /* 割込みハンドラ属性 */
    166         FP                      int_entry;              /* 割込みハンドラの出å
    167 ¥å£å‡¦ç†ã®ç•ªåœ° */
     145        INHNO           inhno;                  /* 割込みハンドラ番号 */
     146        ATR                     inhatr;                 /* 割込みハンドラ属性 */
     147        FP                      int_entry;              /* 割込みハンドラの出入口処理の番地 */
    168148} INHINIB;
    169149
    170150/*
    171  *  割込み要求ライン初期化ブロック
     151 *  割込み要求ライン初期化ブロック
    172152 */
    173153typedef struct interrupt_request_initialization_block {
    174         INTNO           intno;                  /* 割込み番号 */
    175         ATR                     intatr;                 /* 割込み属性 */
    176         PRI                     intpri;                 /* 割込み優å
    177 ˆåº¦ */
     154        INTNO           intno;                  /* 割込み番号 */
     155        ATR                     intatr;                 /* 割込み属性 */
     156        PRI                     intpri;                 /* 割込み優先度 */
    178157} INTINIB;
    179158
    180159/*
    181  *  割込みハンドラ番号の数(kernel_cfg.c)
     160 *  割込みハンドラ番号の数(kernel_cfg.c)
    182161 */
    183162extern const uint_t     tnum_inhno;
    184163
    185164/*
    186  *  割込みハンドラ初期化ブロックのエリア(kernel_cfg.c)
     165 *  割込みハンドラ初期化ブロックのエリア(kernel_cfg.c)
    187166 */
    188167extern const INHINIB    inhinib_table[];
    189168
    190169/*
    191  *  割込み要求ラインの数(kernel_cfg.c)
     170 *  割込み要求ラインの数(kernel_cfg.c)
    192171 */
    193172extern const uint_t     tnum_intno;
    194173
    195174/*
    196  *  割込み要求ライン初期化ブロックのエリア(kernel_cfg.c)
     175 *  割込み要求ライン初期化ブロックのエリア(kernel_cfg.c)
    197176 */
    198177extern const INTINIB    intinib_table[];
     
    201180
    202181/*
    203  *  割込み管理機能の初期化
     182 *  割込み管理機能の初期化
    204183 */
    205184extern void     initialize_interrupt(void);
Note: See TracChangeset for help on using the changeset viewer.