开机流程:
计算机中有BIOS与CMOS两个东西, CMOS是记录各项硬件参数且嵌入在主板上面的储存器,BIOS则是一个写入到主板上的一个韧体( 韧体就是写入到硬件上的一个软件程序)。这个BIOS就是在启动的时候,计算机系统会主动运行的第一个程序了!
BIOS能够设置计算机中的硬件设备,咱们以硬盘为例,BIOS会依据使用者的配置去取得可以启动的硬盘,而且到该硬盘里面去读取第一个磁区的MBR位置。 MBR占据446bytes的硬盘容量,其中放置了引导加载程序,而接下来就是MBR内的引导加载程序的工做了。
引导加载程序的目的是加载内核文件,因为引导加载程序是操做系统在安装的时候所提供的,因此它认识硬盘内的文件系统格式,所以就可以读取内核文件,而后接下来就是内核文件的工做,操做系统也就成功启动!
流程简述:
BIOS ==> MBR ==> 引导加载程序 ==> 内核文件
一、BIOS:启动主动运行的韧体,会认识第一个可启动的装置。
二、MBR(主引导记录):第一个可启动装置的第一个磁区内的主要启动记录区块,内含启动管理程序。
三、启动管理程序(boot loader):可读取核心文件来运行的软件;grub(面向linux中)是最主流的boot loader。
四、核心文件:开始操做系统的功能。
MBR位于主引导扇区(即:0磁头0柱面的第一扇区),共有446bytes。
BIOS与MBR都是硬件自己会支持的功能,至于Boot loader则是操做系统安装在MBR或分区启动扇区上的一套软件。
Boot loader的主要任务:
一、提供菜单:用户能够选择不一样的开机选项,这也是多重引导的重要功能!
二、加载核心文件:直接指向可启动的程序区段开始操做系统。
三、转交给其余loader:将引导加载功能转交给其余loader负责。
引导加载程序装在启动扇区上能够实现“多重引导”的功能。
Boot loader的属性:
一、每一个分区都拥有本身的启动扇区(boot sector)
二、实际可启动的内核文件是放置到各分区里的。
三、boot loader只会认识本身的系统分区内的可启动内核文件,以及其余boot loader而已。
若是要安装多重启动, 最好先安装Windows再安装Linux(固然大牛反着来照样能够,可经过安装识别windows/linux的引导加载程序)
Linux在安装的时候,你能够选择将boot loader安装在MBR或分区的启动扇区,并且Linux的boot loader能够手动配置菜单,因此你能够在Linux的boot loader里面加入Windows启动的选项。
Windows在安装的时候,他的安装程序会主动的覆盖掉MBR以及本身所在分区的启动扇区, 并且它没有让咱们本身选择菜单的功能。
相关阅读:
Linux启动引导过程 grub和MBR http://www.linuxidc.com/Linux/2013-07/87923.htm
Linux 磁盘基本概念(磁盘、分区、MBR、GPT) http://www.linuxidc.com/Linux/2013-06/85717.htm
RHCE_RHEL6_124 U20.3 解决Grub问题,修复MBR http://www.linuxidc.com/Linux/2012-10/71871.htm
关于MBR, Grub 的几个问题 http://www.linuxidc.com/Linux/2011-07/39075.htm
Ubuntu更新致MBR破坏 误操做丢失分区表 http://www.linuxidc.com/Linux/2010-08/28043.htm
本篇文章来源于 Linux公社网站(www.linuxidc.com) 原文连接:http://www.linuxidc.com/Linux/2013-09/90295.htmlinux