Prevent Windows from falling over at the slightest provocation with our essential collection of tips and techniques
You’ve probably been there. You’re happily working away in Windows when suddenly everything freezes for no apparent reason. Maybe you’ve pressed [Ctrl] + [Alt] + [Delete] and managed to end the troublesome task and get on with things, but even if your machine hasn’t locked solid you’ve still lost at best a few minutes’ work, and at worst an entire document.
We hate to tell you this, but the problem isn’t necessarily one with your PC either – many crashes are caused by poor use of your computer’s resources, or too many program installations that took place while you left half-a-dozen other programs running in the background.
We can help you to work around these problems, instead of railing against the system and watching your PC die in a raft of blue-screen errors.Crash-protection Software
The problem with crash-protection software is that in the past it wasn't very reliable. This part of the tools industry has declined, but some programs are still available – we see if they are any use to your PC.
Better still, follow our complete guide to minimising and fixing problems that lead to the crashes. Join us, then, as we go on the quest to crash-protect your PC to the best of its – and your – abilities. Crash course
We all know that machines crash, but why? What makes them crash, and what good practice can you use to defend yourself?
We’ve all experienced that shoulder-sagging moment when our machines crash, when unsaved work is suddenly lost, and when that three-hour download is reduced to nought but a waste of time and money. While these experiences may steel you for such a moment in the future, understanding what makes your machine crash can help to make sure that you never lose work again, or at least make you aware of when your machine is likely to pop up the blue screen of death. Hardware
One cause of crashes that’s usually quite obvious is faulty hardware. This sort of crash isn’t so common these days, as modern motherboards are quite particular about what you put in them. Even so, if you find your machine crashes whenever you try using that old CD-ROM drive, then there’s a chance that the hardware itself is at fault. In situations like this it can be quite easy to detect a hardware problem, especially if there’s a mechanical component involved, while at other times it can be very hard to trace intermittent crashes back to one particular piece of hardware. This can be especially difficult if the faulty component is an integral part of your system, such as memory, graphics card or the hard drive.
One area that can lead to a multitude of problems is the way individual hardware components have been configured to communicate with one another in the BIOS. If you have dabbled with overclocking you will have stumbled into the instability associated with running the processor too fast. It’s not just overheating that can cause a machine to become unstable, either – running the PCI bus too fast can cause your expansion cards to fall over, as they expect a particular timing signal to work properly.
Timing is key to getting all of your hardware to work smoothly, especially when it comes to memory. Memory timings are synonymous with performance, but you should learn to associate them more with stability – if you have your memory timings set too high for your physical memory, you’ll experience pauses as the memory fails to respond quickly enough, which will cause software to fail. If you’ve tweaked your BIOS and you’re unhappy with the stability of the machine, try reloading the Setup Defaults.BIOS and Driver Updates
Other hardware problems can be solved by BIOS updates. This is because the specification that all hardware is built to is open to some interpretation. BIOS updates have been known to fix everything from general graphics card problems to specific problems with soundcards, so it’s worth checking the Readme file that comes with the BIOS update to see if a problem you’ve been experiencing has been fixed. It’s also worth searching motherboard chat-rooms (such as those at www.viahardware.com) to see if other people have been having similar problems to yours.
The hardware doesn’t even have to be broken – it can just be poorly designed, or it could have one or two ‘bugs’ that just happen to bring your machine to its knees. This is where drivers come in, as they sit between the software and the hardware in your machine. So if there’s a problem in the hardware that the manufacturer knows about, then there’s a chance (although not in every case) that the problem can be smoothed over with a patch or new set of drivers. If you’re being plagued by crashes and you haven’t updated your drivers for a while, this could well be the solution – 40 per cent of crashes are caused by poor drivers.
Of course, if your machine is fine at the moment, updating the drivers may actually introduce problems, or fix one problem and introduce another. This is why it’s wise to search the Web for people’s experiences of drivers (particularly graphics cards) before downloading them. As performance is a big issue with graphics cards, the drivers receive a lot of attention, and you’ll often find users recommend one set of drivers for stability and quality, and another for all-out performance. It’s also a good idea to create a back-up image of your system when you know that it is stable.Software Problems
The other reason your machine will crash, and this is definitely the most likely cause, is due to software. This includes everything from the OS to the application you’re using when it crashes, and also embraces all those little programs that are running in the background at all times. There are two main reasons that software can crash - either it can’t gain access to a resource that it needs (such as memory), or it contains a bug. If an application is poorly programmed to respond to errors, then it may well crash and you may lose your work. If the OS doesn’t respond to this crash appropriately, then it could take down the whole OS, causing all the other programs on your machine to crash simultaneously.
One of the main reasons a program crashes is because it can’t obtain enough memory from the OS to complete an operation. Two things can happen at this point: the program can either freeze until the memory is released, or it can assume access to the memory and begin writing all over it. This is a particularly thorny issue because data and programs share the same memory space, so if a program writes beyond its allocated memory it could well write over program code – leading to a crash. A resilient OS that features memory protection, such as Windows XP, will prevent the program doing this, while an older OS will fall over.
Another reason programs are prone to tripping up on the memory front is that the memory becomes fragmented the longer you leave your machine on. In these instances, even though you have enough free memory, the OS hasn’t managed that memory properly, meaning there isn’t a large enough contiguous block to use. Other programs may not clean up the memory space properly. The answer in this case is to get into the habit of restarting your machine regularly. Why do applications and operating systems not respond properly in these circumstances? The reasons are numerous, and include everything from time constraints through producing faster code to just not expecting to ever be put into a particular state.Preparation
Prepare yourself for crashes by saving regularly and often, and to keep the amount of programs running to a minimum. If you need to start another application in addition to the one you’re currently working in, there’s a chance it will be starved for resources, which could lead to a crash. So save your documents before opening any new applications, and try not to have too many programs running at the same time. Shared information
Sharing code among programs means more stable code, so why do DLLs cause so many problems?
Microsoft has been backing shared libraries of commonly used code (DLLs) since their introduction in the original version of Windows. By providing a collection of commonly used functions, developers can keep code smaller and also spend more time on the important parts of their own program. And in theory these libraries work – keeping the amount of replicated code to a reasonable level, and also ensuring that there’s some commonality and continuity in the way programs look and work.
The problem is, the size of these libraries is changed when code is updated to bring in new functions and abilities; also, when specific functions are fixed to eliminate bugs. When a library is updated, some of the functions are moved around to make way for new code. This causes older programs to fall over, as the function that existed at X has now moved to Y, or it now returns a result as a different data type.
This problem is made far worse by the fact that some installations overwrite a DLL with an older (or even a customised) version, which causes other programs that use that library to fail, and usually without explanation. This is one of the reasons you should save your work before installing new software, as it can cause your applications to die on the spot. Microsoft does try to make these libraries backwardly compatible, but sometimes it just isn’t possible.
You now know why programs crash, so find out how to minimise crashes with our 14 steps to a more stable system. Don’t Load ProgramsYou Don’t Need
Every application you open is using up memory and system resources, so the more applications you run, the more likely your PC is to run out of resources and crash. To make sure you can run as many of the programs you want, check whether Windows is automatically loading up any software you don’t know about.
Anti-virus software needs to run all the time, but music software doesn’t, so look down at your System Tray to see what’s there. Right-click the icons to find out what they are and look for options to stop them loading. Rather than rummaging through Windows yourself, use RegRun II to see what’s loading from the Registry, the Startup group and various INI files and then turn them on or off.Defragment your Hard Drive
Keeping your hard drive neat makes it quicker to load applications and save files, so it’s always worth doing. But because Windows uses spare hard drive space for virtual memory, keeping your drive defragmented speeds up your virtual memory, because Windows doesn’t have to wait for the drive to get to the next chunk of the file.
Use the Windows Disk Defragmenter or a third-party alternative if you prefer, but use it regularly. Every fortnight is about right if you create a lot of files; every week if you install and uninstall lots of software. Close programs, including background tasks and utilities in the System Tray – the defragmenter can’t move any program and data files that are in use.Make Some Space
How many files and applications are on your PC that you’ll never want again? If you’ve got gigabytes of space on your hard drive you don’t need to worry too much about cookie files and old utilities, but you may be surprised at how much space they take up. And on a small hard drive you should definitely do some housekeeping to make sure you don’t run out of the space Windows needs for virtual memory. Always keep 20 per cent of your hard drive empty if you can.
Run the Add/Remove Programs Control Panel component and look at what’s installed. Use Disk Cleanup to delete temporary Internet and Windows files, back up files from upgrading Windows and automatically saved CHK files from ScanDisk, and actually empty the Recycle Bin of deleted files.
Disk Cleanup doesn’t always get temporary document files; search for ~*.TMP to check for working files left behind when applications have crashed. If you download a lot of shareware, check if you’ve left the set-up programs on your hard drive – burn them to a CD if you want to keep them. Look for the _MSSTARTUP folder – if you’re not in the middle of installing a program you can delete the files in it along with any files staring with the _ (underline) character.Check What’s in Memory
If your system starts to feel sluggish or it takes a long time to switch between applications, check which programs you’re running and how much RAM they are using. Run the System Monitor to check (in Windows 98 it’s under Accessories, System Tools). The default chart just shows you how hard the CPU is working, but you can check almost anything about your system with it.
Choose Edit, Add Item, Memory Manager, Unused physical memory to see how much RAM is free. Track Swapfile in use and Swapfile size and watch the graph as you open and close applications to see which ones are using memory. Look at the Threads statistic from the Kernel category as you close programs (it should go down). If you close an application and the figures stay the same, it could have a memory leak that doesn’t give resources back to the OS.Look for Problems
Don’t wait for problems to show up; run some diagnostics to check your system. Utilities like Norton SystemWorks and RegCleaner can check your hard drive and other components, fix broken Registry keys and tell you about missing DLLs and other Windows problems. Run ScanDisk to test your hard drive for bad sectors or use SpinRite to do more thorough tests and cordon off problems.
Get into the habit of watching your PC boot up in case there are errors on the devices it loads; if the text is zipping past too quickly, then press [Pause Break].Tweak Memory
As you open and close files and programs, memory gets fragmented just like your hard drive. There are plenty of utilities that will defragment memory for you, like MemoKit (www.memokit4all.com).
If you’ve closed all applications and you still haven’t got all your memory back, choosing Start, Shut Down should release it; you don’t actually have to restart – just press Cancel to return to Windows.Beware of Viruses
Badly written software might cause you problems; running out of memory might cause you problems. But viruses are written to delete your files, crash your system and do other irritating things. Get anti-virus software and keep it up to date.Beware of Hackers
If you have a broadband connection or you spend a lot of time online, get a firewall. That stops hackers snooping on your system and controls which software can send information out or bring data to your PC.
Be careful with your email – delete spam without reading it and certainly without clicking the links or replying to it. Don’t download file attachments, even from friends, unless it’s something you asked for and you’re sure you know what it is. Turn off HTML mail or set your email package to block scripts. Turn on macro security in Office and if you use Outlook or Outlook Express get the security updates to block dangerous attachments. In Explorer, use Tools, Folder Options and turn off Hide file extensions for known file types so a script can’t pretend to be an image.Check for Spyware
Spyware is software installed with other programs to track what you do online. Usually, you don’t know it’s there until it’s been installed. Not only does spyware violate your privacy, but the Radiate software (which is bundled with over 250 shareware packages) can crash Internet Explorer. Use Radiate’s utility to remove its software (www.radiate.com/privacy/remove.exe) and use a program like Ad-Aware to find and block spyware.Check your Drivers
You don’t see device drivers working – you think about your mouse or your monitor rather than the software they use to communicate with Windows. But device drivers run at a low level – they are always in memory and if they are badly written they’ll bring your system crashing down with a Stop error and a blue screen. Microsoft reckons 40 per cent of crashes are caused by poorly written drivers. In Windows 98 you need to keep a copy of each driver you install so you can go back if you have problems. If you see a VxD file mentioned in an error messages, it’s a driver causing your crash; check for a newer driver and update if possible.Do One Thing at a Time
Windows will enable you to run more than one program at once, but your PC has to be up to the challenge. If you’re doing something that really pushes your PC to the limit like rendering 3D images or streaming a lot of video, try not to run other programs at the same time. Don’t leave extra documents open when you’ve finished with them; not only do they take up memory and system resources, but if the application crashes it could corrupt the files. In Windows 98, use the Resource Monitor to keep an eye on free memory and system resources. If you have less than 25 per cent free, it’s best not to open more files and applications, and if you’re down to 10 per cent save your files and close some programs before you crash.Buy More Memory
Tuning your system to make the most of virtual memory can only take you so far. Eventually, everything has to go back into the physical RAM chips on your motherboard. The more RAM you have, the more you can do and the more stable your system will be, so fit as much RAM as you can afford. Memory prices have gone up a little recently, but it’s still the most cost-effective way to upgrade your system. Aim for at least 256Mb; it makes a huge difference to how fast your PC runs, too.