Microsoft to Turn to Driver Quality Ratings System
QT writes "Ars Technica is reporting that Microsoft is finally trying to do something about PC driver problems. A new crash-report-driven Driver Quality Rating system will be used in Windows Vista to rate drivers. Drivers that rate poorly in real world use by users will lose their logo certification status, which would be bad news for OEMs and the device manufacturers themselves. Maybe now submitting crash reports will feel more useful? This is long overdue."
But I always submitted my crash reports when the crash was caused by my own buggy code. I just thought it was humorous I could even send that data in, so I did.
God spoke to me.
They must provide specs.
The very first thing I thought of was CD copy protection schemes. Many of them install "drivers" that disallow copying and such. Once these are ported to Vista, and they will be, will these be open to feedback? Who wants to bet that Microsoft will roll over and allow some drivers to be "immutable"?
This could be one of the greatest things ever, or another huge disappointment.
I can see it already. Six months after Vista ships the iPod will be flagged as the worst device and lose it's windows certification.
Actually I believe it's you submitting bug reports for hardware that microsoft doesn't controll, doesn't create drivers for and isn't distributed by them. What you paid microsoft for were the ones that come from microsoft, but you can't really claim that you are paying microsoft to be their beta tester when you download a new . So I'm not quite sure what your beef is... other than to possibly anti-m$ karma-whore a bit.
You know, I don't really mind testing Linux drivers...but when it comes to an OS I have to shell out money for, I kinda expect it to work.
I can already see it, HP taking the top scores in their cheap multifuncionals and printers.The drivers are being written by OEM and non-Microsoft affiliates. It is unreasonable to think that it is Microsoft's responsability to test and debug third party drivers.
My other OS is the MCP!
Thousands of Vista drivers won't come out until AFTER the operating system ships, and they are written by third parties. Other than guaranteeing that they are bascially functional, Microsoft cannot possibly test every driver for bugs and incompatibilities with every other driver or piece of software. This at least gives users a way to provide feedback about poor quality drivers. This is typical anti-MS bashing. It's so incredibly obvious that the OP though hard about how he could take this announcement the worst way humanly possible. Congratulations... you're right... trying to fix a problem is, in fact, an admission that there *is* a problem. And UI improvements just go to show how poor the XP UI is, and kernel improvements just go to show how unstable Windows is... etc... etc... Don't you ever get tired of whining?
The article clearly refers to OEM written drivers, not MS written drivers. So if you install Vista and don't install any additional drivers, then you can definately expect that to work. If you now install the latest Creative and ATI drivers. You can submit crash reports to MS if those drivers fail. As for the old crash system. OEMs still get crash reports, but there was no incentive for them to fix bad drivers. Now, if they don't fix their drivers, MS will revoke their WHQL status and cannot advertise that they are compliant with Vista. I don't know enough about the system to say whether they have checks in place to prevent abuse.
I will give bad feedback to all vendors that develop drivers which aren't standard / poorly integrated with the OS.
This include any driver which add a tray icon app. Do we realy need that each wireless card vendor bundle its own wireless configuration software?
Yes, I know you don't have to use it, but most people think they do. Try to explain to the average joe why there is TWO icons displaying the status of his wireless connection. Or that changing the color settings of the monitor depends on the video card driver.
When I bought my cheap 3.5'' USB SD/CF card reader, I didn't know that it needed a special software to work. At last in Vista I will be able to mod them -1 bad driver.
...and this doesn't solve the problem. The WinTel and LinTel communities have decided, with their pocketbook, that they want "choice", which means a jillion different CPUs, chipsets, video cards, sound devices, network devices, USB and FireWire ports - the list goes on and on. The mere thought of testing relevant combinations/permutations of this makes my skin crawl. Yes, a good driver architecture would help, but hey, if your video card fails, who cares if it takes your system down - your system _is_ down without video.
What we really need are some standard reference models for PCs, and (this is critical) we need hardware manufacturers to stop treating driver interfaces as intellectual property and completely, totally OPEN their interface for software developers. Of course, like I said above, people vote with their pocketbook, and people don't seem to get that worked up about this. They'll continue to buy nVidia or ATI or whoever because the cards really do have great performance, and they'll just suffer with the problems that come with proprietary interfaces. I mean, it's amazing to me - when I buy hardware, it should be OPEN. What you did under the hood is one thing, but how the system interfaces with it - OPEN. My old retro computers came with SCHEMATICS, for crying out loud.
OK, I'm off my soapbox. Just don't think that the driver world will get any better this way, because it won't. Until we're dealing with known, documented hardware and a more elegant driver architecture, a crashin' we will go.
My comments are my own, and do not represent the views of my employer, my spouse, my children, or my cats.
The answer to your question is simple: It is technically impossible without fundamentally changing all PC hardware.
Some driver bugs can be averted by moving drivers into user mode - this is especially true for drivers that do not talk to hardware directly, but these are not interested cases. Drivers which do not talk to hardware (e.g. drivers for USB devices) should not be in the kernel in the first place, so it is just a case of bad design.
The interesting and important drivers are ones that do talk to hardware. Unfortunately they are the ones that cannot be made completely safe. A driver can program its DMA controller to overwrite the entire system RAM, or it can set the device up to lock the bus. There are ways to avoid these problems (with significant increase in cost and complexity), but not in PC hardware - it is simply not worth it. Would you rather have a PC which hangs up once every week, or one that costs ten times more ? If you answered the latter, then you don't need a PC!
The subject of microkernels has been discussed to death. I think that everybody agrees that microkernels are slower, so it becomes a question of economics again: People would you rather have a PC which crashes once every week that one which is twice slower.
Lastly, I am going to say that in my opinion microkernels increase complexity disproportionately, and complexity leads to bugs, so they are not a scalable solution. Of course this point is debatable.
I don't know if anyone else has had this problem, but at the moment Window Update driver recomendation sucks.
I've never updated my computer drivers via Windows Update. My boss recently asked me why and I showed him on a spare laptop we had.
First of all, Windows kept saying that there where updated drivers for the onboard Realtek AC97 sound card. Problem was, the updated drivers where for the C-Media AC97 drivers. The sound card didn't work when I updated them to the ones Windows recommended.
Then (the big one) Windows kept saying there was an updated driver for the USB mouse I was using (A A-Open Optical Openeye Wheelmouse). The driver it recommended was a A4-Tech driver or something.
Oh boy, did I have fun after that was installed.
I installed the recommended mouse driver and restarted. Instant blue-screen. So I tried to get into safe mode to rollback the driver. Blue screen while booting into safe mode. So now I have to try and recover (or reformat) this laptop due to a dodgey windows update.
My boss was amazed at what Windows Update had done. Why does Windows say there are updated drivers available that don't work? I know better than to trust WU for drivers, but I still have the average home user coming up to me asking why their computer has gone bad after loading the latest windows updates (I tell everyone who asks, only use WU for the critical windows updates, that's all)
Who is to blame for this? The average computer user has no idea what devices are in their computer (Hell, most of them still call the moniter the computer and the computer "the box"). Why does Windows seem to ignore what's listed as installed and working in Device Manager?
This space for rent
I think you're over-reacting just a bit...
... what? ... dozens of reasons? Hundreds? Is MS going to pore over _all_ this data, identify actual driver problems? OR just send blanket data to OEM and say, "OK, you've lost your certification. Sorry it didn't work out. You'll have to find out why your driver crashes, here are the 7,500 reports. Have a nice day."
1. It presumes the problem is faulty driver coding. Does it take into account other applications open at the time? What about tricky conflicts? I've been around enough to see MANY applications that kill drivers, like Word causing video driver crashes. Who's fault?
Yes, it does account for other applications open at the time. If you look at the data that will be sent to Microsoft, you will see (among other things) a process list. That aside, drivers shouldn't crash, regardless of any requests that applications may make of them. If an application is causing a driver to crash, the driver probably missed a bounds check, screwed up its state machine, or who knows. Something that should be caught and handled, in any case.
2. Will Microsoft pore over all this data? Drivers crash for
3. Will the data contain enough information for the OEM, who really gets a bunch of MS-formatted data, get enough real information to solve the problem?
These two questions contradict each other. In #2, you say that there will be too much information. In #3, you are worried that there won't be enough. Which is it? Either way, you should take a look at the contents of an error report sometime; they are quite detailed, just not in plain english. From those 7,500 crash reports, there are definitely going to be some common function pointers that the driver developers can use to look up the offending functions, their arguments, and the state of the other registers on the machine. While the information looks cryptic to the average user, it is very useful to those who can map that hexidecimal data to source code.
4. According to TFA, this only works on the "Premium" edition of Vista. In that version, drivers have to be certified. If "Premium" proves to not be a best-seller, how many OEMs will bother with certification? I still have to click through "non-certified" dialogues in XP today.
Certification does more than just avoid the silly "non-certified" dialog box. Certification isn't cheap; companies who spend the money to go through the certification process have at least shown some commitment to driver quality by getting a third-party to verify best practices. I believe that getting your driver certified also allows you to use the "Certified for Windows" logo on your product, which (probably) has some sway with customers.
As previously reported before on slashdot (too lazy to references), the Microsoft Anti-spyware software uses the same kind of community ratings, and crazy ratings were observed too (some spyware were slowly declassified as spyware, because users kept clicking on OK, just to have their software work).
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]