内核启动参数

更新时间:
2024-03-14
下载文档

内核启动参数

SylixOS 内核启动时,需要设置启动参数。如果 bootloader 支持,可以使用 bootloader 设置,但一般在 bspInit 函数内会设置内核启动参数。使用 BSP 本身设置内核启动参数时,需要调用 API_KernelStartParam 函数。其函数原型如下:

#include <SylixOS.h>
ULONG    API_KernelStartParam(CPCHAR  pcParam);

函数 API_KernelStartPara 原型分析:

  • 此函数成功返回 ERROR_NONE ,失败返回错误号。
  • 参数 pcParam 是启动参数, 是以空格分开的一个字符串列表。通常具有如下形式:
参数说明
ncpus=1CPU 个数
dlog=noDEBUG LOG 信息打印
derror=yesDEBUG ERROR 信息打印
kfpu=no内核态对浮点支持(推荐 no)
heapchk=yes内存堆越界检查
hz=100系统 tick 频率,默认 100(推荐 100 ~ 10000 中间)
hhz=100高速定时器频率,默认与 hz 相同(需 BSP 支持)
irate=5应用定时器分辨率,默认为 5 个 tick。(推荐 1~10 中间)
hpsec=1热插拔循环检测间隔时间,单位:秒(推荐 1~5 秒)
bugreboot=no内核探测到 bug 时是否自动重启
rebootto=10重启超时时间
fsched=noSMP 系统内核快速调度
smt=noSMT 均衡调度
noitmr=no是否支持 ITIMER_REAL/ITIMER_VIRTUAL/ITIMER_PROF,默认为支持,建议运动控制等高实时性应用, 可置为 yes 提高 tick 速度
tmcvtsimple=no通过 timespec 转换 tick 超时,是否使用简单转换法,建议 Lite 类型处理器可采用 simple 转换法

综上,设置启动参数时,只需要定义一个字符串,包含需要设置的启动参数,然后调用 API_KernelStartParam 即可。

文档内容是否对您有所帮助?
有帮助
没帮助