linux系统的开机流程

开机流程:

1)BIOS:开机主动运行的韧体。会认识第一个可开机设备。

2)MBR:第一个可开机设备的第一个扇区内的主引导分区块。当中包括引导载入程序。

3)引导载入程序:一支可读取内核文件来运行的软件,boot loader;

4)内核文件:開始操作系统功能。

CMOS与BIOS:

基本的功能为记录主板上面的重要參数。 包含系统时间、 CPU 电压不频率、各项设备癿 I/O 地址不 IRQ 等,因为这些数据的记录要花费电力。因此主板上面才有电池。 BIOS 为写入到主板上某一块 flash 或 EEPROM的程序,他能够在开机的时候运行,以载入
CMOS 其中的參数, 并尝试呼叫储存装置中的开机程序,进一步进入操作系统中。 BIOS 程序也能够改动 CMOS 中的数据, 每种主板呼叫 BIOS 设定程序的按键都不同。一般桌面计算机常见得是使用[del]按键进入 BIOS 设定画面。

MBR:

整颗磁盘的第一个扇区特别的重要。由于他记录了整颗磁盘的重要信息!

磁盘的第一个扇区主要记录了两个重要的信息。各自是:

?
主要启动记录区(Master Boot Record, MBR):能够安装开机管理程序的地方,有 446 bytes;

?
切割表(partition table):记录整颗硬盘切割的状态,有 64 bytes MBR 是很重要的,由于当系统在开机癿时候会主动去读取这个区块的内容,这样系统才会知道你癿程序放在哪里和该怎样进行开机。 假设你要安装多重引导的系统,MBR 这个区块的管理就很很的重要了!

boot
loader:

主要任务有底下这些项目:

?
提供选单:用户能够选择不同得开机项目,这也是多重引导的重要功能。

?
加载核心档案:直接指向可开机的程序区段来開始操作系统;

?
转交其它 loader:将开机管理功能转交给其它 loader 负责。上面前两点还easy理解,可是第三点非常有趣喔!

那表示你的计算机系统里面可能具有两个以上的开机管理程序呢。 有可能吗?我们的硬盘不是叧有一个 MBR 而已?是没错啦。可是开机管理程序除了能够安装在
MBR 之外, 还能够安装在每一个切割槽的启动扇区(boot sector)喔。切割槽还有各别的启劢扂区喔? 没错啊!这个特色就能造就『多重引导』得功能啊!我们举一个样例来说。如果你的个人计算机叧有一个硬盘,里面切成四个切割槽,当中第一、事切割槽分别安装了 Windows 及 Linux。 你要怎样在开机的时候选择用 Windows 还是
Linux 开机呢?如果MBR 内安装的是可同一时候认识 Windows/Linux 操作系统得开机管理程序, 那举整个流程能够图标如下:

在上图中我们能够发现,MBR 的开机管理程序提供两个选单。选单一(M1)能够直接载入 Windows 的核心档案来开机; 选单二(M2)则是将开机管理工作交给第二个切割槽的启劢扂区(boot
sector)。当使用者在开机的时候选择选单二时, 那么整个开机管理工作就会交给第二切割槽的开机管理程序了。 当第二个开机管理程序启动后,该开机管理程序内(上图中)仅有一个开机选单。因此就行使用 Linux 癿核心档案来开机啰。 这就是多重引导的工作情况啦。我们将上图作个总结:

?
每一个切割槽都拥有自己的启劢扂区(boot sector)

?
图中的系统槽为第一及第二切割槽。

?
实际可开机的核心档案是放置到各切割槽内的!

?
loader 叧会认识自己得系统槽内的可开机核心档案,以及其它 loader 而已;

?
loader 可直接挃向或者是间接将管理权转交给还有一个管理程序。

那如今请你想一想,为什举人家经常说:『 假设要安装多重引导, 最好先安装 Windows 再安装Linux』呢?这是由于:

?
Linux 在安装的时候,你能够选择将开机管理程序安装在 MBR 或各别切割槽的启动扇区, 并且Linux 的 loader 能够手动设定选单(就是上图的M1, M2...),所以你能够在 Linux 的 bootloader 里面增加 Windows 开机的选项。

?
Windows 在安装的时候,他的安装程序会主动的覆盖掉 MBR 以及自己所在切割槽的启动扇区。你没有选择的机会, 并且他没有让我们自己选择选单的功能。因此,假设先安装 Linux 再安装 Windows 的话。那 MBR 的开机管理程序就仅仅会有 Windows 的项目,而不会有 Linux 的项目 (由于原本在 MBR 内的 Linux
的开机管理程序就会被覆盖掉)。 那须要又一次安装 Linux 一次吗?当然不须要。你仅仅要用尽各种方法来处理 MBR 的内容就可以。 比如利用全中文癿spfdisk(http://spfdisk.sourceforge.net/)软件来安装认识
Windows/Linux 的管理程序, 也可以利用Linux 的救援模式来拯救 MBR 就可以。

时间: 2024-08-24 14:18:23

linux系统的开机流程的相关文章

Linux系统入门---开机启动流程

目录 Linux系统入门---开机启动流程 一.centos6 二.systemd管理进程 1.查看级别 三.centos7实践案例: 1.案例1:centos7系统,单用户修改root密码 案例2: 如果修改级别 案例3:救援模式 四.修改CentOS7网卡名称为eth0和eth1 1.环境准备 2.用命令配置网卡 方法1: 方法2: 3.系统基本环境优化 五.Systemd 进程管理 1.systemctl管理服务的启动.重启.停止.重载.查看状态等常用命令 2.systemctl设置服务开

0923------APUE 学习笔记----------Linux系统的启动流程

前言: 前天在看APUE的时候突然想到了这个问题,于是给自己科普一下Linux系统的启动流程. 1.加载BIOS 接通电源后,计算机首先加载BIOS(即Basic Input-Output System,该程序被固化在主板上的一个ROM芯片中,包括最基本的输入输出程序.系统设置程序.开机硬件自检程序和系统自举程序等),进行硬件自检(即Power On Self Test)检查计算机硬件是否满足运行的基本条件(对于非严重故障,会发出一些声音,严重故障则会直接退出),硬件自检完成以后,BIOS根据C

查看linux系统的开机时间/重启历史记录

查看linux系统的开机时间/重启历史记录1.who -b命令[[email protected] opt]# who -b ---查看最后一次(上次)系统启动的时间 system boot Dec 27 05:06 2.who -r命令[[email protected] opt]# who -r ---查看最后一次(上次)系统启动的时间,及运行级别 run-level 5 Dec 27 05:06 3.last reboot命令 [[email protected] opt]# last r

【讲清楚,说明白!】 Linux系统应急响应流程

目录:(一)概述(二)识别现象(三)闭环兜底(四)打上常见Web漏洞补丁 (一)概述(1.1)Linux环境下处理应急响应事件往往更加棘手,因为相比于Windows系统,Linux没有像procexp这样的应急响应利器,也没有统一的应急响应处理流程.所以我们需要对流程进行梳理,系统化地处理Linux环境下的应急事件.(1.2)处理Linux应急响应主要分为4个环节:识别现象->清除病毒->闭环兜底->系统加固(1.3)首先从用户场景的主机异常现象触发,先识别出病毒的可疑现象.然后定位到具

[转] 浅谈Linux系统的启动流程

原文:http://blog.csdn.net/justdb/article/details/9621271 版权声明:本文为博主原创文章. Linux系统的启动时通过读取不同的配置文件,执行相应的Shell脚本完成的.当然本文只是简单的从文件的角度分析,更深层次的本文没涉及. 主要读取了以下文件: 1 /boot/grub/grub.conf 2 /etc/inittab 3 /etc/rc5.d(rc.d) 0-99 Seq 4 /etc/passwd (Login,input userna

linux系统下开机启动流程

在了解开机启动流程之前,还是得先了解一些磁盘的基本知识.磁盘主要由盘片,机械手臂,磁头,主轴马达构成.盘片就是存储数据的物理单位了.然后盘片上我们可以分成扇区(sector)和柱面(cylinder),每个扇区sector为512Bytes.如下图所示: 磁盘在分区完成之后,每个分区(文件系统)都有一个启动扇区(boot sector),而开机时用到的则是整个磁盘的第一个扇区,这个扇区非常主要,构成如下: (1)主引导分区(MBR)master boot record:446Bytes:系统安装

Linux系统从开机到正常提供服务的详细开机启动流程

1.BIOS加电自检,检测硬件,找到引导分区2.读取并执行MBR(主引导记录)的bootloader(grub程序)3.根据bootloader中的设备加载kernel,kernel会开始检测硬件与加载驱动/etc/grub.conf 就是bootloader中需要加载kernel的配置文件4.内核启动文件为:/sbin/init,主要是准备软件执行环境5.初始化系统/etc/init/rcS.conf 文件中执行/etc/rc.d/rc.sysinitrc.sysinit脚本的功能:主机名.挂

Linux系统的启动流程以及做个小小的Linux

内核的作用     进程管理:进程间切换     内存管理:内存空间分割为内核空间和用户空间     IO管理:对底层硬件的使用必须由内来实现,不能由用户空间进程来实现     文件系统管理     驱动程序管理     安全管理:包括netfilter模块和selinux模块等 内核的设计模式     单内核:模块都是集成在内核内部(Linux是单内核)     微内核:模块都是独立的,随用随加载(Windows是微内核)     Ps:1.linux是单内核,但是广泛采用了微内核的设计思想

Linux系统详细启动流程

第一阶段:BOIS(Basic Input Output System)初始化,如图1 首先加载的是BIOS ,通过bios程序去加载CMOS(用来保存BIOS的硬件配置和用户对某些参数的设定(如日期.时间.启动设置等)的芯片,是主板上的一块可读写的并行或串行FLASH芯片,是)的信息.取得cmos中的信息后,BIOS开始开机自检(POST),然后执行硬件的初始化,并设定Pnp(即插即用,U盘等)设备,再定义可以开机的设备顺序,接下来就是读取开机设备的数据(就是第一个开机设备内的第0个扇区内的M