Others here have mentioned the inter-sector gaps, but I thought it
might be enlightening to describe just how much space these really
take; it's probably more than you might think.
Today I happened to be working out code to format disks on my Fujitsu
FM-7, which uses 5.25" double-sided, double-density floppies, just
like the IBM PC, with the same low-level (index marker, etc.) disk
formatting. But the FM-7 uses 16 × 256 byte sectors per track, for 320
KiB of user data storage per disk, whereas the PC uses 9 × 512 byte
sectors per track, for 360 KiB of user data storage. (These numbers
are the total number of data bytes that can be written in all the
sectors, i.e., what's available to the OS before filesystem overhead
or anything like that.)
Here (with a few minor approximations) are the raw bytes that actually
get written to disk.
The track starts (after the index mark) with "post-index" information,
that exists only once at the start track:
80× $4E post-index gap
12× $00 sync
3× $C2 index address mark
$FC index address mark
50× $4E gap
Then the following is written for each sector:
12× $00 sync
3× $A1 ID address mark
$FE ID address mark
$__ Track number
$__ Side number
$__ Sector number
$__ Sector length (1 for FM-7 256 bytes/sec, 2 for PC 512 bytes/sec)
2× CRC CRC bytes for the ID data
22× $4E gap
12× $00 sync
3× $A1 data address marker
$FB data address marker
SS× $__ sector data; SS = sector size (256 or 512)
2× CRC CRC bytes for the sector data
NN× $4E gap; NN = 54 for 256 byte sectors, 84 for 512 byte sectors
There will be a varying amount of extra $4E filler at the end, after
all the sectors, depending on the sector size, variance in the speed
of the disk, and so on.
So the overhead here, after the user data itself, is 116 bytes for a
256 byte sector and 146 bytes for a 512 byte sector. This means that:
- The FM-7s 16 × 256-byte sectors, storing 4096 bytes of user data,
use at least 6098 bytes of raw data on a track.
- The PC's 9 × 512-byte sectors, storing 4608 bytes of user data, need
only 5922 bytes of raw data on a track.
Storing 12% more user data on the disk by increasing sector size
actually stores 3% less actual raw data on the disk. There's no
advanced technology involved here; in fact if we were pushing the
limits of the disk it would be the lower-capacity format that would
fail first, as it ran out of track space to store all the extra empty
gaps it's putting on the track.