The information on this page has been gathered over a period of years and is based in large part on my experiences in supporting Windows 98 in the Microsoft newsgroups. While I try to remain as factual as possible, some of the information does represent my opinion. Yours may vary from it.
One of the biggest problems I have seen encountered with users of the Windows9x Operating system is a slowdown caused by a lack of resources. This usually occurs, unfortunately, because every software writer assumes that the user will want his/her program to load with Windows every time the user boots. If you ask me, (I know, nobody did) that's mighty presumptuous of them. Microsoft has been guilty of this itself in the past as well, as one of it's products - Findfast, part of MSOffice97 - also has been shown to be detrimental to an otherwise nicely running system, see below
The better written ones will include an option that you can "deselect" during the installation, using "custom" install (and you should always use custom, never "duh-fault"). The poorly written ones will not, and quite often these make it more difficult to remove them at all, especially for the novice.
There are several places that a program can be initiated from during the boot. These places include, but are not limited to:
A common misconception I witness is the suggested use of msconfig.exe in Win98 and WinME to take programs out of the starting lineup. This is not good for a couple of reasons. First, msconfig.exe was designed as a troubleshooting tool, not as a means of permanently disabling a program. Second, disabling a program here is often counter-productive.
If a program has an option within itself to load or not load as part of the startup group, then disabling it in msconfig, rather than within its' own options/preferences/configuration, will cause the program to rewrite that entry. This causes the oft seen "duplicate" entries in the startup tab of msconfig.exe. For more on this see here
Now, as to cleaning up the startup group, these are the steps that I generally recommend. There can be some variations to it, this is more of a guideline rather than an absolute.
Right click (or double-click) on each of those icons in the system tray and open each of the associated
programs one at a time. Check each of their options/preferences/configuration
(whichever applies) for an option that reads something like "allow to run in system tray" or "allow to run/load at
startup" and disable that option.
That will take care of many of them. For the windows controls, things like mouse controls, display controls, volume, etc., go to the control panel and check under the various applets. Most of these have an option to run or not run in the system tray.
Then check the startup folders:
C:\Windows\All Users\Start Menu\Programs\StartUp
and remove shortcuts to programs that you don't need at startup.
You can also check the [windows] branch of win.ini by clicking start/run win.ini. See if there are any entries after load= and run=, if so edit them (as win.ini opens in notepad by default, you make your changes and click file/save) and leave those lines open (they should end with the equal sign). Those lines are generally open ended by design, but often times a program will place an entry in them.
If you are not running any DOS based applications, you can rename config.sys and autoexec.bat to config.old and autoexec.bak. These files are not necessary to boot Win98 normally, and are not needed or used at all in WinME. Some programs, like Anti-Virus programs, do place commands here, so check them first.
Now, for whatever's left (IE: Don't do this first), we can use msconfig.exe..
Reboot, then start/run msconfig.exe and click "ok".
*Note*, it is not necessary to include .exe when
executing these files from a start/run prompt, I list them this way so that it
is understood that these are executable files. A very important part of learning
about and safeguarding your system is to keep the file extensions showing, this
can be done under folder options/view tab.
Click on the startup tab and scroll through the list of entries, everything with a check in the box is starting up every time you boot the system, whether you are actually using that program or not. These are usually the result of the program writers' arrogance that I mentioned at the beginning of this article.
Uncheck the ones that you don't need running automatically. Win98 only needs scan registry, system tray, and the 2 entries for load power profiles. It is also generally accepted that you leave the virus scan entries (2 or 3 depending on your AV program) alone. EVERYTHING else is optional.
Note that this does not uninstall or remove any program from your system, it merely prevents them from loading at boot, each of them can still be run from it's start menu entry or .exe file in the program folder.
When you are done, click apply/ok/ and restart as instructed for the new settings to take effect.
One other common problem with the startup group is
If you have MSOffice97 installed, part of the default installation places findfast on the system and should be disabled for most users.
Go to the control panel, double click fast find and stop the process and delete the logs. Then put in the office CD and use the advanced options to uninstall it. These are the steps:
Put the disk in, run setup.exe if it doesn't start automatically. After it loads setup, click add/remove, then scroll down to "office tools". Click on "change options", scroll down to findfast and uncheck it. Click "ok" and let it run. Last, go to the C:\windows\system folder and delete the findfast.cpl file if it still exists.
More details on removing Findfast can be found in the MSKB article here:
OFF97: How to Disable the Find Fast Indexer
These steps will generally get a system backup to a normal speed, an it doesn't hurt to follow this up by running defrag.exe.