linux系统启动过程

第一阶段:BIOS启动过程

1、对计算机硬件进行一系列的测试,通常称为加电自检。

2、初始化硬件设备,这对现代基于pci的体系结构是相当重要的,它可以保证所有的硬件设备不会引起IRQ线和I/O端口冲突。

3、搜索一个操作系统启动。实际上,根据BIOS的设置,这个过程可能要试图访问系统中的引导扇区。

4、只要找到一个有效的设备,就把第一扇区的内容拷贝到RAM中从物理地址0x00007c00开始的位置,然后跳转到这个地址处,开始执行刚才装载来的代码。

第二阶段:引导装入程序

引导装入程序是由BIOS用来把操作系统的内核映像装载到RAM中所调用的一个程序。

第三阶段:setup函数

setup函数必须初始化计算机中的硬件设备,并未内核程序的执行建立环境。虽然BIOS已经初始化了大部分硬件设备,但是Linux并不依赖于BIOS,而是以自己的方式重新初始化设备以增强可移植性和健壮性。

第四阶段:startup_32函数

初始化寄存器和堆栈信息,为Linux第一个进程建立执行环境。

第五阶段:start_kernel函数

完成linux内核初始化工作,包括调度程序内存管理区 伙伴系统 异常处理  IDT 软中断 系统时间和日期 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值