Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1352667
  • 博文数量: 245
  • 博客积分: 10021
  • 博客等级: 上将
  • 技术积分: 3094
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-12 14:51
文章存档

2011年(2)

2009年(152)

2008年(91)

我的朋友

分类: LINUX

2009-01-28 13:34:06


    MBR(Master Boot Record,另一说法为Main Boot Record),中文意为主引导区记录。

  硬盘的0磁道的第一个扇区称为MBR,它的大小是512字节,而这个区域可以分为三个部分。第 一部分为pre-boot区(预启动区),占446字节;第二部分是Partition table区(分区表),占64个字节,硬盘中分区有多少以及每一分区的大小都记在其中第三部分是magic number,占2个字节,固定为55AA。
  他是不属于任何一个操作系统,也不能用操作系统提供的磁盘操作命令来读取它。但我们可以用ROM-BIOS中提供的INT13H的2号功能来读出该扇区的内容,也可用软件工具Norton8.0中的DISKEDIT.EXE来读取。
  用INT13H的读磁盘扇区功能的调用参数如下:
  入口参数:AH=2 (指定功能号)
  AL=要读取的扇区数
  DL=磁盘号(0、1-软盘;80、81-硬盘)
  DH=磁头号
  CL高2位+CH=柱面号
  CL低6位=扇区号
  CS:BX=存放读取数据的内存缓冲地址
  出口参数:CS:BX=读取数据存放地址
  错误信息:如果出错CF=1 AH=错误代码
  用DEBUG读取位于硬盘0柱面、0磁头、1扇区的操作如下:
  A>DEBUG
  -A 100
  XXXX:XXXX MOV AX,0201 (用功能号2读1个扇区)
  XXXX:XXXX MOV BX,1000 (把读出的数据放入缓冲区的地址为CS:1000)
  XXXX:XXXX MOV CX,0001 (读0柱面,1扇区)
  XXXX:XXXX MOV DX,0080 (指定第一物理盘的0磁头)
  XXXX:XXXX INT 13
  XXXX:XXXX INT 3
  XXXX:XXXX (按回车键)
  -G=100 (执行以上程序段)
  -D 1000 11FF (显示512字节的MBR内容)
  MBR组成
  一个扇区的硬盘主引导记录MBR由如图6-15所示的4个部分组成。
  ·主引导程序(偏移地址0000H--0088H),它负责从活动分区中装载,并运行系统引导程序。
  ·出错信息数据区,偏移地址0089H--00E1H为出错信息,00E2H--01BDH全为0字节。
  ·分区表(DPT,Disk Partition Table)含4个分区项,偏移地址01BEH--01FDH,每个分区表项长16个字节,共64字节为分区项1、分区项2、分区项3、分区项4。
  ·结束标志字,偏移地址01FE--01FF的2个字节值为结束标志55AA,如果该标志错误系统就不能启动。
阅读(2864) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~