- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
FAT32文件系统研究
一、从分区表开始
硬盘为什么要分区,个人看法是资料管理更方便。分区的概念是死老外提出来的,但是死老外真的就是死老外,你看他们出的机器,他愣就不给你分,一个硬盘有多大他就给你搞多大个区,搞的你所有资料都放一个盘,一旦系统崩溃,那个烦啊。(其实这也叫分了区,只不过只有一个而已。)Dell更过分,你想分成你希望的分区还得加服务费100大元整,我倒,1分钟搞定的事,收100!!RMB真的贬值了!!!废话不多说,下面说正题。先上图:
图一
这是分区表的最后80字节,分区表从地址:1BEH处开始,每16字节为一个分区项,最后的1FE开始的55AA两个是结束的意思。这在其他如DBR等里面也是一样的意思。
下面来解释下分区项的含义。?
偏移 长度 值 含义 1BE 1字节 0 磁盘激活标记,80激活,00未激活 1BF 1字节 1 分区起始磁头 1C0 6Byte 1 分区起始扇区,低0-5位为扇区数,高6-7位用作柱面的高二位 1C1 10Byte 1 分区起始柱面,前一字节的后二位一起用来表示柱面数 1C2 1字节 0B 分区格式,分区的类型,如0B表示FAT32 1C3 1字节 FE 分区结束磁头 1C4 6Byte 3F 分区结束扇区,含义同起始扇区 1C5 10Byte 7F 分区结束柱面,含义同起始柱面 1C6 4字节 3F 分区起始逻辑扇区 1CA 4字节 1F6041 分区总扇区 事实上,起始磁头柱面扇区以及结束磁头柱面扇区从Win98(貌似是,不记得了)开始就没有实际含义,因为CHS寻址方式因最大只能寻址到8.4G,(原因?自己可以计算下看看)从这版的系统开始,使用的是LBA寻址方式,也即线性寻址方式。以前采用28位的LBA,因此又有128G的限制,或者说137G限制。为什么128G或者137G呢?那你看看120G的硬盘格式化出来是多大就知道了。现在的硬盘都很大,为了全部使用,因此出现了48位LBA。好了,不扯远了,继续我们的话题。
从图一可以看出,如果硬盘分区全部是主分区的话,只能有4个,而如果采用主分区+扩展分区的方式,则可以有3个主分区+无限逻辑分区的可能。因为扩展分区也采用了类似分区表的方式表示方法,采用一个链表来指向下一个逻辑分区。
虽然不再采用CHS而采用了LBA方式,但还是遵循不能跨越柱面的原则,即保留扇区加本分区总扇区数是柱面容量的整数倍。柱面容量是255×63。
在Winhex中,也可以看到分区项的含义:
?
图二
以下是常见的分区类型:?
00 5C Priam?Edisk 01 FAT12 61 Speed?Stor 02 XENIX?root 63 GNU?HURD?or?Sys 03 XENIX?usr 64 Novell?Netware 06 FAT16?04?表示分区小于32M 65 Novell?Netware 07 HPFS?/?NTFS 70 Disk?Secure?Mult 08 AIX 75 PC/IX 09 AIX?bootable 80 Old?Minix 0A OS/2?Boot?Manage 81 Minix/Old?Linux 0B Win95?FAT32 82 Linux?swap 0C Win95?FAT32 83 Linux 0E Win95?FAT16 84 0s/2?hidden?C: 0F Win95?Extended(大于?8GB) 85 Linux?extended 10 OPUS 86 NTFS?volume?set 11 Hidden?FAT12 87 NTFS?volume?set 12 Compaq?diagmost 93 Amoeba 16 Hidden?FAT16 94 Amoeba?BBT 14 Hidden?FAT1632MB A0 IBM?Thinkpad?hidden 17 Hidden?HPFS/NTFS A5 BSD/386 18 AST?Windows?swap A6 Open?BSD 1B Hidden?FAT32 A7 NextSTEP 1C Hidden?FAT32?partition?(using?LBA-mode?INT?13?extensions) B7 BSDI?fs B8 BSDI?swap 1E Hidden?LBA?VFAT?partition BE Solaris?boot?partition 24 NEC?DOS C0 DR-DOS/Novell?DOS?secured?partition 3C Partitio?Magic C1 DRDOS/sec 40 Venix?80286 C4 DRDOS/sec 41
文档评论(0)