The maximum number of partitions that can be mounted varies and is controlled by the number of file control blocks (FCB) that are allocated by the system. When a volume is mounted, there are at least four files open (the catalog file, the extents file, Desktop DB and Desktop DF). If the volume is being shared then there are also other files that are open. In addition, on the startup volume, the system, finder and font files are open as well as some extensions. All of these use file control blocks. The maximum number of FCBs is 348.
When volumes are mounted the driver for the drive containing the volume posts a disk inserted event for every Macintosh partition on the drive. When the Finder is launched and starts handling events, it processes the disk inserted events and mounts the volumes.
The reason only 21 of the 29 volumes are mounted is that the event queue only holds 20 events. Therefore one would think that only 20 volumes should be mounted, but 21 are mounted. This is because the boot volume is mounted when the system actually starts booting and not by the Finder. The other 20 volumes are then mounted by the Finder for a total of 21.
If you need all 29 volumes at startup, you can use the "Mount volumes at startup" option in SCSI Probe. Disklock also mounts all volumes, because it is looking for locked volumes. There are probably other utilities that will mount the volumes at startup. There are several that will mount volumes when the system is running including SCSI Probe and FWB Mounter.
This article was published in the 4 June 1997 "Information Alley".