Gates Provides Windows Crash Statistic
cybercuzco writes "In an otherwise innocuous article at they NYT (FRRYYY) Bill Gates says that according to error reporting software in windows, 5% of all windows installations crash two or more times every day. Gates goes on to state that Microsoft is looking at charging for some of its software updates that it now distributes for free."
Bill is becoming the world expert on increasing revenue without providing value to his customers.
5% may sound like a small amount, but considering HOW MANY Windows boxes exist on EARTH, that is a HUGE number...
bork bork bork!
There's no way to be sure that it's necessarily Windows that causes the crash; it could be some badly installed rogue software, viruses, crappy system administration, or all of the above. Though no doubt the reflexive Microsoft bashers will blame Microsoft anyway.
Note to M1-ers: a curt but otherwise insightful message is not "Flamebait" or "Troll".
Microsoft charging for Windows Updates is analogous to Ford charging their customers extra for basic safety features which should be free in the first place! What if Ford told you that there was a fatal flaw in your seatbelt system that could allow you to be thrown from the car in a crash, and that the problem was a result of poor engineering on their behalf, and that you had to pay out of your own pocket to fix it! If that happened the government would surely intervene and force Ford to provide the fix for free. I can't belive that Microsoft has the gall to even consider charging us to fix the holes in their systems that are there because of their own fault!
Nothing to push the masses to Linux/Mac like charging for updates & bugfixes.
Jaysyn
There is a war going on for your mind.
Maybe it's possible that they didn't count those? The error report is more than just a ping, it actually contains information on what crashed and sometimes even sends a memory dump.
that according to error reporting software in windows
yeah, but how many people actually use the "report this error to microsoft" feature?. I know everytime I get a crash, I opt to not send the report, and I know i'm not the only one that does this. Also, the only time this method for reporting error is used at all is when customers are on broadband connections, or in office networks (can you imagine wating for your modem to dial to report an error or a crash?), and what about those times when the crash is so bad your entire system needs to be restarted?. From what I can tell, this error reporting software only sends error reports regarding programs that crash, not the OS itself. So... 5% of windows users, who are on persistent connections, who use the error reporting software, who had a crash on an application that doesn't freeze the entire system, are crashing at least 2 times a day... The real number has to be much higher that that.
-K
-K
But on to my topic,
Now how many people crash ONCE a day??? It seems odd that he would pick just twice a day to report, what would have looked more impressive would have been Bill saying "Only 5% of our users crash once or more using all of our operating systems."
I know as all you do it would have been a much more staggering figure since just about any Windows PC I see at work crashes once a day, so I can see why he didnt say it.
Glad my linux and OSX boxes crash on an average of once every 6 or 7 months or so.
"Slashdot, where telling the truth is overrated but lying is insightful."
So I pay for a copy of Windows and soon I might have to pay Microsoft to fix the bugs that shouldn't have been there in the first place?
I've been considering switching to Linux for a while now and having to pay more money to Microsoft for fixes would cause me to switch for sure. I'm not going to put up with crap like that!
Then there's the rest of us, company networks who have things nicely fire-walled, techies who configure their friend's computers to never contact M$ with 'quality assurance crash reports', installations for people who don't have 'net access (they -do- exist), etc...
There's no wrong way, to eat a Rhesus...
I think Dilbert had one (rumored to be based on a true story) where the company decided to offer a bounty for every bug fixed. As usual, Wally decided to "write himself a minivan." I can already see bugs been inserted proactively by employees to boost their stock option value...
ELOI, ELOI, LAMA SABACHTHANI!?
You're also assuming that the people who get the crashes actually SEND the error report...I crash multiple times daily, and have stopped bothering to send the reports at all (mostly because it's the same app that usually crashes...Internet Explorer)
Chaos, panic, disorder...my work here is done.
ok, 5% crash 2 or more times per day.
... and here's some for-pay updates to fix that problem, you drooling idiot customer. WINDOWS IS YOUR GOD. WORSHIP IT.
Let's say then, that maybe 10% crash once per day, 20% crash every couple of days, 40% crash once a week, etc. If we only go that far that's saying
75% of windows computers crash at least once a week.
If once a week doesn't sound like a lot to you, imagine how annoyed you'd be if your ISP was down once a week, because that's what we're talking about.
It's rare that you're presented with a knob whose only two positions are Make History and Flee Your Glorious Destiny.
A couple of observations.
First, just because an application crashes under Windows does not necessarily mean that it is the fault of the application, or that there is an error in the application's code. A bug in windows could cause the application to crash. (Does anyone remember the days of "Windows isn't done until [fill in the blank] won't run?") If I fall because the foundation under me crumbles, is it my fault? Does it imply that there is something wrong with my legs, or my sense of balance? Or is it because maybe something was wrong with the foundation?
Secondly, I suspect that the 5% number is low. As I recall, when an application crashes, the windows error reporting system puts up a "Yes / No" dialog box asking permission to fire off an error report to Microsoft. I know many people who routinely click "No" because they don't want to be bothered and/or don't want to send any information to MS about their box. I suspect that many more people see that dialog box than click "Yes." Thus, crashes are under-reported.
Only Women Bleed (Sex, Sharia remix)
The debate here is whether the NYTimes is reporting the statistics right. We all know that the Windows Error Reporting service generally jumps up at us whenever we have an application crash, which is the fault of the application. Having not seen a real, bona-fide BSOD on my own Windows machines in years (literally), I don't know whether the crash reporting service reports them to MS or not.
Whether the NYTimes reporter can tell the difference between an application crash and an OS crash is up for debate (I'd say there are 50/50 odds either way).
That number is also a huge aggregate of apples and oranges. It doesn't make a distinction between 9X kernels and NT kernels, which I would bet have wildly different numbers of OS crashes (just about anything can blow up a 9X kernel, NT kernel BSODs are generally caused by faulty device drivers, hardware faults, and OS bugs).
The real problem WRT crashing on NT kernel machines is the device drivers running in kernel space. This means that a non-OS part of the system can zap the OS part of the system. Thus, even if you do convert everybody to an NT kernel-based OS, you're probably going to continue to have trouble with people that run terribly bad hardware with equally terrible device drivers. Unfortunately, most people don't understand that buying that white box ethernet card from Fry's or that roundy-looking-box-with-crappy-monitor consumer PC from Best Buy really *can* hurt you in the morning.
When and if MS rearchitects the Windows kernel so device drivers run in user space, or some protected space, I think that the so-called reliability gap between UNIX/UNIX workalikes and Windows will be very, very small indeed.
wait just a gul darn minute ...
I was under the impression the error reporting tool didn't send any personally identifiable info back to MS. How, exactly, is he figuring out the frequency with which individual machines crash?
I don't care what kind of application you're using, the job of the OS is to protect the hardware from access by individual programs, and to protect programs from each other. No app should EVER be able to crash an OS, game or not.
Device drivers are another matter, but still one within MS's control in a way; MS is the one that created the culture of every device having its own drivers, instead of the linux way where drivers are included in the kernel distribution and are written for devices generically. For instance, if you download the newest kernel, there's a driver in there for the RTL3019 NIC chipset. So all cards based on this chipset (which is a lot; it's a common low-cost chipset for NICs) use the same driver, unlike the Windows world where all those cards are about the same from a hardware POV, but the drivers are all different, and some may be better than others. Also, in Linux, the drivers are open-source just like the rest of the kernel, so people are able to file bug reports against them, debug them themselves, etc., unlike the Windows world where each driver is a little black box from the manufacturer, and may not even be supported anymore (common when the manuf. goes out of business). Admittedly, MS has finally, after all these years, started to recognize this problem, and is now trying this "signed" driver scheme to improve their situation.
Where do you draw the line? With a thriving hardware economy, you can't expect the OS developers to write all of the drivers for every different piece of hardware out there. As well, if you only write generic drivers then you rob the hardware manufacturers of the capabilty to customize their hardware offerings even if they are based on a common platform. Finally, if drivers have to be written by the OS developers, then new hardware is much less attractive. Hardware developers would have to jump through hoops, either getting the OS developers to write drivers or adding some sort of compatibility mode to their hardware, because otherwise you couldn't use the hardware. And that's saying nothing of making drivers open source, since drivers often contain intellectual property. I don't care what you think about open source, but wrong or right, most companies that own some sort of IP are generally not willing to give that away to everybody. If you want your platform to be seen as desirable to hardware developers, you need to keep that in mind.
Microsoft tries to work within these constraints in several ways. Most generic hardware items have generic drivers available from Microsoft. As well, Microsoft tries to build confidence by certifying drivers, as you mentioned. However, since certification takes a while, you'll notice that companies like nVidia, which try to rev their drivers every six months or so, generally have an older version that's Microsoft-certified. You won't be using that version, because it doesn't have the latest and greatest enhancements and fixes.
There's surely a better way to balance between "completely open and generic (and thus unattractive to hardware developers)" and "completely closed black box drivers", but I don't know what it is. In the meantime, gamers will generally accept less stability for more performance in their games, and thus games should be judged separately from other apps in terms of stability.
I see several comments that say an application crashing can't be blamed on Microsoft. I disagree. When there are fundamental flaws in the OS that guarantee crashes, Microsoft damn well deserves the blame. I've seen it. A memory leakage problem in Win NT 4 guaranteed that programs that did certain types of operations would crash eventually. There was no way to work around it.
Not all application crashes can be blamed on the OS, but the number is probably significant.
-- Will program for bandwidth
The problems with Windows are as follows:
#1. The core OS was not sufficiently protected from being "upgraded" by any application that was installed. Microsoft was the biggest offender with Office.
#2. The binary registry has all of the information for everything, users, applications, hardware, security, etc stored in it. If something goes wrong it is a major pain to fix it.
#3. The uninstall feature of Windows does not clear out everything. If I do install a buggy driver for a scanner and I want to remove it so it doesn't affect my system anymore, uninstalling does NOT always clean it out.
That is why, over time, Windows installations become less stable. Crap gets stuck in the registry and drivers get stuck in the OS directories and bad things start happening.
And don't give me any crap about that being the fault of the user. The OS should be able to control itself. Look at Debian's uninstall feature. Debian even has multiple levels of uninstall.
The problems with Windows are because of decisions Microsoft made. Not because of end-users.
Hey I've been programming for 20 years and you're quite correct -- programming is hard. But I must disagree with your assertion that just because it's hard means that bugs aren't mistakes. They ARE mistakes. And yes, it's generally somebody's fault when they occur. Level of difficulty doesn't let you off the hook here ... sorry.
There are methods for controlling bugs, but they aren't cheap. Think Space Shuttle flight control software. In terms of number of lines (100,000? in the core modules?) it is not a very big program, but they have spend big bucks studying it and being very conservative about making changes. Oh, and there are only 4 "sites" where it is in operation. The Microsoft model is that they probably spend less labor on their flagship products than the Shuttle or say the aerospace industry on flight control systems and autopilots. But they sell it to many more people for a much much lower unit cost and rake in the bucks in a way that Rockwell Collins or Sunstrand can only dream. Their big breakthrough business discovery is that they can sell (relatively) cheaply developed software for the desktop, and people are not going to care in a way that counts.
This is true only if you elect to compile the kernel module corresponding to this driver into your kernel. The source for the driver is distributed with the kernel, but it is up to you to elect its inclusion. This mechanism is no better than Windows, because some drivers just aren't included with the kernel sources, just as some drivers aren't shipped in-box with Windows. So you're still stuck with fetching your own driver direct from the vendor of your hardware.
Stock distro kernels typically include tons of drivers in their kernels just in case you happen to have a device needing that driver; in most cases, the driver tries to load and fails to initialize, and unloads itself from memory. In my opinion, this is a somewhat clumsy mechanism, but it works. At install, Windows determines what PnP devices are on your system and installs only the drivers for which a PnP ID has been discovered.
This is just completely wrong. Windows ships with in-box "class drivers" based on generic chipset specifications just as any other operating system does. In fact, Windows ships with a class driver for the Realtek 8139x chipset that works with just about any such card on the market (D-link 530TX comes to mind). The reason you might want a IHV-specific driver for your particular card is that some IHV's enable extra functionality that the class drivers do not support (wake-on-lan, encryption coprocessors, etc). Class drivers are a good way to get support out for devices quickly, but they are much worse at supporting specific features in individual cards.
Again, only the ones included with the kernel are guaranteed to be open source. NVidia's display drivers are most certainly not open source. And you can't assume that all Windows drivers are closed-source, either: Realtek (makers of the RTLxxxx chipsets you alluded to earlier) typically releases source code so that IHVs that implement NICs using their chipset can easily adapt some working code to their drivers. Driver signing has nothing to do with making drivers open source, or eliminating problems with vendors going out of business, so I fail to see the connection there. WHQL (Windows Hardware Quality Labs) testing and signing is a method by which Microsoft can provide some basic level of quality assurance on device drivers that they do not directly produce. Poorly written kernel-mode device drivers are still the #1 cause of Windows crashes (according to some press release that I can't find at the moment), and Microsoft is attempting to address this by helping improve driver quality through WHQL and eliminating the need for future kernel-mode drivers (replacing them with user-mode drivers whenever possible, I'm sure).Regardless, you will find no such centralized basic quality control mechanism for Linux drivers. If you sincerely believe that Linux device drivers are of higher overall quality than their Windows equivalents, I have some land to sell you right next to an oasis in Baja. (And before you flame me, I completely understand that Linux drivers often must be reverse-engineered, and that is a difficult process. But while I sympathize with Linux driver writers, this difficulty still doesn't support the claim that the resulting Linux driver model is superior to its Windows counterpart.)
Did Gates ever concider that the other 95% of that statistic don't send in the error reports beacuse they know that other information it sends.