⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ini_tsk.c

📁 itron
💻 C
字号:
/* ------------------------------------------------------------------------ */
/*  Hyper Operating System V4  μITRON4.0慌屯 Real-Time OS                  */
/*    ITRONカ〖ネル タスク瓷妄怠墙                                          */
/*                                                                          */
/*                                  Copyright (C) 1998-2002 by Project HOS  */
/*                                  http://sourceforge.jp/projects/hos/     */
/* ------------------------------------------------------------------------ */


#include "knl_tsk.h"



/* タスクの介袋步 */
void kernel_ini_tsk(void)
{
	T_KERNEL_TCB_RAM *tcb_ram;
	int i;

	/* TCBのRAM婶はゼロ挝拌にしておいてコ〖ドで介袋步したほうが跟唯がよい */
	for ( i = KERNEL_TMIN_TSKID; i <= KERNEL_TMAX_TSKID; i++ )
	{
		tcb_ram = KERNEL_TSKID_TO_TCB_RAM(i);
		if ( tcb_ram != NULL )
		{
			/* μカ〖ネル婶尸の介袋步 */
			mknl_ini_tsk(&tcb_ram->mtcb);
			
			/* TA_ACT掳拉のものを弹瓢する */
			if ( tcb_ram->tcb_rom->tskatr & TA_ACT )
			{
				act_tsk(KERNEL_TMIN_TSKID + i);
			}
		}
	}
}


/* タスクのエントリ〖ポイント */
void kernel_task_entry(
		VP_INT exinf)		/* タスクの橙磨攫鼠 */
{
	register const T_KERNEL_TCB_ROM *tcb_rom;
	register T_KERNEL_TCB_RAM *tcb_ram;

	/* スタ〖トアドレスの换叫 */
	tcb_ram = KERNEL_STATIC_CAST(T_KERNEL_TCB_RAM, mtcb, mknl_get_run_tsk());
	tcb_rom = tcb_ram->tcb_rom;

	mknl_unl_sys();			/* システムのロック豺近 */

	tcb_rom->task(exinf);	/* タスク悸乖 */

	ext_tsk();	/* リタ〖ン箕は姜位 */
}


/* ------------------------------------------------------------------------ */
/*  Copyright (C) 1998-2002 by Project HOS                                  */
/* ------------------------------------------------------------------------ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -