High-Tech
Times Article 026
Fighting
- & Winning - With Windows NT
Welcome
back to the High-Tech Times. As I’ve mentioned many times, my
articles reflect the problems that my clients bring to me. And this
month, it appears that Microsoft has provided the largest battleground
with its Windows NT products. I’ve had at least 15 calls from people
who were simply unable to boot their NT systems!
So I’m going to provide one simple bit of info that might
save your bacon if (when) you run into this type of problem.
If
your Windows NT boot partition is too large or it is not the first
partition on the hard disk, your computer may suddenly refuse to boot.
Why are we seeing more of this problem today? Well, think about how
much you would have had to spend just five years ago to buy the same
22 GB hard-drive that I paid $250 for this week....
Windows
NT’s NTFS disk format allows huge partitions. With a 512-byte
cluster size, you can format a partition of 2 terabytes (TB). That’s
two trillion bytes: enough to hold over four million novels. The
maximum 64KB cluster size allows 256TB, or well over half a billion
books. But even though NT can address all of this huge space, the boot
process starts with your BIOS (Basic Input/Output System), not Windows
NT.
The
BIOS locates the beginning of a partition by using three numbers: the
Starting Side (or Head), the Starting Cylinder, and the Starting
Sector. The end of a partition is identified by three similar numbers.
Now, the Side value is 8 bits, and can range from 0 to 255 (256
numbers); the Cylinder is 10 bits, and can range from 0 to 1023 (1024
numbers); the Sector is 6 bits, and can range from 1 to 63 (63 numbers
- note that zero is not a valid sector number.) This means the maximum
address on the disk is Side 255, Cylinder 1023, Sector 63. The number
of sectors is 256 X 1023 X 63, or almost 16.5 million sectors.
Standard sectors are 512 bytes, so we have a size of 7.87GB.
That’s
the point: The BIOS cannot access anything beyond the first 7.87GB of
the hard disk. If any critical boot data, such as the files NTLDR,
NTDETECT, or BOOT.INI, get moved to a point more than 7.87GB from the
start of the hard disk, your computer will not boot. Anything that
moves one of the critical files may cause the problem; you may have
copied the file from another partition, or you may have edited the
file. But you will not be aware of any problem until the next time you
boot.
You’re
vulnerable to this if the partition on which Windows NT is installed is
larger than 7.87GB, or if this partition is not the first partition on
the disk and the total of this partition and all of the partitions
before it exceeds 7.87GB.
The
first thing to do is to boot up your computer using a boot floppy. This
is simply a floppy formatted on a Windows NT machine (that is vital),
and containing copies of NTLDR, NTDETECT.COM and BOOT.INI. The BIOS
accesses the floppy and finds the data it needs, then the floppy starts
Windows NT, and everything runs fine. Of course, the next time you boot,
the problem is back, but this gets the machine up and running so you can
get your regular work done. Now you can schedule a time to fix it when
you won’t disrupt production.
Now,
to fix it. The problem is simply that some critical file or files lie
beyond the part of the disk which the BIOS can access. The simplest
handling is to use the BIOS to rewrite the file. Start with your Windows
NT Setup Floppies and CD, and proceed as if you were installing a second
Windows NT installation. When asked which folder to use, specify a new
folder, not the one that the existing Windows NT is in.
When asked if you want to check the hard-disks for errors, select
“yes”. Once this check is done, you can abort the new installation
and Windows NT will boot up successfully.
Another
way is to move the critical files back closer to the beginning
of
the disk. This can be difficult because you really don’t know where
the files will be placed when you copy or move them. However, the odds
are on your side if the partition lies mostly within the 7.87GB limit.
Trial and error will do it.
The
simplest prevention is to always have the boot partition as the first
partition
on the hard disk, and ensure that it is less than 7.87GB. If this is not
feasible, take steps to ensure the critical files will not be moved. If
the partition is in NTFS format, set the access on those files so that
only an administrator can access them, and if you are using a
defragmenter such as DisKeeper or Norton, add the critical files to the
defragmenter’s exclusion list.
For
those of you who can access Microsoft’s TechNet, I’ve referenced
Microsoft Knowledge Base Articles Q114841 and Q127134. As Windows 2000
comes closer, and we all try to load up final betas and release
candidates, I think that this information may prove to be quite
useful....
See
you next month.
|