1. 主引导记录(Master Boot Record,缩写:MBR)

主引导记录又叫做主引导扇区,是计算机开机后启动操作系统时所必须要读取的硬盘首个扇区,它在硬盘上的三维地址为(柱面,磁头,扇区)=(0,0,1)。主引导记录由3个部分组成,起始446个字节区域为“主引导记录”;之后16×4=64字节区域为分区表;最后2个字节区域为结束标志字。各部分的详细描述如下:

1.1 主引导记录

主引导记录是启动操作系统第一阶段的引导代码,主要作用是检查分区表是否正确,然后加载引导程序并且将控制权移交给引导程序。

1.2 硬盘分区表

分区表记录硬盘的分区信息,含4个表项,每个表项16字节,表项结构组成如表2。注意第1个字节会标志分区是否为活动分区,活动分区表示系统可引导。MBR分区方式,支持最多4个主分区,每个分区最大可支持硬盘空间为2TB。理由是分区表仅有4个表项,每个16字节的表项中仅有4个字节记录该分区的扇区总数。

表2 硬盘分区结构信息

偏移 长度(字节) 意义
00H 1 分区状态:00-->非活动分区;80-->活动分区;其它数值没有意义
01H 1 分区起始磁头号(HEAD),用到全部8位
02H 2 分区起始扇区号(SECTOR),占据02H的位0-5;该分区的起始磁柱号(CYLINDER),占据02H的位6-7和03H的全部8位
04H 1 文件系统标志位
05H 1 分区结束磁头号(HEAD),用到全部8位
06H 2 分区结束扇区号(SECTOR),占据06H的位0-5;该分区的结束磁柱号(CYLINDER),占据06H的位6-7和07H的全部8位
08H 4 分区起始相对扇区号
0CH 4 分区总的扇区数
1.3 结束标志字

结束标志字标志主引导记录是否有效,若为55AA,则表示当前硬盘为可启动设备。

2. 分区引导记录(Paritition Boot Record,缩写:PBR)

分区引导记录用于安装具体操作系统操作相关的引导程序,此处安装的引导程序需要能够识别具体操作系统的文件格式并正确加载操作系统的核心到内存中运行。

3. MBR分区下的操作系统引导流程

MBR分区方式下操作系统引导的一般流程:
3.1 计算机上电后,BIOS(Basic Input Output system)进行硬件检测与初始化,硬件正常则读取可启动设备(经BIOS设置的优先级最高的可启动设备)的主引导记录,将控制权移交给安装在MBR中的引导程序。
3.2 第一阶段的引导程序检查分区表,发现可引导的分区,加载分区引导记录并将控制权移交给系统引导程序。
3.3 系统引导程序加载操作系统核心至内存,将CPU控制权交给操作系统,至此,完成操作系统引导过程。

参考资料

[1] 鸟哥的linux私房菜.基础学习篇.第四版
[2] 维基百科.主引导记录
[3] 百度百科.分区引导记录

BIOS+MBR操作系统引导方式的更多相关文章

  1. (2)打造简单OS-开机BIOS初始化与MBR操作系统引导详解

    ================大概了解即可=============== 1.BIOS的工作: 我们的计算机在开机之前,它是一个纯硬件的机器,但是从按下开机按钮的那一刻起,ROM上的固化程序就开始为 ...

  2. BIOS + MBR > UEFI + GPT

    BIOS + MBR > UEFI + GPT硬件接口系统与磁盘分区UEFI用于取代老旧的BIOS,而GPT则取代老旧的MBR. 名词解释: BIOS (Basic Input/Output S ...

  3. BIOS/MBR UEFI/GPT关系与区别-资料整理

    ---恢复内容开始--- 关于 BIOS/MBR UEFI/GPT他们之间的关系一直比较疑惑, 首先一点前提 BIOS UEFI 是一类,是控制硬件,引导启动的:MBR GPT是硬盘的分区定义.. 后 ...

  4. MBR主引导扇区解析

    最近在制作镜像的时候由于需要简单研究了下MBR主引导扇区的结构,这里记录下便于后期温习,下面就直接进入正题: MBR主引导扇区位于磁盘的第一个扇区,即0号扇区,主要由引导代码.分区表.结束标志三部分构 ...

  5. BIOS+MBR模式 VS UEFI+GPT模式

     EFI与MBR启动的区别 大硬盘和WIN8系统,让我们从传统的BIOS+MBR模式升级到UEFI+GPT模式,现在购买的主流电脑,都是预装WIN8系统,为了更好的支持2TB硬盘 ,更快速的启动win ...

  6. thinkpad开机引导方式变成PCI LAN选项解决

    问题:开机的引导方式变成[PCI LAN],并且前面有一个小箭头,无法正常启动加载.在BIOS中重置调整启动顺序也无法解决.无法进入U盘启动盘 1.首先开机按F12进入BIOS,选择 APP Menu ...

  7. 国产芯片任重道远 国科微SSD主控芯片的“追赶之路”(不能只提供一颗芯片,而是要将芯片、国密算法、固件Firmware、BIOS和操作系统紧密联系在一起,变成完整解决方案交给行业用户,才能真正体现自身的价值)

    集微网消息,“中国芯”战略之路道阻且长,踏入这个赛道的攻坚者们需要十年如一日的技术突破,需要集合产业势能,共同协作,方能建立中国核心技术真正的竞争力. 国产化之路任重道远,SSD芯片初见成效 信息时代 ...

  8. Windows忘记BIOS密码/操作系统密码处理办法汇总

    一.说明 关于电脑,在大学之前是知之甚少的.举几个例子,一是刚上大学时我还是分不清主机和显示器哪个才是电脑:二是应该是大一上学期陪窒友Z到电科买电脑,我问导购员XP和Win7什么关系----我一直怀疑 ...

  9. Thinkpad X240修改bios引导方式

    来源:http://blog.csdn.net/jsship/article/details/19121149 修改笔记本的BIOS设置!这是非常重要的步骤之一.否则,你的U盘不能引导手提电脑进入PE ...

随机推荐

  1. Swift4.0复习特性、编译标志和检查API的可用性

    1.Swift中的特性: @引出,后面紧跟特性名,圆括号带参数即可. @attribute(args) avaiable: 指明对象,函数,类型的可用性. @available(iOS 10.0, m ...

  2. TestCase--网站创建新用户管理模块

    对于web测试,用户权限管理模块是必测的一个点,所以今天就来总结一下创建新用户管理模块的测试用例 参考图如下: 测试用例设计如下: 一.功能测试 1.  什么都不输入,单击“立即提交”,页面是否有提示 ...

  3. 修改config中的assemblyBinding

    修改config中的assemblyBinding 未测试这段代码 private void SetRuntimeBinding(string path, string value) { XmlDoc ...

  4. iOS 获取设备的唯一标识

    有时候,我们需要记录一下设备的唯一标识,比如标识这个设备是不是已经发过促销券了或者是否下载试用过app等等.最简单 的方法就是获取设备的UDID#[UIDevice currentDevice] un ...

  5. console.log()和alert()的区别

    一直都是知道console.log()和alert()是有区别的,但是具体有什么区别就不清楚了,后来在权威指南里注意到了说alert()具有侵入性才来查一查两者的具体区别. 查询到的区别: alert ...

  6. js控制数量包含截取

    <div class="usermes_index_line"> 进行中的单 <div id="usermes_index_line_i2"& ...

  7. 032 Android Service

    1.介绍 2.新建Service (1) (2)在Androidmanifest.xml文件中配置service <service android:name=".Myservice&q ...

  8. [转帖]是什么阻止了在18寸(450mm)晶圆上生产芯片?

    是什么阻止了在18寸(450mm)晶圆上生产芯片? https://news.cnblogs.com/n/644247/ 投递人 itwriter 发布于 2019-10-16 14:32 评论(0) ...

  9. 利用Python进行数据分析 第6章 数据加载、存储与文件格式(2)

    6.2 二进制数据格式 实现数据的高效二进制格式存储最简单的办法之一,是使用Python内置的pickle序列化. pandas对象都有一个用于将数据以pickle格式保存到磁盘上的to_pickle ...

  10. 案例(1)-- OOM异常

    问题描述: 1.系统在执行某个操作时,必现OOM异常. 问题的定位: 1.排查代码,未发现问题. 2.在虚拟机启动时,添加参数:-XX:+HeapDumpOnOutOfMemoryError(当发生o ...