📄 main.c.txt
字号:
any question,send email to netxiong@263.net
系统进行各项初始化的地方
(1):asmlinkage void __init start_kernel(void)
开始运行内核。
####
调用 softirq_init(); //在kernel/softirq.c中
softirq_vec[TASKLET_SOFTIRQ].XXXX
softirq_vec[HI_SOFTIRQ].XXXX
for (i=0; i<32; i++)
tasklet_init(bh_task_vec+i, bh_action, i);
调用sched_init(); //在kernel/sched.c中
init_bh(TQUEUE_BH, tqueue_bh);
init_bh(IMMEDIATE_BH, immediate_bh);
init_bh(TIMER_BH, run_all_timers)
***************************辅助函数***********************************
(1)static void __init do_initcalls(void)
call = &__initcall_start;
do {
(*call)();
call++;
} while (call < &__initcall_end);//将编译到系统中的所有标志为
//__init_call的函数执行一遍
**********************************************************************
***************************系统启动***********************************
(1)static void __init do_basic_setup(void)
……//调用各种XXX_init函数进行初始化
do_initcalls(); //很重要的一个函数,用来调用所有使用__init_call标志的
//函数,这就提供了一种初始化系统的方法。
**********************************************************************
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -