GNU Info

Info Node: (fdutils.info)XDF

(fdutils.info)XDF


Next: XXDF Prev: 2M Up: Extended formats
Enter node , (file) or (file)node

XDF formats
===========

   XDF is the format used for OS/2 installation floppies.

   Just like 2M, XDF uses mixed sector sizes on "generic tracks".  The
first cylinder uses 512 byte sectors.

   However, for XDF disks, the logical order of the sectors on a given
track, and their physical order is not the same.  This allows a faster
access, in a similar way that interleaving does for disk with normal
sized sectors and too small gaps.  XDF's sector arrangement allows it to
read sectors alternatively from both sides, i.e. the first sector from
side 0, the second from side 1, and the third from side 0 again.  This
differs from the usualy formats, where first the entire side 0 is read,
and then the entire side 1.  This technique allows to read both sides of
a disk in roughly three rotations.

   The following example illustrates how this is done.  In our example
we use the XDF format used for 3 1/2 HD disks, which contains one 8KB
sector, one 2KB sector, one 1KB sector, and one 512 byte sector per
track.  The upper line represents the sectors on side 0, and the lower
line represents the sectors on side 1.  Different numbers represent
different sectors.  Repeated identical numbers represent a single larger
sector.  As the disk is circular, some sectors wrap around at the end:
we find parts of the 8KB sector, represented by 6, both at the beginning
and at the end of each track.

     position:|          1         2         5         4
              | 1234567890123456789012345678901234567890
              |==========================================
     side 0:  | 6633332244444446666666666666666666666666
     side 1:  | 6666444444422333366666666666666666666666
     
     2   512 byte sector
     3   1KB sector
     4   2KB sector
     6   8KB sector

   When reading a track, sectors are read in the following order:
     sector id    head    position at start     position at end
     ----------------------------------------------------------
         3          0               3                 7
         4          0               9                16
         6          1              18                 5    (1st wrap around)
         2          0               7                 9
         2          1              12                14
         6          0              16                 3    (2nd wrap around)
         4          1               5                12
         3          1              14                18

   We notice that the start of each sector happens at least 2 units of
position (around 300 bytes), after the end of the previously read
sector, thus allowing the floppy disk controller sufficient time to
rest.  Moreover, we notice two wrap-arounds, yielding three rotations to
read the whole cylinder (the third rotation is due to the fact that we
stop at a higher position than we started, and that we also need to
allow some time for seeking to the next track).

   MSS or 2M formats of the same capacity nead at least 2 rotations per
side (i.e. 4 per track), yielding a lower throughput.

   *Usage:* XDF disks are not bootable by LILO.  They can be accessed
from MS-DOS and OS/2 using `xdfcopy.exe' or `xdf.com'.  They are only
suitable for MS-DOS filesystems.  The floppy driver has no direct
support for this format yet, but `mtools' is able to read them using
the `FDRAWCMD' ioctl.

   *Interesting Formats:*

     density     tot. cap.    throughput    formatting command
     5 1/4 HD    1600KB        46KB/s       xdfcopy -0 /dev/fd0
     3 1/2 HD    1840KB        38KB/s       xdfcopy -1 /dev/fd0
     3 1/2 ED    3840KB       102KB/s       xdfcopy -2 /dev/fd0

   The options `-1', `-2' and `-3' descibre one out of the five formats
understoood by `xdfcopy' (3 XDF formats and 2 XDF formats).


automatically generated by info2www version 1.2.2.9