Why is WinXP Slowing Down over Time?

3

We are starting to see a problem with some Windows XP machines. These XP machines are running unpatched, vanilla installations of XP. They are not connected to the internet and so haven't downloaded any updates, no software is being updated. Our application runs fine when the system is first used but over time the performance of the XP machine is slowing down. By 'over time' I mean the PC itself is running for weeks without a power cycle and the application we've built runs for days at a time. We have only just noticed this slow down because the XP machine has a life-sign protocol with the rest of the system which is not being triggered because the load on the XP machine is too high, failing this life-sign halts the system (if you've read some of my other questions you'll know the system counts cash and so it's important that records are kept of how much cash has been through the system, which is what the Windows XP machine does).

So, does anyone have any ideas why the XP machine is slowing down? Is it the system event log, an unnecessary service or something else. Any ideas how to identify the source of the slow down?

Edit: If it were up to me, I would update with the latest patches. Unfortunately, these PCs are in banks based in other countries and they really don't like the machines being updated, let alone being connected to the internet. I have two options for investigating the problem: 1. Ask a field service engineer to get information from the machine and 2. flying out to the machines and seeing what's happening first hand. Option 2 would make the banks suspicious, which would be bad (we have a work-around at the moment, but we still need to work out why it's happening and whether or not the fix will last).

Finally, the people using the machines do not have access to the explorer shell, there is no start menu, alt-tab and ctrl-alt-del are disabled (again, the banks don't want anyone having access to the data/software).

We've asked w service engineer to get some data from task manager and do some defragging (although I'm not sure a defrag will do much).

Skizz

Posted 2009-11-27T14:47:09.070

Reputation: 992

If you say "unpatched, vanilla installations of XP", I would suggest to reinstall and install the service packs which might improve stability. – schnaader – 2009-11-27T14:51:36.273

1is it 'OS Rot' week at SU? :) i think this is the 3rd time i see this topic coming in the last few days. – None – 2009-11-27T15:44:09.657

1@schnaader This is likely a corporate machine with a critical, narrowly-defined role that would require a change request and sign-off from the application team before any changes could be made. In these situations, the platform is left alone as even seemingly benign or otherwise advisable changes like service packs could have unexplained and undesired consequences. – Lunatik – 2009-11-27T15:45:42.260

@Lunatik: I understand such situations, but I can't agree with them. It's like "Hey - we could make this power plant secure, but we don't like the paperwork - What was that noise?"... – schnaader – 2009-11-27T17:00:58.113

1@schnaader: it's not the paperwork, rather, all the testing that is required to verify the updates don't change the behaviour of the system, and in large systems the number of interdependancies makes test complex. "We upgraded the power plant control's OS - what do you mean it's stopped working?" – Skizz – 2009-11-27T20:03:04.843

Answers

5

By 'over time' I mean the PC itself is running for weeks without a power cycle and the application we've built runs for days at a time.

Have you checked out Task Manager? Check which application is using a lot of CPU and/or memory. Maybe your application has a memory leak?

John T

Posted 2009-11-27T14:47:09.070

Reputation: 149 037

+1 for for memory leaks. A slow/minor memory leak will not really manifest itself until the app has run continuously over an extended period of time. Slowly but inevitably the app consumes enough memory to start paging virtual memory. A power cycle or app restart resets the amount of memory consumed, which appears to "fix" the slowdown. – JMD – 2009-11-27T16:11:31.753

... and honestly, it may not even be your particular money-counting app. It could be something else that's running at the same time. For example, a device driver for the money-counting hardware? But, based on past experience, I'd suggest looking at the long-term memory consumption of your app as a place to start. – JMD – 2009-11-27T16:14:43.947

We've also asked the engineer to see if there's any improvement after a reboot. – Skizz – 2009-11-27T16:14:53.027

in addition to memory leaks, use the SysInternals perf mon to see if the app is leaking handles or other resources, too. – Jeff Atwood – 2009-11-28T11:25:22.423

3

  1. Fragmentation of HDD's
  2. Fragmentation of Registry
  3. Bloating of Registry by obsolete entries

Grumpy ol' Bear

Posted 2009-11-27T14:47:09.070

Reputation: 5 313

If the machine was used to surf the internet, install applications and updates, open/close arbitrary files then I would agree with this. But this is a highly restricted PC running three applications most of the time (the GUI, the 'shell' application and a network monitor) so the above points are less likely. – Skizz – 2009-11-27T16:22:37.550

2

You might want to consider running some benchmarking tools to assess the stability of the hardware in the machine. There are many applications and web sites that can perform these tests for you and some even give you comparisons to systems with similar hardware so you have an idea what state your system is in. As schnaader mentions, it is a good idea to also update your system with the latest Windows Service Packs.

ricbax

Posted 2009-11-27T14:47:09.070

Reputation: 4 894

2

In addition to getting patches installed to possibly improve stability (as noted by Schnaader) I would look at disk fragmentation. In addition, check for a memory leak. Some apps will slowly leak RAM and then the system starts disk swapping which can really hit performance

Dave M

Posted 2009-11-27T14:47:09.070

Reputation: 12 811

1

XP just slowly degrades over time, period. 98 and ME did the same thing. It was one of the many reasons I got away from the platform.

Most of it has to do with fragmentation of filesystems or the registry, as NoCanDo said. Even simple use does things like update MRU lists (most recently used) which are stored in...the registry.

Check for memory leaks in your application too--they can cause the swap file to become fragmented, and that's difficult and inadvisable to defragment while in use.

Broam

Posted 2009-11-27T14:47:09.070

Reputation: 3 831

0

you may consider freezing the machine state, e.g. with DeepFreeze.

this would require the application in question to be installed or able to save to a partition, hard drive, USB stick, etc, that is not frozen, this way you will have the operating system in its pristine state after each restart.

while DeepFreeze does an excellent job, it may not be applicable (too restrictive), depending on the use of the machine.

Molly7244

Posted 2009-11-27T14:47:09.070

Reputation:

We may ghost the hard disk and get the image on our development system to see if we can reproduce it. The only downside is that our development system has a different configuration (it's smaller). – Skizz – 2009-11-27T16:18:04.067