Re: Disk geometry from /sys

From: Seewer Philippe
Date: Fri Apr 18 2008 - 09:37:42 EST



Mark Lord wrote:
That can sound a bit misleading. The complete story, for ATA/SATA drives,
is that the disk has two geometries: an internal physical one, with a fixed number of heads and cylinders, but variable sectors/track
(which normally varies by cylinder zone).

Software *never* sees or knows about that geometry, so ignore it.

The second geometry, is the one that the drive reports to software
as its "native" geometry. This is what you see from "hdparm -I"
and friends, and this geometry is what has to be used by software
when using cylinder/head/sector (CHS) addressing for I/O operations.
The hardware interface has a limit of 4-bits for the head value,
so the maximum number of heads can never be more than 16.

Nobody uses CHS addressing for I/O operations, at least not on
any hardware newer than at least ten years old, so this geometry
is also unimportant for most uses.

That's what the drive knows about.

Software, for compatibility with the MS-DOS partition table scheme,
sometimes uses a "logical" geometry, where we "pretend" that a drive
can have up to 255 heads, which then allows more of the disk to be
described within the limitations of the partition table data layout.
That's where one frequently sees "255 heads", even though the drive
underneath uses 16 at the interface level, and probably as only 2
or 4 real heads inside the shell.

Aye. Though I prefer the term virtual geometry. But thats cosmetics. Sorry for beeing unclear, and many thanks for untangling my post.

If anyones interested in even more Details about C/H/S adressing and so on, there's a very good document about that to be found here:
http://www.mossywell.com/boot-sequence/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/