一乐电子

一乐电子百科

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

快捷登录

手机号码,快捷登录

搜索
查看: 7434|回复: 3
收起左侧

硬盘知识

[复制链接]
发表于 2010-2-19 10:05 | 显示全部楼层 |阅读模式

从2001年开始西部数据(Western Digital)在硬盘市场上可以说是风光无限,首先发布容量高达120GB的Caviar(鱼子酱)WD1200系列硬盘奠定了其硬盘市场领先的地位,而且凭借WD1200硬盘出色的性能获得了当时性能之王的美誉。当然西部数据并不会放弃中端市场,继而把原来WD400以及WD800系列硬盘的单碟容量提高来适应市场。同时推出对应的JB系列特别版,高达8MB的缓存容量使得硬盘获得更好的性能。

2002年西部数据有发布了“Drivezilla”(Zilla应该是日文发音中的怪兽的意思)硬盘,这种硬盘的容量达到惊人的200GB,这整整比西部数据上一代硬盘大了80GB。新款硬盘型号为WD2000。再次西部数据保持了硬盘容量王座的地位,从而证明了西部数据在主流3.5英寸IDE硬盘上的研发实力。

http://www.8080.net/pics/5261353338.jpg

Raptor硬盘

到了2003年西部数据发布的10000rpm产品--Raptor硬盘又获得了不错的成绩,其超高的性能和稳定性开创了新台式硬盘标准的先河。随后其发布的第一款容量高达250GB的2500JD SE又一次使得西部数据站在了3.5台式硬盘的巅峰。今天我们就来看看这款经典的产品。

http://www.8080.net/pics/5261355084.jpg

2500JD依旧采用经典的西部数据式外壳,显得非常稳重

http://www.8080.net/pics/5261355080.jpg

这次西部数据的WD2500系列硬盘依旧延续了前几代产品,如:WD800、WD1200系列硬盘那样的外形,硬盘的背面则是继承了西部数据一向的风格,那就是把所有元器件都隐藏在PCB板下面。


2 b% p6 @1 a0 h+ y+ ?0 [* N/ l* K; a; R# o9 L+ P2 a+ `

8 r( p! W# W- R$ w$ X; }* [
第 2 页 硬盘介绍
4 ?+ B* Q, T1 Q; ^4 {: H
1 ]. n" w+ @4 g: x
- C, d7 Z: M2 M! Y5 s/ |

http://www.8080.net/pics/5261355085.jpg

以上就是硬盘的铭牌,硬盘总容量为250GB,型号为WD2000JD,这款硬盘的缓存容量为8MB,产地为马来西亚

http://www.8080.net/pics/5261355086.jpg

WD2500JD硬盘设计相当有意思,除了提供Serial ATA设备特殊的电源接口以外,还提供了普通的普通硬盘所特有的4针12V电源接口和硬盘主从跳线,这样我们方面我们直接使用硬盘,可以不再需要另外购买Serial ATA硬盘电源线了。不过具备主从跳线让我们想像到这款硬盘并不能算真正的Serial ATA硬盘,其内部使用了桥接芯片来获得对Serial ATA总线的支持,其实也就是说这本来就是一款并行ATA的硬盘只是增加了一个Serial ATA的接口而已。

http://www.8080.net/pics/5261355088.jpg

WD2500JD 硬盘背面PCB板的布线以及用量都是没有挑剔的

http://www.8080.net/pics/5261355089.jpg

这就是硬盘的线路版,看起来相当的简洁,其通过四个引针直接同盘体接触,从而达到控制马达以及磁头等工作。硬盘主控芯片WD70C22,这种芯片内部提供了硬盘工作的基本要素,并且S.M.A.R.T等技术也就整合在这个芯片中的。当然此前谈到的西部数据Data Lifeguard的主要功能也是在这里被实现的。硬盘采用的缓存芯片,采用了三星的K4S161632F的SDRAM颗粒,这种内存颗粒的单颗容量为8MB,位宽为32位,标准工作频率为166Mhz。

http://www.8080.net/pics/5261355087.jpg

在硬盘PCB下面附着了一层泡沫纤维物质,可以很好的保护PCB背面的元器件

http://www.8080.net/pics/52613550810.jpg

http://www.8080.net/pics/5261353331.gif

这就是重要的Serial ATA桥接芯片--Marvell 88i8030了。这是一颗负责转换并行ATA同串行ATA接口的控制芯片,其内部包括了Serai ATA的PHY部分,可以提供150Mbps的传输速度支持Spread Spectrum Clocking(传输时钟序列)功能,支持ATA的命令队列功能。

http://www.8080.net/pics/5261355082.jpg

法意电子的L6282 Flash芯片,其实这就是存放Firmware的地方,容量为1MB

http://www.8080.net/pics/5261355081.jpg

马达控制芯片-88C5540,这种芯片的主要工作就是负责硬盘马达以及磁头工作的控制。

% o/ `. m) z. M6 B1 _2 H

% ?- l; F, g3 N8 k! G- X, [
第 3 页 硬盘技术介绍和识别

& |% t$ f) a* }; l! p5 C; d1 Y+ O! P; ]! E/ H) @! r8 {

* O5 n2 x4 o- E0 x2 q

在这款2500JD硬盘中具备了西部数据特别的一些技术,比如SecureConnect,这是针对目前Serial ATA排线不稳定而设计的。而FlexPower则是了考虑到用户不再需要购买Serial ATA专用电源线来设计的。此外在WD2500JD硬盘中依旧具备西部数据独特的Data Lifeguard(数据卫士)技术。数据卫士是硬盘数据保护与自动监测技术,利用硬盘空闲的时间对硬盘的数据进行安全性检查,并转移濒危数据。同时,可以通过外部专用工具软件对硬盘进行检测和诊断。数据卫士可以通过检测、隔离和修复硬盘上的故障区域,并可以主动的保护数据从而免遭丢失。数据卫士分两个部分的功能,一个是Data Lifeguard,另外一个则是Data Lifeguard Tools。其中Data Lifeguard主要依靠硬盘控制芯片来对硬盘的错误进行检测和修复,并且会自动检测、隔离和修复长期使用硬盘所可能积累的故障区域。当然Data Lifeguard同硬盘的S.M.A.R.T.密不可分,可以更有效的监控硬盘操作,以在发生数据丢失前予以预报。另外Data Lifeguard技术还具备保护性磁头着陆的功能,这就可以使得硬盘即使在系统掉电的情况下自动让磁头归位到启动区。Data Lifeguard Tools则是一系列的控制软件,主要用来给硬盘分区和格式化,并且可以突破BIOS的硬盘容量限制。6 d( H2 U% e3 T. }2 m! U, ~; k# d  G

http://www.8080.net/pics/5261353332.gif

通过Sisoft Sandra的检测我们看到一些硬盘的基本信息,硬盘型号为WDC WD25000JD-75FYB0,自持ATA 6规范,8MB的缓存容量,格式化后容量为232.8GB。

http://www.8080.net/pics/5261353333.gif

通过Hwinfo的检测我们可以看到更加详细的资料,硬盘控制器为Serial ATA,传输模式最高为Ultra ATA 5,也就是说ATA100的传输率,在这里就再次证明了这是一款桥接Serial ATA硬盘设备。

http://www.8080.net/pics/5261353334.gif

此外我们还看到硬盘支持48bit LBA功能,其实最早推出48-Bit LBA Address规范最早的公司是Maxtor,其把这种硬盘工作方式称为BigDrives。这种规范的中心思想就是增加CHS的位数,在48-Bit LBA Adress规范中,把扇区地址设置为16位的寄存器,磁头的地址寄存器也设为16位,柱面地址寄存器不变。这样的话,在LBA寻址中可用的寄存器空间就从28位提高到了48位(16+16+16),这样的话,可以寻址的扇区数就为281,474,976,710,655(65,536x65,535x65,536),整个硬盘的容量就是281,474,976,710,655x512=144,115,188,075,855,872字节,大约等于144PB(1PB=1000,000,000,000,000字节)。这样的话48位LBA寻址基本上就可以支持非常大容量硬盘的寻址了。


8 z# Q8 P- D4 [# l2 W' {% R3 |结合上面软件识别的情况我们可以推断出WD2000系列硬盘已经具备了48bit LBA寻址的支持,因此这种硬盘应该属于符合ATA-6规范的产品。由T13组织的ATA-6规范相比原来ATA-5规范主要就是增加了48bit Adress的支持,并且在ATA-6规范中并不要求硬盘一定要支持UDMA-6(ATA-133)硬盘传输协议(其实,根本没有把ATA-133规范列出支持的范围内,详细请参考http://www.t13.org/docs2002/d1410r3b.pdf)。目前ATA-7规范已经开始制订,初步的规范中增加了硬盘支持Overlapped和Queuer技术。Overlapped技术其实是一种避免硬盘传输过载的一种技术,Queuer则是队列功能,另外好像是同一了硬盘错误代码标准,此外并没有看到新规范有谈到磁盘传输速度提升的相关问题。(相关资料可以察看 http://www.t13.org
3 r3 `' g! e! x- `7 ~' J另外在西部数据官方站上谈到了容量同操作系统之间的关系,西部数据建议用户淘汰Windows 95操作系统,因为这种操作系统最高仅支持32GB的磁盘管理能力(使用FAT 32格式),不过即使是使用Windows 98操作系统,其可以进行磁盘完全控制的也就是64GB左右,并且Windows 98SE和Windows ME也存在这个问题,当然并不是说操作系统无法使用超过64GB容量的硬盘,而是操作系统附带的Fdisk无法突破64GB的容量。微软KnowLEDgebase Article Q263044/Q263045专门讨论了这个问题并给出了解决方法。(http://support.microsoft.com/default.aspx?scid=kb;en-us;Q263044 http://support.microsoft.com/default.aspx?scid=kb;en-us;Q263045
- `9 m5 v+ U' _' c) u. Y. B

. j% K+ R" I, f% M( E4 K/ T
+ t' s6 Y! B8 n  Y- Z* k, x( T
第 4 页 硬盘物理指标测试
, @- j# Q8 e7 I3 U; Z1 v6 r

, T2 h: r' r& F7 U7 \
3 }0 H' f. t! H' O7 f9 @* |- n6 _* K& g" n* O! j
随后我们还是来看看大家最关心的硬盘性能问题吧,测试的时候我们使用Intel的875PBZ主板进行测试,这款主板基于Intel 875P芯片组,整合的ICH5R南桥芯片不但可以支持Serial ATA,同时还支持Serial ATA Raid技术。测试的时候主要对比了同为Serial ATA硬盘的希捷Barracuda Serial ATA V 120G(这是一款没有Serial ATA桥接芯片的硬盘,可以说是完全的Serial ATA硬盘),此外还对比了主流的并行ATA接口的7200rpm硬盘。在测试的时候我们使用Windows XP操作系统,此外,测试的时候为了区分硬盘在不同磁盘文件格式下的性能,在进行Winbench 99测试的时候,分别把硬盘格式化成FAT 32和NTFS格式。

CPU

Intel Pentium 4 3.0Ghz(NorthWood核心 512K L2缓存)外频800MHz
主板
& w# f3 t( u  n4 K: {2 \4 W- [
Intel i875PBZ(Intel 875P芯片组)
内存

512MB KingMax PC3200 DDR SDRAM CAS=2.5

显示卡

耕升GeForce 4 TI 4200(250/500)

硬盘:
" b4 n6 h  D) k2 O- `. Y6 f
WD 2500JD(7200rpm)
3 |. \" v) p$ USeagare Barracuda Serial ATA V 120GB(7200rpm)
5 a. D: H# [) h7 R0 W1 E: aWD 2000BB 200GB(7200rpm)
( g9 f4 T0 k+ H  LWD 1200JB 120GB(7200rpm) " o2 j7 N; ]" c. H4 K) ~
IBM 120GXP 40GB(7200rpm)) a+ K8 W3 M) Y9 S, o+ j
Maxtor D740X 80GB(7200rpm)
  L; i# ~, O5 ?! d1 T* A. k2 J

操作系统

英文版Windows XP+SP1

驱动

Intel 最新版芯片组驱动2 H1 S2 g, w% B6 u0 {& z( x8 q: H
MS DX8.1* B5 _. M& e4 o* N  Q
nVidia 41.03驱动

6 I* f3 r1 C' u: @& ^# L) p
注意:测试中WD2500JD、WD1200JB和串行版Barracuda V硬盘具备8MB缓存的硬盘,其它7200rpm硬盘缓存容量都为2MB。此外盘片数量和单碟容量也不相同,在测试之前我们首先来看看各款硬盘官方公布的数据指标:
WD 2500JDBarracuda Serial ATA V 120GWD 2000BB 200GBWD 1200JB 120GBIBM 120GXP 40GBMaxtor D740X-6L 80GB
传输界面Serial ATA 150Serial ATA 150ATA/100ATA/100ATA/100ATA/133
磁盘转速7200rpm7200rpm7200rpm7200rpm7200rpm7200rpm
单碟容量80GB60GB66GB40GB40GB40GB
盘片数量323312
潜伏时间4.2ms4.16ms4.2ms4.2ms4.17ms4.2ms
平均寻道时间(时间)8.9ms9ms8.9ms8.9ms8.5ms8.5ms
平均道至道时间(读取)2ms0.95ms2ms2ms1.2ms0.8ms
平均完全寻道时间21ms未知21ms21ms15ms17.8ms

) q( I1 v; T5 `9 M0 E5 k  ~从理论的指标来看,WD 2500JD硬盘的指标基本同2000BB持平,相对其它硬盘来说并没有太大的理论性能优势。$ @- C- J% E! [/ A8 E* p
物理指标测试:" y9 |+ w( x( W/ _& T" o
首先我们来看看硬盘的磁盘寻道时间,寻道目前是一个硬盘非常重要的指标,其好坏直接影响到硬盘的性能。测试分别使用Winbench 99和HD Tach 2.61测试软件,并且测试了在不同分区下磁盘的性能。

http://www.8080.net/pics/5261357359.gif


( `) j# j' t' `2 }首先我们来看看硬盘平均寻道时间的性能,首先在Winbench 99 FAT 32文件格式下各硬盘之间的表现,很明显Barracuda Serial ATA V硬盘的表现是最为出色的,10.6ms的寻道时间是最好的。在NTFS格式下,情况出现了一些变化,Maxtor D740X获得了最出色的表现。在HDTach 2.61下,情况同刚刚NTFS格式下比较类似,Maxtor D740X的表现最初二。当然我们也需要明白,在相同盘片大小下,磁盘密度越高,寻道时间自然也是越长,因此我们看到单碟80GB设计的2500JD的表现很一般,寻道时间明显高于其它产品。

http://www.8080.net/pics/5261357343.gif

然后我们来看看CPU占用率的情况,在HDTach中,基于Serial ATA接口的WD 2500JD和Barracuda Serial ATA V的CPU占用率是最高的,从理论上来说Serial ATA应该比并行ATA占用CPU资源更少一些,相信造成这个现象可能是由于Serial ATA控制芯片的驱动还不够理想有关,相信随着第二、第三代Serial ATA硬盘的出现这种情况会改观的。

6 x9 k6 X8 e; V  z
2 h) G- h2 d& x- H) V
第 5 页 硬盘实际性能测试

& B* t/ g* `+ _4 g3 Z7 z/ x: x4 V, ~0 W. o5 b# b/ H5 G
* [$ T( G. p3 X0 P9 [5 l2 L

首先进行的是磁盘传输率测试,这是衡量硬盘性能的重要指标之一:

http://www.8080.net/pics/5261357340.gif

首先在FAT 32文件格式下,WD 2500JD当仁不让的获得了最出色的表现,其其实速度高达57.9MB/s,比Barracuda Serial ATA V硬盘的41.7MB/s提升了不少,而且其起始速度也已经超越来原来最出色的WD2000BB。不过在结尾速度上,Barracuda Serial ATA V却又是表现的最好的,其结尾速度达到了38.2MB/s,比其它硬盘20多MB/s的速度高的多,很直超过了WD2500JD的36.5MB/s速度。在NTFS格式下,WD2500JD表现依旧出色,无论起始速度还是结尾速度都名列第一。

HDTach磁盘爆发速度测试是体现硬盘缓存性能的最好软件,其可以反应硬盘在通过缓存调用数据时的表现:

http://www.8080.net/pics/5261357341.gif

在这里WD2500JD的表现依旧是最耀眼的,无论是写入速度还是读取速度都是最高的。


1 _" A" R$ w. \" O0 I- fHTach 2.61的平均磁盘存取速度则可以反应硬盘的综合性能,以下我们来看看各款硬盘的表现:

http://www.8080.net/pics/5261357342.gif

从测试来看,在写入速度上WD2500JD和Barracuda Serial ATA V两款Serial ATA硬盘表现都非常不错,平均速度达到了27MB/s左右。而在读取速度上WD2500JD则一枝独秀,47.6MB/s的速度没出其右者。

随后我们来看看FAT 32和NTFS文件格式下,实际磁盘的应用性能,其中分为商用磁盘性能以及高端磁盘性能,商业磁盘性能就是模拟Word等普通办公软件对磁盘调用的速度,而高端磁盘性能则是反应类似PhotoShop、Frontpage等软件对磁盘操作的速度。首先我们来看看Fat 32文件格式下的磁盘性能。

http://www.8080.net/pics/5261357344.gif

在商业磁盘性能测试中,WD2000BB的表现是最出色的,两款Serial ATA接口的硬盘表现都很一般。而在高端磁盘性能测试当中WD2500JD的性能优势则发挥的相当出色。

http://www.8080.net/pics/5261357355.gif

随后就是高端磁盘性能测试的详细分测试结果,WD2500JD的表现是惊人的除了在Frontpage 98测试中落后于其它产品,其它测试都相当出色,特别是Visual C++ 5.0以及Sound Forge 4.0等测试中,领先对手的幅度相当高。


' I9 i7 [. e" q6 `) J$ u+ y# F7 w接下来,一起看NTFS文件格式下磁盘性能,NTFS是很多高端应用中常用的文件格式,这种格式下磁盘性能就可以反应磁盘在这种情况下的实际表现:

http://www.8080.net/pics/5261357356.gif

在NTFS格式下,情况同前面类似,在商业性能中WD2500JD并没有太大的优势,但是在高端磁盘性能测试中却拥有非常优秀的成绩。

http://www.8080.net/pics/5261357357.gif

在详细的分测试成绩中,同前面FAT32测试结果一样,WD2500JD的表现是相当出色的。

6 A6 {) a$ H. ]( q+ `
7 V. r/ B- ?6 C: J
第 6 页 硬盘温度测试和测试总结
- @# x$ ?, @6 t5 f- S* G# R: j
, @: L/ j+ n$ W/ n& Q4 H0 f

- @5 f9 |" K  X4 C
* z; j1 c7 l# U- ^( |  E) E5 PDtemp是一款非常不错的硬盘检测软件,其自动检测硬盘的运行温度(当然,需要你的硬盘支持S.M.A.R.T,且主板支持),并且监测到的温度同实际硬盘的温度非常相似。为了真正体现硬盘的温度,我们连续运行Threadmark 2.0 1个半小时后取硬盘的温度。但是由于Barracuda Serail ATA V没有基于传统的并行端口,因此Dtemp无法准确识别其温度,因此我们适用外接的电子温度计来测量其温度。

http://www.8080.net/pics/5261357358.gif

从表现来看,WD2500JD的温度控制一般,同Barracuda Serail ATA V一样发热相对较高。

测试总结:

http://www.8080.net/pics/5261353339.jpg

从技术上来说Serial ATA接口是一个硬盘接口的革新,相比并行ATA接口有传输速度高、连接简单,数据传输可靠度高等特点。今后将会成为桌面计算机的首选连接方式。但是从测试来看WD的2500JD的表现已经相当的出色,至少在接口上并没有会比普通的并行ATA差。今年将会上Serial ATA接口普及的一年,因为Intel、VIA、SIS芯片组厂商都会在新一代的芯片组中整合Serial ATA接口的支持,同时Seagate和Maxtor也都会发布第二代的Serial ATA接口硬盘,因此Serial ATA硬盘普及是势不可挡的。


5 v4 H7 |6 [$ m  a3 @, b1 W0 {从测试来看,WD2500JD的表现相当不错,相比其它7200rpm硬盘还是有一定优势的,除了在寻道时间上没太大优势,在传输率上有很高的优势,而且NTFS格式下表现也是相当的出色,因此这是一款既能满足高容量需求又能满足高速需求的产品。只是在目前来看这款250GB硬盘的售价还是相对比较贵(人民币2000元左右),不过随着时间的推移,这种高容量硬盘会慢慢降低价格,从而进入普通用户的家庭。
6 i0 ]  N4 `1 M9 t3 ~' M" `西部数据WD2500JD硬盘:. ~/ e) l+ C( \$ [6 A, o
优点:
  • Serial ATA接口
  • 超高的容量
  • 更高的单碟容量
  • 不俗的性能

$ \' n3 z6 A; R6 ^# _4 M缺点:
  • 寻道时间长
  • 价格高
 楼主| 发表于 2010-2-19 10:08 | 显示全部楼层
本帖最后由 kenson 于 2010-2-19 10:40 编辑 $ Q; F7 |7 y0 {' y: z

3 S3 o6 ]# x& c6 \9 [8 |Connector pinout for: ATA (Advanced Technology Attachment) Internal3 M* \0 |, j) V# r* g
Advanced Technology Attachment (ATA) is a standard interface for connecting storage devices such as hard disks and CD-ROM drives inside personal computers.% K+ W! H5 Y0 m# C4 D
With the introduction of Serial ATA in 2003, the original ATA was retroactively renamed Parallel ATA (PATA).
, k6 d* N9 Y6 B8 Y1 q2 e  Y2 L) J& s: ?
( N! m! i; ^9 Y; DParallel ATA standards only allow cable lengths up to 18 inches (up to 450 mm) although cables up to 36 inches (900 mm) can be readily purchased. Because of this length limit, the technology normally appears as an internal computer storage interface. It provides the most common and the least expensive interface for this application. # Z$ o/ R  m, s8 c3 [8 i; M
http://www.allpinouts.org/images/b/bc/Conn_idc40m.gif
/ g( E- E5 o8 N4 X6 w0 W" i40 PIN IDC MALE at the controller & peripherals 9 X  E- b3 H: z' M7 e
http://www.allpinouts.org/images/8/84/Conn_idc40f.gif
( v; t( F, U1 u) ?' a, P$ S40 PIN IDC FEMALE at the cable 7 c" L( `3 T( `+ J

& {  O2 T: _/ P! E# ]  ?- v
Pin Name Dir Description
1 /RESET OUT Reset
2 GND - Ground
3 DD7 IN/OUT Data 7
4 DD8 IN/OUT Data 8
5 DD6 IN/OUT Data 6
6 DD9 IN/OUT Data 9
7 DD5 IN/OUT Data 5
8 DD10 IN/OUT Data 10
9 DD4 IN/OUT Data 4
10 DD11 IN/OUT Data 11
11 DD3 IN/OUT Data 3
12 DD12 IN/OUT Data 12
13 DD2 IN/OUT Data 2
14 DD13 IN/OUT Data 13
15 DD1 IN/OUT Data 1
16 DD14 IN/OUT Data 14
17 DD0 IN/OUT Data 0
18 DD15 IN/OUT Data 15
19 GND - Ground
20 KEY - Key (Pin missing)
21 DMARQ ? DMA Request
22 GND - Ground
23 /DIOW OUT Write Strobe
24 GND - Ground
25 /DIOR OUT Read Strobe
26 GND - Ground
27 IORDY IN I/O Ready
28 SPSYNC:CSEL ? Spindle Sync or Cable Select
29 /DMACK ? DMA Acknowledge
30 GND - Ground
31 INTRQ IN Interrupt Request
32 /IOCS16 ? IO ChipSelect 16
33 DA1 OUT Address 1
34 PDIAG ? Passed Diagnostics
35 DA0 OUT Address 0
36 DA2 OUT Address 2
37 /IDE_CS0 OUT (1F0-1F7)
38 /IDE_CS1 OUT (3F6-3F7)
39 /ACTIVE OUT Led driver
40 GND - Ground
Notes
  • Direction is Controller relative Devices (Harddisks).
* f- O: W5 X5 E9 v
2 U( L! `& k; ^
[The following article is licensed under the GNU Free Documentation License. It reproduces the Wikipedia article "Advanced Technology Attachment"] History
; G* r( _& }4 P# v- XAlthough the standard has always had the official name "ATA", marketing dictates dubbed an early version of the standard Integrated Drive Electronics (IDE), and the one following it Enhanced IDE (EIDE). Although these new names originated in branding convention and not as an official standard, the term EIDE often appears interchangeably with IDE and ATA. With the introduction of Serial ATA around 2003, this configuration was retroactively renamed to Parallel ATA (P-ATA), referring to the method in which data travels over wires in this interface.
( ~: z; A! P7 J: S. J  a$ x0 s' Z5 H9 k' R- L- @
The interface at first only worked with hard disks, but eventually an extended standard came to work with a variety of other devices—generally those using removable media. Principally, these devices include CD-ROM and DVD-ROM drives, tape drives, and large-capacity floppy drives such as the Zip drive and SuperDisk drive. The extension bears the name Advanced Technology Attachment Packet Interface (ATAPI), with the full standard now known as ATA/ATAPI.
+ Z# r( ~+ [; O+ s6 n3 D; G$ f# {! C1 o  T. d0 Q- [, l" x& v$ x
The movement from programmed input/output (PIO) to direct memory access (DMA) provided another important transition in the history of ATA. As every word must be read by the CPU individually PIO tends to be slow and use a lot of CPU. This is especially a problem on faster CPUs where accessing an address outside of the cacheable main memory (whether in the I/O map or the memory map) is a relatively expensive process. This meant that systems based around ATA devices generally performed disk-related activities much more slowly than computers using SCSI or other interfaces. However, DMA (and later Ultra DMA, or UDMA) greatly reduced the amount of processing time the CPU had to use in order to read and write the disks by allowing the disk controller to write data to memory directly, thus bypassing the CPU.
1 M# W$ N' F$ q6 z4 X9 N% ~" ]: G* t4 T) {
ATA devices have suffered from a number of "barriers" in terms of how much data they can handle. However, new addressing systems and programming techniques have broken most of these barriers. Some of the ATA-specific barriers included: 504 MB, 8 GB, 32 GB, and 137 GB. A variety of other barriers have existed, usually due to device drivers and disk I/O layers in operating systems that did not correspond with ATA standards.
8 M# @4 W+ v8 N: m( q! ]5 w0 L! n; _
- J3 i3 d1 ?8 y+ hThe original ATA specification used a 28-bit addressing mode. This allows for the addressing of 268,435,456 512-byte sectors (128 GiB or 137 GB). The standard PC BIOS system supported up to 8 GiB. Unfortunately, when the lowest common denominators of the CHS limitations in the standard PC BIOS system and the IDE standard were combined the system as a whole was left limited to a mere 512 Megabytes. LBA was introduced removing the need for the CHS structure of the drive itself to match that used by the BIOS and allowing up to the full 8 GiB supported by the standard BIOS limitations. In time this limitation was itself lifted and first 32 GiB and then the full 128 GiB supported by ATA at that time became supported by PC BIOSes.( h/ h4 L8 o  P* }  `* G
0 R' B/ v1 @* w' _5 N, ~
The newer specification allows 48-bit addressing, this extends the limit to 128 PiB (or 144 petabytes). Most operating systems have poor support for drives more than 2 TiB, so it can be expected that will be the next drive size barrier for the near future./ Q( m* |$ p4 i4 u( J
3 g( A6 R. @" b4 W8 w8 h
These size limitations come about because some part of the system is unable to deal with block addresses above some limit. This problem may manifest itself by the system thinking the size of a drive is only the limit value, or by the system refusing to boot and hanging on the BIOS screen at the point when drives are initialised. In some cases, a BIOS upgrade for the motherboard will resolve the problem. This problem is found in older external FireWire disk enclosures, which limit the usable size of a disk to 128GB. By early 2005 most enclosures available have practically no limit. (Earlier versions of the popular Oxford 911 FireWire chipset had this problem. Later Oxford 911 versions and all Oxford 922 chips resolve the problem.); g7 s7 m) a0 v/ d0 d4 }0 ~8 g0 q7 `
  r  k5 A/ h0 ]5 y1 N+ g5 H( p
Parallel ATA Interface" ~5 l# T$ q4 t) W! @& g% w
Until the introduction of Serial ATA, 40-pin connectors generally attached drives to a ribbon cable. Each cable has two or three connectors, one of which plugs into a controller that interfaces with the rest of the computer system. The remaining one or two connectors plug into drives. Parallel ATA cables transfer data 16 bits at a time. One occasionally finds cables that allow for the connection of three ATA devices onto one IDE channel, but in this case one drive remains read-only (this type of configuration virtually never occurs).
4 n4 x8 E, d* U/ j. M0 e6 G1 t! sATA's ribbon cables had 40 wires for most of its history, but an 80-wire version appeared with the introduction of the Ultra DMA/66 (UDMA4) mode. All of the additional wires in the new cable are ground wires, interleaved with the previously defined wires. This results in a ground wire in between each pair of signal wires, which reduces the effects of coupling between neighboring signal wires, thereby reducing crosstalk. Coupling is more of a problem at higher transfer rates, and this change was necessary to enable the 66 megabyte per second (MB/s) transfer rate of UDMA4 to work reliably. The faster UDMA5 and UDMA6 modes also require 80-conductor cables. ) }8 l$ ?, F- \5 w1 P
Though the number of wires doubled, the number of connector pins and the pinout remain the same as on 40-conductor cables, and the external appearance of the connectors is identical. Internally the connectors are different: The connectors for the 80-wire cable connect a larger number of ground wires to a smaller number of ground pins, while the connectors for the 40-wire cable connect ground wires to ground pins one-for-one.
& q6 ?: n6 V3 s6 m* b! ?The ATA standard has always specified a maximum cable length of just 18 inches, or 46 cm. This can cause difficulties in connecting drives within large computer cases, or when mounting several physical drives into one computer, and it all but completely eliminates the possibility of using parallel ATA for external devices. Although longer cables are widely available on the market, it must be understood that they are outside the parameters set by the specifications. The same is true of the "rounded" cables also commonly available: The ATA standard describes flat cables with particular impedance and capacitance characteristics. This is of course not a guarantee that other cables will not work, but an indication that nonstandard cables should be used, if at all, with caution.
& y5 _# [2 x( F- b* I5 t+ y+ ~If two devices attach to a single cable, one is commonly referred to as a master and the other as a slave. The master drive generally appears first when the computer's bios and/or operating system enumerates available drives. On old BIOSes (486 era and older) the drives are often misleadingly referred to by the bios as "C" for the master and "D" for the slave.
7 w1 c# F- P: P& L- PIf there is a single device on a cable, in most cases it should be configured as master. However, some hard drives have a special setting called single for this configuration (the brand Western Digital, in particular, uses this additional setting). Also, depending on the hardware and software available, a single drive can operate on a cable even though configured as the slave drive (this configuration is most often seen when a CDROM has a channel to itself). . n' w( x/ \8 T$ u2 h, M& Y
A drive setting called cable select was described as optional in ATA-1 and has come into fairly widespread use with ATA-5 and later. A drive set to "cable select" automatically configures itself as master or slave, according to its position on the cable. Cable select is controlled by pin 28. The host controller grounds this pin; if a device sees that the pin is grounded, it becomes the master device; if it sees that pin 28 is open, the device becomes the slave device.   w6 ~0 z9 `. G, M& N  K$ w  ?( g
With the 40-wire cable it was very common to implement cable select by simply cutting this wire between the two device connectors. This puts the slave device at the end of the cable, and the master on the "middle" connector. This arrangement eventually was standardized in later versions of the specification. Unfortunately, if there is just one device on the cable, this results in an unused "stub" of cable. This is undesirable, both for physical convenience and electrical reasons: The stub causes signal reflections, particularly at higher transfer rates.
' \* r, k/ u% _When the 80-wire cable was defined for use with UDMA4, these details were changed. The master device now goes at the end of the cable, so if there is only one device on the cable, there is no cable "stub" to cause reflections. Also, cable select is now implemented in the slave device connector, usually simply by omitting the contact from the connector body. Since 80-wire cables require special connectors anyway, this was a small additional effort. The standard also dictates color-coded connectors to tell the installer – and cable maker – which plug is which. 0 d! e! p3 q: H* I* ~
Although they are in extremely common use, the terms master and slave do not actually appear in current versions of the ATA specifications. The two devices are correctly referred to as device 0 (master) and device 1 (slave), respectively. It is a common myth that "the master drive arbitrates access to devices on the channel." In fact, the drivers in the host operating system perform the necessary arbitration and serialization. If device 1 is busy with a command then device 0 cannot start a command until device 1's command is complete, and vice versa. There is therefore no point in the ATA protocols in which one device has to ask the other if it can use the channel. Both are really "slaves" to the driver in the host OS. ATA standards versions, transfer rates, and features" Q/ g3 E0 _% g% B/ G- w
The following table shows the names of the versions of the ATA standards and the transfer modes and rates supported by each. Note that the transfer rate for each mode (for example, 66.7 MB/sec for UDMA4, commonly called "Ultra-DMA 66") gives its maximum theoretical transfer rate on the cable. This is simply two bytes multiplied by the effective clock rate, and presumes that every clock cycle is used to transfer end-user data. In practice, of course, protocol overhead reduces this value.
6 M$ `; s# Y. d2 j, J$ M6 j, h
9 w; V5 L% W; s- BCongestion on the host bus to which the ATA controller is attached may also limit the maximum burst transfer rate. For example, the maximum data transfer rate for conventional PCI bus is 133 MB/sec, and this is shared among all active devices on the bus.
* y, O$ V$ j, A/ p
. P# V$ R6 j8 ]' i. OIn addition, as of October 2005 no ATA hard drives exist capable of measured sustained transfer rates of above 80 MB/sec, let alone higher. Furthermore, sustained transfer rate tests do not give realistic throughput expectations for most workloads: They use I/O loads specifically designed to encounter almost no delays from seek time or rotational latency. Hard drive performance under most workloads is limited first and second by those two factors; the transfer rate on the bus is a distant third in importance. Therefore, transfer speed limits above 66 MB/sec only really affect performance when the hard drive can satisfy all I/O requests by reading from its internal cache — a very unusual situation.
1 ?/ {% Y% m* N2 M
  @3 W* t8 L$ [* W
9 C$ y9 `6 h3 x! o; Y8 g' E
Standard Other Names Transfer Modes Added (MB/sec) Other New Features ANSI Reference
ATA-1 ATA, IDE PIO 0,1,2 (3.3, 5.2, 8.3)
- v) q7 D: j/ i% u: iSingle-word DMA 0,1,2 (2.1, 4.2, 8.3). W1 N5 d% |7 I/ S9 J7 O. |
Multi-word DMA 0 (4.2)
up to 528 MB X3.221-1994
5 j1 o4 u) C% U# H6 H(obsolete since 1999)
ATA-2 EIDE, Fast ATA,
! N- r9 k0 E1 @Fast IDE, Ultra ATA
PIO 3,4: (11.1, 16.6)
; J2 Q; ?3 h, K) k8 z2 zMulti-word DMA 1,2 (13.3, 16,6)
24-bit LBA (up to 8.4 GB) X3.279-1996& k- U+ x3 i) r( Q6 Z1 Q7 r  w& d; n1 F
(obsolete since 2001)
ATA-3 EIDE " 28-bit LBA (up to 137 GB)
8 T3 P( o5 r0 _9 T4 K8 B. f, kS.M.A.R.T., Security
X3.298-1997
& c& N$ G0 _. `1 d(obsolete since 2002)
ATA-4 ATAPI-4, ATA/ATAPI-4 Ultra DMA 0,1,2 (16.7, 25.0, 33.3)
4 D' @* Z# x  t2 }# s, {aka Ultra-DMA/33
Support for CD-ROM, etc.,
+ H) h: R  A. Q. W$ o2 q1 Fvia ATAPI packet commands
NCITS 317-1998
ATA-5 ATA/ATAPI-5 Ultra DMA 3,4 (44.4, 66.7)
* P6 U3 _8 s0 k- Q; A8 daka Ultra DMA 66
80-wire cables NCITS 340-2000
ATA-6 ATA/ATAPI-6 UDMA 5 (100)) L- s" f0 b% O& s
aka Ultra DMA 100
48-bit LBA (up to 144 PB)
4 e! m* {. W, B$ UAutomatic Acoustic Management
NCITS 347-2001
ATA-7 ATA/ATAPI-7 UDMA 6 (133)- n. |8 K$ T) J3 R  D
aka Ultra DMA 133
-- NCITS 361-2002
ATA-8 ATA/ATAPI-8 -- -- in progress
 楼主| 发表于 2010-2-19 10:08 | 显示全部楼层
本帖最后由 kenson 于 2010-2-19 15:44 编辑 ' t" x$ v5 I5 g. t, ^( y6 E3 M6 I

2 o  `. d: `- T" f4 M7 ]9 n8 C一、硬盘基础知识
) o% D8 O; S1 |- ~
6 \1 y) X2 |# c# k, o- a
! R+ T! x3 G+ z- w- F, S. X硬盘的DOS管理结构 ' l1 [- ^+ {/ N; g4 ], _
1.磁道,扇区,柱面和磁头数 * s# i& u' g1 J! E3 O; Y/ N( ~8 }8 @
硬盘最基本的组成部分是由坚硬金属材料制成的涂以磁性介质的盘片,不同容量硬盘的盘片数不等。每个盘片有两面,都可 . ]1 W4 \: P8 k2 \* ]! h
记录信息。盘片被分成许多扇形的区域,每个区域叫一个扇区,每个扇区可存储128×2的N次方(N=0.1.2.3)字节信息。在DOS
6 [. m: E- V+ H2 Q) c% D8 K1 @, F中每扇区是128×2的2次方=512字节,盘片表面上以盘片中心为圆心,不同半径的同心圆称为磁道。硬盘中,不同盘片相同半径 2 q. F4 w1 d3 V) h
的磁道所组成的圆柱称为柱面。磁道与柱面都是表示不同半径的圆,在许多场合,磁道和柱面可以互换使用,我们知道,每个磁 6 p: _9 o  m  X$ y( Y
盘有两个面,每个面都有一个磁头,习惯用磁头号来区分。扇区,磁道(或柱面)和磁头数构成了硬盘结构的基本参数,帮这些
5 l9 _" m6 H. A/ J$ i参数可以得到硬盘的容量,基计算公式为: . O1 b2 W1 R# w& ]+ \
存储容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数
; V/ ~$ @3 p: P' @要点:(1)硬盘有数个盘片,每盘片两个面,每个面一个磁头
; f! {0 l9 H5 x8 q% F(2)盘片被划分为多个扇形区域即扇区
0 z+ X* U+ H/ P" z; m& ?(3)同一盘片不同半径的同心圆为磁道 $ q8 K2 ~* s+ G! k' ~
(4)不同盘片相同半径构成的圆柱面即柱面
! @; p3 T% w3 x(5)公式: 存储容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数
2 p& \3 N+ V& i4 b(6)信息记录可表示为:××磁道(柱面),××磁头,××扇区 9 i0 D+ A& n% m4 |$ H4 o3 a6 B4 P
2.簇 : E+ _2 G- J  y9 m. b% q* l, v) s
“簇”是DOS进行分配的最小单位。当创建一个很小的文件时,如是一个字节,则它在磁盘上并不是只占一个字节的空间, ! P5 T! V7 d, d5 V; }+ {( Z/ `. X
而是占有整个一簇。DOS视不同的存储介质(如软盘,硬盘),不同容量的硬盘,簇的大小也不一样。簇的大小可在称为磁盘 6 @# F  M1 s! V" C+ ?; |8 b
参数块(BPB)中获取。簇的概念仅适用于数据区。
2 p8 i( n/ [$ _* i8 q% {2 |3 m本点:(1)“簇”是DOS进行分配的最小单位。
1 C* f3 \7 R4 `0 n. Y; g; b# M(2)不同的存储介质,不同容量的硬盘,不同的DOS版本,簇的大小也不一样。 - p1 H5 N3 y, n
(3)簇的概念仅适用于数据区。
, D. Y5 X  @( b1 x, h, b0 l+ u3.扇区编号定义:绝对扇区与DOS扇区 4 R% M, p, Y5 _2 n; K) ~
由前面介绍可知,我们可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域,或是说柱面/磁头/扇区与磁盘上每一个扇区有一一对应关系,通常DOS将“柱面/磁头/扇区”这样表示法称为“绝对扇区”表示法。但DOS不能直接使用绝对扇区进行磁盘上的信息管理,而是用所谓“相对扇区”或“DOS扇区”。“相对扇区”只是一个数字,如柱面140,磁头3,扇区4对应的相对扇区号为2757。该数字与绝对扇区“柱面/磁头/扇区”具有一一对应关系。当使用相对扇区编号时,DOS是从柱面0,磁头1,扇区1开始(注:柱面0,磁头0,扇区1没有DOS扇区编号,DOS下不能访问,只能调用BIOS访问),第一个DOS扇区编号为0,该磁道上剩余的扇区编号为1到16(设每磁道17个扇区),然后是磁头号为2,柱面为0的17个扇区,形成的DOS扇区号从17到33。直到该柱面的所有磁头。然后再移到柱面1,磁头1,扇区1继续进行DOS扇区的编号,即按扇区号,磁头号,柱面号(磁道号)增长的顺序连续地分配DOS扇区号。 5 J0 q! z: J& P$ A
公式:记DH--第一个DOS扇区的磁头号
9 \2 W7 B* w+ b2 O# QDC--第一个DOS扇区的柱面号 # a: j/ R# K0 E$ _9 R
DS--第一个DOS扇区的扇区号 , w- v$ S. A2 S8 H% \
NS--每磁道扇区数 ; K; |9 d% x3 \, F) u$ [0 T; a
NH--磁盘总的磁头数
7 a  l  s! N  Z: e则某扇区(柱面C,磁头H,扇区S)的相对扇区号RS为:
, n0 I# d9 e% D0 g7 F: e, @% HRS=NH×NS×(C-DC)+NS×(H-DH)+(S-DS)
( B; _) B" B% e" i2 ^4 A若已知RS,DC,DH,DS,NS和NH则 & j, B: F$ c8 C. d# O9 Q$ E
S=(RS MOD NS)+DS
8 S$ x: I  o7 \/ ^* NH=((RS DIV NS)MOD NH)+DH - _  }) k$ ~( D; \; {& s7 H
C=((RS DIV NS)DIV NH)+DC 6 v* D. X3 l2 q3 O
要点:(1)以柱面/磁头/扇区表示的为绝对扇区又称物理磁盘地址 7 A& R/ d; N# n6 P6 \
(2)单一数字表示的为相对扇区或DOS扇区,又称逻辑扇区号 6 F" r- Y! G$ q7 X
(3)相对扇区与绝对扇区的转换公式 4 I0 D$ i3 v8 T6 ~
4.DOS磁盘区域的划分 3 }0 t! S+ Q( j! d- N
格式化好的硬盘,整个磁盘按所记录数据的作用不同可分为主引导记录(MBR:Main Boot Record),Dos引导记录(DBR:Dos Boot Record),文件分配表(FAT:File Assign Table),根目录(BD:Boot Directory)和数据区。前5个重要信息在磁盘的外磁道上,原因是外圈周长总大于内圈周长,也即外圈存储密度要小些,可靠性高些。 ) t# _) _# h0 C! j, ]! [
要点:(1)整个硬盘可分为MBR,DBR,FAT,BD和数据区。 4 n: b' d( V" @) e
(2)MBR,DBR,FAT,和BD位于磁盘外道。
: d5 ~7 \3 t# V) ]/ t( ?5. MBR : x) m/ k, x/ l
MBR位于硬盘第一个物理扇区(绝对扇区)柱面0,磁头0,扇区1处。由于DOS是由柱面0,磁头1,扇区1开始,故MBR不属于 DOS扇区,DOS不能直接访问。MBR中包含硬盘的主引导程序和硬盘分区表。分区表有4个分区记录区。记录区就是记录有关分区信息的一张表。它从主引导记录偏移地址01BEH处连续存放,每个分区记录区占16个字节。 " _$ ]  c+ U7 `! D1 D2 U
分区表的格式   @7 ]3 l: |* n; ]0 |
分区表项的偏移 意义 占用字节数
& T! b/ r' G! n5 _1 s" ~00 引导指示符 1B
& Y) F3 s' A# k# H. |3 Y01 分区引导记录的磁头号 1B
! z  h! g. F4 }02 分区引导记录的扇区和柱面号 2B
0 H& h) Y, Y- d04 系统指示符 1B ) g: H0 Z$ Y7 N7 ]2 a
05 分区结束磁头号 1B / A" j5 P1 B9 i
06 分区结束扇区和柱面号 2B
- Z4 y. V; R4 x% r1 P08 分区前面的扇区数 4B 9 ~. w; ~8 C8 F. z
0C 分区中总的扇区数 4B ! w+ Z+ U" W0 o& h. m
4个分区中只能有1个活跃分区,即C盘。标志符是80H在分区表的第一个字节处。若是00H则表示非活跃分区。例如: ' o1 i! A5 O( q1 U4 H0 X9 ]
80 01 01 00 0B FE 3F 81 3F 00 00 00 C3 DD 1F 00
9 T5 h* l" l" ~) m, S  v00 00 01 82 05 FE BF 0C 02 DE 1F 00 0E 90 61 00 & M# M% m; w3 f1 i# ^
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 / U7 z* j7 M4 A6 q/ s  k+ A
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
. F7 ?  G' ^; n: v" V要点:(1)MBR位于硬盘第一个物理扇区柱面0,磁头0,扇区1处。不属于DOS扇区,
1 M, u7 Z0 p4 T7 J, X) q3 i: y4 z(2)主引导记录分为硬盘的主引导程序和硬盘分区表。
3 i" ?: ?* a! y. i0 x: |4 J6.DBR ( k' `4 W/ a/ }- q
DBR位于柱面0,磁头1,扇区1,即逻辑扇区0。DBR分为两部分:DOS引导程序和BPB(BIOS参数块)。其中DOS引导程序完成 # c+ r7 m, d5 z% `; M4 s- \$ h7 ]
DOS系统文件(IO.SYS,MSDOS.SYS)的定位与装载,而BPB用来描述本DOS分区的磁盘信息,BPB位于DBR偏移0BH处,共 13字节。它包含逻辑格式化时使用的参数,可供DOS计算磁盘上的文件分配表,目录区和数据区的起始地址,BPB之后三个字提供物理格式化(低格)时采用的一些参数。引导程序或设备驱动程序根据这些信息将磁盘逻辑地址(DOS扇区号)转换成物理地址(绝对 $ B, ~, l3 Y$ m" u/ T$ K8 r
扇区号)。BPB格式
' g- ^2 s1 m% b$ j, B" g- Q. I序号 偏移地址 意义 / l6 J, |. H6 A; s. k. M
1 03H-0AH OEM号
! O9 w- @4 G1 [9 d: Q! _: S1 Z' {" v$ x/ S! r2 0BH-0CH 每扇区字节数
% e% F' T3 N# D3 0DH 每簇扇区数 - {4 A* ]5 g8 _- u6 r" A
4 0EH-0FH 保留扇区数
1 {2 `. A! i# V9 m0 V& p+ L! m0 S; ^5 10H FAT备份数 4 k+ x- o# \  p6 d& L* P+ `
6 11H-12H 根目录项数 % c8 o4 c5 J! L! t) Q: P, s
7 13H-14H 磁盘总扇区数 5 M; k1 \! ~9 R" k
8 15H 描述介质 ' |0 A8 B! Q* O# e2 ]7 k
9 16H-17H 每FAT扇区数 % G9 k' Y* f1 Y  g
10 18H-19H 每磁道扇区数
0 B* D: F9 z5 }# o1 k1 p6 @11 1AH-1BH 磁头数 4 A& ^! }3 `! z& y" I7 x$ Q5 f, x% b
12 1CH-1FH 特殊隐含扇区数
  ?* k: u0 z" G! B  `7 x+ o* e; D13 20H-23H 总扇区数 / o+ A4 q9 H1 @9 w+ s, U* G/ p
14 24H-25H 物理驱动器数
; F& M' t6 A) K4 ~15 26H 扩展引导签证 & C0 `+ G1 ~0 r/ Q6 a" W  o8 }
16 27H-2AH 卷系列号 * E5 D+ K/ K" ~6 A# L4 \  p
17 2BH-35H 卷标号
2 A& U) @/ o8 {4 p0 k7 ^/ o18 36H-3DH 文件系统号
& y5 e3 n  g2 H' KDOS引导记录公式:
, e9 x9 S5 g6 i/ N6 F5 q文件分配表≡保留扇区数 " k6 \! r7 m0 J4 n
根目录≡保留扇区数+FAT的个数×每个FAT的扇区数 . i+ X% I( f1 ]  e8 u! L2 i5 ^
数据区≡根目录逻辑扇区号+(32×根目录中目录项数+(每扇区字节数-1))DIV每扇区字节数 / y2 i7 X* p7 A0 u
绝对扇区号≡逻辑扇区号+隐含扇区数 9 b, Q$ A2 @3 P2 S& z) Z9 ^
扇区号≡(绝对扇区号MOD每磁道扇区数)+1
8 F/ o$ M  p$ H; i: f4 m, a磁头号≡(绝对扇区号DIV每磁道扇区数)MOD磁头数 3 w' s; v3 ?- }& `% @1 e- A
磁道号≡(绝对扇区号DIV每磁道扇区数)DIV磁头数   O% J. b8 F, S+ \8 R" U+ M
要点:(1)DBR位于柱面0,磁头1,扇区1,其逻辑扇区号为0 ) r; ^& `2 M1 @+ u1 x2 V
(2)DBR包含DOS引导程序和BPB。 ( J! J! y8 Z# `: T7 A
(3)BPB十分重要,由此可算出逻辑地址与物理地址。
2 y) Y" w* V* o2 x# L3 T7.文件分配表
: Y; c, ?! m0 p* s4 m文件分配表是DOS文件组织结构的主要组成部分。我们知道DOS进行分配的最基本单位是簇。文件分配表是反映硬盘上所 & j5 ]+ t4 u% w3 ]
有簇的使用情况,通过查文件分配表可以得知任一簇的使用情况。DOS在给一个文件分配空间时总先扫描FAT,找到第一个可用簇,将该空间分配给文件,并将该簇的簇号填到目录的相应段内。即形成了“簇号链”。FAT就是记录文件簇号的一张表。FAT的头两个域为保留域,对 FAT12来说是3个字节,FAT来说是4个字节。其中头一个字节是用来描述介质的,其余字节为FFH 。介质格式与BPB相同。 ; R8 H" e, F) t* n9 E( r
第一个字节的8位意义: & V# T# h/ J7 n, m% l' H
7 6 5 4 3 2 1 0 6 @" {" z( C% c# `6 _8 T$ r$ G' ~
└—————-┘ │ │ │┌0非双面 ; x- h/ Q8 @5 E6 G2 V2 Q
置1 │ │ └┤
5 y. m6 T% r+ g. x9 P7 v4 _6 V│ │ └1双面 9 ?/ L/ A4 E% Y# y# {! o; J
│ │┌0不是8扇区 3 |' t: `- k5 D; k
│ └┤
; m) ?1 t; Y# a- C│ └1是8扇区 5 T8 }+ H: N7 G1 Q
│┌0不是可换的
9 v' V4 z  ]1 p# q+ c( g% n└┤ : Q% j" h2 N* K9 ?; }0 P
└1是可换的
( `8 M$ L& Z$ dFAT结构含义 4 K& L- d. C' ^0 \
FAT12 FAT16 意义
1 [% s% O, t: n  [! t! {000H 0000H 可用
% @' `2 n0 j/ k3 IFF0H-FF6H FFF0H-FFF6H 保留
: s) O+ W3 i: ]9 \( QFF7H FFF7H 坏
" c# h% O4 M: \- qFF8H-FFFH FFF8H-FFFFH 文件最后一个簇
1 n3 v# F$ V( _* u' C( T, \×××H ××××H 文件下一个簇
' `6 Y7 ?" [: z4 r" C对于FAT16,簇号×2作偏移地址,从FAT中取出一字即为FAT中的域。
. @( l6 [& Z8 d逻辑扇区号=数据区起始逻辑扇区号+(簇号-2)×每簇扇区数
1 O0 `* n& L7 X# k" M  j7 Q( L$ W2 Y簇号=(逻辑扇区号-数据区起始逻辑扇区号)DIV每簇扇区数+2 " ?8 a2 h! c! d  Y) l6 O
要点:(1)FAT反映硬盘上所有簇的使用情况,它记录了文件在硬盘中具体位置(簇)。
" C/ e2 Y+ G3 n7 K8 i5 ^( G5 H% @(2)文件第一个簇号(在目录表中)和FAT的该文件的簇号串起来形成文件的“簇号链”,恢复被破坏的文件就是根 ! b' E) [" C) F
据这条链。
. ~' B3 M. ~* \' ?3 b( L& e(3)由簇号可算逻辑扇区号,反之,由逻辑扇区号也可以算出簇号,公式如上。
1 {0 ^9 n7 g; h; W# D(4)FAT位于DBR之后,其DOS扇区号从1开始。 7 O1 ^0 j9 ~7 X2 R
8.文件目录 , k1 _; H; r- I5 L& k+ e3 U+ Q
文件目录是DOS文件组织结构的又一重要组成部分。文件目录分为两类:根目录,子目录。根目录有一个,子目录可以有多个。子目录下还可以有子目录,从而形成“树状”的文件目录结构。子目录其实是一种特殊的文件,DOS为目录项分配32字节。目录项分为三类:文件,子目录(其内容是许多目录项),卷标(只能在根目录,只有一个。目录项中有文件(或子目录,或卷标)的名字,扩展名,属性,生成或最后修改日期,时间,开始簇号,及文件大小。 目录项的格式字节偏移 意义 占字节数
- I: G# B  H* E9 J00H 文件名 8B & a7 k0 \: y& E# u! `
08H 扩展名 3B
  W; t) O3 K0 n0 Z0BH 文件属性 1B
0 ?8 f) Y6 H( Y( U: G/ _4 y0CH 保留 10B ' Z; V: T" T1 |6 @  G2 a
16H 时间 2B * a8 |1 N1 o0 A. l5 ~3 m& _5 D- j
18H 日期 2B
+ ]7 ^2 r0 F# _5 B8 K1AH 开始簇号 2B
7 Z& H+ M# c$ Y! F1 |1CH 文件长度 4B 9 e) h/ N( C0 I5 i* ~+ n
目录项文件名区域中第一个字节还有特殊的意义:00H代表未使用
5 K# G3 @, M- X" n' }05H代表实际名为E5H
2 L4 t1 M% U, S% [+ \EBH代表此文件已被删除
5 |0 r4 M4 G6 X3 x% t目录项属性区域的这个字节各个位的意义如下: 7 6 5 4 3 2 1 0
* P5 V: f& ]6 _5 c% _4 {; m未 修 修 子 卷 系 隐 只
! b! r' |7 j0 Y# n: x用 改 改 目 标 统 藏 读
( s! v% P8 S# ~$ D! U标 标 录 属 属 属
5 C3 D. Y0 b7 ^' a志 志 性 性 性 ! L8 e- L$ s6 `$ u4 f" I
注意:WINDOWS的长文件名使用了上表中所说的“保留”这片区域。 % u. U, y& C6 S: q9 \
要点:(1)文件目录是记录所有文件,子目录名,扩展名属性,建立或删除最后修改日期。文件开始簇号及文件长度的一张 ! B2 \$ [" U2 Z# `3 P
登记表.
3 B" C+ {0 ]; d( i& n$ P( W$ o9 F$ m(2)DOS中DIR列出的内容训是根据文件目录表得到的。
* r( `, \& H) p(3)文件起始簇号填在文件目录中,其余簇都填在FAT中上一簇的位置上。 % a# F( X& @; v
9.物理驱动器与逻辑驱动器
" h* X7 g" M: {3 w物理驱动器指实际安装的驱动器。 " ]# z( |8 C+ z4 ]" j. v. Q
逻辑驱动器是对物理驱动器格式化后产生的
/ G# Z1 |( M' q" M; U, g参考资料:http://zhidao.baidu.com/question/13783240.html?si=2
 楼主| 发表于 2010-2-19 10:08 | 显示全部楼层
本帖最后由 kenson 于 2010-2-19 15:58 编辑 / Q! a) s& W1 l% B8 v

8 T- i$ C  u' D' k9 V/ Z硬盘 结构 原理 磁道,扇区和柱面图示
0 D3 W1 \3 \, |; ^: O; H# `
3 }. w0 r4 x0 c' G; b0 a0 Q; p
4 u8 X9 n' G8 u+ \+ f
们知道硬盘中是由一片片的磁盘组成的,大家可能没有打开过硬盘,没见过它具体是什么样.不过这不要紧.我们只要理解了什么是磁道,扇区和柱面就够了.) O2 u( n# X7 Z( ~( u
1 C/ }4 U+ E/ ~4 q8 ~. l) M0 c$ u
在下图中,我们可以看到一圈圈被分成18(假设)等分的同心圆,这些同心圆就是磁道(见图).不过真打开硬盘你可看不到.它实际上是被磁头磁化的同心圆.如图可以说是被放大了的磁盘片.那么扇区就是每一个磁道中被分成若干等分的区域.相邻磁道是有间隔的,这是因为磁化单元太近会产生干扰.一个小软盘有80个磁道,硬盘嘛要远远大于此值,有成千上万的磁道.每个柱面包括512个字节。8 A$ e2 o$ R0 H, V- n. G( o
http://gonghui.2u.com.cn/attachments/month_0712/20071216_e4701958d49adea7c5acY0FDKwmNnhzD.jpg   q6 w! W8 Z/ C" o

3 M3 A/ w; T) Q9 O' q1 w7 |  i% J# r9 Y5 `' l) g5 |
0 ]/ m' h: [* F

) G* a* A" B/ n& E+ T* ^
4 ^1 j0 k* K- T/ y那么什么是柱面呢?看下图,我们假设它只有3片.每一片中的磁道数是相等的.从外圈开始,磁道被分成0磁道,1磁道,2磁道......具有相同磁道编号的同心圆组成柱面,那么这柱面就像一个没了底的铁桶.哈哈,这么一说,你也知道了,柱面数就是磁盘上的磁道数.每个磁面都有自己的磁头.也就是说,磁面数等于磁头数.7 q# _4 t, C3 z) \# p3 ]
; v, r% \) ]6 f0 J
2 A/ @" Z* m$ X# H7 _5 f  X# c
http://gonghui.2u.com.cn/attachments/month_0712/20071216_7b5ea5f5105a72412c48uFlYPSGpTIoE.jpg   B" D" w7 L  F* ~2 |
* P3 F- Y' V3 {/ O% ]
  R0 F9 N8 u; Y) v5 Z! H
硬盘的容量=柱面数(CYLINDER)*磁头数(HEAD)*扇区数(SECTOR)*512B.这下你也可以计算硬盘的一些参数了.7 _+ s3 g0 U! t) z- u5 m% _) H
; T4 g# U. ?1 u; Y4 [) Z
什么是簇?
2 }; S; H: l* i' B% s" l) N& C! T# N7 I' q
文件系统是操作系统与驱动器之间的接口,当操作系统请求从硬盘里读取一个文件时,会请求相应的文件系统(FAT 16/32/NTFS)打开文件。扇区是磁盘最小的物理存储单元,但由于操作系统无法对数目众多的扇区进行寻址,所以操作系统就将相邻的扇区组合在一起,形成一个簇,然后再对簇进行管理。每个簇可以包括2、4、8、16、32或64个扇区。显然,簇是操作系统所使用的逻辑概念,而非磁盘的物理特性。 ; Y% N6 p: Z, p% c/ E+ N

' B% ^$ M, q# z! B) J3 q" _为了更好地管理磁盘空间和更高效地从硬盘读取数据,操作系统规定一个簇中只能放置一个文件的内容,因此文件所占用的空间,只能是簇的整数倍;而如果文件实际大小小于一簇,它也要占一簇的空间。所以,一般情况下文件所占空间要略大于文件的实际大小,只有在少数情况下,即文件的实际大小恰好是簇的整数倍时,文件的实际大小才会与所占空间完全一致。硬盘的DOS管理结构 8 a) B6 _/ [. Y, K; R

' S3 M! F$ }0 v) ^0 v9 |8 j- ~1.磁道,扇区,柱面和磁头数 7 C+ i, t: x4 k$ n: b
  硬盘最基本的组成部分是由坚硬金属材料制成的涂以磁性介质的盘片,不同容量硬盘的盘片数不等。每个盘片有两面,都可记录信息。盘片被分成许多扇形的区域,每个区域叫一个扇区,每个扇区可存储128×2的N次方(N=0.1.2.3)字节信息。在DOS中每扇区是128×2的2次方=512字节,盘片表面上以盘片中心为圆心,不同半径的同心圆称为磁道。硬盘中,不同盘片相同半径的磁道所组成的圆柱称为柱面。磁道与柱面都是表示不同半径的圆,在许多场合,磁道和柱面可以互换使用,我们知道,每个磁盘有两个面,每个面都有一个磁头,习惯用磁头号来区分。扇区,磁道(或柱面)和磁头数构成了硬盘结构的基本参数,帮这些参数可以得到硬盘的容量,基计算公式为:
( ^/ n: z# c' o* z存储容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数
% J0 O# G- |  f$ k" g, E' r6 q要点:(1)硬盘有数个盘片,每盘片两个面,每个面一个磁头 2 S* V% K; H; o' ?* m! F
   (2)盘片被划分为多个扇形区域即扇区
9 ?+ L% \! W9 N; z* j3 p" T: X   (3)同一盘片不同半径的同心圆为磁道
# M* v4 ~4 q; h" k  i1 m( K   (4)不同盘片相同半径构成的圆柱面即柱面 + o( `, N) R6 u, u; z0 f
   (5)公式: 存储容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数
6 i7 P# U; G9 v( }4 M* r2 `/ t   (6)信息记录可表示为:××磁道(柱面),××磁头,××扇区 ) K5 S3 L3 c7 ]5 T
7 r. p4 ]  G- f4 @5 T5 W  k
2.簇
4 N6 k8 c) X( P. u  “簇”是DOS进行分配的最小单位。当创建一个很小的文件时,如是一个字节,则它在磁盘上并不是只占一个字节的空间,而是占有整个一簇。DOS视不同的存储介质(如软盘,硬盘),不同容量的硬盘,簇的大小也不一样。簇的大小可在称为磁盘参数块(BPB)中获取。簇的概念仅适用于数据区。
3 B( C5 o" q, g) i本点:(1)“簇”是DOS进行分配的最小单位。 6 A4 P/ x( ?6 O
   (2)不同的存储介质,不同容量的硬盘,不同的DOS版本,簇的大小也不一样。
, G9 |8 `# @3 ]$ f6 N   (3)簇的概念仅适用于数据区。
; y% v3 w- }* M6 @! ^/ L( w, l% H' P* y4 c( Q# W% o6 P' d. z
3.扇区编号定义:绝对扇区与DOS扇区
" j& F! x1 X+ E0 T  由前面介绍可知,我们可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域,或是说柱面/磁头/扇区与磁盘上每一个扇区有一一对应关系,通常DOS将“柱面/磁头/扇区”这样表示法称为“绝对扇区”表示法。但DOS不能直接使用绝对扇区进行磁盘上的信息管理,而是用所谓“相对扇区”或“DOS扇区”。“相对扇区”只是一个数字,如柱面140,磁头3,扇区4对应的相对扇区号为2757。该数字与绝对扇区“柱面/磁头/扇区”具有一一对应关系。当使用相对扇区编号时,DOS是从柱面0,磁头1,扇区1开始(注:柱面0,磁头0,扇区1没有DOS扇区编号,DOS下不能访问,只能调用BIOS访问),第一个 DOS扇区编号为0,该磁道上剩余的扇区编号为1到16(设每磁道17个扇区),然后是磁头号为2,柱面为0的17个扇区,形成的DOS扇区号从17到 33。直到该柱面的所有磁头。然后再移到柱面1,磁头1,扇区1继续进行DOS扇区的编号,即按扇区号,磁头号,柱面号(磁道号)增长的顺序连续地分配 DOS扇区号。 3 z3 E" U2 _  {- s; O# _5 B& B6 d& e; q
公式:记DH--第一个DOS扇区的磁头号
+ f3 @$ r4 @9 ~+ ^9 j    DC--第一个DOS扇区的柱面号
% l* r2 j  j: z9 M- K3 F; {    DS--第一个DOS扇区的扇区号
) Y5 Y6 k: d( n    NS--每磁道扇区数 ! U  a# ?3 Y9 a7 X& `
    NH--磁盘总的磁头数
) V: i" |  l! ~4 @$ Z' `   则某扇区(柱面C,磁头H,扇区S)的相对扇区号RS为: & x- t" H# ?; c  d& g
RS=NH×NS×(C-DC)+NS×(H-DH)+(S-DS) * l* N5 C5 L8 j9 ?2 X. {
   若已知RS,DC,DH,DS,NS和NH则
3 I$ J: S; H+ e- H! e' vS=(RS MOD NS)+DS * N7 R4 c( N& c8 Z7 X2 S
H=((RS DIV NS)MOD NH)+DH
8 Y) [; b7 Z+ [C=((RS DIV NS)DIV NH)+DC
) b- J" S  z- o2 h0 t& d& |要点:(1)以柱面/磁头/扇区表示的为绝对扇区又称物理磁盘地址 3 _  {- B. p4 b  h6 s$ |
   (2)单一数字表示的为相对扇区或DOS扇区,又称逻辑扇区号 + G$ V6 s$ }1 V3 r
   (3)相对扇区与绝对扇区的转换公式
" P$ ?  }' x6 \3 b# J$ I4 `/ _' V
. V/ N# @0 f3 v6 \+ Z4.DOS磁盘区域的划分 1 i9 F/ ~  {( ^& H( Q& W
  格式化好的硬盘,整个磁盘按所记录数据的作用不同可分为主引导记录(MBR:Main Boot Record),Dos引导记录(DBR:Dos Boot Record),文件分配表(FAT:File Assign Table),根目录(BD:Boot Directory)和数据区。前5个重要信息在磁盘的外磁道上,原因是外圈周长总大于内圈周长,也即外圈存储密度要小些,可靠性高些。% p! y2 l+ w5 h3 ~2 X
要点:(1)整个硬盘可分为MBR,DBR,FAT,BD和数据区。 : ?8 g. b  l: O4 d2 W
   (2)MBR,DBR,FAT,和BD位于磁盘外道。
+ x, K$ O, U/ ~2 _4 |& _* g$ `8 j' u$ P
5.MBR
" I2 ^( B: O+ y4 X3 `  MBR位于硬盘第一个物理扇区(绝对扇区)柱面0,磁头0,扇区1处。由于DOS是由柱面0,磁头1,扇区1开始,故MBR不属于DOS扇区,DOS不能直接访问。MBR中包含硬盘的主引导程序和硬盘分区表。分区表有4个分区记录区。记录区就是记录有关分区信息的一张表。它从主引导记录偏移地址 01BEH处连续存放,每个分区记录区占16个字节。
3 O8 H5 h7 |9 x' w4 T分区表的格式
- O1 A- q/ t! l" Y$ _" j- F分区表项的偏移 意义   占用字节数 % ]  j. Y4 h% Z+ j4 Q# I! ~
   00 引导指示符 1B $ x4 m$ ]7 S1 w4 z! N# @
   01 分区引导记录的磁头号 1B 1 X, g; i8 C+ m8 a2 h, z( G- m
   02 分区引导记录的扇区和柱面号 2B ! F  Y( ~: \+ m+ i' w9 v- z
   04 系统指示符 1B
& Q1 z* F1 x) U! ^   05 分区结束磁头号 1B & {+ @) q+ D/ ?; Z1 N8 Z# O
   06 分区结束扇区和柱面号 2B
' V$ Q+ i' }$ K4 q4 j2 M1 x   08 分区前面的扇区数 4B
" ]$ w0 s5 S8 U   0C 分区中总的扇区数 4B ! A: c, l) V( W
4个分区中只能有1个活跃分区,即C盘。标志符是80H在分区表的第一个字节处。若是00H则表示非活跃分区。例如:
5 |# x8 W& S- F* u4 }1 z! f  V80 01 01 00 0B FE 3F 81 3F 00 00 00 C3 DD 1F 00
0 {+ O- f" v0 s! _) C' l# `00 00 01 82 05 FE BF 0C 02 DE 1F 00 0E 90 61 00 8 w3 Q, ~9 Q4 g2 s3 F
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1 y# b" ]' z$ f7 `: P; |4 t
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
1 m  V2 G4 m" k( O要点:(1)MBR位于硬盘第一个物理扇区柱面0,磁头0,扇区1处。不属于DOS扇区, * ?  W' {/ w9 l
   (2)主引导记录分为硬盘的主引导程序和硬盘分区表。 ; R9 Y! l, |# C2 ?
' k# ]5 \- _' d5 n' i. u* o5 @8 t
6.DBR + R: L) |! o9 P" X7 q3 g; C
  DBR位于柱面0,磁头1,扇区1,即逻辑扇区0。DBR分为两部分:DOS引导程序和BPB(BIOS参数块)。其中DOS引导程序完成DOS系统文件(IO.SYS,MSDOS.SYS)的定位与装载,而BPB用来描述本DOS分区的磁盘信息,BPB位于DBR偏移0BH处,共13字节。它包含逻辑格式化时使用的参数,可供DOS计算磁盘上的文件分配表,目录区和数据区的起始地址,BPB之后三个字提供物理格式化(低格)时采用的一些参数。引导程序或设备驱动程序根据这些信息将磁盘逻辑地址(DOS扇区号)转换成物理地址(绝对扇区号)。BPB格式
& b6 s+ K( |& S9 C8 J1 q4 a  U序号 偏移地址 意义
1 Z3 S1 ~* T' C9 {  H) X  ~5 |1 03H-0AH OEM号 " }& N/ m; w2 D: u' h
2 0BH-0CH 每扇区字节数
1 q1 }. `/ r2 h9 Y* w  ]: O+ v3 0DH 每簇扇区数
; C9 _& W% V/ g: N4 0EH-0FH 保留扇区数
3 g1 e9 u$ k! _: s5 10H FAT备份数 0 l2 e7 D+ G2 _, ^3 }( o
6 11H-12H 根目录项数 0 p$ o8 H4 Q0 o+ S% m
7 13H-14H 磁盘总扇区数 0 e; V+ S" E* J) e( v5 B
8 15H 描述介质
: _; X+ c- A/ I+ A# Z7 K9 16H-17H 每FAT扇区数 8 x0 }& ?, M# ~
10 18H-19H 每磁道扇区数 4 S+ p  [- c0 m: w$ X# D/ T
11 1AH-1BH 磁头数
% F1 T0 C8 D' L& i% v( ^2 W0 M# y6 ?12 1CH-1FH 特殊隐含扇区数 0 t0 |7 l# j' U6 A' m
13 20H-23H 总扇区数
. x3 C% w  `8 |& w' R. W14 24H-25H 物理驱动器数
; P. U5 E) {9 e- i8 h15 26H 扩展引导签证
) o/ \7 f  O* z" X2 j16 27H-2AH 卷系列号
: G- N. W0 V( f17 2BH-35H 卷标号 0 ?* T8 T- ~  _5 H0 M" ]
18 36H-3DH 文件系统号
/ [9 S% ~4 O) |. f2 d6 M! m, H0 h* RDOS引导记录公式: & t5 J, T' J* ~5 ~
文件分配表≡保留扇区数
0 M( m# W1 R5 M1 @+ L) m根目录≡保留扇区数+FAT的个数×每个FAT的扇区数
/ m) h" b4 l5 ~3 E数据区≡根目录逻辑扇区号+(32×根目录中目录项数+(每扇区字节数-1))DIV每扇区字节数
$ }5 J! }* ], r绝对扇区号≡逻辑扇区号+隐含扇区数 ( l$ {9 f* O8 v; P& |
扇区号≡(绝对扇区号MOD每磁道扇区数)+1 8 B: Z0 d: }! f7 l
磁头号≡(绝对扇区号DIV每磁道扇区数)MOD磁头数
/ t. A3 j6 W9 m磁道号≡(绝对扇区号DIV每磁道扇区数)DIV磁头数 : I! v/ H5 U& k) m& i: {
要点:(1)DBR位于柱面0,磁头1,扇区1,其逻辑扇区号为0
. s, \3 O  n2 ]7 s  J   (2)DBR包含DOS引导程序和BPB。
  f% w4 l( v# N) G3 l" {   (3)BPB十分重要,由此可算出逻辑地址与物理地址。
2 E4 i2 ]: d& F; M! ]  h3 L
6 R  [; j; Z* Z4 Z% w7.文件分配表 3 p! Z) z0 V: {( D8 H" _6 y2 [' G
  文件分配表是DOS文件组织结构的主要组成部分。我们知道DOS进行分配的最基本单位是簇。文件分配表是反映硬盘上所有簇的使用情况,通过查文件分配表可以得知任一簇的使用情况。DOS在给一个文件分配空间时总先扫描FAT,找到第一个可用簇,将该空间分配给文件,并将该簇的簇号填到目录的相应段内。即形成了“簇号链”。FAT就是记录文件簇号的一张表。FAT的头两个域为保留域,对FAT12来说是3个字节,FAT来说是4个字节。其中头一个字节是用来描述介质的,其余字节为FFH 。介质格式与BPB相同。 * W3 B2 q3 q# d" c0 D" N. t
第一个字节的8位意义: 4 Z4 t, o. ~/ T# o
7 6 5 4 3 2 1 0
8 k* V. a1 ^. Y+ h8 f" w: I└─────-┘ │ │ │┌0非双面 ; M. T/ K) r, v. b
置1 │ │ └┤
' [+ f; b" ?8 E0 \│ │ └1双面 ' o& D+ \/ S" D8 ]7 u
│ │┌0不是8扇区
( r* @) z# T% A4 |│ └┤
# _. B- P& u! I0 ]$ Y  y7 J│ └1是8扇区 $ t7 `; N% N& V
│┌0不是可换的 6 ]% N- s7 C1 o
└┤
4 ]" `2 X3 s1 B└1是可换的
2 h! K& `+ s9 l) U( YFAT结构含义 * j+ z) ~7 }  F. \
FAT12 FAT16 意义 , f; N) ?7 v- k& R
000H 0000H 可用
" z( q, B4 H1 P% LFF0H-FF6H FFF0H-FFF6H 保留 ! p- y" S' a3 ~8 F
FF7H FFF7H 坏
8 k) L, x/ }$ W- o7 kFF8H-FFFH FFF8H-FFFFH 文件最后一个簇
( g% P4 K1 E3 r* y×××H ××××H 文件下一个簇
8 ~/ J; V+ Y7 B* a0 x9 e对于FAT16,簇号×2作偏移地址,从FAT中取出一字即为FAT中的域。
# t/ m" F+ B2 ~5 Y/ _8 \2 B逻辑扇区号=数据区起始逻辑扇区号+(簇号-2)×每簇扇区数
. t& X/ }! ~4 d1 g. M簇号=(逻辑扇区号-数据区起始逻辑扇区号)DIV每簇扇区数+2 ! j1 D# I) Z  r. r
要点:(1)FAT反映硬盘上所有簇的使用情况,它记录了文件在硬盘中具体位置(簇)。
4 J& O  A+ j6 b, f   (2)文件第一个簇号(在目录表中)和FAT的该文件的簇号串起来形成文件的“簇号链”,恢复被破坏的文件就是根 " f9 [* _3 m3 @' Z! i
据这条链。
, D3 t9 R' ?/ I- P6 r2 A/ {0 a1 N   (3)由簇号可算逻辑扇区号,反之,由逻辑扇区号也可以算出簇号,公式如上。
% ?& |1 Z2 p/ j' k2 a3 R+ M   (4)FAT位于DBR之后,其DOS扇区号从1开始。* o, v" s$ c0 [- m
8.文件目录 8 P# C3 A# y/ L5 A  d
  文件目录是DOS文件组织结构的又一重要组成部分。文件目录分为两类:根目录,子目录。根目录有一个,子目录可以有多个。子目录下还可以有子目录,从而形成“树状”的文件目录结构。子目录其实是一种特殊的文件,DOS为目录项分配32字节。目录项分为三类:文件,子目录(其内容是许多目录项),卷标(只能在根目录,只有一个。目录项中有文件(或子目录,或卷标)的名字,扩展名,属性,生成或最后修改日期,时间,开始簇号,及文件大小。 + Z" W2 V! k; L9 g" B) k4 A4 E  X
目录项的格式 % D7 s/ w; b, u
字节偏移 意义 占字节数   j4 z4 j3 y* T7 T& y
00H 文件名 8B ; l1 [5 F5 x4 \9 N$ Z
08H 扩展名 3B 9 l- `- p  R. W( }& ^- |& z
0BH 文件属性 1B
8 I. a9 k1 l: e; g0CH 保留 10B , p1 p7 ?* n1 P( j
16H 时间 2B ! G; @; l. M& ~
18H 日期 2B   ~0 b( X* D& w1 v. @
1AH 开始簇号 2B
, \; p# U* {% Q  ~4 k  Z4 N1CH 文件长度 4B % y  Z) D' H" I- J. J% i
目录项文件名区域中第一个字节还有特殊的意义:00H代表未使用
6 _7 e( @4 P9 i& r9 U05H代表实际名为E5H
2 S0 J% B+ C% M9 UEBH代表此文件已被删除
  K/ S: _. c6 J4 V' u+ ^' e目录项属性区域的这个字节各个位的意义如下: 7 6 5 4 3 2 1 0
: K2 f3 T5 P/ w& K* t2 y+ q                      未 修 修 子 卷 系 隐 只 " T1 G8 `! c( U6 l8 W4 M
                      用 改 改 目 标 统 藏 读
- s7 ]5 R' c. u4 u                        标 标 录   属 属 属
4 G8 l$ o6 P/ H4 O# E                        志 志     性 性 性 9 L9 I' m, |, y- Y# ^
注意:WINDOWS的长文件名使用了上表中所说的“保留”这片区域。 & D7 Z8 R% S, N, c4 I
要点:(1)文件目录是记录所有文件,子目录名,扩展名属性,建立或删除最后修改日期。文件开始簇号及文件长度的一张
/ o6 V7 a4 ^" n# k      登记表.
: }3 H7 {, A) L4 r  S0 P   (2)DOS中DIR列出的内容训是根据文件目录表得到的。 * J5 G+ ^9 l" p# l2 w( s7 R7 d; \
   (3)文件起始簇号填在文件目录中,其余簇都填在FAT中上一簇的位置上。
: l0 _% l0 B1 K: s
2 }- G5 l1 g  l0 s6 I0 d9.物理驱动器与逻辑驱动器 0 {9 l: H) {$ a+ [& t! v- R
  物理驱动器指实际安装的驱动器。 ( H- U9 Q  P! c) H9 @
  逻辑驱动器是对物理驱动器格式化后产生的。
0 ?% C' `3 W9 D2 l0 `要点:同上。 4 R  d- h, `! ]% |. }

4 I9 o- U% u7 y& i# {- O6 e=================================================================================
7 p0 K7 K. {; V$ ?$ j3 f) V4 hfantaxy:2 }; r- [8 C, h  `8 a" ~( l( Y
其实细节之外的最基本东西就是:磁道,扇区,柱面和磁头数* T' x* T% o6 |# n  G( f
可以这么理解吗?:
* D% C2 k% R. F$ K3 Y2 F1. 扇区3 \! [: |) K% P* d1 |( T
扇区不是扇形的,即不是两个半径之间的区域,而是个四边形:两个半径为两边,两个大小同心圆作为两外两边。
" E' p. F! u+ ]0 n% J  ^2. 磁道
' P8 s' s9 Z6 _5 s" H  T磁道不是线性的,而是个区域,有两个大小同心圆组成2 ?5 q0 R! ~, f: D' W: \% g4 f) y
3. 柱面不是面而是号码相同的多个磁道组成的柱体
  u/ v  l, k* p5 k/ H2 Z4. 磁头数:因为磁盘的双面存储性,使得计算时用磁头数而没有用盘片数
) {7 g% q3 F0 z! I* X; t可以说:扇区是硬盘分割的最小单位。
. [" o5 A* F" I5 |存储容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数# L) `5 l1 n! a  R$ ^( W& b
___________________________|-----磁道的总字节数-----|      " G- {5 Y. v) M' d4 S
_______________|-------磁盘一个盘面的总字节数------------|
, @  n( O. U; c* z" H8 t__________|-----磁盘容量(磁头数个盘面)--------------------| 另外如果想详细了解:硬盘+分区+fileSystem+file存取等细节,请看《鸟哥的Linux私房菜》--磁碟与档案系统一节,很很详细!

本版积分规则

QQ|一淘宝店|手机版|商店|电子DIY套件|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2024-5-18 23:10 , Processed in 0.060789 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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