http://en.wikipedia.org/wiki/Prefetcher
There's a real reason why you want your boot time to be longer or for
your apps to take longer to load?
Just HOW are you loading Task Manager (taskmgr.exe)? Is it a shortcut
in your Start -> Programs -> Startup folder? If so, is it configured
for normal, full, or minimized window state on load?
Most the times that I've seen Task Manager fail to load and show its
system tray icon is because there is already an instance of it running.
The system notification area (aka system tray) in Windows XP is known to
have refresh problems. Many programs do not update the display of their
tray icon except when a state change occurs within the program. To see
this, configure the systray to NOT hide any tray icons. Then with Task
Manager loaded, kill all instances of explorer.exe (yep, Windows
Explorer is also used as the desktop manager). Your desktop should
disappear leaving only Task Manager's window showing (along with windows
for any other apps you left running). Then in Task Manager's File menu,
select New Task and load explorer.exe. You'll see your desktop
reappear; however, many tray icons will be missing because they did not
get refreshed. Refreshing isn't the only problem with systray in XP.
Some programs will show their tray icons although you configured the
tray to hide those icons. Every time the program starts, and despite
you wanting to hide its icon, it still shows up.
I have never heard that clearing the prefetch cache will alter the
behavior if tray icons. But if you think it solves your problem, you'll
probably have to disable the Prefetcher altogether. Read:
http://msdn.microsoft.com/en-us/library/ms940847(v=winembedded.5).aspx
The default is 3. This is a binary bit mask: 0 decimal = 00 binary, 1 =
01, 2 = 10, and 3 = 11. So bit 0 is for apps prefetching and bit 1 is
for boot prefetching. You might want to start with a value of 2 to keep
the prefetching of boot (system) files so speed up the load time for
Windows. Of course, by disabling app prefetching, none of your apps
will get partially cached into the prefetch folder.
Cleaning the prefetch cache can actually speed up your host if lots of
old files rarely used populate that cache. See:
http://www.windowsnetworking.com/articles_tutorials/Gaining-Speed-Empty-Prefetch-XP.html
I believe startup items listed under the Run registry keys load before
those listed in the Startup folder. If true, you could add a Run
registry key whose program deletes the C:\Windows\Prefetch\TaskMgr*
entries before Task Manager gets loaded as a shortcut in the Startup
folder. It's just a folder and they're just files so just delete them
if you don't want them cached in the prefetch folder.
I haven't had a problem showing the tray icon for Task Manager when
starting Windows or when logging it (a shortcut in my Startup folder
loads taskmgr.exe). I have had problems with its tray icon along with
those for many other apps disappearing when explorer.exe has crashed and
been recovered. In that case, and when I decide I really need to see
those tray icons, I logoff and log back in. A reload of Windows isn't
needed since you are only wanting to force a new display of the Windows
taskbar and force an initial load of the icons presented by their
associated apps.
Also, there is the Tray Notifications Cache. This remembers what you
set for show/hide options for the tray icon the prior time the program
was loaded. If there is no entry in a cache, the default is to "Hide
when inactive" which for many apps means the tray icon "always shows".
When you said "hidden", you weren't clear if the tray icon for Task
Manager was nowhere to be found in the system tray even after expanding
it or if it was hidden until you expanded the system tray. You might
have to clear out the Tray Notifications Cache to begin from scratch so
some old state doesn't get reused. I use CCleaner for that. It'll
clear out both the Prefetch and Tray Notifications Cache but you
probably won't want to leave it permanently configured that way.
http://support.microsoft.com/kb/283084
Yeah, you could edit the registry or load this KB article to use its
Fix-It utility but I find CCleaner (or other similar cleanup tools)
easier and faster. After all, they're just emptying a folder or
deleting a registry cache.