As wonderful as computers can be, they can also be
incredibly infuriating. Probably the most frustrating problem computer users run into are
startup problems, where your computer wont boot. Equally annoying are error messages
you constantly run into during your computers startup process. In this article
Ill give you a few tips on how you can avoid some of the most common problems that
happen right after your computer turns on.
Learning the Boot
Before getting into the troubleshooting details, you need
to know a little about when goes on during the startup process. The reason is, there are
actually quite a few steps that occur in between flipping the power switch and hearing the
familiar Windows 95, 98 or Windows ME startup sounds and seeing the Windows desktop. In fact, there
are a whole series of files that are automatically loaded one after the other when you
turn your computer on. The trick with troubleshooting startup problems is trying to figure
out which of those files (or what step in the process) causes your specific problem to
occur. If you dont know approximately where in the startup process your holdup
happens, you could end up wasting an inordinate amount of time (and even causing more
problems) on something thats irrelevant to your situation. So, here goes.
When your computer is first turned on, it automatically
loads a program called the BIOS, or Basic Input/Output System, which is stored on a
special chip on your computers motherboard. The BIOS is essentially a combination of
software and hardware in that it consists of software, but the contents of that software
is stored in a hardware chip. On most recent computers, the BIOS can be updated via a
process called flash updating, which uses a piece of software thats stored on a
special startup floppy disk to overwrite the contents of the chip with a new version. On
older computers, however, to upgrade the BIOS software you need to physically remove and
replace the chip itself. (BIOS upgrades are often a necessary step in solving
hardware-related problems. See the "PC Hardware
Troubleshooting Tips" article for more.)
One of the first things you should see on your
computers monitor when you start your PC is some type of message thats akin to
"Hit Esc to enter Setup," although instead of Esc it may say F2 or F10 or any
number of other keys and instead of Setup it may say CMOS Setup or BIOS Setup or just
CMOS. Make note of the key required to enter the Setup program because you may need that
later (some startup problems can only be solved by changing some BIOS/CMOS settings via
the Setup program).
As the BIOS runs, it performs a number of tests on your
hardware called POST (Power On Self Test), such as checking the memory. Then it lists any
devices that it finds attached to your computers internal IDE controller(s).
Typically, this is any internal hard drives, CD/DVD-ROM drives, tape drives, etc. One
common problem you can check for is to make sure that all the devices that are supposed to
be attached to the IDE controllers are listed. If notfor example, if you just
upgraded your hard drive or added a DVD-ROM drive and you dont see a reference to
them right after your computer turns onthen more than likely there is a connection
problem between the IDE controllers on your motherboard and the device itself. Youll
have to open up your PC, check the cable connections at both the drive and on the
motherboard and, if necessary, replace your IDE cable(s). In a few rare instances you may
also have to make some changes to your hard drive settings in the BIOS Setup program
mentioned earlier.
Another possible problem if a drive that used to appear in
that listing no longer appears is that a physical problem has occurred with the drive.
(Computer peripherals dont last forever after allalthough you should get at
least five years out of a hard drive or CD-ROM drive.) If thats the case, check the
cable connectionssometimes they just come looseand then run a disk utility
such as ScanDisk or Norton Utilities Disk Doctor from a boot floppy disk to see if
you can salvage any of your data. More than likely in this scenario its time to
start thinking about a new hard drive.
If you have a SCSI controller installed in your PC, you
will also see a message about any BIOS (separate from the main system BIOS) that it has,
as well as a listing of all the internal and external SCSI devices attached to it. Again,
if you dont see a device listed, you need to double check the cable connections, or
check the integrity of the devices themselves. One other possible issue with SCSI devices
has to due with SCSI termination issues, which I discuss more thoroughly in the "Mac Hardware Troubleshooting Tips." (SCSI
is SCSI, regardless of platform, so the concepts explained there are just as relevant for
PC people as they are for Mac users).
Mastering the Master Boot Record
After the BIOS finishes it work, it hands control of the
startup process to some specific files stored in the first sector of your hard drive. This
special area is called the master boot record and it contains critical information about
how to start Windows (or any other operating system(s) you may have installed on your PC)
as well as the specific files needed to continue the startup process.
Because of critical role it plays, your hard drives
master boot record is also a favorite target of virus writers. Why you wonder? Well, if a
virus corrupts or rewrites your master boot record, your computer wont work (and
people who create viruses seem to get some sick pleasure out of causing computers to
"break"). Viruses that target this area are called, logically enough, boot
viruses and they are probably the most common type of virus there is (other than Word
macro viruses, that is, but those arent typically very lethal). Most anti-virus
programs can take care of boot viruses, but only if you have a boot floppy disk with the
anti-virus program installed on it (otherwise you cant boot your computer to get to
the anti-virus program to run it!).
If youre really stuck, one other trick you can try
is to use the Fdisk partitioning program, which comes with any version of Windows, to
rewrite the master boot record. Youll need a boot disk with the Fdisk and Sys
programs on it for this trick to work (see "Creating
a 'Real' Windows 95 (or 98 or ME) Boot Disk" for more on how to do this). You can
find both those programs (as well as other DOS utilities) in the Commands folder inside
your Windows folder.
As with any startup floppy disk, you need to turn your
computer on with this floppy disk in the floppy drive and then the computer will use it to
start the computer instead of trying to use your hard drive. If your PC boots successfully
from the floppy, you should be taken to a DOS command prompt that says A:\. To make
anything work under DOS you have to type in commands that tell the computer what to do, so
use the following commands to continue with this process (hit the Enter key after each
one).
c:
fdisk /mbr
sys c:
The first command switches over to your main hard drive,
the second command tells the Fdisk program to rewrite the master boot record, and the
third command rewrites the critical startup files back to your master boot record using
the DOS Sys program. Ill warn you now that this technique doesnt always work
(and in some cases you may need to reinstall Windows), but if youre desperate,
its certainly worth a try.
Starting the Startup Files
If youre not having any problems up to this point,
and your computer continues to boot, then that means your master boot record and a few of
the critical startup files (such as Io.sys) are fine.
Next up are some old DOS startup files thatdespite
Microsofts claims to the contrarycontinue to play an important role for
Windows on many (though not all) PCs. Specifically Im referring to the
Config.sys and Autoexec.bat files, which are typically used to load device drivers and
startup programs, respectively. (Device drivers are pieces of software that are used to
communicate between the operating system and all the different peripherals inside your PC,
such as your CD-ROM drive, sound card, modem, etc.) In addition, these files can be used
to set up a few relatively obscure system parameters that usually dont have any
impact under Windows 95, 98 or ME.
If you have Config.sys and Autoexec.bat files on your PC
(again, not all systems do), then any commands that they contain are automatically loaded
or any programs that they refer to are automatically started when they themselves are
loaded. One very common problem that occurs when you install new software (or hardware) on
your PC is that the installation program may add a line to one of these startup files.
This line (or lines) tells your PC to automatically load some software that the new
program (or piece of hardware) that you just installed requires. Unfortunately, sometimes
those new startup programs conflict with other software you already have installed on your
system and cause the boot process to stop or your system to crash. (See the "PC Software Troubleshooting Tips" article
for more on how to deal with those types of problems.)
Another related problem can occur when you remove software
(or hardware) from your system. Depending on how you removed it or how the programs
uninstaller works, you may end up with a situation where there are references in one of
these startup files to programs that no longer exist on your hard drive. In most cases
like this youll get some type of error message that says something about being
unable to find a particular file, but if you hit OK, your system often continues to boot
and works just fine. In other words, its not causing any real problems for your PC,
but it can be somewhat disconcerting or, at the very least, annoying.
In either the first or second example (but particularly
the latter), the solution to the problem usually involves removing the reference to the
problem line in your startup files. In other words, you tell your computer not to try and
load the files that are either causing a conflict or no longer exist. You can do that by
either finding the specific line in your Config.sys or Autoexec.bat file and deleting it
or by essentially telling your PC to ignore that particular line by "remarking it
out." There are two ways to do this as well. You either type rem and then the space
character at the very beginning of the offending line, or use the semi-colon (;) character
at the beginning of the line. So, for example, a line that previously said:
Device=Nec_bm.sys
Would change to:
Rem Device=nec_bm.sys or ;Device=nec_bm.sys.
To edit your Config.sys or Autoexec.bat files (which
should find in the root directory of your main drivetypically C:\) under Windows 95,
you need to use some type of text editing program, such as Notepad, or the DOS Edit
program. The easy way to do it, however, is to open the Run
command window off the
Start menu and type in Sysedit, which launches the System Configuration Editor. This
utility program automatically opens the five main startup files (including Config.sys or
Autoexec.bat) in five overlapping windows for easy editing. Regardless of how you open
files, you can make any necessary changes to the file(s) and save it (or them).
Windows 98 makes the process much easier by providing a
program called the System Configuration Utility that lets you individually turn on and off
lines in any of your startup files, including Config.sys and Autoexec.bat (as well as lots
more that Ill be getting to in just a bit). You can find the powerful System
Configuration Utility via the System Information Tool, which is available off the Start
menu via Programs, Accessories, System Tools. Launch System Information Tool and then from
its Tools Menu youll find the System Configuration utility (as well as other very
useful troubleshooting toolsthis is one area where Windows 98 and
Windows ME offer clear
benefits/improvements over Windows 95). The easy way to launch the program it is to select
Run
from the Start menu and type in msconfig.exe.
And More Startup Files
After the Config.sys and Autoexec.bat files (if present)
load, the System.ini and Win.ini (again, if present) load. While these files are primarily
leftovers from the days of Windows 3.1, they too can have a role in the startup process.
And similarly, the exact same kinds of problems that can occur with Config.sys and
Autoexec.bat can occur with these filesspecifically, references to startup files
that conflict with other programs or no longer exist on your system. In addition, though
rare, its possible that certain settings in the System.ini or Win.ini can cause
startup problems.
Thankfully, the exact same methods that you use to solve
problems with Config.sys and Autoexec.bat can be used with System.ini and Win.ini. The
respective System Configuration utilities I mentioned above will open them and let you
delete or remark out references in those startup files as well. In addition, you can
manually edit or, in some cases, simply delete settings in these files that are causing
problems. (Of course, you may want to make a backup copy of them before you start deleting
anything.)
Reading the Registry
The first "real" Windows 95/98/ME file to load is
the massive Windows Registry, which keeps track of loading all the 32-bit Windows 95/98/ME
driverstheir filenames typically end in .vxdfor all the peripherals in your
PC. (The previously mentioned Config.sys only loads older 16-bit drivers that you solely
need under DOS.) The Registry is in charge of loading a ton of other important operating
system files as well. If you ever want to see just how many, take a look at the
Bootlog.txt that youll typically find in the root directory of your C: drive.
(Youll have to turn on hidden files in Windows Explorer by going to the View menu,
selecting Folder Options and going to the View tab in order to see it.)
When you see the text message that Windows 95,
98 or ME is
starting to load (and then when you see the Windows splash screen), then youll know
that your PC has begun loading and "processing" the registry.
If you dont quite make it to the Windows splash
screen, you could have a problem with one of the low-level drivers that form part of the
Windows Virtual Machine Manager (or VMM). The VMM is what lets Windows run multiple
applications at once (which makes your PC appear to be multiple "virtual"
machines in onehence the name). Typically, youll see a message that refers to
being unable to load vmm32.vxd. In reality, vmm32 refers to a folder located inside your
Windows/System folder on your main hard drive that holds several driver (.vxd) files. In
some situations this error message may indicate that some of the low-level drivers stored
in this folder have been corrupted, which typically requires you to re-install Windows.
However, I have found that simply turning the computer off, letting it rest a few minutes,
and then turning it back on sometimes takes care of the problem all by itself. (In fact,
this is a good piece of advice for startup problems in general.)
In other situations, stopping right before the Windows
splash screen could indicate a corrupted Windows Registry. Thats never a good
problem to have, because it often requires re-installing Windows and all your applications
(because application preferences are also stored in the Registry). You might be able to
fix some Registry problems with Microsofts free RegClean if you can find it (it's no
longer available on the Microsoft web site) or, if you have Windows 98 or
ME, by running the
Scanreg (DOS) or Scanregw (Windows) utilities bundled with that OS.
If your registry is completely hosed, you can go back to a
previous version (or any one of five or more previous versions under Windows
98 or ME), by
renaming the Registry backup files that Windows automatically creates every time it
successfully starts up. The two files that actually make up the Registry are called
System.dat and User.dat and the main (or most recent) backups of those files are called
System.da0 and User.da0. Youll find all of these files at the main level of the
Windows folder. To make use of the backups youll need to boot to a DOS prompt and
then rename the System.da0 and User.da0 files to System.dat and User.dat respectively,
overwriting the other files in the process. To do that in DOS, you use the following
commands:
Rename system.dao system.dat
Rename user.da0 user.dat
Once youve done that, youll need to restart
the machine (holding the Control, Alt and Delete keys simultaneously always works), and
then reboot from the hard drive to make the changes take effect. This is a good technique
to use if you just installed a new application and start having Registry-related problems
immediately afterwards because it will revert the Registry to the state it was in before
you did the install. If you made the installation a few days (or, more importantly, a few
"restarts") ago, then the backup versions will have the same problems as well,
so this technique may not work in those situations.
Registry Drivers
If your computer makes it to the Windows splash screen
before it stops, you probably have a driver-related problem. Many PC startup problems are
the result of drivers that dont load properly from the Registry, either because of a
conflict with another driver, because a driver has been corrupted or accidentally deleted,
or other possible problems. Unfortunately, theres no easy to way to edit the
Registry in the same way you can with other startup files, so Windows provides other
options if your computer stops the boot process at this point.
The most common one is known as Safe Mode, which is
essentially a limited, or minimal version of Windows that loads when your PC is having
problems. Thankfully, in many situations Windows is smart enough to know when a problem
has occurred and will automatically start in Safe Mode (or at least give you the option to
start in Safe Mode) the next time you restart. In some situations you may also want to
force your computer to start in Safe Mode. To do that, hold down the F5 key when you start
up and keep holding it until you see that your PC has booted to Safe Mode. You can easily
tell this because your screen resolution will be reduced to the VGA standard 640 x 480
resolution and youll see the words "Safe Mode" all over the screen.
(Another way to do this is to hold down the F8 key during boot time until youre
presented with the Windows Startup Menu and then choose Safe Mode from the list
of options presented there.)
When youre in Safe Mode Windows skips the Config.sys
and Autoexec.bat files and loads a minimal set of drivers that lets your PC function at a
basic level. However, usually you cant print, use your modem or do lots of other
things you would normally otherwise be able to do. You can, however, run most of your
applications, so if youre desperate to get some work done and your machine keeps
crashing, you may want to consider simply working in Safe Mode for a while.
The idea of Safe Mode, however, is to let you do things
like install driver updates or make other software changes (such as changing references to
start up files, as discussed earlier) while in a familiar Windows environment. Once
youve made your changes, you can restart the machine and check to make sure that
everything works.
Another common startup troubleshooting technique is to
take advantage of the Step-by-Step Confirmation mode that Windows also offers you when you
use F8 to boot your machine. In step-by-step mode, Windows asks you before it loads
certain programs called for in your startup files. The idea is that by loading files one
at a time, you can more quickly tell whats causing the problem. Basically, you say
Yes to each prompt until your machine freezes and youll learn the culprit. Note that
this mode processes the entire Registry at once, however, so if the problem is a
particular file called for in the Registry, this method wont tell you which one it
is.
Still More Places for Programs to Run
Believe it or not, were still not done yet,
particularly if youre trying to track down all the different programs that can be
loaded automatically when your computer boots up. Some applications and utility programs,
for example, take advantage of the fact that in addition to loading drivers, the Windows
Registry can also automatically load applications (or small programs that continuously run
in the background while your PC is on) in a kind of "hidden" way. The only way
to find these is to open RegEdit, the built-in Windows Registry editor and go to the
HKEY_LOCAL_MACHINE\SOFTWARE\
Microsoft\Windows\CurrentVersion section of the Registry and click on the Run, RunOnce,
RunOnceEx, RunServices, and RunServicesOnce keys inside the Registry. Each item you see
listed on the right hand side is started up each time Windows boots.
To prevent any items listed in any of these keys from
starting up, you need to delete the specific settings from the key by right-clicking on it
and selecting Delete from the context menu that appears. Select all but
"Default" if you want to get rid of all of them and simply quit RegEdit when
you're done. (Note that deleting these settings will not delete the software they're
pointing to, just the command to launch them at boot time.) I dont recommend you
edit the Registry unless you know exactly what youre doing, but this simple
procedure can be helpful.
Finally, the last step that occurs in the Windows
startup process is to automatically launch any programs that have shortcuts stored in the
Startup folder, which you can find inside the C:\Windows\Start Menu\Programs directory. As
with Registrys Run keys, some applications and utility programs take advantage of
this feature to automatically launch programs every time you start Windows. Using
the Startup folder is a more "public" way of doing it, however.
Unlike the Registry, fixing problems related to the
Startup folder is easysimply drag the shortcut of the offending application (or
anything else you want to keep from starting automatically) out of the Startup folder and
onto your Windows desktop. If you prefer, you can even delete itas long as its
just a shortcut it wont affect the real application. The next time you restart your
machine and Windows loads, whatever youve taken out of the Startup folder simply
wont start automatically. You can start it manually any time you want, however, by
simply double-clicking on the shortcut icon you dragged to your Windows desktop.
The End
As you can see, theres quite a bit to the Windows
startup process. In fact, if you had to go through all these different techniques it could
literally take you days to figure out what your problem was and what was required to fix
it. If you can narrow down where in the process your particular problem occurs, however,
you can save yourself a lot of time and effort.
Ultimately, all computer troubleshooting
problemsincluding those related to startupare solvable, but that doesnt
mean theyre necessarily logical, nor easy. (If you feel like you've invested enough
time, you can always just start over and reinstall everything. See "Starting
Over: Repartitioning, Reformatting and Reinstalling" for more.) As with all
difficult procedures, perseverance, common sense and a bit of good luck is what
youll need to get through your startup problems and get back to enjoying your PC.
Good luck.
©1998-2000 O'Donnell Enterprises
Reproduction in any form is prohibited
without permission. However, feel free to create links to this, or any other page on the
site.
If you enjoyed this article, you'll really
like my book, "Personal Computer Secrets."