- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
复合文档二进制存储结构通俗讲义及文件头的修复
复合文档二进制存储结构通俗讲义
作者 dengyanhui
首先,大家可以将复合文档与FAT文件系统对比起来学习,复合文档和FAT文件系统有许多相似之处。
复合文档类似于FAT文件系统,大家在理解的时候可以把复合文档和文件系统放到同一个层次;
FAT文件系统有DBR ,FAT表目录。那么对应的复合文档就是文件头,主扇区配置表(MSAT),扇区配置表(SAT),短扇区配置表(SSAT)和复合文档的目录;
在FAT文件系统中,文件采用扇区为单位存储数据,多个扇区组成簇,文件占用多少个簇,占用了哪些簇,簇链是怎样的这个就是由FAT表记录的。相对应的复合文档中,数据也采用扇区来存储数据,只是复合文档中的扇区有基本扇区和短扇区之分。在文件系统中一个扇区占用512个字节,在复合文档中,扇区的大小在文件头中有规定,不过基本都是512个字节。短扇区的大小也在文件头中作出了规定。一般是64个字节。
在复合文档中,数据信息被叫做流,按照流的大小有基本流和短流之分,按照功能来分,有控制流和数据流之分;流相当于文件系统中的文件,文件系统中的文件夹在复合文档中就对应仓库。那么流存在哪里呢?文件系统中数据以扇区来存储,在复合文档中,基本流以扇区来存储,短流由短扇区来存储。而多个短流就组成短路存放流,而且短流存放流是以扇区来存储的;这里给大家总结一下:
流以扇区来存储;
短流以短扇区来存储;
短流组成短流存放流,短流存放流也是以扇区来存储的;
在文件系统中文件以簇来管理,多少个扇区组成一个簇,在DBR中有记录,相应的在复合文档中,基本流的大小也是在文件头中记录的,一般是8个扇区,也就是说基本流的大小相当于簇的大小一样;
在文件系统中,FAT表管理文件的簇链,而在复合文档中,这个工作交给了主扇区配置表,扇区配置表,短扇区配置表这三个配置表。
上述三个配置表记录的和FAT表记录的都是表明扇区或者簇的占用情况的;只是在复合文档中区分的更细致;
MAST记录的是SAT的占用扇区情况,也就是说,MAST的功能就是记录SAT占用了哪些扇区,哪些扇区的编号是多少,只是我们这里叫做SID;
SAT记录的就是一个流占用扇区的情况,一个流占用哪些扇区,哪些扇区的SID是多少;
SSAT记录的就是短流占用扇区的情况;
这些配置表的大小,起始扇区在文件头中都有记录的就像文件系统的DBR记录FAT表的大小一样。
目录(directory)就是一种控制流,由一些列的目录入口(directory entry)组成,每一个目录入口就指向一个流或者仓库。
下面给出复合文档的大概存储结构的实例分析:
这个就是复合文档的文件头,我们逐一分析
DO CF 11 E0 A1 B1 1A E1 复合文档的文件标示;
接下来的16个字节表示此文件的唯一标识(不重要,可以全为0;
接着的两个字节表示文件格式修订号 3E 00;
接着的是文件格式版本号 03 00;
接着是字节顺序规则标识 FE FF 表示字节按小头排序,FF FE表示按大头排序;
接着的四个字节表示复合文档扇区的字节数 以2的冥形式表示 这里是09 00 那么扇区的字节数就是 2的9次方也就是512个字节;
接下来的四个字节表示短扇区的字节数,同上,这里是06 00 也就是2的6次方个字节,这里就是64个字节;
接下来的10个字节没有使用,全是0;
接着的4个字节表示SAT配置表占用的扇区数,这里是 01 00 00 00 也就是说扇区配置表占用1个扇区;
接着的4个字节表示存放目录流的第一个扇区的扇区ID 也就是SID;
接着的4个字节没有使用;
接着的4个字节表示标准流的最小大小,小于这个值的就是短流;
接着的4个字节表示存放短扇区表(SSAT)的起始扇区号。如果不存在短扇区配置表则此处值为 FE FF FF FF;
接着的4个字节表示存放短扇区配置表的扇区总数;
在往下的4个字节表示存放主扇区配置表(MSAT)的起始扇区号,如果没有则为FE FF FF FF;这里说明一下,这里说的存放主扇区配置表的扇区,因为主扇区配置表的前109个SID是存储在文件头中的,如果主扇区配置表内容太多,文件头中存放不下,那么系统会为主扇区配置表分配其他扇区来存放它。这里的4个字节所指的扇区就是额外扇区。这里的实例是 FE FF FF FF 说明主扇区配置表的内容在文件头中就能存储下了,不需要分配额外的扇区来存储了,所以这里就是 FE FF FF FF ;
接下来的4个字节表示存放主扇区配置表的扇区数,这里所指的扇区也是上述的额外扇区;
在往下就是主扇区配置表存储在文件头中的SID了。一个SID占用4个字节,这个和FAT表中一个FAT项占用
您可能关注的文档
最近下载
- 西门子 go topCT 中文版.pdf VIP
- 复合材料【全套课件】.ppt VIP
- 复合材料 第八章 先进复合材料.ppt VIP
- 人教版八年级物理第九单元《压强》测试题及答案.doc VIP
- 《复合材料学》全套教学课件.pptx
- 复合材料复合材料导论.ppt VIP
- 2025年闽教版(2024)小学英语四年级上册(全册)教学设计(附目录P123).docx
- 冠心病的介绍与治疗PPT.pptx VIP
- 2025云南昆明巫家坝建设发展有限责任公司及下属公司第三季度招聘23人笔试参考题库附答案解析.docx VIP
- 2.2.3 气候——特征和影响因素(课件)八年级地理上册(人教版).pptx VIP
文档评论(0)