On Fri, 22 Dec 2006, Tony Duell wrote:
Well, if I had a drive with, say, 2 surfaces, 2
heads per surface, and
100 positions those heads could be moved to, I'd probably call it 100
cylinders, 4 heads, since logically it's the same as 4 surfaces with one
head per surface. Calling it 200 cylinders, 2 surfaces, while correct,
would seem to be as confusing as clalling it 400 tracks
I have a Seagate drive (225?) with a clear plastic cover (trade show demo
drive). It appears to have 17 sectors per track, 610? cylinders, 4 heads,
but only one platter! The computer treats it as if it had 2 platters,
with one head on each side of each platter.
On each side of the single platter, there are two heads!
One head "homes" (cylinder 0) near the outer edge, and the other homes
halfway to the middle.
You know, I never realised that it was done on such 'consumer grade' drives. I
suppose the question is whether any such drive with multiple heads per platter
allows the user to control them independently, or whether the number of data
surfaces (along with cylinders and sectors) is what's exposed to the user.
Doubtless there are some oddball systems that might drive the heads
individually (such as the video replay system that Tony has), but I suspect
that for typical computer storage systems geometry is expressed in terms of
surfaces even for a drive that has multiple heads per surface.
Of course, I can just make an executive decision and say I'm not supporting
any device in my software which can't be fitted into the cylinders / surfaces
/ sectors paradigm (I've already decided that I don't want to go near anything
that has a varying block size [1] - although I can't see a problem with
variable sectors per cylinder)
[1] I can't think of anything that does vary the block size on a device
according to position; nor does it really make sense to do so from an OS point
of view - but doubtless there's some systems out there that do :)
cheers
Jules