Microsoft KB Archive/258281

From BetaArchive Wiki
Knowledge Base


Article ID: 258281

Article Last Modified on 2/20/2007



APPLIES TO

  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition



This article was previously published under Q258281

SYMPTOMS

Programs that retrieve disk geometry information may show that very small SCSI disks have zero cylinders. If such a disk does not already have a signature, you cannot perform operations on the disk by using Logical Disk Manager.

CAUSE

In general, Windows 2000 obtains disk geometry information for SCSI disks from the BIOS of the SCSI adapter for the disk. If the SCSI adapter BIOS is not enabled, Windows 2000 cannot obtain geometry information in this way and assumes that there are 255 heads and 63 sectors per track. Windows 2000 then computes the number of cylinders necessary to represent the entire disk based on the total number of sectors, rounding down to the nearest whole cylinder. If there are fewer than 16,065 total sectors (63 * 255), this computation results in the disk having less than 1 cylinder with this geometry. Because fractional cylinders are not permitted, rounding down results in zero whole cylinders available on such a disk. 16,065 sectors corresponds to a disk size of about 8 MB, so any disk that is smaller than about 8 MB seems to have zero cylinders if BIOS geometry information is not available to the operating system.

Microsoft Windows NT 4.0 performs the same kind of computation when geometry information is not available, but uses smaller default values for the number of heads (64) and sectors per track (32). Because of its smaller default head and sector counts, Windows NT 4.0 does not yield a zero-cylinder disk unless the disk is smaller than 1 MB.

RESOLUTION

To resolve this problem, obtain the latest service pack for Windows 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

260910 How to Obtain the Latest Windows 2000 Service Pack


The English version of this fix should have the following file attributes or later:

   Date        Time    Version         Size    File name   
   --------------------------------------------------------
   04/11/2000  03:12p  5.00.2195.2031  33,680  Classpnp.sys
                



STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in Windows 2000 Service Pack 2.

MORE INFORMATION

A disk's geometry is the number of cylinders, sectors per track, and tracks (or heads) a disk has. The actual geometry of modern disks is usually not relevant to an operating system such as Windows 2000. Instead, for most purposes, Windows 2000 treats disks like a linear array of sectors; geometry information is used only when it is needed for support of older programs.

Although the geometry information is used primarily for older programs and does not for most purposes affect Windows 2000, the code that writes partition tables and signatures on basic disks does so by referring to the disk geometry. Partitions that are created on basic disks are always aligned with the start of a cylinder. Therefore, you cannot create a partition on a disk with zero cylinders. The code that is used to write signatures on disks is the same code that is used to partition disks. Therefore, to write a signature on a basic disk, that disk must have at least one cylinder. Disks with zero cylinders are prevented from being partitioned or having signatures written. Dynamic disks do not have this limitation. The fix for this problem involves using an alternate geometry for small disks that ensures that disks will always have at least one cylinder.

Because of the way in which disk geometry is handled by Windows NT 4.0 and Windows 2000, disk geometry may seem to change on a particular disk. There are three general situations in which the geometry of a disk might seem to change:

  • When you upgrade a computer in which the BIOS on the SCSI adapter is disabled from Windows NT 4.0 to Windows 2000.
  • When you change the BIOS settings on the SCSI adapter, either by enabling or disabling the BIOS, or by specifically altering the sector translation.
  • When you move a disk from one host bus adapter (HBA) to another (as might occur during failover in a clustered environment).

In any of these situations, the apparent geometry of the disk might change.

Windows NT 4.0 and Windows 2000 use the geometry information in two situations:

  • When you partition basic disks. After disks are partitioned, Windows NT and Windows 2000 use absolute sector offsets to address sectors on the disk. These absolute sector offsets are independent of the apparent disk geometry. Even if portions of a disk are not addressable by using the cylinder/sector/head geometry that is currently in effect, all of the data on existing partitions remains accessible. The only time a change in geometry can cause a problem is if you need to re-create a partition by using a geometry that is no longer in effect. For example, this behavior might occur if you have a software fault-tolerant (FT) set, such as a software mirror or a software RAID-5 array. If you create the FT set while one geometry is in effect, and a member disk fails while it is in a different geometry state, it may not be possible to re-create a partition of the correct size to fill the roll of the failed disk by using the same hardware. To work around this situation, use one of the following methods:
    • Reinstate the previous disk geometry. (This may not be possible following an upgrade, but could be a matter of simply enabling or disabling the BIOS).
    • Use a slightly larger disk as the replacement drive.
    • Back up data from the FT set and restore the data after re-creating the FT set.
  • During the early boot process. The early bootstrap process uses BIOS-level functions that depend on the geometry of the boot device. However, for a disk to be available as a boot device, the BIOS must be enabled on the HBA for that disk. Therefore, the disk geometry should not change because of an upgrade from Windows NT 4.0 to Windows 2000. If the apparent geometry of a boot disk changes for any other reason, it is likely that booting from that disk would not work until you restore the apparent geometry to its original state.

Changes in the apparent disk geometry are generally benign. Changes to the geometry can affect the ability to boot from a disk or the ability to create basic partitions of a given size in some situations, but generally do not affect the ability to access data on a drive in Windows 2000.

Note Be aware of the following problem that may occur when you upgrade from Windows NT to Windows 2000 and later:

323231 Logical Disk Partitions Are Lost or Damaged After You Upgrade from Windows NT 4.0 to Windows 2000



Additional query words: IOCTL_DISK_GET_DRIVE_GEOMETRY, IOCTL

Keywords: kbhotfixserver kbqfe kbbug kbfix kbqfe kbwin2000presp2fix KB258281