Windows NT Does Not Boot with Highly Fragmented MFT

ID: Q228734


The information in this article applies to:
  • Microsoft Windows NT Server version 4.0
  • Microsoft Windows NT Workstation version 4.0
  • Microsoft Windows NT Server version 4.0, Terminal Server Edition


SYMPTOMS

The Windows NT Start menu fails to appear when you start your x86-based computer. A blinking cursor may appear in the upper-left corner of the screen, or an error message may be displayed. This issue only affects computers whose system partition (the partition containing NTLDR and Boot.ini) is formatted with the Windows NT File System (NTFS) file system.


CAUSE

This problem occurs because the low-level bootstrap code contained in the first few sectors of an NTFS volume can not cope with a situation where the volume's master file table (MFT) is highly fragmented.

The role of the bootstrap code is to locate and load the NTLDR file into memory. To perform this function, the bootstrap code must understand NTFS data structures well enough to locate NTLDR on the disk. This task involves reading the volume's MFT in order to obtain the root directory, which in turn contains information necessary to locate the entry in MFT for the NTLDR file itself.

The initial bootstrap code is very small and simple and runs in the processor's "real mode". Therefore, it cannot address large amounts of memory. When MFT is highly fragmented, the Windows NT 4.0 bootstrap code may run out of memory to store all the necessary records that describe MFT. This causes the system to stop responding (hang) and thus, the boot process does not proceed.


RESOLUTION

Windows NT 4.0

To resolve this problem, obtain the latest service pack for Windows NT 4.0 or the individual software update. For information on obtaining the latest service pack, please go to:
For information on obtaining the individual software update, contact Microsoft Product Support Services. For a complete list of Microsoft Product Support Services phone numbers and information on support costs, please go to the following address on the World Wide Web:
http://www.microsoft.com/support/supportnet/overview/overview.asp

Windows NT 4.0 Server, Terminal Server Edition

A supported fix that corrects this problem is now available from Microsoft, but it has not been fully regression tested and should be applied only to systems experiencing this specific problem. If you are not severely affected by this specific problem, Microsoft recommends that you wait for the next Windows NT 4.0, Terminal Server Edition, version pack that contains this fix.

To resolve this problem immediately, contact Microsoft Product Support Services to obtain the fix. For a complete list of Microsoft Product Support Services phone numbers and information on support costs, please go to the following address on the World Wide Web:
http://www.microsoft.com/support/supportnet/overview/overview.asp
The English-language version of this fix should have the following file attributes or later:

   Date       Time    Size      File name   Platform
   -------------------------------------------------
   12/20/99   7:01p   156,496   NTLDR       Intel 


WORKAROUND

To work around this problem, a discussion of MFT fragmentation, together with one method of preventing excessive MFT fragmentation, is presented in the following Microsoft Knowledge Base article:

Q174619 How NTFS Reserves Space for its Master File Table (MFT)
After the system drive is sufficiently fragmented such that the system cannot start directly from the hard disk drive, it is still possible to start through a Windows NT startup floppy disk. This is possible because the floppy disk contains its own copy of NTLDR. For additional information, click the article number below to view the article in the Microsoft Knowledge Base:
Q119467 Creating a Boot Disk for an NTFS or FAT Partition


STATUS

Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article.


MORE INFORMATION

The Bcupdate.exe program updates the low-level bootstrap code stored on NTFS volumes. All NTFS volumes contain bootstrap code, but the code is used only on system volumes.

Because the bootstrap code is a part of the file system and not a part of any "user" file that can be replaced, it is not affected by the application or removal of hotfixes or service packs. Once updated, the boot code remains fixed until the volume is reformatted or the boot code is replaced by some other process (such as that performed by Emergency Repair when it repairs the boot environment).

Microsoft has no plans to incorporate automatic bootstrap code updates as part of a future Windows NT 4.0 service pack installation. To update the bootstrap code and resolve a boot problem of this kind, it is necessary to run Bcupdate.exe.

The modifications made by Bcupdate.exe are generally safe on any version of Windows NT 4.0. However, some systems with particular partition layouts may experience problems unless NTLDR is also updated. Therefore, it is recommended that NTLDR be replaced in conjunction with running Bcupdate.exe.

The updates to the NTLDR module are scheduled to be included in Windows NT 4.0 Service Pack 6 and later.

Windows 2000 contains both the updated bootstrap code and the updated NTLDR file, and thus are not be susceptible to this startup problem.

Additional query words: 4.00 bootcode

Keywords : kbbug4.00 kbfix4.00
Version : winnt:4.0
Platform : winnt
Issue type : kbbug


Last Reviewed: January 21, 2000
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.