This is a rant. It’s, hopefully, not a biased Linux fanboy rant; rather, it is a reasonable description of yet another problem with Microsoft Windows. The problem is CPU scheduling. Windows’ CPU scheduler simply can’t cope properly with running CPU-intensive processes concurrently with interactive processes. A few days ago, I was in Windows with iTunes ripping a CD and encoding to AAC, and I was trying to surf the web simultaneously. It was impossible; Internet Explorer was completely unresponsive – it would take several minutes from clicking on the “new tab” button to seeing a new tab appear.
Later that day I was doing the same thing, but in Linux – using Banshee to rip and encode the same CD to AAC (I would use OGG if I didn’t have an iPod). I was also surfing the web with Epiphany, and there was no noticeable slowdown in the web browser. No doubt the ripping/encoding process took a little longer because of the CPU time provided to other processes; but I imagine that most users would rather have their backround tasks take a little longer in return for being able to carry on using the computer while they run.
This is something where Linux really excels: the scheduler is really very good. Windows’ is simply pathetic, and completely unsuited for an interactive system (which doesn’t really make sense, since Windows has never been used as a batch system, as far as I know!).