by Jason T. Collins
MQH is the acronym for a phenomenon I have dubbed “Microsoft Quality Hardware”. This is a phenomenon that seems to be afflicting the PC industry, in general. Note that this is only a theory, but one that has acquired significant evidence as I developed the Cerberus test suite. I've written these paragraphs to help explain why it is a good thing that VA's test software effectively rejects entire vendors that are still considered “good enough” for Microsoft based PCs.
Due to the poor quality of Microsoft's operating systems, hardware that is flaky escapes notice because it may only slightly increase the number of crashes. For example, let's say by itself, on perfect hardware, Microsoft Windows 98 crashes three times a week—I think a very conservative estimate. However, let's say on systems with slightly inferior components, Windows 98 crashes five times a week.
With Microsoft's products, it is impossible for the consumer or even the OEM to tell the difference between hardware and software problems, so the hardware and software vendors point fingers at the expense of the customer. This is assuming that the customer even notices the increase in failures—remember, most customers do not have a roomful of computers to compare failure statistics with. So, for the hardware vendors, their Q/A can get away with releasing less than perfect hardware, since it is unlikely the consumer will be able to prove that the hardware is bad.
On the other side of the fence, Microsoft can and does fire back at the OEM's, blaming buggy drivers (with some justification) and poor quality of PCs shipped from OEMs for many of the crashes involved. It's not too much of a leap to recognize that because of the widespread PC quality problem, many bugs in shipping Microsoft code escape detection.
The cycle therefore continues—Microsoft's inferior software allows hardware vendors to ship inferior hardware and point problems at Microsoft—and all that flaky PC hardware lets Microsoft shrug a good deal of blame off of their software, permitting bugs to continue undetected because they can blame the hardware vendors.
In fact, this self-feeding cycle gets worse, because there is ever-decreasing motivation to reverse it once it begins. The PC industry as a whole begins to lose to integrated hardware/software vendors who completely control both pieces and, therefore, have the capability to improve quality because there is no divisive finger-pointing. Hence, the continued existence of vendors like Sun and Apple.
The only way to fix the PC industry overall is for one of the two sides to no longer ship broken products, forcing the other to do the same to stay in business, or lose to the increased quality of the competition. Unfortunately for consumers, neither PC vendors nor Microsoft have sufficient motivation to do this until the other side does.
Now, enter Linux. Under a robust operating environment such as Linux, crashes are considered extremely bad and often can be directly mapped to hardware because source code is available, and it is provable by the consumer that hardware bugs exist. Those extra two failures a week make much more difference to the customer when the software ordinarily wouldn't fail at all.
I've seen some evidence when talking with VA's OEMs that Linux, as it grows in popularity, may be able to rescue the PC industry from this loop by providing a solid software base and turning the tables on hardware vendors, forcing them to increase quality. VA's done this on a number of occasions, by choosing the best hardware available rather than that which was merely “Microsoft Quality Hardware”.
The results, if many OEMs follow suit, would be good for everyone: consumers, OEMs, and even hardware manufacturers in the long term. Everyone, that is, except Sun, Apple and other proprietary software+hardware vendors. Now we can have the same, or better, quality hardware that those proprietary vendors enjoy, with an open platform that helps consumer choice and drives down prices.
Jason T. Collins is a software engineer at VA Linux Systems.