VOGONS


First post, by mxmxmx2

User metadata
Rank Newbie
Rank
Newbie

If you try to install MS-DOS 5 to a hard disk drive where the file system has two sectors per cluster, you get an error message:

The attachment guest os_001.png is no longer available

(The screenshot is from DOSBox, but I encountered this on real hardware first.)

It is an oddly worded message: Sectors per cluster must be a power of two. Hence, what it really wants to say is: the file system needs to have 4 sectors per cluster or more. Note that MS-DOS itself can read the hard disk without problems, it's just the installer that complains.

Not wanting to reformat my C: drive, I patched the check out of the installer. The installation went without issues, and the now installed MS-DOS 5 works as well.

But surely, the error message must be there for a reason. Does someone know? Neither the MS-DOS manual nor an Internet search yielded any clues.

Reply 1 of 3, by igully

User metadata
Rank Newbie
Rank
Newbie

My quick guess is that it is down to how the boot loading mechanism expects the kernel to be placed (IO.SYS).
Also, I seem to remember that there was a dreadful bug in the CHKDSK command in MS-DOS 5.0.

Reply 2 of 3, by mxmxmx2

User metadata
Rank Newbie
Rank
Newbie

You're probably right. Searching for IO.SYS and three sectors lead to this old KB article: https://web.archive.org/web/20070304041252/ht … ft.com/kb/66530. For MS-DOS 5, it states: "The first three sectors of IO.SYS do not need to be in the first three sectors of the data area; however, they must be contiguous." They seemingly opted for the easiest way for the installer to ensure contiguity: requiring large enough clusters. This also explains the odd wording that mentions "3 disk sectors".

The CHKDSK bug, on the other hand, as far as I know, does only depend on the total number of clusters, but not on cluster size.

Reply 3 of 3, by Zup

User metadata
Rank Oldbie
Rank
Oldbie
igully wrote on 2025-11-15, 21:53:

My quick guess is that it is down to how the boot loading mechanism expects the kernel to be placed (IO.SYS).
Also, I seem to remember that there was a dreadful bug in the CHKDSK command in MS-DOS 5.0.

AFAIR, in previous DOS versiones (until 4), IO.SYS and MSDOS.sys MUST be on the first sectors/clusters of the filesystem. Trying to do a SYS on a disk with files it's almost guaranteed to fail.

Starting with DOS 5, they could be anywhere, but one portion of the system files MUST be on the first sectors/clusters of the disk. SYS will almost always work in a disk with files. I guess that the non-relocatable portion of the system files are those 3 sectors (this entry on wikipedia says that the first 3 sectors of IO.SYS may be anywhere, but they must be contiguous... so a 3-sector cluster has some sense).

I have traveled across the universe and through the years to find Her.
Sometimes going all the way is just a start...

I'm selling some stuff!