Changeset 308


Ignore:
Timestamp:
Sep 17, 2017, 12:20:17 AM (3 years ago)
Author:
Valery V. Sedletski
Message:

fat32.inf: Documentation update.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/ifsinf/fat32/fat32.ipf

    r300 r308  
    15321532letters which are needed to mount&per. (Like /exfat&colon.abcd or /exfat&colon.*)&per. There is an support for exFAT
    15331533filesystems&per. (beta-quality)&per.
     1534
     1535:p.:hp2./PLUS :ehp2. Enable FAT+ support (large files, bigger than 4 GB)&per.
    15341536
    15351537:p.:hp2.Note&colon.  :ehp2.If /FAT or /EXFAT or /FAT32 switches are not specified, all FAT32 disks are mounted
     
    27142716
    27152717:p.:link reftype=hd refid=200701.VFDISK&per.SYS/VDISK&per.SYS/SVDISK&per.SYS/HD4DISK&per.ADD virtual disks :elink.
     2718
     2719:p.:link reftype=hd refid=200702.Support for files > 4 GB on FAT/FAT32 (FAT+) :elink.
     2720
     2721:p.:link reftype=hd refid=200703.Notes on large floppy media&per. :elink.
    27162722.br
    27172723
     
    27762782are FORMAT/CHKDSK/SYSINSTX/LOADDSKF/SAVEDSKF/DISKCOPY on such drives&per. It should work the same way IBM&apos.s FAT works,
    27772783the bonus feature is VFAT long file names support&per.
     2784
     2785:h3 id=200702 res=30063.Support for files > 4 GB on FAT/FAT32 (FAT+) :ehp2.
     2786
     2787:p.:hp2.Support for files > 4 GB on FAT/FAT32 (FAT+) :ehp2.
     2788
     2789:p. DOS people were always limited with FAT filesystem (FAT12/FAT16/FAT32) and it was always a big problem
     2790that the file size is limited to a 32-bit value in FAT&per. Video files and VM images are known examples of
     2791big files, for which a 32-bit value (which limits the file size to 4 GB) is insufficient&per. So, DR-DOS developers
     2792found out a way to store the files bigger than 4 GB on FAT volumes&per. The specification was called FAT+&per.
     2793This specification (http&colon.//www&per.fdos&per.org/kernel/fatplus&per.txt) adds 6 more bits to a file size
     2794by using some reserved bits in the directory entry&per. 2^(32+6) == 256 GB is maximum file size allowed. The FAT
     2795chain size itself is not limited by the FAT spec, limited is only the file size, which is addressed in the FAT+ spec&per.
     2796
     2797:p.The reserved byte is 12-th from the beinning of a directory entry. Two bits of this byte, 3rd and 4th are
     2798reserved by WinNT for specifying that the file name or extension of this file is lower case (no LFN&apos.s are used,
     2799the file has 8&per.3 filename)&per. The bits 6th and 7th are used by fat32&per.ifs for marking file as having EA&apos.s
     2800or having critical EA&apos.s&per. For files having EA&apos.s, bits 6th and 7th are occupied too&per. So, bit 5th now
     2801means that the file size is set in special EA&per. The FAT+, version 3 spec suggests to use a FAT+FSZ EA for storing
     2802the 64-bit size value in EA&apos.s&per. As I can see, "+" sign in the EA name gives a ERROR_INVALID_EA_NAME error
     2803when trying to manipulate with such a file&per. So, I decided to use the FAT_PLUS_FSZ EA instead (which violates
     2804current spec, but it seems the spec is incorrect here, because it sugests to use an invalid EA name)&per.
     2805
     2806:p. So far, FAT+ support is now working&per. I was able to create a 40 GB file indeed, and it could be copied to
     2807another volume&per. The FAT+ support is enabled by the "/plus" command line switch&per. Note that /plus switch
     2808enables large files support too&per. Also, storing files with more than 35-bit size requires EA support (/eas switch)
     2809to be enabled&per. 35-bit size uses bits 0-2 of 12th reserved byte (EA mark byte)&per. 2^35 == 32 GB is the maximum
     2810file size with EA&apos.s disabled&per.
     2811
     2812:h3 id=200703 res=30063.Notes on large floppy media&per. :ehp2.
     2813
     2814:p.:hp2.Notes on large floppy media&per. :ehp2.
     2815
     2816:p. Media without any partitions created, but with a single file system, is called Large Floppy&per.
     2817Such media has no partition table and is beginning from a boot sector, like ordinary floppy disk, but
     2818it is much larger (some gigabytes)&per.
     2819
     2820:p. Such media is frequently created by Windows&per. As it was known, OS2DASD&per.DMD/OS2LVM&per.DMD think
     2821that large floppies must be < 2 GB and formatted with FAT16&per. So, when OS/2 sees a big floppy, it mounts
     2822the kernel FAT driver onto it&per. So, there is currently no way to make OS/2 properly understand Large Floppies,
     2823except for OS2DASD/OS2LVM rewriting&per.
     2824
     2825:p. But there is a workaround created by Lars Erdmann in his version of usbmsd&per.add&per. Lars emulates the
     28260 track together with partition table and DLAT sector with LVM info with default drive letter&per. So, the system
     2827actually sees some emulated partitionable medium, instead of the Large Floppy&per. This is done transparently
     2828when usbmsd&per.add sees the media beginning from the boot sector&per. Such media can be repartitioned by
     2829erasing the boot sector with zeroes&per. Then usbmsd&per.add disables emulation and it then works as usual&per.
     2830
     2831:p.Large floppies can be safely formatted with FAT16/FAT32/exFAT and used with fat32&per.ifs&per.
    27782832
    27792833:p.
Note: See TracChangeset for help on using the changeset viewer.