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/test/test_task1.c

    • Property svn:mime-type changed from text/x-csrc to text/x-csrc; charset=UTF-8
    r313 r315  
    66 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    77 *
    8  *  上記著作権è€
    9 ã¯ï¼Œä»¥ä¸‹ã®(1)~(4)の条件を満たす場合に限り,本ソフトウェ
    10  *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
    11  *  変・再é
    12 å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
    13  *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
    14  *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
    15  *      スコード中に含まれていること.
    16  *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
    17  *      用できる形で再é
    18 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é
    19 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
    20  *      è€
    21 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—作権表示,この利用条件および下記
    22  *      の無保証規定を掲載すること.
    23  *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
    24  *      用できない形で再é
    25 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
    26  *      と.
    27  *    (a) 再é
    28 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€
    29 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—
    30  *        作権表示,この利用条件および下記の無保証規定を掲載すること.
    31  *    (b) 再é
    32 å¸ƒã®å½¢æ
    33 ‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
    34  *        報告すること.
    35  *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
    36  *      害からも,上記著作権è€
    37 ãŠã‚ˆã³TOPPERSプロジェクトをå
    38 è²¬ã™ã‚‹ã“と.
    39  *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
    40  *      由に基づく請求からも,上記著作権è€
    41 ãŠã‚ˆã³TOPPERSプロジェクトを
    42  *      å
    43 è²¬ã™ã‚‹ã“と.
     8 *  上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
     9 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     10 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     11 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     12 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     13 *      スコード中に含まれていること.
     14 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     15 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     16 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     17 *      の無保証規定を掲載すること.
     18 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     19 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     20 *      と.
     21 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     22 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     23 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     24 *        報告すること.
     25 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     26 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     27 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     28 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     29 *      免責すること.
    4430 *
    45  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    46 ãŠ
    47  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
    48  *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
    49  *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
    50  *  の責任を負わない.
     31 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     32 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     33 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     34 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     35 *  の責任を負わない.
    5136 *
    5237 *  $Id$
     
    5439
    5540/*
    56  *              タスク管理モジュールのテスト(1)
    57  *
    58  * 【テストの目的】
    59  *
    60  *  make_runnableとmake_non_runnableを網ç¾
    61 çš„にテストする.
    62  *
    63  * 【テストé 
    64 ç›®ã€‘
    65  *
    66  *      (A) 実行状æ
    67 ‹ã®ã‚¿ã‚¹ã‚¯ã‚ˆã‚Šã‚‚高い優å
    68 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ã‚’実行できる状æ
    69 ‹ã«ã™ã‚‹
    70  *              (A-1) ディスパッチ保留状æ
    71 ‹ã§ã¯ãªã„場合
    72  *              (A-2) ディスパッチ保留状æ
    73 ‹ã®å ´åˆ
    74  *      (B) 実行状æ
    75 ‹ã®ã‚¿ã‚¹ã‚¯ã¨åŒã˜å„ªå
    76 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ã‚’実行できる状æ
    77 ‹ã«ã™ã‚‹
    78  *              !同じ優å
    79 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ã®ä¸­ã®æœ«å°¾ã«å
    80 ¥ã‚‹ã“とを確認する
    81  *      (C) 実行状æ
    82 ‹ã®ã‚¿ã‚¹ã‚¯ã‚ˆã‚Šã‚‚低い優å
    83 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ã‚’実行できる状æ
    84 ‹ã«ã™ã‚‹
    85  *              !同じ優å
    86 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ã®ä¸­ã®æœ«å°¾ã«å
    87 ¥ã‚‹ã“とを確認する
    88  *      (D) 実行できる状æ
    89 ‹ã®ã‚¿ã‚¹ã‚¯ãŒãªã„状æ
    90 ‹ã§ï¼Œã‚¿ã‚¹ã‚¯ã‚’実行できる状æ
    91 ‹ã«ã™ã‚‹
    92  *              !この場合は,ディスパッチ保留状æ
    93 ‹ã§ã¯ãªã„
    94  *      (E) ディスパッチ保留状æ
    95 ‹ã§ï¼Œå®Ÿè¡ŒçŠ¶æ
    96 ‹ã«ãªã‚‹ã¹ãã ãŒå®Ÿè¡Œå¯èƒ½çŠ¶æ
    97 ‹ã‚¿ã‚¹
    98  *              クよりも高い優å
    99 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ã‚’,実行できる状æ
    100 ‹ã«ã™ã‚‹
    101  *      (F) ディスパッチ保留状æ
    102 ‹ã§ï¼Œå®Ÿè¡ŒçŠ¶æ
    103 ‹ã«ãªã‚‹ã¹ãã ãŒå®Ÿè¡Œå¯èƒ½çŠ¶æ
    104 ‹ã‚¿ã‚¹
    105  *              クと同じ優å
    106 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ã‚’,実行できる状æ
    107 ‹ã«ã™ã‚‹
    108  *      (G) ディスパッチ保留状æ
    109 ‹ã§ï¼Œå®Ÿè¡ŒçŠ¶æ
    110 ‹ã«ãªã‚‹ã¹ãã ãŒå®Ÿè¡Œå¯èƒ½çŠ¶æ
    111 ‹ã‚¿ã‚¹
    112  *              クよりも低い優å
    113 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ã‚’,実行できる状æ
    114 ‹ã«ã™ã‚‹
    115  *      (H) 実行状æ
    116 ‹ã®ã‚¿ã‚¹ã‚¯ã‚’,実行できる状æ
    117 ‹ã§ãªãã™
    118  *              (H-1) 実行できる状æ
    119 ‹ã®ã‚¿ã‚¹ã‚¯ãŒãªããªã‚‹å ´åˆ
    120  *              (H-2) 同一優å
    121 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ãŒãªããªã‚‹å ´åˆ
    122  *              (H-3) 同一優å
    123 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ãŒãªããªã‚‰ãªã„場合
    124  *      (I) 実行可能状æ
    125 ‹ã®ã‚¿ã‚¹ã‚¯ã‚’,実行できる状æ
    126 ‹ã§ãªãã™
    127  *              (I-1) 同一優å
    128 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ãŒãªããªã‚‹å ´åˆ
    129  *              (I-2) 同一優å
    130 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ãŒãªããªã‚‰ãªã„場合
    131  *      (J) ディスパッチ保留状æ
    132 ‹ã§ï¼Œå®Ÿè¡ŒçŠ¶æ
    133 ‹ã«ãªã‚‹ã¹ãã ãŒå®Ÿè¡Œå¯èƒ½çŠ¶æ
    134 ‹ã¨ãªã£
    135  *              ているタスクを,実行できる状æ
    136 ‹ã§ãªãã™
    137  *              (J-1) 同一優å
    138 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ãŒãªããªã‚‹å ´åˆ
    139  *              (J-2) 同一優å
    140 ˆåº¦ã®ã‚¿ã‚¹ã‚¯ãŒãªããªã‚‰ãªã„場合
    141  *      (K) ディスパッチ保留状æ
    142 ‹ã§ï¼Œå®Ÿè¡Œå¯èƒ½çŠ¶æ
    143 ‹ã«ãªã‚‹ã¹ãã ãŒå®Ÿè¡ŒçŠ¶æ
    144 ‹ã®ã‚¿
    145  *              スクを,実行できる状æ
    146 ‹ã§ãªãã™
    147  *              !ディスパッチ保留では,実行状æ
    148 ‹ã®ã‚¿ã‚¹ã‚¯ãŒå®Ÿè¡Œã§ãã‚‹çŠ¶æ
    149 ‹ã§ãªã
    150  *              なるような遷移を起こすことができないため,この状況は起こらない.
    151  *
    152  * 【使用リソース】
    153  *
    154  *      TASK1: 中優å
    155 ˆåº¦ã‚¿ã‚¹ã‚¯ï¼Œãƒ¡ã‚¤ãƒ³ã‚¿ã‚¹ã‚¯ï¼Œæœ€åˆã‹ã‚‰èµ·å‹•
    156  *      TASK2: 高優å
    157 ˆåº¦ã‚¿ã‚¹ã‚¯
    158  *      TASK3: 中優å
    159 ˆåº¦ã‚¿ã‚¹ã‚¯
    160  *      TASK4: 中優å
    161 ˆåº¦ã‚¿ã‚¹ã‚¯
    162  *      TASK5: 低優å
    163 ˆåº¦ã‚¿ã‚¹ã‚¯
    164  *      TASK6: 低優å
    165 ˆåº¦ã‚¿ã‚¹ã‚¯
    166  *      ALM1:  アラームハンドラ
    167  *
    168  * 【テストシーケンス】
    169  *
    170  *      == TASK1(優å
    171 ˆåº¦ï¼šä¸­ï¼‰==
     41 *              タスク管理モジュールのテスト(1)
     42 *
     43 * 【テストの目的】
     44 *
     45 *  make_runnableとmake_non_runnableを網羅的にテストする.
     46 *
     47 * 【テスト項目】
     48 *
     49 *      (A) 実行状態のタスクよりも高い優先度のタスクを実行できる状態にする
     50 *              (A-1) ディスパッチ保留状態ではない場合
     51 *              (A-2) ディスパッチ保留状態の場合
     52 *      (B) 実行状態のタスクと同じ優先度のタスクを実行できる状態にする
     53 *              !同じ優先度のタスクの中の末尾に入ることを確認する
     54 *      (C) 実行状態のタスクよりも低い優先度のタスクを実行できる状態にする
     55 *              !同じ優先度のタスクの中の末尾に入ることを確認する
     56 *      (D) 実行できる状態のタスクがない状態で,タスクを実行できる状態にする
     57 *              !この場合は,ディスパッチ保留状態ではない
     58 *      (E) ディスパッチ保留状態で,実行状態になるべきだが実行可能状態タス
     59 *              クよりも高い優先度のタスクを,実行できる状態にする
     60 *      (F) ディスパッチ保留状態で,実行状態になるべきだが実行可能状態タス
     61 *              クと同じ優先度のタスクを,実行できる状態にする
     62 *      (G) ディスパッチ保留状態で,実行状態になるべきだが実行可能状態タス
     63 *              クよりも低い優先度のタスクを,実行できる状態にする
     64 *      (H) 実行状態のタスクを,実行できる状態でなくす
     65 *              (H-1) 実行できる状態のタスクがなくなる場合
     66 *              (H-2) 同一優先度のタスクがなくなる場合
     67 *              (H-3) 同一優先度のタスクがなくならない場合
     68 *      (I) 実行可能状態のタスクを,実行できる状態でなくす
     69 *              (I-1) 同一優先度のタスクがなくなる場合
     70 *              (I-2) 同一優先度のタスクがなくならない場合
     71 *      (J) ディスパッチ保留状態で,実行状態になるべきだが実行可能状態となっ
     72 *              ているタスクを,実行できる状態でなくす
     73 *              (J-1) 同一優先度のタスクがなくなる場合
     74 *              (J-2) 同一優先度のタスクがなくならない場合
     75 *      (K) ディスパッチ保留状態で,実行可能状態になるべきだが実行状態のタ
     76 *              スクを,実行できる状態でなくす
     77 *              !ディスパッチ保留では,実行状態のタスクが実行できる状態でなく
     78 *              なるような遷移を起こすことができないため,この状況は起こらない.
     79 *
     80 * 【使用リソース】
     81 *
     82 *      TASK1: 中優先度タスク,メインタスク,最初から起動
     83 *      TASK2: 高優先度タスク
     84 *      TASK3: 中優先度タスク
     85 *      TASK4: 中優先度タスク
     86 *      TASK5: 低優先度タスク
     87 *      TASK6: 低優先度タスク
     88 *      ALM1:  アラームハンドラ
     89 *
     90 * 【テストシーケンス】
     91 *
     92 *      == TASK1(優先度:中)==
    17293 *      1:      act_tsk(TASK2)                                  ... (A-1)
    173  *      == TASK2(優å
    174 ˆåº¦ï¼šé«˜ï¼‰==
     94 *      == TASK2(優先度:高)==
    17595 *      2:      slp_tsk()                                               ... (H-2)
    176  *      == TASK1(続き)==
     96 *      == TASK1(続き)==
    17797 *      3:      act_tsk(TASK3)                                  ... (B)
    17898 *      4:      act_tsk(TASK4)                                  ... (B)
    17999 *      5:      slp_tsk()                                               ... (H-3)
    180  *      == TASK3(優å
    181 ˆåº¦ï¼šä¸­ï¼‰==
     100 *      == TASK3(優先度:中)==
    182101 *      6:      slp_tsk()                                               ... (H-3)
    183  *      == TASK4(優å
    184 ˆåº¦ï¼šä¸­ï¼‰==
     102 *      == TASK4(優先度:中)==
    185103 *      7:      wup_tsk(TASK1)
    186104 *      8:      slp_tsk()                                               ... (H-3)
    187  *      == TASK1(続き)==
     105 *      == TASK1(続き)==
    188106 *      9:      act_tsk(TASK5)                                  ... (C)
    189107 *      10:     act_tsk(TASK6)                                  ... (C)
     
    193111 *      14:     rsm_tsk(TASK6)                                  ... (C)
    194112 *      15:     slp_tsk()                                               ... (H-2)
    195  *      == TASK5(優å
    196 ˆåº¦ï¼šä½Žï¼‰==
     113 *      == TASK5(優先度:低)==
    197114 *      16:     slp_tsk()                                               ... (H-3)
    198  *      == TASK6(優å
    199 ˆåº¦ï¼šä½Žï¼‰==
     115 *      == TASK6(優先度:低)==
    200116 *      17:     dis_dsp()
    201117 *      18:     wup_tsk(TASK1)                                  ... (A-2)
     
    206122 *      23:     sus_tsk(TASK1)                                  ... (J-2)
    207123 *      24:     ena_dsp()
    208  *      == TASK3(続き)==
     124 *      == TASK3(続き)==
    209125 *      25:     slp_tsk()                                               ... (H-3)
    210  *      == TASK4(続き)==
     126 *      == TASK4(続き)==
    211127 *      26:     slp_tsk()                                               ... (H-2)
    212  *      == TASK6(続き)==
     128 *      == TASK6(続き)==
    213129 *      27:     dis_dsp()
    214130 *      28:     rsm_tsk(TASK1)                                  ... (A-2)
    215131 *      29:     wup_tsk(TASK5)                                  ... (G)
    216132 *      30:     ena_dsp()
    217  *      == TASK1(続き)==
     133 *      == TASK1(続き)==
    218134 *      31:     slp_tsk()                                               ... (H-2)
    219  *      == TASK6(続き)==
     135 *      == TASK6(続き)==
    220136 *      32:     slp_tsk()                                               ... (H-3)
    221  *      == TASK5(続き)==
     137 *      == TASK5(続き)==
    222138 *      33:     sta_alm(ALM1, 10)
    223139 *      34:     slp_tsk()                                               ... (H-1)
     
    227143 *      36:     iwup_tsk(TASK1)                                 ... (D)
    228144 *      37:     RETURN
    229  *      == TASK1(続き)==
     145 *      == TASK1(続き)==
    230146 *      38: END
    231147 */
Note: See TracChangeset for help on using the changeset viewer.