MBR初识

mbr位置:位与0磁道,0磁头,1扇区。

为什么是1扇区呢,因为扇区的编号是从1开始计算的,mbr就是硬盘的前512字节.0磁道也就是0柱面,0磁道位与硬盘的最磁道,最外磁道的数据比较稀疏,数据可靠性高,所以用来存放关键性的代码。

mbr的作用:系统在启动进入bios后,首先自检(post),然后初始化硬件(init),然后扫描硬盘启动项,扫描到启动盘后,copy前512字节到内存0x7c00,将控制权交给mbr。这样系统就开始启动了。


mbr512字节的组成:一个MBR总共由四个部分组成。

1、主引导程序。负责从活动分区中装载,并运行系统引导程序。(137字节)

2、数据区。   (309字节)

3、分区表。64字节为分区项1、分区项2、分区项3、分区项4。(64字节)

4、结束标志字,偏移地址01FE--01FF的2个字节值为结束标志55AA,如果该标志错误系统就不能启动。(2字节)

0000-0088

Master Boot Record

主引导程序

主引导

程序

0089-01BD

出错信息数据区

数据区

01BE-01CD

分区项1(16字节)

分区表

01CE-01DD

分区项2(16字节)

01DE-01ED

分区项3(16字节)

01EE-01FD

分区项4(16字节)

01FE

55

结束标志

01FF

AA


程序流程:

1 将程序代码由0:7C00H移动到0:0600H(注,BIOS把MBR放在0:7C00H处)

2 搜索可引导分区,即80H标志

成功:goto 3

失败:跳入ROM BASIC

无效分区表:goto 5

3 读引导扇区

失败:goto 5

成功:goto 4

4 验证引导扇区最后是否为55AAH

失败:goto 5

成功:goto 6

5 打印错误进入无穷循环

6 跳到0:7C00H进行下一步启动工作



最后送给大家一个读取磁盘数据的命令,可以查看硬盘前512字节的数据,供大家深入了解mbr

dd if=/dev/hda of=mbr.bin bs=512 count=1 
od -xa mbr.bin


dd命令是copy磁盘的命令,if输入文件,of输出文件,bs一个块的大小,count读取块的数量

od命令和hexdump命令相似,参数x代表16进制,x1代表用一个字符标识,-t标识显示的format,A标识基质的format

今天到此为止,好久不写博客了,好久不进步了,反省ing。。。。。。。。

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值