创建fat16模型

creating a fat16 model

本文关键字:模型 fat16 创建      更新时间:2023-10-16

我试图在一个文件中创建一个FAT16模型文件系统,具有创建,查看,删除和复制文件和目录的能力,但我对编程任何人都不熟悉,我可以如何去做呢?我想在

下面加上这样的内容
type
  TFileRec = Packed Record
    ID: WORD; //id of item
    ParID: WORD; //parent id
    Name: String[8]; //name of item
    Ext: String[3]; //extension if any (type)
    Att: BYTE; //attributes (access modifiers, type, etc)
  end;
var
  FAT16: File of TFileRec;
  ItemCount: Integer;

看看由SO用户Primoz Gabrijelcic实现的复合文件。它不是FAT16,但非常接近你正在寻找的。

我建议这样做的方法是调整FAT 16实现以使用文件作为硬盘介质。FAT文件系统到硬盘的接口是系统级命令,如read_sectors和write_sectors,它们将512B缓冲区的倍数读/写到某些LBA地址。对于您的情况,您可以将对读扇区和写扇区函数的调用替换为对文件的实际读写。

因此,通过更改这两个函数,您将媒体访问替换为文件访问。

确切地说,有第三个系统级对硬盘的调用,它返回媒体的大小,这里应该替换为假定作为媒体的最大文件大小。

一个轻量级的FAT实现可以在这里找到