I have a Xeon-based computer at work runing on Windows XP with 3G RAM. I can't upgrade Windows XP 16 bits to 32 bits or to Windows 7 because of compatibility issues with some of the company's software. When I use the Task Manager window to see how much of the processor capability is in use, I never see more than 47-50% of the 4 processors being used, even if the computer is running slowly. Could this be happening because Windows XP is not capable of taking advantage of this huge processor?
Is it a single socket system or dual socket? XP Home is only licensed for single socket systems, and will only use one even is more are available. XP Pro will use 2 sockets. true number of cores/threads/logical CPUs per socket doesn't matter.
The other, and more likely, possibility is that you're simply not doing anything that's heavily threaded enough to take advantage of all the cores available.
Another possibility is that some other resource (likely I/O) is the real bottleneck.
The most common cause of slowness today is poor I/O, especially if you have a multi-core processor and don't hit 100% CPU. Your 4 cores can ask more than a single disk can answer.
The "50%" limit does however suggest that you only have 2 threads that are doing all the heavy lifting, and that's typically an application (not an OS) limitation. Windows XP supports hundreds of threads, but your application must ask for them.