Andrew Miller102 said:XP just doesn't know how to handle multi-core processors...
Look, core utilization depends entirely on the application itself—not the OS. Windows XP handles multi-core processors just fine... if an app is single-threaded, it’s going to sit on one single core regardless of what operating system you're running. For an app to actually spread out across multiple cores, you need three things: hardware support, OS support, and the application itself has to be designed for multi-threading. All three have to line up perfectly.
The real difference between XP and Vista or Windows 7 is that Vista and 7 use a different thread-pool system, which helps distribute the load across all cores more effectively. XP tends to "fill up" one core first before it bothers utilizing the others as needed.
Mind you, Vista had this annoying issue where if a bunch of threads were waiting on a specific system resource, and then that resource finally became available, it only took one single thread "tripping" to send the entire thread pool back into a waiting state—what they call a "lock convoy." You'd get these moments where the whole computer would just freeze for a few seconds before snapping back to normal. I assume they patched that stuff out with the later SP-ov updates; I certainly didn't run into it on Windows 7.