BIOS+MBR操作系统引导方式
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操作系统引导方式的更多相关文章
- (2)打造简单OS-开机BIOS初始化与MBR操作系统引导详解
================大概了解即可=============== 1.BIOS的工作: 我们的计算机在开机之前,它是一个纯硬件的机器,但是从按下开机按钮的那一刻起,ROM上的固化程序就开始为 ...
- BIOS + MBR > UEFI + GPT
BIOS + MBR > UEFI + GPT硬件接口系统与磁盘分区UEFI用于取代老旧的BIOS,而GPT则取代老旧的MBR. 名词解释: BIOS (Basic Input/Output S ...
- BIOS/MBR UEFI/GPT关系与区别-资料整理
---恢复内容开始--- 关于 BIOS/MBR UEFI/GPT他们之间的关系一直比较疑惑, 首先一点前提 BIOS UEFI 是一类,是控制硬件,引导启动的:MBR GPT是硬盘的分区定义.. 后 ...
- MBR主引导扇区解析
最近在制作镜像的时候由于需要简单研究了下MBR主引导扇区的结构,这里记录下便于后期温习,下面就直接进入正题: MBR主引导扇区位于磁盘的第一个扇区,即0号扇区,主要由引导代码.分区表.结束标志三部分构 ...
- BIOS+MBR模式 VS UEFI+GPT模式
EFI与MBR启动的区别 大硬盘和WIN8系统,让我们从传统的BIOS+MBR模式升级到UEFI+GPT模式,现在购买的主流电脑,都是预装WIN8系统,为了更好的支持2TB硬盘 ,更快速的启动win ...
- thinkpad开机引导方式变成PCI LAN选项解决
问题:开机的引导方式变成[PCI LAN],并且前面有一个小箭头,无法正常启动加载.在BIOS中重置调整启动顺序也无法解决.无法进入U盘启动盘 1.首先开机按F12进入BIOS,选择 APP Menu ...
- 国产芯片任重道远 国科微SSD主控芯片的“追赶之路”(不能只提供一颗芯片,而是要将芯片、国密算法、固件Firmware、BIOS和操作系统紧密联系在一起,变成完整解决方案交给行业用户,才能真正体现自身的价值)
集微网消息,“中国芯”战略之路道阻且长,踏入这个赛道的攻坚者们需要十年如一日的技术突破,需要集合产业势能,共同协作,方能建立中国核心技术真正的竞争力. 国产化之路任重道远,SSD芯片初见成效 信息时代 ...
- Windows忘记BIOS密码/操作系统密码处理办法汇总
一.说明 关于电脑,在大学之前是知之甚少的.举几个例子,一是刚上大学时我还是分不清主机和显示器哪个才是电脑:二是应该是大一上学期陪窒友Z到电科买电脑,我问导购员XP和Win7什么关系----我一直怀疑 ...
- Thinkpad X240修改bios引导方式
来源:http://blog.csdn.net/jsship/article/details/19121149 修改笔记本的BIOS设置!这是非常重要的步骤之一.否则,你的U盘不能引导手提电脑进入PE ...
随机推荐
- ubuntu18.04安装flat-remix-gnome主题
flat-remix-gnome主题的github地址:https://github.com/daniruiz/flat-remix-gnome ubuntu下进行如下操作: sudo add-apt ...
- Data - 深入浅出学统计 - 上篇
本文是已读书籍的内容摘要,少部分有轻微改动,但不影响原文表达. :以漫画形式来讲解最基本的统计概念和方法. ISBN: 9787121299636 https://book.douban.com/su ...
- VUE 多页面打包webpack配置
思路:多配置一个main的文件,用于webpack入口使用, 然后路由的导向也应该默认指向新组件,最后通过webpack构建出一个新的独立的html文件. 缺点:生成多个html会new出多个vu ...
- mysql数据表的编辑
创建数据表 create table [if not exists] 表名(字段列表, [约束或索引列表]) [表选项列表]; 删除数据表 drop table [if exists] ...
- LeetCode 144. 二叉树的前序遍历(Binary Tree Preorder Traversal)
144. 二叉树的前序遍历 144. Binary Tree Preorder Traversal 题目描述 给定一个二叉树,返回它的 前序 遍历. LeetCode144. Binary Tree ...
- LeetCode 189. 旋转数组(Rotate Array)
189. 旋转数组 LeetCode189. Rotate Array 题目描述 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: [1,2,3,4,5,6, ...
- Generative Adversarial Network (GAN) - Pytorch版
import os import torch import torchvision import torch.nn as nn from torchvision import transforms f ...
- 修改Linux服务器中的MySql密码
1.可以直接在数据库中修改,因为知道root密码,所以直接登录 mysql -uroot -p 2.查看一下数据库,修改root密码需要使用如下图所示的mysql数据库 3.通过use mysql指明 ...
- 多线程(11) — NIO
Java NIO是new IO的简称,是一种可以替代Java IO的一套新的IO机制.它提供了一套不同于Java标准IO的操作机制,严格来说,NIO与并发并无直接关系,但是使用NIO技术可以大大提高线 ...
- Java基础笔试练习(六)
1.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数.类型或顺序各不相同,传回的值也可以不相同.这种面向对象程序的特性称为? A.隐藏 B.覆盖 C.重载 D.Java不支持此特性 ...