专用名词解释

  • BISO 基本输入输出系统(Basic Input/Output System),写死在电脑的主板上。
  • BCD 启动设置数据(Boot Configuration Data)
  • MBR 主引导记录(Master Boot Record),在磁盘第一个扇区。
  • PBR 分区引导记录(Partition Boot Record),在每个分区的的第一个扇区。
  • grub 常见的 linux 系统下的启动管理器。
  • bootmgr 常见的 window 系统下的启动管理器。

MBR结构

  • 第1-446字节:调用操作系统的机器码。
  • 第447-510字节:分区表(Partition table),总共64个字节。
  • 第511-512字节:主引导记录签名(0x55和0xAA)。

分区表结构:

  • 第1个字节:如果为0x80,就表示该主分区是激活分区,控制权要转交给这个分区。四个主分区里面只能有一个是激活的。
  • 第2-4个字节:主分区第一个扇区的物理位置(柱面、磁头、扇区号等等)。
  • 第5个字节:主分区类型。
  • 第 6-8个字节:主分区最后一个扇区的物理位置。
  • 第9-12字节:该主分区第一个扇区的逻辑地址。
  • 第13-16字节:主分区的扇区总数。

启动过程

  1. BISO 硬件自检,读取 BCD,根据设定好的顺序依次读取磁盘,直到找到启动磁盘(前512个字节以 0x55 和 0xAA 结尾的磁盘)。
  2. 读取启动磁盘的 MBR 找到活动分区,也就是安装操作系统的分区。
  3. 读取活动分区的 PBR 找到启动管理器。
  4. 启动管理器界面可以选择加载哪一个操作系统,并加载该系统的系统内核,然后系统的启动就和BISO没关系了。

参考文章:计算机是如何启动的?— 阮一峰

BISO 启动过程记录相关推荐

  1. BootLoader(U-Boot)启动过程记录

    BootLoader(U-Boot)启动过程记录 定义 Bootloader终极目的是引导内核,加载内核到内存然后跳转到内核的地方执行,在加载之前也会做一些硬件的初始化等等操作.启动模式分为两种:启动 ...

  2. x210 Uboot SD卡启动过程记录

     1.把uboot编译完之后,生成u-boot.bin文件之后,想要将它烧写到机器中去,但是发现一个问题,要使用什么方式烧录?网络下载或者fastboot指令下载?最后选择了相对简单的SD卡烧录. ...

  3. HP UNIX服务器引导启动过程记录

    hpserv:/etc/rc.config.d#shutdown -r -y SHUTDOWN PROGRAM 09/30/13 10:51:23 EAT Waiting a grace period ...

  4. Android Launcher启动过程

    开机启动概述: step 1: 上电开机 长按power键后引导芯片开始从固化在ROM的预设代码处执行,加载引导程序(BootLoader)到RAM. step 2: BootLoader启动 跳转到 ...

  5. Oracle数据库的启动过程和关闭模式

    一 启动数据库 Oracle启动过程涉及几种模式,这些模式涉及不同的文件,每个状态下数据库做不同的事情,同时这些模式适用于不同的维护需求,主要的模式有三种:NOMOUNT.MOUNT.OPEN. NO ...

  6. 【数据库】Oracle数据库的启动过程和关闭模式

    Oracle数据库的启动过程和关闭模式. 一 启动数据库 Oracle启动过程涉及几种模式,这些模式涉及不同的文件,每个状态下数据库做不同的事情,同时这些模式适用于不同的维护需求,主要的模式有三种:N ...

  7. kvm 监控内存,替换页表(linux版的win VT晶核)(这个整复杂了,不用小内核也可以实现,留着吧,主要记录了bootLoad的启动过程)

    kvm 监控内存,替换页表等问题 一.如何利用kvm 监控整个linux系统 不过kvm似乎只能监控自己的虚拟机,自己的主机监控不了.那么,只能利用kvm重新启动linux内核.kvm启动可以简化为小 ...

  8. 通过计算机的启动过程了解BIOS和UEFI

    本文属于学习笔记,如有侵权,请联系博主删除,如有错误之处也请多多指正,谢谢! 一.基本概念解释 说到计算机启动,绕不开的两个东西叫做BIOS和UEFI,BIOS 和 UEFI 都是计算机的固件类型.B ...

  9. linux启动sql server数据库,SQL Server数据库启动过程详解及启动不起来的问题分析及解决方法...

    第五步.启动系统数据库model model系统数据库同样也是SQL Server启动过程中用到的一个非常关键的数据库,如果这个库损坏,SQL Server启动也会失败,关于model数据不能启动的原 ...

最新文章

  1. Python通过代理多线程抓取图片
  2. php 数据库时间函数大全,PHP时间函数和SQL
  3. C#导出Excel总结
  4. 恶补各种知识(操作系统篇)
  5. The way of Webpack learning (IV.) -- Packaging CSS(打包css)
  6. asp.net单一登录
  7. java下拉模糊查询_select2 智能补全模糊查询select2的下拉选择框使用
  8. BZOJ 2754 喵星球上的点名(后缀数组)
  9. 分水岭算法(Watershed)
  10. vecm模型怎么写系数_时变秩和时变系数VECM模型与“费雪效应”机制检验
  11. i3wm开启自动设置显示器顺序方向分辨率
  12. 开发支付宝接口时的错误报告:openssl_sign(): supplied key param cannot be coerced into a private key【解决方法】
  13. 什么是配置文件,以及如何编辑它们?
  14. 华为社招机考考什么_牛客网-华为-2020届校园招聘上机考试-软件类机考-3
  15. 云南省科协第十届学术年会在曲靖开幕
  16. 编程培训怎么样 哪家编程培训机构靠谱
  17. MySQL 的查询优化
  18. python微博评论情感分析_Python采集微博热评进行情感分析祝你狗年脱单
  19. Navicat 连接 MySql 报错2059时的解决方法
  20. cudnn下载解压后的文件应该放到CUDA文件中的位置

热门文章

  1. 基于Java珠宝首饰交易平台设计实现(源码+lw+部署文档+讲解等)
  2. 论文笔记|Self-Supervised Test-Time Learning for Reading Comprehension
  3. 警惕:北大清华新国宝帮的崛起
  4. 怎样用jupyter运行py文件?
  5. 剑指offer 27 二叉树的镜像
  6. 高大上技术之sql解析
  7. The Mamba Mentality
  8. Linux 基础命令 -- su
  9. linux的环境变量设置
  10. 机器学习-神经元网络