linux init_task 的初始化
日期 |
内核版本 |
架构 |
作者 |
2017-03-17 |
arm |
前言:
Init_task 是系统的0号进程,又称swapper进程,又称idle任务。它是所有进程、线程的祖宗,包括1号进程init,2号内核线程kthreadd。
Init_task的栈针sp:
进入start_kernel,可以说就已经运行在init_task的上下文了,因为此时栈针sp已经指向init_task的栈了。
Init_task的栈:
linux/arch/arm/kernel/init_task.c中:
structtask_struct init_task = INIT_TASK(init_task);
unionthread_union init_thread_union __init_task_data =
{ INIT_THREAD_INFO(init_task) };
init_thread_union即为init_tas