MSCONFIG's Startup tab and Memory Leaks

B

Burt Stark

I participate in an online tech forum where there are a
handful of people who insist that using MSCONFIG to
disable programs from launching at startup (by using the
startup tab) causes memory leaks. I've been unable to
verify this through any authorarative source, and I
suspect they are mistaken about this. They further
insist that by using a 3rd party startup manger, such as
CodeStuff Starter, you can disable start programs without
subjecting your system to memory leaks.

What follows is a post from one of these people,
detailing their reasoning behind their assertion that
using MSCONFIG as a startup manager causes memory leaks.
This post is in response to someone who said that their
teacher had said that you can use MSCONFIG to manage
startup programs.

Start quote:

"Basically, your teacher probably never read or if he/she
did obviously did not understand a MCSD windows
architecture text. Nor does he have any true knowledge of
programming or he would understand the significance of
entry points and memory management in a program. He may be
skilled at what he knows, but he is following the advice
of other misinformed amateurs. Back in the days of
win95, when programs were little more advanced than in
the days of DOS and often ran as stand alone applications
where they were not truely installed, MSCONFIG did little
or no harm whenused as a startup manager. It was at this
time when enthusiastic amateurs ,often gamers and
tweakers, discovered that windows had this hidden
application. (It was well known to technicians who were
trained that it was a diagnostic and troubleshooting
tool). Unfortunately, this mystique about knowing of a
secret feature has persisted as windows became
increasingly complicated. Now , programs do not just
install everything in a single folder. Nor do they make
just one entry in the registry. Msconfig merely
deselects a single entry in the registry pertaining to
the program startup. It does nothing to correct the
corresponding entries having to do with program entry
points(where in the code the program is entered or
started based on things such as whether it is
being run at startup, restarted later, launched in
combination with another application, run as a second
instance of itself etc) ,memory management(specifications
on the memory needs both size and specific requested
addresses based on the previous situations, as well as
instructions on how to release this memory when the
program closes. Do you see how the order to clear memory
must differ between when you have a single instance of a
program open and when you have two windows open and close
one?) prefetch entries (very important in XP which copies
programs and files used at startup and frequently
accessed to the swap file as it boots. It will copy this
since it has a prefetch entry and then when it sees it
did not run because of the msconfig entry must recopy it
back to its original location) dependencies (the dll files
which are associated with the program. Unchecking the
program in msconfig does not alter the loading of these
dependencies in a modern OS). There is more, but that
gives you the basic idea.

In fact, microsoft specifically warns not to use any
application unchecked in MSCONFIG startup until the entry
is rechecked and the computer restarted. This is one of
the major causes of memory leaks and the mysterious "bit
rot" which causes amateurs to have to reformat windows
machines annually. I have a machine which runs win3.11
which has never been reformatted and still runs smoothly
and quickly. I have another which started life as a dos/
win3.11 machine got upgraded first to win95 and later to
win98SE (also had several hardware upgrades, went from a
386sx with 504MB hard drive all the way up to a P4
2.4GHz with 120GB drive in stages) It has never been
reformatted or had a clean install, just clone one drive
to the newer faster one. It sees daily use and has had
win98SE for five or six years now and never had a
problem. Still fast and stable. Why? Because I know what
I am doing. Ask [your teacher] if he has a computer that
has run this long with no reformat or clean install (over
ten years total, still preserves the option to boot to
old DOS/win3.11 and still has all those old files, all
useable).

The best way to manage startup items is within the
programs own options/preferences. Any well written
application will have correct methods of doing this to
correct the entry points and memory management as the
softwares author intended. But if you are too lazy to do
things correctly or you have a poorly written application
which does not offer these options what are the hallmarks
of a good startup manager? One is that it should be able
to identify the program associated with the entry and
another is that it should be able to identify
dependencies (dll files etc). One of the best examples is
the free program Codestuff Starter download, reviewed and
rated - manage your startup programs. Note that it also
includes a process viewer which far exceeds windows task
manager. This is a sign of a well written startup
manager. It can tell you a lot about what you are
controlling.

One more note; if microsoft actually thought that
MSCONFIG were safe to use as a startup manager, it would
not be hidden. There would be an entry in the control
panel and in start/ programs / accessories
called "control startup programs here". They do not hide
components because they are mean or there is a mysterious
conspiracy between geeks (or gweeps as I prefer to be
called, have him google that one to see how long I have
been at this) to make it hard on others. These are hard
to get to and hidden because they are dangerous and
should only be used by a professional who understands the
potential risks of his actions. Sure, you can boot to a
floppy disk and at the A:_> prompt type Format C: and hit
enter. This is not a wise thing to do. You could boot to
the C:_> prompt and type delete C:\windows (or del *.*)
and hit enter. Again not a wise thing to do.

Here are two comparative examples so you can better grasp
the concept.

You have a leak under your kitchen sink. You open the
cabinet and discover there is a pipe from a shutoff valve
to the faucet which is leaking.

You can
1. Ignore it and do nothing , let the water rot out the
cabinet. (average totally confused user)
2. Put a bucket under it and catch the drip and dump the
bucked and hope it does not cause problems like roaches
and mold or overflow and rot things out. (Use msconfig).
3. Go buy a compression pipe sleeve patch which fits over
the pipe and you put on some goo and tighten a clamp to
seal the leak (use third party startup manager)
4. Turn the shutoff valve and close off the water
(uninstall the offending program).
5. Call a plumber (take it to a tech) or
6. Replace the pipe yourself (get new software).

Your car has an oil leak around the head cover gaskets
and you loose a quart every week or two.
You can
1. Just live with it and add a quart of oil every week.
2. Put kitty litter on the driveway (use msconfig)
3. Buy a tube of silicon seal and goop up the outside
real good .
4. Buy a new gasket and replace it yourself
5. Take it to a mechanic.

Yeah, it really impresses me when someone says
"My kitchen sink leaks, but I just shut off the water
when I do not need it and I keep a bucket there to catch
the drips . I've been doing this for years and there are
no problems" as the roaches scatter and the stench of
mold permeates the room.

I am even more impressed by a person who says "my car
leaks oil, but I put kitty litter on my driveway and add
a quart of oil every week. It hasn't had any problems yet"

These people who say msconfig has not caused problems are
just the ones who do not know how to recognize the
problems or they attribute the problems they have to
anything but their misuse of msconfig."

End quote. Sorry it's so long.

So, is there any validity to this claim?
 
M

Mike Kolitz

None that I'm aware of.

--
Mike Kolitz MCSE 2000
MS-MVP - Windows Setup / Deployment


Burt Stark said:
I participate in an online tech forum where there are a
handful of people who insist that using MSCONFIG to
disable programs from launching at startup (by using the
startup tab) causes memory leaks. I've been unable to
verify this through any authorarative source, and I
suspect they are mistaken about this. They further
insist that by using a 3rd party startup manger, such as
CodeStuff Starter, you can disable start programs without
subjecting your system to memory leaks.

What follows is a post from one of these people,
detailing their reasoning behind their assertion that
using MSCONFIG as a startup manager causes memory leaks.
This post is in response to someone who said that their
teacher had said that you can use MSCONFIG to manage
startup programs.

:: deletia ::
 
A

Alex Nichol

Burt said:
I participate in an online tech forum where there are a
handful of people who insist that using MSCONFIG to
disable programs from launching at startup (by using the
startup tab) causes memory leaks. I've been unable to
verify this through any authorarative source, and I
suspect they are mistaken about this.

If you consider how MSConfig does it you will soon see that this is
nonsense. When you uncheck an item it moves the reference in the
relevant registry Run key to a 'startupreg' key of its own; or the
shortcut in a Startup folder to a different location, noting the move
again in its startupfolder key. Which leaves nothing to tell the boot
process to run the items, and they don't get run.. How something not
getting run creates a memory leak is a most interesting question
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top