更新日期: 2022/06/01 来源: https://gitee.com/weharmony/kernel_liteos_a_note
main.c 文件参考

浏览源代码.

函数

LITE_OS_SEC_TEXT_INIT INT32 main (VOID)
 内核入口函数,由汇编调用,见于reset_vector_up.S 和 reset_vector_mp.S up指单核CPU, mp指多核CPU bl main 更多...
 

函数说明

◆ main()

LITE_OS_SEC_TEXT_INIT INT32 main ( VOID  )

内核入口函数,由汇编调用,见于reset_vector_up.S 和 reset_vector_mp.S up指单核CPU, mp指多核CPU bl main

返回
LITE_OS_SEC_TEXT_INIT

在文件 main.c41 行定义.

42{
43 UINT32 ret = OsMain();
44 if (ret != LOS_OK) {
45 return (INT32)LOS_NOK;
46 }
47
48 CPU_MAP_SET(0, OsHwIDGet());//设置主CPU映射信息
49
50 OsSchedStart();//调度开始
51
52 while (1) {
53 __asm volatile("wfi");//WFI: wait for Interrupt 等待中断,即下一次中断发生前都在此hold住不干活
54 }
55}
LITE_OS_SEC_TEXT_INIT UINT32 OsMain(VOID)
由汇编调用,鸿蒙C语言层级的入口点
Definition: los_config.c:186
STATIC INLINE UINT64 OsHwIDGet(VOID)
获取CPU硬件ID,每个CPU都有自己的唯一标识
Definition: los_hw_cpu.h:177
VOID OsSchedStart(VOID)
Definition: los_sched.c:294
signed int INT32
Definition: los_typedef.h:60
unsigned int UINT32
Definition: los_typedef.h:57
函数调用图: