对于计算机来讲,他是如何启动的,这个总是感觉有点神秘。
首先,先了解下相关的概念:
硬盘的组成:硬盘是由多个扇区和多个柱面组成的。对于硬盘,扇区是很总要的,其中第一扇区最重要,
这部分存储了2个重要信息:主引导分区,分区表。
主引导分区:又称(MBR)他是引导加载程序的地方(即加载内核),大小为446字。
分区表: 这是记载整块硬盘分区的状态,大小为(64字节)。他由四部分组成,每部分记录了描述这块分区的基本信息,大小为16字节。(额外说下,这也是为什么硬盘挂载时候,/dev/sba1--4是留给主分区和扩展分区的,而逻辑分区则是要从/dev/sba5 开始的,不管主分区和扩展分区有没有4快)。
BIOS:很多时候我们要进入BIOS,进行开机启动的相关内容的设置,这个一个写到主板上的程序。
接下来说Linux系统的启动流程:
电脑启动后,首先读取主板的程序,也就是BIOS ,他会读取用户设置的相关信息,然后读取相关设备的存储设备,比如硬盘,则读取第一扇区的内容(MBR),这时候BIOS结束,将接力棒交给MBR,MBR的主要功能是加载内核文件,而实现这个功能是MBR中一个短小经悍的程序(boot loader),因为他是在系统安装时候所提的,所以能识别硬盘中的内核文件的文件格式。接下来就是内核文件的事情了,他将完成加载操作系统的任务。
流程图:
电脑电源启动------->BIOS-------->MBR(boot loader)-------> 内核文件-------->其他软件
补充:boot loader 有主要有以下任务
1. 提供菜单,如果是多系统的话,他将提供不同的选项,这也是多重引导的重要功能。
2. 加载内核文件。
3. 转交其他的loader,如果有多个loader,他将引导加载程序交给其他loader负责。
阅读(1825) | 评论(0) | 转发(0) |