FAT16是比较简单的文件系统,相比NFTS等文件系统,该系统的学习比较easy,容易上手,同时对于数据存储的机理以及数据的恢复有一定的帮助。FAT文件系统有一定的弊端,不能支持太大的数据存储。

FAT16 文件系统包括五部分:DBR,FAT1,FAT2,FDT以及DATA。

对于FAT16文件系统,最为重要的为DBR分区。DBR起始于FAT16文件系统的NO.1 sector.

想象一下计算机启动时,受限由BIOS读入主引导的MBR内容,以确定逻辑驱动器的开始抵制,然后调入活动分区的DBR,由DBR来引导操作系统。如果没有了DBR,那么FAT16文件系统的数据读取将无从谈起。可想DBR是多么重要啊!因此对于深入学习文件系统,DBR内部的组成是必要的。下面小编带领大家走进DBR的世界。

先来个图感受一下:

全部是16进制,看起来像天书哈!

不要紧,笔者慢慢道来。

DBR = JMP + OEM  + BPB + Bootstrap + Finish 

似乎看起来并不难啊,我们继续唠嗑哈哈。

1> JMP

跳转指令,学过汇编指令的很容易懂,(大白话:就是两字节汇编指令,JMP 3C)那么3C后面的90是啥呢?笔者感觉好有趣啊,解开庐山真面目,NOP啊,就是一条空指令。经过深入分析可知:next执行的指令是3E啊。哦哦,原来是这回事。

2> OEM

给设备起个名字呗,很重要的。看下图红线圈到的部分,根据ANSI-ASCII标准进行翻译,结果是MSDOS5.0。哇塞正好是八个字符。可这是啥意思呢?

这是微软公司给的一个编号。MSDOS5.0说明这个FAT16分区是由微软公司Windows2000以上的操作系统格式化创建的。笔者让你看看我的盘,别有风趣哈。

看看上图,是笔者的移动硬盘标识,如果能命名为ZHUHAI.02.UF那该多好,我就可以知道是移动的还是固定的,哎看来FAT16还是有缺陷,笔者也感到遗憾。

小编很伤心,小编再难过也要继续讲完。lets go on!

3> BPB

BPB,笔者感觉怎么有点BIOS的影子呢?是的BPB就是BIOS parameter Block的缩写。这个可是重头戏。

0002 表示每个扇区512Byte;

80 表示每cluster 128扇区;

06 DBR保留6个扇区;

02 两个FAT;(多说一句,要备份啊,防止丢失啊,一个会够吗?)

......

哎,这一个一个说,也不是好的办法。4641543136202020 这个必须说啊,这就是我们的文件系统代码啊FAT16,小编在这里想说的是希望读者认真看看起始地址,你会有个大发现,找到这个地址,你就知道文件系统类型了,哈哈笔者有点口干舌燥,其余的不说了,感兴趣的读者可以自行查询哈。哎继续,一定要说完。

4> Bootstrap

介绍以前我们看两幅图,认真观察哈。

第一个,简直是咒语,看不懂,右边的简直是鸟语,痛苦,无奈。这个不需要理解,我就一句概括:这段代码负责完成系统文件的装入,对于没有安装系统的分区来说没用。看着烦人,全部清零,丝毫不影响的,硬盘打开没问题。

5> Finish

结束了,哈哈。DBR要结束了。给个标志55AA。这可是固定的哟。多说一句,MBR结束也是55AA。好有趣啊。DBR分析完了,好巧啊正好一个扇区521Byte。因此我们有时候称DBR为引导扇区。

静下心想一想,我要是把DBR里面一部分擦出了,看你如何偷看我丢弃盘的数据,哼哼!

好累啊。小编在此,没有详细介绍FAT表,关于FAT表,那可是一个很有趣的玩意,后续会介绍的哈。

instruct

<FAT文件系统> -- DBR的更多相关文章

  1. FAT文件系统学习和思考

    FAT(File Allocation Table)文件系统 前两天面试,导师说我基础差,要赶紧补起来了.今天晚上看了FAT32文件系统,基本的信息都是百度百科中"FAT文件系统" ...

  2. FAT文件系统规范v1.03学习笔记---4.文件和目录数据区之长目录项

    1.前言 本文主要是对Microsoft Extensible Firmware Initiative FAT32 File System Specification中文翻译版的学习笔记. 每个FAT ...

  3. FAT文件系统规范v1.03学习笔记---3.根目录区之FAT目录项结构

    1.前言 本文主要是对Microsoft Extensible Firmware Initiative FAT32 File System Specification中文翻译版的学习笔记. 每个FAT ...

  4. FAT文件系统规范v1.03学习笔记---1.保留区之 Fat32 FSInfo扇区结构和备份启动扇区

    1.前言 本文主要是对Microsoft Extensible Firmware Initiative FAT32 File System Specification中文翻译版的学习笔记. 每个FAT ...

  5. FAT文件系统规范v1.03学习笔记---2.FAT区之FAT数据结构(Fat Data Structure)

    1.前言 本文主要是对Microsoft Extensible Firmware Initiative FAT32 File System Specification中文翻译版的学习笔记. 每个FAT ...

  6. FAT文件系统规范v1.03学习笔记---1.保留区之启动扇区与BPB

    1.前言 本文主要是对Microsoft Extensible Firmware Initiative FAT32 File System Specification中文翻译版的学习笔记. 每个FAT ...

  7. RTT下spi flash+elm fat文件系统移植小记

    背景: MCU:STM32F207 SPI flash: Winbond W25Q16BV OS: RTT V1.1.1 bsp: STM32F20x 1 将spi_core.c,spi_dev.c及 ...

  8. 在XC2440的uboot中挂载U盘,利用FAT文件系统读写U盘文件

    转:http://blog.chinaunix.net/uid-22030783-id-3347608.html 在XC2440的uboot_V1.3版本中已经支持USB HOST驱动和FAT文件系统 ...

  9. fat文件系统

    在主引导区后面就是FAT表.从上面可以得知一个FAT表是229个扇区.它里边的内容很简单,里边的内容就是指出下一个簇在哪里.你的盘有多少个簇,那么它的FAT表就要有多少个项来描述它们.因为FAT16是 ...

随机推荐

  1. (最完美)红米手机5的Usb调试模式在哪里打开的教程

    就在我们使用安卓手机接通PC的时候,或者使用的有些app比如我们企业营销部门就在使用的app引号精灵,之前老版本就需要开启usb开发者调试模式下使用,现就在新版本不需要了,如果手机没有开启usb开发者 ...

  2. python-css基础知识

    CSS 是指层叠样式表 (Cascading Style Sheets),样式定义如何显示html,用于对页面进行美化. css样式的存放位置有三种: 第一种,直接写在html标签里: <div ...

  3. vue2 作用域插槽slot-scope详解

    插槽分为单个插槽,具名插槽,还有作用域插槽,前两种比较简单这里就不赘述了,今天的重点是讨论作用域插槽. 简单来说,前两种插槽的内容和样式皆由父组件决定,也就是说显示什么内容和怎样显示都由父组件决定: ...

  4. 『计算机视觉』Region Proposal by Guided Anchoring

    论文地址:Guided Anchoring 不得不佩服自媒体,直接找到了论文作者之一写了篇解析文章,这里给出链接,本文将引用一部分原作者的解析,减少我的打字量,也方便结合比照理解. 一.问题和思路 1 ...

  5. promise用法十道题

    JS是单线程语言,多数的网站不需要大量计算,程序耗时主要是在磁盘I/O和网络I/O上 ,虽然固态硬盘SSD读取很快,但是和CPU比起来却不在一个数量级上,而且网络上的一个数据包来回时间更慢,所以一些C ...

  6. java自动化学习笔记

    1.需要的框架有哪些?分别有什么作用? 2.对比python/node.js框架查看异同

  7. C#设计模式(0)-设计模式系列文章导航

    设计模式系列文章导航  C#设计模式(1)——单例模式(SingletonPattern) C#设计模式(2)——简单工厂模式(SimpleFactory)    C#设计模式(3)——工厂方法模式( ...

  8. kali ssh远程连接过程

    准备工具: kali系统,secureCRT, 首先在kali系统中配置ssh文件,我们知道linux总是把所有的配置管理信息当作文件处理,所以对ssh的配置也是相当于对文件的编辑. vi /etc/ ...

  9. 小谈对Python的认知与期望

    18级新生,在大学之前并未接触过程序语言编程,在众多语言编程中只对C语言有个名字上认知.在上个学期初次了解到Python语言,计算机老师表示Python是现在编程语言中如雨后春笋般的发展飞速的计算机语 ...

  10. 图标跟着摄像机(Camera)orthographicSize的值改变大小

    默认摄像机(Camera)orthographicSize默认大小为51 #region //滚轮滑动,大地图放大缩小 ) { if (screenView_1Main.myEquipSearch.i ...