FAT文件系统 文件的创建和删除

文件的创建步骤

假设在名为“子目录1”的文件夹下创建一个名为”文件1.txt”,文件系统FAT32的簇大小为4096字节,文件大小5000个字节。

  1. 读取该分区(卷)保留扇区的0号扇区即引导扇区,根据引导扇区的信息找到FAT表,数据区和根目录的位置(2号簇地址)。
  2. 根据“子目录1”所在的路径,逐步从根目录解析,找到名为“子目录1”的且具有目录属性的目录项。找到该目录项后,查看该目录项的起始簇号。
  3. 读取“子目录1”起始簇的内容,查看目录项并找到一个未使用的目录项。
  4. 在刚找到的一个未使用项中写入文件名为”文件1.txt”,大小为5000字节,根据系统时间写入相关的时间等信息的目录项。
  5. 在FAT表中找到空闲的簇,并将该簇号更新到刚写入的文件目录项的起始簇中。
  6. 写入前4096个字节到刚找到的空闲簇中。
  7. 继续查找另一个空闲的簇,将剩余的904字节写入该簇中。
  8. 将写入剩余904字节对应的簇号写入FAT表中写入4096字节对应的FAT中。
  9. 将刚写入904字节对的FAT表中的簇号写入结束标记(FFFFFF0F)。

文件的删除

一件文件被删除时,它的目录项的第一个字节被置为0XE5,并且将文件内容相应的FAT项置为0以说明原料来分配该文件的簇被取消分配,其它不作任何变动。
同理我们删除刚写入“子目录1”下的“文件1.txt”

  1. 读取该分区(卷)保留扇区的0号扇区即引导扇区,根据引导扇区的信息找到FAT,数据区和根目录的位置(2号簇地址)。
  2. 根据“子目录1”所在的路径,逐步从根目录解析,找到名为“子目录1”的且具有目录属性的目录项。找到该目录项后,查看该目录项的起始簇号
  3. 读取“子目录1”起始簇的内容,查看目录项并找到一个名为”文件1”的目录项,并找到它的起始簇号。
  4. 在FAT表中找该文件对就的簇链,分别对其FAT表内容清空置0
  5. 将文件“文件1.txt”目录项的每一个字节改为0xE5.
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

Powered by bytekits.com,汇天下文字,成非凡梦想!!!