美文网首页
浅析Linux操作系统之奥秘(BIOS)

浅析Linux操作系统之奥秘(BIOS)

作者: 明白已晚 | 来源:发表于2018-10-01 16:53 被阅读24次

    1.BIOS

    【Basic Input Output Sysytem】是一个小型的管理系统,是计算机主板上第一个运行的软件,主要的功能是初始化各组件,检测硬件,分配资源以及加载系统。

    2.北桥、南桥 , flash memory CMOS SMBIOS

    北桥主要控制cpu和内存
    南桥主要负责PCI usb VGA等所有外围设备
    南桥中有个特殊区块,叫CMOS,是BIOS用来 存储用户设置的地方,纽扣电池供电,保存资料
    启动BIOS时,会自动读取cmos的用户资料,一致的话,将用户信息和硬件信息写入SMABIOS。
    错误的话会以默认 的值代替这些资料,整理成表格写入SMBIOS中。


    BIOS.png

    3.BIOS的作用:

    *.自动检测并初始化:BIOS在开机的同时,会先对主板上的所有芯片进行检测,并通知个芯片开始运行
    *.记录系统设置值:用户可以通过设置BIOS来改变各种不同的设置,比如onboard显卡的内存的大小
    *.中断处理:主板上的任何资源都是BIOS分配的,包括IRQ,也就是所有的AGP/PCI/PCI-E槽所需要被赋予珍贵资源
    *.加载操作系统:用户手上所有的操作系统,都是由BIOS转交给扇区,再由引导扇区转到各分区激活相应的操作系统的

    BIOS激活流程

    post(power on self test):

    主要检测硬件的状态以及CMOS中的设置

    image.png

    post过程检测硬盘至少包含下列几项
    1.CPU:列出CPU 中的基本信息。如速度 、Cache大小
    2.RAM:检查内存的大小,以及有无损坏
    3.HDD:以排线所接的顺序依次列出
    4.CDROM:和硬盘一样,会以排线所接的顺序依次列出


    image.png

    4.MBR(硬盘的主引导扇区Master Boot Record)

    BIOS退居幕后的办法,就是将加载操作系统的控制权交给硬盘内的主引导扇区
    MRB大小也就是512Byte
    主要分为Bootloader (446)、 Parttition table(64) 、Magic Number(2 Byte “55AA”)


    MRB.png

    Bootloader 是MBR用来存储开机管理程序的位置,在Bootloader之中的管理程序,也存放到每一个分区的boot sector 中。
    俩个功能:加载扇区和指向kernel

    加载扇区
    MBR将磁盘分为好多个分区,如何划分都在Partition Table的字段中,而每个分区的第一扇区称为引导扇区(boot sector),也就是存放操作系统产生bootloader的地方。
    加载kernel
    加载,就是直接通过分区及设置文件的资料,找到某一个分区上指定的kernel文件。硬盘区分为两大块,依次为“MBR”,“分区”,分区中又细分为boot sector 及实际存取data部分。

    加载扇区.png
    grub.png
    image.png
    image.png
    image.png

    Bootloader是嵌入式系统在加电后执行的第一段代码,在它完成CPU和相关硬件的初始化之后,再将操作系统映像或固化的嵌入式应用程序装在到内存中然后跳转到操作系统所在的空间,启动操作系统运行。BootLoader是在操作系统内核运行之前运行。可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境。

    相关文章

      网友评论

          本文标题:浅析Linux操作系统之奥秘(BIOS)

          本文链接:https://www.haomeiwen.com/subject/hhvwoftx.html