Linux启动过程

Linux启动  开机执行bootloader程序  ->操作系统内核初始化->执行第一个程序
1.开机:给系统开始供电,硬件系统会产生一个确定的复位时序,保证cpu是最后一个复位.
2.cup复位后开始执行第一条指令,该指令所在的内存地址是固定的,这由cpu制造者确定的,这个固定的地址所保存的程序往往叫引导程序(bootloader),他的作用是装载真正的用户程序.装载的程序一定要提供以下几点信息  从哪里读取用户信息,用户的程序长度,装载完后应该跳到哪里,即用户程序的执行入口在哪里
3.执行内核程序,初始化各种硬件,包括内存,网络接口,显示器,输入输出设备然后建立内部各种机构体,这些结构体主要多线程调度及内存管理.
4.运行Home程序,所谓Home程序即是跟用户跟计算机交互的入口程序,window下即是图形化,linux即是terminal终端.

ARM处理器 复位后首先执行的是其片上ROM中的一小块程序,一般只有几KB,这段程序一般会根据处理器上一些特定引脚的高低点平选择从何种物理接口上装载用户程序,手机上多数是从NAND Flash芯片中的0x00000地址装载程序.android手机上该地址还不是android程序,而是一些uboot或
fastboot的程序,作用就是初始化网口等,并且提供一些调试功能,比如向NAND Flash中写入新的数据,这可以用来开发过程中的内核烧制,升级等.
内核被装载后就开始执行内核初始化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值