Paul said:
I would expect the size of the FAT is a bit of an issue.
http://en.wikipedia.org/wiki/Design_of_the_FAT_file_system#File_Allocation_Table
"Because each FAT32 entry occupies 32 bits (4 bytes) the
maximal number of clusters (268435444) requires..."
1073741776 bytes or a gigabyte of RAM to hold the whole FAT.
I don't think that win-9x/me ever loads the entire FAT during normal
operation.
Right now I've got two large SATA drives (A and B) connected to the
win-98 system I'm typing this post on.
chkdsk on drive A:
1,464,780,864 kilobytes total disk space
900,908,800 kilobytes free
32,768 bytes in each allocation unit
45,774,402 total allocation units on disk
28,153,400 available allocation units on disk
Drive B is a 750 gb drive, with 22.8 million total clusters, with about
6000 free clusters.
I have 2 gb ram on this system (with a "special" memory patch that
allows win-98 to see and use all 2 gb).
According to Norton System Information, I currently have 2015 mb free,
and 87.3 mb in use. I have Firefox 2 running, and it's using 24 mb (the
most of any loaded module). Win16 Sys is listed as using 21.1 mb, Win32
Sys is using 14.6, Netscape (Communicator, what I'm using to read/post
to usenet) is using 14.1 mb. 32-bit device drivers are using 9.51 mb.
I see no large block of ram being used to store or cache the hard drives
or their FAT's.
Regarding this issue of cluster size and FAT-32, have a look at what I
posted back in 2007:
https://groups.google.com/forum/#!topic/microsoft.public.win98.gen_discussion/Rd6U5kIturI
Cluster size and exploring the limits of FAT-32
=================================
So here is the master summary of this thread:
---------------------------
1) Scandisk (DOS scandisk.exe, not Windows scandskw.exe) does not
appear to have a cluster-count limitation. Both Win-98se and Win-ME
versions of scandisk have been run on drives with up to 31 million
clusters and have executed properly with no errors. Himem.sys must be
loaded for scandisk to function properly. Microsoft states that
FAT-32 volumes are limited to 4.17 million clusters because of
scandisk.exe, and that scandisk.exe is limited to a memory or data
array size of 16 million bytes. It could very well be that this 16 mb
limit is based on Microsoft's stated minimum system requirements for
Windows 98 (which is 16 mb of system RAM) and that scandisk will
automatically make use of all available system memory if required.
----------------------------
2) Win-98se has been installed directly on 160 gb volumes formatted
with 4kb cluster size (resulting in 40 million clusters) and has not
shown any instability. This was performed on a 160 gb SATA drive
assigned to a RAID controller (but not used in RAID mode). To test
for 137gb data corruption (which theoretically takes place when a read
or write across the 137 gb boundary occurrs) a series of 1 gb VOB
files were copied repeatedly in order to fill the drive. The drive
was eventually filled with 150 of these 1 gb files, and no drive
corruption occurred.
----------------------------
3) The only drawback that I've seen when running a volume with a large
cluster count is that DOS will take a much longer time to perform the
first DIR command. This might also happen in Windows as well - I may
have seen this effect but I haven't specifically looked for it. The
issue is the computation and display of free remaining drive space,
which is part of the DIR command and also happens when browsing the
drives in windows. Related to this is the question does windows store
the amount of remaining drive space somewhere on the drive (instead of
requiring it to be re-calculated every time it's needed).
---------------------------
4) Standard DOS tools like fdisk and format can be used to partition
and format hard drives in excess of 137 gb. Fdisk was used to
partition a 160 gb drive into a 32 gb primary and 121 gb secondary.
The updated or "fixed" version of fdisk.exe was used. What has not
been tested (yet) is the undocumented /Z:n command line parameter for
format, which allows the user to specify a particular cluster size (n
x 512 bytes). Third-party drive utilities (based on On Track's Disc
Manager) can also be used to partition and format hard drives, but I
have found those utilities to be very unstable and to lock up/crash
about 75% of the time I use them.
---------------------------
5) There is evidence that 6,291,204 clusters may represent some sort
of "magic number". A third-party drive partition tool (PartitionMagic
Pro Server 8.05) resorted to this cluster count when an existing 32 gb
partition was manually resized to 4kb cluster size. Norton Disk
Doctor and Speed Disk was found to work properly using this cluster
count, but not on a volume with a slightly larger cluster count of 7.8
million clusters (see note 7 below). This 6.3 million cluster count,
combined with 32kb cluster size, results in a volume size of 206 gb.
Perhaps this set of parameters is the reason for the 200 gb hard drive
size which emerged in early to mid 2003. A dir command is also
performed instantly with no delays in computing free space given a
volume with 6.3 million clusters.
---------------------------
6) Win-98 versions of Scandisk (scandskw.exe) and Defrag did not
function on a volume with 6.3 million clusters but seems to be limited
to the MS stated value of 4.17 clusters. However, Windows ME versions
of dskmaint.dll and defrag.exe does appear to function correctly with
Windows 98se and compatibility with volume size of up to 31.2 million
clusters has been observed. It is not know what their ultimate limit
is.
----------------------------
7) Norton Utilities is a very common third-party set of applications
and their compatibility with large hard drives with a large cluster
count may be of importance to some people. I have found that Norton
Disk Doctor and Norton Speed disk were compatible with volumes with up
to 6.3 million clusters, but not more without using the command-line
parameter /NOLBA. When using this parameter, NDD and SD worked on
volumes with 7.8 million clusters but not 31 million. The exact
cluster-count limit is therefore unknown at this point and I may
explore that in the future.
The switch /NOLBA forces NDD and SD to skip the drive configuration
check. This can also be done using a registry entry by adding a DWORD
registry value named NOLBACHECK at this location:
HKEY_LOCAL_MACHINE\Software\Symantec\Norton Utilities
When this option is set to 1, Norton Disk Doctor and Speed Disk skip
the drive configuration check.
----------------------------
8) Anyone considering adding a large hard drive (a drive larger than
137 gb) to an existing win-98 computer needs to consider certain
issues that include the drive type (IDE/PATA vs SATA) as well as how
the drive is controlled by the motherboard BIOS (mapped to IDE channel
or controlled by RAID controller). The main issue here is that you DO
NOT WANT the win-98se 32-bit driver (ESDI_506.PDR) to be used to
access a hard drive larger than 137 gb. Many or most motherboards
made for the past 3 years will have built-in SATA ports. Windows-98
users are advised to obtain SATA drives instead of the older
conventional IDE drives when adding a new drive (larger than 137 gb)
to a system or if building a new system.
====================================
And see also this:
https://groups.google.com/forum/#!topic/microsoft.public.win98.gen_discussion/DV_7O2vV1hw
Windows 98 large file-count tests on large volume (500 gb hard drive)