Skip to content

内核的初始化与启动

内核初始化

c
void yr_kernel_init(void);

用于初始化调度器、定时器链表、idle 任务(空闲任务)。

  • 必须在创建任务之前调用( 通常位于 main 函数,在硬件初始化之后调用)。

内核启动

c
void yr_kernel_start(void);

用于启动首次调度,切换到优先级最高的任务。

  • 执行该函数前用户必须至少创建一个任务( idle 任务为内核创建,不算在其中 ),否则会一直执行 idle 任务。
  • 该函数执行后会默认会破坏 main 函数的调用链,无法再返回 main 函数,应该在完成所有初始化配置后调用。