Changeset 429 for EcnlProtoTool/trunk/asp3_dcre/kernel/task.trb
- Timestamp:
- Jul 3, 2020, 7:19:17 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
EcnlProtoTool/trunk/asp3_dcre/kernel/task.trb
r321 r429 6 6 # 7 7 # Copyright (C) 2015 by FUJI SOFT INCORPORATED, JAPAN 8 # Copyright (C) 2015 ,2016by Embedded and Real-Time Systems Laboratory8 # Copyright (C) 2015-2019 by Embedded and Real-Time Systems Laboratory 9 9 # Graduate School of Information Science, Nagoya Univ., JAPAN 10 10 # … … 54 54 params[:stk] ||= "NULL" 55 55 56 # tskatrが無効の場合(E_RSATR)[NGKI1028] 56 # tskatrが無効の場合(E_RSATR)[NGKI1028][NGKI3526][ASPS0009] 57 # [NGKI1016] 57 58 #(TA_ACT,TA_NOACTQUE,TARGET_TSKATR以外のビットがセットされている場合) 58 59 if (params[:tskatr] & ~($TA_ACT|$TA_NOACTQUE|$TARGET_TSKATR)) != 0 … … 60 61 end 61 62 62 # (TMIN_TPRI <= itskpri && itskpri <= TMAX_TPRI)でない場合[NGKI1034] 63 # itskpriが有効範囲外の場合(E_PAR)[NGKI1034] 64 #(TMIN_TPRI <= itskpri && itskpri <= TMAX_TPRIでない場合) 63 65 if !($TMIN_TPRI <= params[:itskpri] && params[:itskpri] <= $TMAX_TPRI) 64 66 error_illegal_id("E_PAR", params, :itskpri, :tskid) … … 66 68 67 69 # stkszがターゲット定義の最小値(TARGET_MIN_STKSZ,未定義の場合は1) 68 # よりも小さい場合 [NGKI1042]70 # よりも小さい場合(E_PAR)[NGKI1042] 69 71 if params[:stksz] < $TARGET_MIN_STKSZ 70 72 error_wrong_id("E_PAR", params, :stksz, :tskid, "too small") … … 78 80 params[:tinib_stk] = stkName 79 81 else 80 # stkszが スタック領域のサイズとして正しくない場合[NGKI1056]82 # stkszがターゲット定義の制約に合致しない場合(E_PAR)[NGKI1056] 81 83 if (params[:stksz] & ($CHECK_STKSZ_ALIGN - 1)) != 0 82 84 error_wrong_id("E_PAR", params, :stksz, :tskid, "not aligned") … … 85 87 params[:tinib_stksz] = params[:stksz] 86 88 params[:tinib_stk] = "(void *)(#{params[:stk]})" 89 end 90 91 # ターゲット依存の処理(ターゲット依存のエラーチェックを含む) 92 if defined? TargetTaskPrepare() 93 TargetTaskPrepare(key, params) 87 94 end 88 95 end … … 100 107 end 101 108 109 # タスクが1つも登録されていない場合[NGKI0033] 110 if $cfgData[:CRE_TSK].size() == 0 111 error("no task is registered") 112 end 113 102 114 # 103 115 # タスク管理に関する情報の生成 104 116 # 105 117 $kernelCfgC.comment_header("Task Management Functions") 106 if $cfgData[:CRE_TSK].size() == 0107 error("no task is registered")108 end109 118 TaskObject.new.generate() 110 119 … … 112 121 $kernelCfgC.add("const ID _kernel_torder_table[TNUM_STSKID] = { ") 113 122 $kernelCfgC.append("\t") 114 $cfgData[:CRE_TSK].each_with_index do |( key, params), index|123 $cfgData[:CRE_TSK].each_with_index do |(_, params), index| 115 124 $kernelCfgC.append(", ") if index > 0 116 125 $kernelCfgC.append("#{params[:tskid]}")
Note:
See TracChangeset
for help on using the changeset viewer.