学习linux的成长之路 ------linux系统启动流程梳理

学习linux的成长之路 ------linux系统启动流程梳理

	我是因为工作原因自己开始学习linux,自学的话很慢,而且自己时间也比较零碎,所以就显得更加的缓慢,好长时间才看完linux系统开机启动流程,同时通过简单的查看内核源码了解内核初始化过程,下面是我学习的一点总结,希望能够帮助到你。同时,我自己也是初学者,如果有不对的地方,请各位大佬耐心指出,谢谢!
	PS:我说一下我自己看的linux相关的书籍:
		1)《鸟哥的linux私房菜第四版》(感觉入门的话有这本书就够了)
		2)《linux内核修炼之道 任桥伟》 (我刚开始看,还没有多大感觉,只是看了一个开头)
		再说一下,看书的时候,一般介绍内核的书籍都会附上内核源码进行解释,有些书籍的内核源码版本可能比较老,所以和你在网站(www.kernel.org)上下载的内核源码不匹配,解决的方法一般要么你找到书上对应版本的源码,要么你根据自己在书上获得的线索,自行在源码中查看对应的实现流程。

linux开机启动总体流程

	下面这一部分是我自己对linux启动流程的总体认识(当然是根据书里面写的东西理解以后得出的,毕竟我还没有找到办法打印出来linux启动的时候对应的启动日志来查看相应的流程),和一般的系统启动很相似。
	linux系统开机总体流程如下:
	s1:CPU加载BIOS程序开始运行;
	s2:通过BIOS程序加载linux内核引导程序;
	s3:通过内核引导程序加载内核压缩文件;
	s4:解压内核压缩文件;
	s5:开始内核初始化,一般是从asmlinkage __visible void __init start_kernel(void)(在内核源码的5.0.2版本里面可以找到,我是通过source insight工具找到的)接口开始的,这个时候才开始进行c语言代码的执行,上面几步基本上都是执行的汇编语句;
	s6:系统启动;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值