[TUHS] TUHS Digest, Vol 38, Issue 10

Bakul Shah bakul at bitblocks.com
Thu Jan 10 01:09:55 AEST 2019


On Tue, 08 Jan 2019 22:45:31 -0700 Warner Losh <imp at bsdimp.com> wrote:
>
>
> > > For example, I could envisage a disk where the sectors are deliberately
> > > not numbered sequentially i.e. they've taken rotational latency into
> > > account for you?
> >
> > We did in fact use an interleave factor of more than 1 (skip
> > more than 1 block for consecutively numbered sectors) to
> > improve throughput but that had to do with slow processing.
> > We did discuss "dead reckoning" (invoking the service routine
> > right when the N+1 numbered sector was near the r/w heads) but
> > I don't think we implemented it.
> >
>
>  For floppy drivers that I've seen the source to in early unixes, this was
> often the case. One minor device would be to access the 'raw' device, while
> another would be to access the 'cooked' sector numbers where the mapping
> was anything but linear. you'd have an interleave of, say, 4 or so, and
> then a 'slip' from track to track. The interleave factor was based on how

We used interleaving on the hard disk because a 5Mbps ST412
drive could stream data faster than typical user program could
handle (on a 5.6Mhz bus machine). We used h/w support as the
machine was already too slow to do any s/w interleaving!

Example: for an interleave of 1, at the time formatting the
disk, sector ids would be written in this sequence:
 1 8 2 9 3 A 4 B 5 C 6 D 7 E
We picked the interleave number based on some typical use
cases at the time.

The floppy driver was was a completely separate driver for
various reasons.


More information about the TUHS mailing list