BIOS 如何确定引导扇区的位置

机械硬盘的信息都是存储在磁盘的表面,他们是由一圈一圈的磁道组成的。以前的磁盘的不同磁道的扇区数量是相同的,这就导致了很大的浪费,因为最外面的磁道的密度是最低的,信息是最安全的,所以最外面的磁道是0磁道。后来由于技术的改进,外面磁道的扇区数量就比里面扇区数量多,但是由于历史原因,最外面的磁道仍然是0磁道。而MBR(主引导记录)就是在磁盘的第一个物理扇区上。在传统的硬盘驱动器中,一个扇区的大小是512字节,而现代的硬盘驱动器和固态硬盘通常采用4KB的大小。

上面是背景信息,那么BIOS又是如何找到引导程序的呢?

1、主引导记录(Master Boot Record, MBR): MBR是硬盘的第一个物理扇区,位于磁盘的起始位置。它包含引导代码和分区表。BIOS会加载MBR中的引导代码,然后由引导代码来加载操作系统。

2、INT 13h中断: BIOS通过使用INT 13h中断来与硬盘进行交互。INT 13h提供了一组功能调用,用于读取和写入硬盘扇区。通过使用INT 13h中断, BIOS可以读取硬盘的MBR和分区表信息,从而确定引导扇区的位置。

3、活动分区:MBR中的分区表记录了硬盘上的分区信息,包括每个分区的起始扇区和大小。BIOS会查找活动分区,这是一个被标记为可引导的主分区。BIOS将加载活动分区的引导扇区,从而启动操作系统。

相关推荐
顺顺 尼10 小时前
linux 进程信号(上)
linux·c++·算法
niuTaylor11 小时前
飞腾 FT-2000/4 Ubuntu 内存卡 / NVMe SSD 系统制作完整指南
linux·服务器·人工智能·驱动开发·单片机
傲世仙尊12 小时前
信号量环形队列与线程池起步-把临界资源拆成很多份
linux
Huangjin007_12 小时前
【Linux 系统篇(二十五)】文件(二) 系统文件I/O详解
linux·运维·服务器
ShineWinsu12 小时前
对于ProtoBuffer:ProtoBuffer的介绍以及安装
linux·网络·google·协议·序列化·反序列化·protobuffer
FlightYe13 小时前
视界原理之2D视频(二):视频文件里有什么
android·linux·网络·c++·ffmpeg·音视频·aac
GeW15 小时前
从代码到共识:技术突围如何映照大国相处之道
linux
承渊政道15 小时前
Linux系统学习【进程信号详细解析——认识、产生、保存以及捕捉信号】
linux·学习·ubuntu·ssh·vs code·进程信号
硅基手札15 小时前
【linux内核专栏01】Linux 内核心智模型与设计哲学
linux·运维·驱动开发·开源软件
码完就睡16 小时前
Linux——socket网络编程
linux·运维·网络