The
February meeting was can celled due to inclement weather, so
there was no Random Access Question and Answer session. Our editor
has asked me to supply something to take its place for the month
so here are some things that I think you might find interesting.
Why Does My Machine Run So Slow?
I got a call a few weeks ago from
someone who had been given my name by one of my clients. His
complaint was that his machine was running extremely slowly,
where before it had acceptable performance. He asked me to take
a look. While this is not normally what I do, out of respect
for my client I said I'd take a look.
When I got there, I spotted something
immediately, even before he offered to demonstrate the
problem. His "System Tray" took up two-thirds the width
of his "Task Bar." Nomenclature: The Task
Bar is the bar of buttons across the bottom (usually) of the
screen that shows which applications you
are currently running. The System Tray is a subset of the task
bar - to the right, that usually contains
the clock, the speaker volume control, and various "applets"
that may be running. I asked him to
identify what they were - he couldn't, saying that they had "just
appeared over time" as he installed
things on his system. I demonstrated that by hovering the mouse
pointer over an icon in the System
Tray a "tool tip" would appear to identify the item.
We found, for example, that he had four separate
and distinct "scheduler" applications for such things
as mail, anti-virus, office task, etc. None of them
actually had scheduled tasks defined, but they were all running.
Before I showed him how to remove
these things (how to do this follows later in this article) I
went
to START / PROGRAMS /ACCESSORIES / SYSTEM TOOLS and launched
the application "System
Monitor". This is a utility that comes with Windows that
can measure various performance metrics
on your machine. If it isn't in your menu, you can selectively
install it from Windows Setup. When
it starts, it will show you a moving chart for "Kernel Processor
Usage" which relates how hard the
CPU in your machine is working. This can be interesting when
the machine is working hard, but
should be boring when the machine is sitting "idle".
Select the EDIT menu item, and "Add Item.."
then select "Memory Manager" and "Allocated Memory".
Close the menu and you will see a second chart start to scroll
across your screen from right to left. This chart shows how much
memory is being used by the system for all applications, drivers,
applets, etc. In the case of the machine in question, he had
120MB of memory allocated. A good trick, because the machine
only had 64MB of RAM!
How could this be? The answer is
"Virtual Memory" which is memory that doesn't really
exist in
the machine's RAM instead, Windows moves copies of what it needs
into the real RAM and puts
copies of what it currently doesn't need out on the disk in the
"swap file." Windows doesn't really
know or care if an application is useful or not - as long as
you have requested it to be run, it will start
it up, and allocate memory for it. If it doesn't have enough
"real" memory it will use the swap file but
of course this has the disadvantage of severely degrading system
performance.
Having identified where the bottleneck
was, we then proceeded to ruthlessly eliminate the
components that we didn't need. The first thing to do is to remove
things from the "Start Up" folder
that you don't need. My preferred approach is to create a folder
named "Start Not" in the
C:\Windows\Start Menu\Programs folder this makes it a peer of
the "Start Up" folder. You can do
this from within Windows Explorer by navigating to C:\Windows\Start
Menu\Programs and then
selecting FILE / New / Folder and naming it "Start Not."
Then drag the shortcut icons from the
"C:\Windows \Start Menu\Programs\ Start Up" to the
new "Start Not" folder. Restart you machine and
you should see a greatly reduced number of applications in the
System Tray.
But wait, there's more! Programs
can also be launched from the C:\WINDOWS\WIN.INI file. This
is a text file that you can examine and modify via SYSEDIT. (START
/ RUN / SYSEDIT) [Note:
Win98 users: see "System Configuration Utility, below].
Near the top of the file you may see a line
reading "LOAD=" and a line reading "RUN=".
These were the now obsolete mechanisms from
Windows 3.x, and were used to load device drivers or applications
at Windows start up time. If you
are running Windows
9x, Windows
Me, Windows
NT, or Windows
2000, you probably really want to
examine these to see if you really want/need them. You can disable
them by changing them to
comments by inserting a semi-colon character at the beginning
of the line such as ";LOAD=xyz.exe."
Then restart your machine and verify
that everything still works properly.
If LOAD= and RUN= are now obsolete,
they have been replaced by shortcuts in the Start Up folder,
right? No, not necessarily. There are other, less well known
mechanisms as well. For these you have to delve into the Windows
Registery not for the faint-of-heart. Select START, then RUN,
then type in REGEDIT. You will be presented with an interface
that is similar to Windows Explorer a pair
of window frames with a "tree view" in the left window
pane. (In the paragraphs that follow, when
I say "expand" I mean to either double-click on the
icon or to click on the "+" character to the left of
the icon.) Expand "My Computer". Expand "HKEY_
LOCAL_ MACHINE." Expand "SOFTWARE."
Expand "Microsoft." Expand "Windows." Expand
"Current Version." You should now see folders for
"Run," "RunOnce," "RunOnceEx,"
"Run Services" and "RunServicesEx." As you
click on each of
these, in the right window you may see command(s) that will be
executed at startup. The category
"Run" is fairly obvious. The category "RunOnce"
is usually used after an application is installed this
will run any additional "setup-type" components next
time you start the machine. I don't think that
I have ever seen anything in the RunOnceEx key, I don't know
what it is used for. Similarly, the
RunServices is to start a "service" - such as, say,
a Fax Monitoring application.
CAUTION: There is no way to "comment
out" a Registery value you either change it or delete it.
You can "export" a key to a .REG file and then later
"import" it back in if you wish. If you aren't
comfortable with this, then don't do it. If you do work with
RegEdit - keep VERY accurate notes of
what you did so that you can "undo" it.
We removed the items that were causing
applets and applications to load, and restarted the problem machine.
The System Monitor reported that Allocated Memory was now at
40MB instead of 120MB. We then ran some of his applications and
found that if he started, say, Internet Explorer and Microsoft Word and Microsoft Excel (his common mix of applications)
he was still allocating considerably more memory than he had.
This clearly indicated that he needed more RAM. So we threw some
hardware at it. But the System Monitor at least saved us from
what he thought he had to do - purchase a new machine with a
faster processor in all cases the System Monitor was showing
that his kernel usage was relatively low.
WINDOWS 98 USERS: There is a utility
that will do much of the above for you - it is started via
START / RUN / MSCONFIG. Use it before you try the other methods
above, as it is much more "user friendly."
Lastly, I have just found a free
utility, called StartStop, (www.tfi-technology.com/startstop.htm) which
enables you to control what applications run at startup. Further,
it gives you the full path to the application or applet, which
should give you a hint as to where the application came from.
I have
no experience with this utility, but intend to investigate it.
|