0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

加载BIOS系统控制的流程

lhl545545 来源:Linux爱好者 作者:Linux爱好者 2020-06-05 12:52 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一、Linux开机流程:

加载BIOS系统控制的流程

BIOS

(Basic Input Output System)基本输入输出系统,它是一组固化到计算机内主板上一个ROM芯片 上的程序,保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序,可从CMOS中读写系统设置的具体信息。

MBR: Master Boot Record,主要引导记录区。

Boot Loader:启动引导程序。

二、详细流程

第一步:加载BIOS

打开计算机电源,计算机硬件会自动加载BIOS,读取BIOS内相关硬件信息及进行硬件系统的自检,随后根据BIOS配置找到第一个有引导程序的的设备。

第二步:读取MBR

硬盘上第0磁道第一个扇区被称为MBR,即主引导记录,大小是512字节,存放了预启动信息、分区表信息。系统找到BIOS所指定的硬盘的MBR后,就会将其复制到物理内存中,被复制到物理内存的内容就是Boot Loader(lilo或者grub)。

第三步:启动Boot Loader

Boot Loader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核做好一切准备。

Boot Loader有若干种,其中Grub、Lilo是常见的Loader。

本文以Grub为例讲解,grub功能:提供一个菜单,允许用户选择要启动的系统或不同的内核版本;把用户选定的内核装载到RAM中的特定空间中,解压、展开。

系统读取内存中的grub配置信息(一般为menu.lst或grub.conf),并依照此配置信息来加载指定内核。

加载BIOS系统控制的流程

第四步:加载内核

grub把系统控制权移交给内核,内核开始探测可识别到的所有硬件设备及尝试挂载根目录以获取其驱动程序。此时就需要首先加载磁盘驱动程序以便读取磁盘,而磁盘驱动程序又保存在磁盘内,这样就会导致linux无法启动。此时需要通过伪文件系统来解决这一问题。

虚拟文件系统 (Initial RAM Disk) 即/boot/initramfs-release.img ,这个文件的特色是,能够通过boot loader 来加载到内存中, 然后这个文件会被解压缩并且在内存当中模拟成一个根目录,且此模拟在内存当中的文件系统能够提供一支可运行的程序,透过该程序来加载启动过程中所最需要的核心模块,通常这些模块就是 U盘, RAID, LVM, SCSI 等文件系统与磁盘的驱动程序。等加载完成后, 会帮助核心重新呼叫 /sbin/init 来开始后续的正常启动流程。

注:RamDisk是辅助性文件,并非必须,取决于内核是否能直接驱动根文件系统所在的设备。

加载BIOS系统控制的流程

第五步:运行/sbin/init程序,设定linux的运行等级

内核加载完毕后,运行用户空间内第一个应用程序就是/sbin/init,然后读取/etc/inttab文件,依据文件配置设定系统运行等级;

加载BIOS系统控制的流程

第六步:init进程执行rc.sysinit

设定了运行等级后,Linux系统执行/etc/rc.d/rc.sysinit系统初始化脚本程序。初始化包括:设置主机名、设置欢迎信息、激活Udex和seliux、挂载/etc/fstab文件中定义的所有文件系统、检测根文件系统、设置系统时钟、根据/etc/sysctl.conf文件来设置内核参数、激活LVM及软RAID设备、激活swap设备、加载额外设备的驱动程序、执行清理操作。

第七步:启动内核模块

具体是依据/etc/sysconfig/modules文件目录下的文件来装载内核模块。

第八步:执行 run-level 的各个服务启动 (script 方式)

根据运行级别的不同,系统会运行rc0.d到rc6.d中的相应的脚本程序,来完成相应的初始化工作和启动相应的服务。

加载BIOS系统控制的流程

第九步:执行/etc/rc.d/rc.local

rc.local就是在一切初始化工作后,Linux留给用户进行个性化的地方。你可以把你想设置和启动的东西放到这里。

加载BIOS系统控制的流程

第十步:执行/bin/login程序,进入登录状态

Linux 就会启动终端机或者是 X Window 来等待使用者登陆。

加载BIOS系统控制的流程

责任编辑:pj

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • BIOS
    +关注

    关注

    6

    文章

    474

    浏览量

    48860
  • 设备
    +关注

    关注

    2

    文章

    4899

    浏览量

    73918
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    变天了!中国有了自己的BIOS

    电子发烧友网报道(文/黄山明)BIOS(Basic Input/Output System)作为计算机启动和运行过程中至关重要的固件,可以被认为是计算机启动的“基石”,它在计算机硬件和操作系统之间
    的头像 发表于 10-23 08:58 9849次阅读

    深入解析L9524C:柴油发动机预热塞系统控制IC的卓越之选

    深入解析L9524C:柴油发动机预热塞系统控制IC的卓越之选 在柴油发动机的世界里,预热塞系统对于冷启动起着至关重要的作用。而L9524C作为一款专门用于控制柴油发动机预热塞的集成电路,凭借其丰富
    的头像 发表于 03-30 15:10 211次阅读

    探索DS1670便携式系统控制器:功能、特性与应用全解析

    探索DS1670便携式系统控制器:功能、特性与应用全解析 引言 在当今的电子设备设计中,低功耗便携式产品的需求日益增长。为了满足这些产品对多功能集成的要求,DALLAS MAXIM推出了DS1670
    的头像 发表于 03-24 15:30 214次阅读

    探索DS1673便携式系统控制器:低功耗便携产品的理想选择

    探索DS1673便携式系统控制器:低功耗便携产品的理想选择 在电子工程师的世界里,为低功耗便携式产品寻找合适的系统控制器是一项重要任务。DALLAS MAXIM的DS1673便携式系统控制器,凭借其
    的头像 发表于 03-24 15:25 219次阅读

    UCD9240数字PWM系统控制器:功能特性与应用解析

    UCD9240数字PWM系统控制器:功能特性与应用解析 在电子设计领域,电源管理一直是至关重要的环节。一款性能卓越的电源控制器能够显著提升电源系统的稳定性、效率和可靠性。德州仪器(TI)推出
    的头像 发表于 02-27 16:10 314次阅读

    RDMA设计7:系统控制模块设计

    专注高性能存储与传输,希望对初学者有用。注意这里只是抛砖引玉,切莫认为参考这就可以完成商用IP设计。 系统控制模块负责实现 RoCE v2 高速数据传输系统的功能控制,其构成如图 1所示,包括
    发表于 11-27 08:34

    无法进入BIOS/UEFI设置界面是什么原因?

    无论是想修改启动顺序、调整硬件参数,还是排查硬件故障,进入 BIOS/UEFI设置界面都是关键一步。但很多人会遇到“按快捷键没反应”“电脑直接进系统”的问题,甚至误以为是硬件坏了。其实,无法进入
    的头像 发表于 09-22 18:01 9556次阅读
    无法进入<b class='flag-5'>BIOS</b>/UEFI设置界面是什么原因?

    BIOS POST CODE资料简介

    BIOS POST CODE主板上电过程,BIOS自检全过程,内部绝密资料
    发表于 08-25 16:06 0次下载

    NVMe高速传输之摆脱XDMA设计之七:系统初始化

    , 在系统复位退出后 1 秒时如果 LinkUp 信号仍为低电平, 则断言为链路训练失败, 初始化流程终止。 如果 LinkUp 为高电平, 此时用户可通过系统控制模块启动 PCIe 初始化,进入
    发表于 07-04 09:14

    NVMe IP高速传输摆脱XDMA设计之四:系统控制模块设计

    系统控制模块负责实现 NVMe over PCI 逻辑加速引擎的控制功能, 其结构如图 1 所示。 用户通过系统控制模块实现对初始化功能、 队列管理功能、 DMA 功能等主要功能的控制
    发表于 06-29 18:07

    NVMe IP高速传输却不依赖XDMA设计之四:系统控制模块

    系统控制模块负责实现 NVMe over PCI 逻辑加速引擎的控制功能, 其结构如图 1 所示。 用户通过系统控制模块实现对初始化功能、 队列管理功能、 DMA 功能等主要功能的控制
    的头像 发表于 06-29 17:52 663次阅读
    NVMe IP高速传输却不依赖XDMA设计之四:<b class='flag-5'>系统控制</b>模块

    无电解电容逆变器永磁同步电机驱动系统控制研究

    完整资料~~~ *附件:无电解电容逆变器永磁同步电机驱动系统控制研究.pdf 【免责声明】本文系网络转载,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请第一时间告知,删除内容,谢谢!
    发表于 06-25 12:33

    双电机同步驱动系统控制参数整定研究

    系统进行建模后,首先采用传统遗传算法,对多通道多控制系统控制器参数进行整定;然后从系统整体性能的角度出发,利用带精英策略的非支配排序遗
    发表于 06-19 11:04

    绕线式异步电机双馈调速系统控制分析

    实验平台,实验结果验证了控制策略的可行性和有效性。 纯分享帖,需要者可点击附件免费获取完整资料~~~*附件:绕线式异步电机双馈调速系统控制分析.pdf【免责声明】本文系网络转载,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请第一时间告知,删除内容!
    发表于 06-12 13:43

    六相永磁同步电机串联系统控制的两种方法分析研究

    ,需要者可点击附件免费获取完整资料~~~*附件:六相永磁同步电机串联系统控制的两种方法分析研究.pdf【免责声明】本文系网络转载,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请第一时间告知,删除内容!
    发表于 06-10 13:09