On 01/01/2016 12:36 PM, Fred Cisin wrote:
While, at the time, 2G seemed "infinite",
even then, I was amused at
the 2G limitation being due to the use of a SIGNED 32 bit number.
The size can be anywhere from -2147483648 to 2147483647. By switching
to an UNSIGNED 32, NT and the like made the limit 4G.
I had a few hard drives that were getting crowded, so I stomped on
DIRectory entries on some floppies and made some files with negative
file sizes. I confirmed empirically that copying a file with a
negative size to the drive did NOT increase free space.
I was under the impression that, in FAT16, 2GB was still the limit to
*file* size, but a 4GB *volume* size was okay. It, as far as I know,
isn't so much a limitation on 32-bit numbers, but rather the combination
of the FAT and cluster sizes that dooms it.
What's funny is that in the old pre MS-DOS 3.3 days, one of the ways to
trick DOS into supporting larger volumes was to increase the (apparent)
sector size with code to block up 512 byte sectors into larger (1024,
2048, etc.) apparent ones--and a few DOS patches.
--Chuck