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/eventflag.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 *
    70  *  この構造体は,同期・通信オブジェクトの初期化ブロックのå
    71 ±é€šéƒ¨åˆ†
    72  *  (WOBJINIB)を拡張(オブジェクト指向言語の継承に相当)したもので,
    73  *  最初のフィールドがå
    74 ±é€šã«ãªã£ã¦ã„る.
     55 *  この構造体は,同期・通信オブジェクトの初期化ブロックの共通部分
     56 *  (WOBJINIB)を拡張(オブジェクト指向言語の継承に相当)したもので,
     57 *  最初のフィールドが共通になっている.
    7558 */
    7659typedef struct eventflag_initialization_block {
    77         ATR                     flgatr;                 /* イベントフラグ属性 */
    78         FLGPTN          iflgptn;                /* イベントフラグのビットパターンの初期値 */
     60        ATR                     flgatr;                 /* イベントフラグ属性 */
     61        FLGPTN          iflgptn;                /* イベントフラグのビットパターンの初期値 */
    7962} FLGINIB;
    8063
    8164/*
    82  *  イベントフラグ管理ブロック
     65 *  イベントフラグ管理ブロック
    8366 *
    84  *  この構造体は,同期・通信オブジェクトの管理ブロックのå
    85 ±é€šéƒ¨åˆ†ï¼ˆWOBJCB)
    86  *  を拡張(オブジェクト指向言語の継承に相当)したもので,最初の2つの
    87  *  フィールドがå
    88 ±é€šã«ãªã£ã¦ã„る.
     67 *  この構造体は,同期・通信オブジェクトの管理ブロックの共通部分(WOBJCB)
     68 *  を拡張(オブジェクト指向言語の継承に相当)したもので,最初の2つの
     69 *  フィールドが共通になっている.
    8970 */
    9071typedef struct eventflag_control_block {
    91         QUEUE           wait_queue;             /* イベントフラグå¾
    92 ã¡ã‚­ãƒ¥ãƒ¼ */
    93         const FLGINIB *p_flginib;       /* 初期化ブロックへのポインタ */
    94         FLGPTN          flgptn;                 /* イベントフラグ現在パターン */
     72        QUEUE           wait_queue;             /* イベントフラグ待ちキュー */
     73        const FLGINIB *p_flginib;       /* 初期化ブロックへのポインタ */
     74        FLGPTN          flgptn;                 /* イベントフラグ現在パターン */
    9575} FLGCB;
    9676
    9777/*
    98  *  イベントフラグå¾
    99 ã¡æƒ
    100 å ±ãƒ–ロックの定義
     78 *  イベントフラグ待ち情報ブロックの定義
    10179 *
    102  *  この構造体は,同期・通信オブジェクトのå¾
    103 ã¡æƒ
    104 å ±ãƒ–ロックのå
    105 ±é€šéƒ¨åˆ†
    106  *  (WINFO_WOBJ)を拡張(オブジェクト指向言語の継承に相当)したもので,
    107  *  最初の2つのフィールドがå
    108 ±é€šã«ãªã£ã¦ã„る.
     80 *  この構造体は,同期・通信オブジェクトの待ち情報ブロックの共通部分
     81 *  (WINFO_WOBJ)を拡張(オブジェクト指向言語の継承に相当)したもので,
     82 *  最初の2つのフィールドが共通になっている.
    10983 *
    110  *  flgptnは,waiptnおよびwfmodeと同時に使うことはないため,å
    111 ±ç”¨ä½“を使
    112  *  えばメモリを節約することが可能である.
     84 *  flgptnは,waiptnおよびwfmodeと同時に使うことはないため,共用体を使
     85 *  えばメモリを節約することが可能である.
    11386 */
    11487typedef struct eventflag_waiting_information {
    115         WINFO           winfo;                  /* 標準のå¾
    116 ã¡æƒ
    117 å ±ãƒ–ロック */
    118         FLGCB           *p_flgcb;               /* å¾
    119 ã£ã¦ã„るイベントフラグの管理ブロック */
    120         FLGPTN          waiptn;                 /* å¾
    121 ã¡ãƒ‘ターン */
    122         MODE            wfmode;                 /* å¾
    123 ã¡ãƒ¢ãƒ¼ãƒ‰ */
    124         FLGPTN          flgptn;                 /* å¾
    125 ã¡è§£é™¤æ™‚のパターン */
     88        WINFO           winfo;                  /* 標準の待ち情報ブロック */
     89        FLGCB           *p_flgcb;               /* 待っているイベントフラグの管理ブロック */
     90        FLGPTN          waiptn;                 /* 待ちパターン */
     91        MODE            wfmode;                 /* 待ちモード */
     92        FLGPTN          flgptn;                 /* 待ち解除時のパターン */
    12693} WINFO_FLG;
    12794
    12895/*
    129  *  使用していないイベントフラグ管理ブロックのリスト
     96 *  使用していないイベントフラグ管理ブロックのリスト
    13097 */
    13198extern QUEUE    free_flgcb;
    13299
    133100/*
    134  *  イベントフラグIDの最大値(kernel_cfg.c)
     101 *  イベントフラグIDの最大値(kernel_cfg.c)
    135102 */
    136103extern const ID tmax_flgid;
     
    138105
    139106/*
    140  *  イベントフラグ初期化ブロックのエリア(kernel_cfg.c)
     107 *  イベントフラグ初期化ブロックのエリア(kernel_cfg.c)
    141108 */
    142109extern const FLGINIB    flginib_table[];
     
    144111
    145112/*
    146  *  イベントフラグ管理ブロックのエリア(kernel_cfg.c)
     113 *  イベントフラグ管理ブロックのエリア(kernel_cfg.c)
    147114 */
    148115extern FLGCB    flgcb_table[];
    149116
    150117/*
    151  *  イベントフラグ管理ブロックからイベントフラグIDを取り出すためのマクロ
     118 *  イベントフラグ管理ブロックからイベントフラグIDを取り出すためのマクロ
    152119 */
    153120#define FLGID(p_flgcb)  ((ID)(((p_flgcb) - flgcb_table) + TMIN_FLGID))
    154121
    155122/*
    156  *  イベントフラグ機能の初期化
     123 *  イベントフラグ機能の初期化
    157124 */
    158125extern void     initialize_eventflag(void);
    159126
    160127/*
    161  *  イベントフラグå¾
    162 ã¡è§£é™¤æ¡ä»¶ã®ãƒã‚§ãƒƒã‚¯
     128 *  イベントフラグ待ち解除条件のチェック
    163129 */
    164130extern bool_t   check_flg_cond(FLGCB *p_flgcb, FLGPTN waiptn,
Note: See TracChangeset for help on using the changeset viewer.