Ignore:
Timestamp:
May 22, 2019, 10:03:37 PM (5 years ago)
Author:
coas-nagasima
Message:

ビルドが通るよう更新

File:
1 edited

Legend:

Unmodified
Added
Removed
  • azure_iot_hub/trunk/asp3_dcre/kernel/task_sync.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;charset=UTF-8
    r388 r389  
    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 */
    7055#ifndef LOG_SLP_TSK_ENTER
     
    133118
    134119/*
    135  *  起床å¾
    136 ã¡
     120 *  起床待ち
    137121 */
    138122#ifdef TOPPERS_slp_tsk
     
    172156
    173157/*
    174  *  起床å¾
    175 ã¡ï¼ˆã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã‚り)
     158 *  起床待ち(タイムアウトあり)
    176159 */
    177160#ifdef TOPPERS_tslp_tsk
     
    216199
    217200/*
    218  *  タスクの起床
     201 *  タスクの起床
    219202 */
    220203#ifdef TOPPERS_wup_tsk
     
    272255
    273256/*
    274  *  タスク起床要求のキャンセル
     257 *  タスク起床要求のキャンセル
    275258 */
    276259#ifdef TOPPERS_can_wup
     
    313296
    314297/*
    315  *  å¾
    316 ã¡çŠ¶æ
    317 ‹ã®å¼·åˆ¶è§£é™¤
     298 *  待ち状態の強制解除
    318299 */
    319300#ifdef TOPPERS_rel_wai
     
    362343
    363344/*
    364  *  強制å¾
    365 ã¡çŠ¶æ
    366 ‹ã¸ã®ç§»è¡Œï¼»NGKI1298ï¼½
     345 *  強制待ち状態への移行[NGKI1298]
    367346 */
    368347#ifdef TOPPERS_sus_tsk
     
    375354
    376355        LOG_SUS_TSK_ENTER(tskid);
    377         CHECK_TSKCTX_UNL();                                                     /*ï¼»NGKI1299][NGKI1300ï¼½*/
     356        CHECK_TSKCTX_UNL();                                                     /*[NGKI1299][NGKI1300]*/
    378357        if (tskid == TSK_SELF) {
    379                 p_tcb = p_runtsk;                                               /*ï¼»NGKI1310ï¼½*/
    380         }
    381         else {
    382                 CHECK_ID(VALID_TSKID(tskid));                   /*ï¼»NGKI1302ï¼½*/
     358                p_tcb = p_runtsk;                                               /*[NGKI1310]*/
     359        }
     360        else {
     361                CHECK_ID(VALID_TSKID(tskid));                   /*[NGKI1302]*/
    383362                p_tcb = get_tcb(tskid);
    384363        }
    385364
    386365        lock_cpu();
    387         if (p_tcb == p_runtsk && !dspflg) {                     /*ï¼»NGKI1311][NGKI3604ï¼½*/
     366        if (p_tcb == p_runtsk && !dspflg) {                     /*[NGKI1311][NGKI3604]*/
    388367                ercd = E_CTX;
    389368        }
    390369        else if (p_tcb->p_tinib->tskatr == TA_NOEXS) {
    391                 ercd = E_NOEXS;                                                 /*ï¼»NGKI1303ï¼½*/
     370                ercd = E_NOEXS;                                                 /*[NGKI1303]*/
    392371        }
    393372        else if (TSTAT_DORMANT(p_tcb->tstat)) {
    394                 ercd = E_OBJ;                                                   /*ï¼»NGKI1305ï¼½*/
     373                ercd = E_OBJ;                                                   /*[NGKI1305]*/
    395374        }
    396375        else if (p_tcb->raster) {
    397                 ercd = E_RASTER;                                                /*ï¼»NGKI3605ï¼½*/
     376                ercd = E_RASTER;                                                /*[NGKI3605]*/
    398377        }
    399378        else if (TSTAT_RUNNABLE(p_tcb->tstat)) {
    400379                /*
    401                  *  実行できる状æ
    402 ‹ã‹ã‚‰å¼·åˆ¶å¾
    403 ã¡çŠ¶æ
    404 ‹ã¸ã®é·ç§»ï¼»NGKI1307ï¼½
     380                 *  実行できる状態から強制待ち状態への遷移[NGKI1307]
    405381                 */
    406382                p_tcb->tstat = TS_SUSPENDED;
     
    413389        }
    414390        else if (TSTAT_SUSPENDED(p_tcb->tstat)) {
    415                 ercd = E_QOVR;                                                  /*ï¼»NGKI1306ï¼½*/
     391                ercd = E_QOVR;                                                  /*[NGKI1306]*/
    416392        }
    417393        else {
    418394                /*
    419                  *  å¾
    420 ã¡çŠ¶æ
    421 ‹ã‹ã‚‰äºŒé‡å¾
    422 ã¡çŠ¶æ
    423 ‹ã¸ã®é·ç§»ï¼»NGKI1308ï¼½
     395                 *  待ち状態から二重待ち状態への遷移[NGKI1308]
    424396                 */
    425397                p_tcb->tstat |= TS_SUSPENDED;
     
    437409
    438410/*
    439  *  強制å¾
    440 ã¡çŠ¶æ
    441 ‹ã‹ã‚‰ã®å†é–‹
     411 *  強制待ち状態からの再開
    442412 */
    443413#ifdef TOPPERS_rsm_tsk
     
    463433        else if (!TSTAT_WAITING(p_tcb->tstat)) {
    464434                /*
    465                  *  強制å¾
    466 ã¡çŠ¶æ
    467 ‹ã‹ã‚‰å®Ÿè¡Œã§ãã‚‹çŠ¶æ
    468 ‹ã¸ã®é·ç§»
     435                 *  強制待ち状態から実行できる状態への遷移
    469436                 */
    470437                p_tcb->tstat = TS_RUNNABLE;
     
    478445        else {
    479446                /*
    480                  *  二重å¾
    481 ã¡çŠ¶æ
    482 ‹ã‹ã‚‰å¾
    483 ã¡çŠ¶æ
    484 ‹ã¸ã®é·ç§»
     447                 *  二重待ち状態から待ち状態への遷移
    485448                 */
    486449                p_tcb->tstat &= ~TS_SUSPENDED;
     
    498461
    499462/*
    500  *  自タスクのé
    501ʌȦ
     463 *  自タスクの遅延
    502464 */
    503465#ifdef TOPPERS_dly_tsk
Note: See TracChangeset for help on using the changeset viewer.