• 系统的启动流程


    学习链接:

    http://www.xuetangx.com/courses/course-v1:TsinghuaX+30240243X+sp/courseware/1d95cdf6f0e943448801e538b039300a/ffca4e1f29a145338461662b9b37fcf2/

    系统的启动大概流程:加电-->BIOS-->加载程序-->内核映像

    可以细分如下:

    CPU的初始化

    CPU加电稳定后从0xfffff0读第一条指令

      CS:IP = 0xf000:fff0

      第一条指令是跳转指令

    CPU初始化状态为16位实模式

      CS:IP是16位的寄存器

      指令指针PC=16*CS+IP

      最大地址空间是1M

    BIOS初始化过程

      硬件自检POST

      检测系统中内存和显卡等关键部件的存在和工作状态

      查找并执行显卡等接口卡BIOS,进行设备初始化

      执行系统的BIOS,进行系统检测

        检测和配置系统中安装的即插即用设备

      更新CMOS中的扩展系统配置数据ESCD

      按指定启动顺序从软盘、硬盘、或者光盘启动

    主引导记录MBR格式

      启动代码:446字节

        检查分区表正确性

        加载并跳转到磁盘上的引导程序

      硬盘分区表:64个字节

        描述分区状态和位置

        每个分区描述信息占据16个字节

      结束标志:2个字节(55AA)

        主引导记录的有效标志

    分区引导扇区格式

      跳转指令:跳转到启动代码

        与平台相关的代码

      文件卷头:文件系统描述信息

      启动代码:跳转到加载程序

      结束标志:55AA

     加载程序的细化

    系统启动规范

      BIOS

        固话到计算机主板上的程序

        包括系统设置,自检程序和系统自启动程序

        BIOS-MBR,BIOS-GPT,PXE

      UEFI

        接口标准

        在所有平台上一致的操作系统启动服务

  • 相关阅读:
    js-数组的原型拓展
    java-单例模式的java连接池
    java-基本数据类型值范围
    rabbitmq
    从哪跌倒从哪爬起,千里之行始于足下
    create python project steps
    常用代码片段
    shell脚本常用(记)
    shell学习
    maven工具使用
  • 原文地址:https://www.cnblogs.com/y15821933792/p/8934420.html
Copyright © 2020-2023  润新知