linux内核--初始化程序

来源:互联网 发布:大麦户源码php 编辑:程序博客网 时间:2024/04/29 09:44

初始化程序的主要内容和步骤:

1、确定如何分配使用系统物理内存;

2、调用内核各部分初始化函数;

      ①、内存管理

      ②、中断处理

      ③、块设备初始化

      ④、字符设备初始化

      ⑤、进程管理

      ⑥、硬盘初始化

      ⑦、软盘初始化

3、程序“手工”移动到任务0(进程0),fork()调用首次创建进程1(init进程);

4、init进程进行应用环境的初始化并执行shell登陆;

5、进程0在空闲时被调度执行,然后任务0执行pause()并再次调用调度函数;

 

PS:其中为了fork首次创建新进程(进程1)时用户态堆栈没有进程0的多余信息,要求进程0创建进程1前不使用用户态堆栈,因此任务0中不能用函数调用,结果fork()、pause()等申明为Gcc内嵌函数。

原创粉丝点击