> It seems the partition always start on LBA 63. For many modern harddrives
> that is the max number of heads. And for a drive with 63 heads it will
> be Cylinder 0 Head 1 Sector 1 (since sectors start at 1, not 0).
> On your flash drive with 32 fake heads LBA 63 becomes C/H/S 0/1/32.

Excellent!  That explains the starting CHS values in the MBR partition 
tables, but we still need to explain the ending CHS values.  Here are the 
MBR partition tables of two more usb flash drives formatted on Windows 
machines:

Disk: sd0       geometry: 797/128/10 [1020160 Sectors]
Offset: 0       Signature: 0xAA55
         Starting       Ending       LBA Info:
 #: id    C   H  S -    C   H  S [       start:      size   ]
------------------------------------------------------------------------
 0: 0B    0   6  4 -  796 127  9 [          63:     1020096 ] Win95 FAT-32
 1: 00    0   0  0 -    0   0  0 [           0:           0 ] unused      
 2: 00    0   0  0 -    0   0  0 [           0:           0 ] unused      
 3: 00    0   0  0 -    0   0  0 [           0:           0 ] unused      


Disk: sd0       geometry: 3935/64/32 [8060926 Sectors]
Offset: 0       Signature: 0xAA55
         Starting       Ending       LBA Info:
 #: id    C   H  S -    C   H  S [       start:      size   ]
------------------------------------------------------------------------
 0: 0B    0   1 32 - 3935  63 17 [          63:     8060850 ] Win95 FAT-32
 1: 00    0   0  0 -    0   0  0 [           0:           0 ] unused      
 2: 00    0   0  0 -    0   0  0 [           0:           0 ] unused      
 3: 00    0   0  0 -    0   0  0 [           0:           0 ] unused      

I am most confused by the ending cylinder of this last table.  There are 
3935 cylinders numbered 0 through 3934, so cylinder 3935 does not exist.  
In fact, the openbsd fdisk utility will not allow me to enter 3935 at this 
point in the partition table.  So, why do Windows machines and Macintoshes 
both put cylinder 3935 in the MBR partition table?

Reply via email to