ER ext_ker(void) { SIL_PRE_LOC; LOG_EXT_KER_ENTER(); /* * 割込みロック状態に移行 */ SIL_LOC_INT(); /* * カーネル動作の終了 */ LOG_KER_LEAVE(); kerflg = false; /* * カーネルの終了処理の呼出し * * 非タスクコンテキストに切り換えて,exit_kernelを呼び出す. */ call_exit_kernel(); /* * コンパイラの警告対策(ここへ来ることはないはず) */ SIL_UNL_INT(); LOG_EXT_KER_LEAVE(E_SYS); return(E_SYS); }
/* * カーネルの終了 */ ER ext_ker(void) { SIL_PRE_LOC; LOG_EXT_KER_ENTER(); /* * 割込みロック状態に移行 */ SIL_LOC_INT(); /* * カーネル動作の終了 */ LOG_KER_LEAVE(); kerflg = false; /* * カーネルの終了処理の呼出し * * 非タスクコンテキストに切り換えて,exit_kernelを呼び出す. */ call_exit_kernel(); /* * SIL_UNL_INTを呼び出すが,ここに到達することはない. * 記述するのはSIL_PRE_LOCで宣言される変数がある場合に, * コンパイラが出力する警告を抑制するためである. */ SIL_UNL_INT(); LOG_EXT_KER_LEAVE(E_SYS) return E_SYS; }