Reply 180 of 249, by Scali
wrote:Well, I'm blaming all three. It's a problem with Microsoft's application on AMD's chipset built into HP's hardware. It's up to them to collectively put their heads together and work out a solution. We don't know what process was followed between the three organizations, nor what may have happened within Microsoft, but the only way they would escape blame would be if they were on the "We Should Fix This" side of the argument and were somehow prevented from doing anything (such as releasing an application note) on their own.
This is basically a political thing. You subscribe to a socialist view, where Microsoft is responsible for everyone using their OS, and Microsoft has to monitor every single combination of hardware and drivers to detect any problems pro-actively.
I think a more liberalist view is better suited to an OS like Windows: Microsoft simply supplies the OS, tries to make it as robust and widely applicable as possible by abstracting away the hardware and providing solid interfaces and such. It is up to the IHVs and OEMs to use the OS however they see fit. They can write drivers for their own hardware, add their own libraries, APIs and other tools etc, and are free to use it however they like (which includes choosing settings to throttle their hardware down to a level that adversely affects the user experience. So as far as Microsoft goes, they would simply say: "Yes, the power and freedom of our OS lets you do that, if you want. This is by design. Apparently the IHV/OEM wants to do this.").
Looking at where Windows came from, this is how it has always been. MS-DOS started out as a CP/M-like OS, where Microsoft supplied the basic OS, and OEMs could add some hardware-specific 'drivers' for things like display, keyboard, disk IO and such.
However, most DOS software was not written like CP/M, but rather addressed a lot of the original IBM PC directly, requiring other suppliers of DOS machines to be more than just DOS-compatible, they had to be 100% IBM PC compatible.
So before long, the different OEM versions of DOS disappeared, and Microsoft just started selling a single MS-DOS that worked on all PC-compatible machines.
Windows started out as a GUI shell for DOS, again being able to run on any machine really.
That is the nature of the PC-compatible platform: Anyone is free to choose their own CPU, video card, harddisk controllers etc. And things generally 'just work', because it is standardized at some level (eg, x86 instructionset, ACPI etc).
As a result, the sheer amount of configurations of hardware, drivers, settings and applications is an explosion of permutations that runs into the gazillions. No other platform is remotely like it.
It simply isn't even remotely practical to manage this complexity and try and test all possible combinations and find all possible problems. It's better to take a defensive course in designing and implementing the platform, rather than merely curing the symptoms but not the root cause.
I suppose the Macintosh platform would suit your needs better: far less variation in hardware, and Apple has and wants far more control over what hardware and software you use, and how you use it. They build their own hardware, so they also set their own throttling, and won't allow anyone to shoot themselves in the foot with it (which apparently at least some Windows laptops don't, either).