硬盘结构简介

[复制链接]
匿名  发表于 2003-6-6 01:26:40 |阅读模式
一. 硬盘结构简介

 1. 硬盘参数释疑

  到目前为止, 人们常说的硬盘参数还是古老的 CHS(Cylinder/Head/Sector)参数. 那么为什么要使用这些参数,它们的意义是什么?它们的取值范围是什么?
  很久以前, 硬盘的容量还非常小的时候,人们采用与软盘类似的结构生产硬盘. 也就是硬盘盘片的每一条磁道都具有相同的扇区数.由此产生了所谓的3D参数 (Disk Geometry). 既磁头数(Heads), 柱面数(Cylinders),扇区数(Sectors),以及相应的寻址方式.
  其中:
  磁头数(Heads)表示硬盘总共有几个磁头,也就是有几面盘片, 最大为 255 (用 8 个二进制位存储);
  柱面数(Cylinders) 表示硬盘每一面盘片上有几条磁道,最大为 1023(用 10 个二进制位存储);
  扇区数(Sectors) 表示每一条磁道上有几个扇区, 最大为 63(用 6个二进制位存储).
  每个扇区一般是 512个字节, 理论上讲这不是必须的,但好象没有取别的值的.
  所以磁盘最大容量为:
  255 * 1023 * 63 * 512 / 1048576 = 8024 GB ( 1M =1048576 Bytes )或硬盘厂商常用的单位:
  255 * 1023 * 63 * 512 / 1000000 = 8414 GB ( 1M =1000000 Bytes )
  在 CHS 寻址方式中, 磁头, 柱面, 扇区的取值范围分别为 0到 Heads - 1,0 到 Cylinders - 1, 1 到 Sectors (注意是从 1 开始).
 2. 基本 Int 13H 调用简介
  BIOS Int 13H 调用是 BIOS提供的磁盘基本输入输出中断调用, 它可以完成磁盘(包括硬盘和软盘)的复位, 读写, 校验, 定位, 诊断,格式化等功能.它使用的就是 CHS 寻址方式, 因此最大识能访问 8 GB 左右的硬盘 (本文中如不作特殊说明, 均以 1M = 1048576 字节为单位).
 3. 现代硬盘结构简介
  在老式硬盘中, 由于每个磁道的扇区数相等,所以外道的记录密度要远低于内道, 因此会浪费很多磁盘空间 (与软盘一样). 为了解决这一问题,进一步提高硬盘容量, 人们改用等密度结构生产硬盘. 也就是说,外圈磁道的扇区比内圈磁道多. 采用这种结构后, 硬盘不再具有实际的3D参数,寻址方式也改为线性寻址, 即以扇区为单位进行寻址.
  为了与使用3D寻址的老软件兼容 (如使用BIOSInt13H接口的软件), 在硬盘控制器内部安装了一个地址翻译器,由它负责将老式3D参数翻译成新的线性参数. 这也是为什么现在硬盘的3D参数可以有多种选择的原因(不同的工作模式, 对应不同的3D参数, 如 LBA, LARGE, NORMAL).
 4. 扩展 Int 13H 简介
  虽然现代硬盘都已经采用了线性寻址, 但是由于基本 Int13H 的制约, 使用 BIOS Int 13H 接口的程序, 如 DOS 等还只能访问 8 G以内的硬盘空间.为了打破这一限制, Microsoft 等几家公司制定了扩展 Int 13H 标准(Extended Int13H), 采用线性寻址方式存取硬盘, 所以突破了 8 G的限制,而且还加入了对可拆卸介质 (如活动硬盘) 的支持.
二. Boot Sector 结构简介
 1. Boot Sector 的组成
  Boot Sector 也就是硬盘的第一个扇区, 它由 MBR (MasterBoot Record),DPT (Disk Partition Table) 和 Boot Record ID 三部分组成.

  MBR 又称作主引导记录占用 Boot Sector 的前 446 个字节( 0 to 0x1BD ),存放系统主引导程序 (它负责从活动分区中装载并运行系统引导程序).
  DPT 即主分区表占用 64 个字节 (0x1BE to 0x1FD),记录了磁盘的基本分区信息. 主分区表分为四个分区项, 每项 16 字节,分别记录了每个主分区的信息(因此最多可以有四个主分区).
  Boot Record ID 即引导区标记占用两个字节 (0x1FE and0x1FF), 对于合法引导区, 它等于 0xAA55, 这是判别引导区是否合法的标志.
  Boot Sector 的具体结构如下图所示 (参见 NightOwl大侠的文章):
下面还有喔 (39%) │ 结束 ← <q> │ ↑/↓/PgUp/PgDn 移动│ ? 辅助说明 │
   0000

该用户从未签到

0

主题

3

回帖

609

积分

[INTOHARD]连长

菜鸟

Rank: 4

积分
609
QQ
发表于 2003-6-6 02:58:15 | 显示全部楼层
[emb6][emb6][emb5][emb5]<br>
支持!!

该用户从未签到

0

主题

2

回帖

25

积分

[INTOHARD]工兵

Rank: 1

积分
25
QQ
发表于 2003-7-22 08:30:16 | 显示全部楼层
[emb6][emb7][emb2]
hgt

该用户从未签到

0

主题

4

回帖

442

积分

[INTOHARD]排长

被硬盘玩的人

Rank: 3Rank: 3

积分
442
QQ
发表于 2003-7-24 01:33:50 | 显示全部楼层
好极了[emb2][emb2][emb6][emb6]
匿名  发表于 2003-7-24 06:12:54
顶!!!!![emb6][emb6][emb6]

该用户从未签到

0

主题

3

回帖

164

积分

[INTOHARD]班长

浪迹天涯

Rank: 2

积分
164
QQ
发表于 2003-7-26 05:11:07 | 显示全部楼层
[em8][em8][em8][em8][em8][em8][em8][em8]<br>
[emb6][emb6][emb6][emb6][emb6][emb6]<br>
[emb2][emb2][emb2][emb2][emb2][emb2]

该用户从未签到

0

主题

2

回帖

77

积分

[INTOHARD]班长

电脑软硬睇

Rank: 2

积分
77
QQ
发表于 2004-2-3 01:58:50 | 显示全部楼层
好支持!!!<br>
不过太深奥!!!!慢慢理解[emb6][emb6][emb6][emb6][emb7]

该用户从未签到

0

主题

1

回帖

11

积分

[INTOHARD]工兵

Rank: 1

积分
11
发表于 2004-4-2 17:51:24 | 显示全部楼层
谁的硬盘有255个磁头?我的硬盘是单碟的,按理说只有2个磁头,可用一些工具软件读硬盘分区时,也说有255个磁头,究竟是怎么回事?

该用户从未签到

0

主题

70

回帖

349

积分

[INTOHARD]排长

Rank: 3Rank: 3

积分
349
发表于 2007-12-10 21:47:38 | 显示全部楼层
[s:191] [s:36] (49: [s:190]

该用户从未签到

4

主题

82

回帖

2479

积分

[INTOHARD]营长

Rank: 6Rank: 6

积分
2479
发表于 2010-8-27 14:07:01 | 显示全部楼层
好像没说完??
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表