Opened 5 years ago

Closed 20 months ago

#15 closed enhancement (worksforme)

Support of 64KB clusters (Like WinNT)

Reported by: valerius Owned by: valerius
Priority: Feedback Pending Milestone: Future
Component: IFS Version:
Severity: high Keywords: fat32, ifs, cluster, big


WinNT supports big 64KB (128 sectors) clusters, which fat32.ifs did not supported. Fat32format seems to support 128 sectors per cluster (so, the new FORMAT should support it too). So, we will try to extend other parts to understand these.

Change History (6)

comment:1 Changed 3 years ago by diver

  • Milestone set to Future
  • Severity set to high

comment:2 Changed 3 years ago by valerius

Last edited 3 years ago by valerius (previous) (diff)

comment:3 Changed 3 years ago by valerius

Starting from r208, I added support for reading/writing clusters by smaller subcluster blocks. The size of block is determined as min(ClusterSize?, 32768). So, if ClusterSize? <= 32768, then cluster size == block size. If cluster size is bigger, it still reads by 32 KB blocks. This allows for better support of big 64 KB clusters on FAT32, without allocating a buffer of 64 KB, which is the solution for a 16-bit IFS driver. Also, this allows supporting up to 32 MB clusters in exFAT in the future. So far, it looks that problems, introduced by older 64 KB clusters support code, are gone. Also, starting from r209, #25 should be fixed too.

Please see for latest r210 binaries.

comment:4 Changed 3 years ago by valerius

  • Priority changed from major to Feedback Pending

comment:5 Changed 3 years ago by valerius

Updated to r212. Here is infinite loop is fixed, when adding a directory entry in case of block=cluster=8 KB and 1st cluster is completely filled (128th directory entry).

Last edited 3 years ago by valerius (previous) (diff)

comment:6 Changed 20 months ago by valerius

  • Resolution set to worksforme
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.