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.
The 5% number is just skewed heavily by the fact that any poorly written app that crashes is counted. Whenever an app crashes the windows error reporting system fires off a log to microsoft regarding the crash. I bet 90%+ of these crashes have nothing to do with windows.
5% may sound like a small amount, but considering HOW MANY Windows boxes exist on EARTH, that is a HUGE number...
bork bork bork!
If that's not a conservative estimate, call me a liberal.
I had but a simple dream, to destroy all humans.
I haven't read the article, but I assume that the Poster meant to type 95%. Its OK, we all make mistakes.
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".
HERE IS THE DIRECT LINK : (Doesn't require you to log in!) Thank you, Google News!
My favorite part: Last week, Microsoft raised its revenue forecast for fiscal 2004 by about $1 billion. At the same time the company also said it had no plans to spend any of its $49 billion cash on major acquisitions or increase dividends, despite recent rumors.
Now, If I'm reading this article correctly, they are indirectly affecting their positive cashflow 'problem' by increasing R&D. The article says that Microsoft expects revenue to increase 6-9% (of total revenue) in 2004; They are going to spend 8% more on R&D (8% more than R&D expenses in 2003)... So this looks like one way that Microsoft is going to slow down their positive cashflow. I can't see anything bad coming from Microsoft spending more on R This should be beneficial to end-users as long as MS doesn't spend all this additional research money finding better ways to make it difficult to pirate Windows.
The other 95% of all Windows installations have the reporting feature disabled...
>>Microsoft is looking at charging for some of
>>its software updates that it now distributes
>>for free."
Buffer ovverflow - $15
Firewall Fix - $45
Service Pack 3 - $300
Knowing that no matter how much patches come out, Linux will be more secure - Pricess
doesn't that give MS an incentive to leave bugs in?
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.
Mr. Gates stressed that the company's biggest bet is on the next version of Windows.
;-P
Well duh. The company's biggest bet is always on the next version of Windows!
If they said "Well, we're betting the entire company's future on the next version of Microsoft Bob", they're screwed.
It's not a crash. It's...it's... a programmed REST BREAK.
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
Microsoft has charged for updates for years silly. Just look at 98 SE, ME, and XP. Nothing changes this practice, except we can guarentee that service packs are now going to be rebranded as YP and ZP respectively to go along with the eXPerience.
of mysterious windows crash during system build, BEFORE there are any apps to mess it up. I've heard 10% but never seen that high, more like 8% from my view, and I've built 1000's of pc's and servers, and more using our new image process, so these are similar models, with standard equipment that for some strange reason get a variety of errors during the build process. 99% of those go along there merry after a reboot, and the remaining 1% is almost ALWAYS disk or memory errors.
errr....umm...*whooosh* *whoosh* Is this thing on ?
are still stuck at the "Windows was not shut down properly" screen.
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!?
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.
Nice flamebait.
Each time a major OS release comes out of Apple, they charge for it, yes. So does everyone else. Microsoft does it. SuSE does it. Don't let the version numbering for Mac OS X fool ya, 10.2 was a major upgrade over 10.1, which was a major upgrade compared to 10.0.
However, Apple doesn't charge for minor point releases. They're up to 10.2.6 right now in OS X, so you can see there have been several point releases since 10.2 was released, plus a smattering of security updates and individual application updates. Those are all free.
If Microsoft really does start charging for service packs, as the parent article for this thread suggests, their customers are going to revolt. From the Microsoft standpoint, they need a new revenue stream, and they want a way to subsidize the ongoing effort of improving products already in the market (like Windows 2000 Professional, since many users refuse to upgrade to XP).
I'm willing to pay for a major new OS release once every year or two, if the new features are compelling enough and my hardware can support it. But I'm not willing to pay for the vendor's bug-fixing efforts and minor feature fixes/additions.
"Knowing that no matter how much patches come out, Linux will be more secure - Pricess"
Price[le]ss
And that sums up the problem with Linux at this stage of the game: no matter what you want it to do, there seems to be one little piece that isn't there yet.
And those Macs are running on adverage 24 hours a day whereas the PC's are shutdown every night since they seem to crash less than when we did leave them on everyday.
"Slashdot, where telling the truth is overrated but lying is insightful."
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.
Think about it. 100 million Windows users. 5% is 5 mil. At 2 crashes a day, that's 10 million transactions. Daily. Not even counting all the less frequent crashers.
.5 day to measure it), the throughput is 500 gigabytes per day, averaging 46.4 Megabits/second.
That's 416,666 transactions per hour, 6944 transactions per minute, or about 116 transactions per second.
If each report is 50K (don't have an exact figure, and I don't want to wait the
*That's* the kind of data processing system I'd like to buy!
-m
--- Learn XForms today: http://xformsinstitute.com
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.
At least microsoft dosent make cars!
And why did you staple the trout to the RAM?
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.
What Bill needs to do is think fourth dimensionally. Updates continue to be free. Hell, Windows itself and all other Microsoft software should be completely free of charge as well. Microsoft will instead bring in ten times more profit by...
Charging for each software malfunction!
Microsoft will include special code in its kernels that will be backed up by a legally required instruction in the processor, along with a strong encryption path on the physical electronics that protect this particular instruction. This innovative technology will automatically detect software malfunctions and send a strongly encrypted packet to Microsoft. At that point, Microsoft will automatically bill the luser some set fee, like $20.00 for each occurance of a bug that causes an application to crash, $40.00 for a Windows BSOD, $60.00 for a complete crash requiring a cold boot, and, say, $100.00 for a crash that causes loss of data, including hard disk crashes unrelated to software.
This innovative technology would create tremendous value for Microsoft stockholders and employees of the company. Stockholders would make enormous profits on the millions upon millions of crashes that occur each day, compounded by the fact that Microsoft's software would inevitably get installed on more computers, being free of charge. Microsoft employees would not have to test or debug software as it is no longer a problem if the software malfunctions. This would shorten cycles, increase revenue and fulfill the enterprise integration strategy.
In short, Bill, stop thinking like a hungry beggar on the street trying to get a few more pennies for a beer and start thinking like a CEO of some powerful company.
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.)
The interesting thing, of course, is that so few bugs have been found. Imagine if M$ had this policy!
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.
Reading the threads sparked by this article, there is quite a bit of misinformation and misunderstanding of how Windows works and what causes crashes. I would like to clear up some of this confusion.
First off, there is quite a bit of confusion about application crashes vs. operating system crashes. While I do not know what Gates was referring to when he mentioned the 5% number, I'm assuming it's an operating system crash.
Application crashes are caused when an application causes an exception and does not handle that exception. (Most frequently, an access violation, error code 0xc0000005.) Ultimately, if the OS cannot find another exception handler that the app has put into place, the operating system invokes the default debugger as the last-chance exception handler. Typically, this exception handler is Dr. Watson (drwtsn32.exe), which will dump the process' address space to the user.dmp file.
The currently installed default debugger (drwtsn32 can be replaced using the aedebug registry value) will trap all unhandled *user mode* exceptions.
Unhandled *kernel mode* exceptions cause KeBugCheckEx() to be called, which is the function that throws the blue screen of death, and writes a memory.dmp to disk (if configured) and reboots the system (if configured). The machine may also be configured to report the bugcheck by sending a 64K minidump to microsoft's OCA site when the machine reboots.
I routinely examine memory dumps to determine the causes of Windows blue screen crashes.
I can tell you with absolute certainty that >90% of the blue screens I examine are caused by non-Microsoft device drivers. When a user installs code into kernel mode, there's nothing the OS can do to prevent that code from taking down the system.
Antivirus software, remote control software, realtime disk mirroring software, and hardware device drivers all install in kernel mode. (Want a list of device drivers running on your system? Run pstat.exe from the Resource Kit and examine the last section of the output.)
Yes, there are many known blue screens caused by MSFT software. To date, Microsoft has done an excellent job of fixing these problems, in my opinion. I have personally witnessed MSFT creating fixes for newly discovered bluescreen bugs in less than a week. (That's less than a week between MSFT getting the call about a blue screen, analyzing the dump, determining the cause of the problem, and delivering a fix to the customer.)
I cannot comment on Microsoft's future plans, since I do not know what they are. But in my opinion, Microsoft has done an excellent job of fixing blue screens caused by its products. And as I've said: the vast, vast majority of blue screens on Windows are not caused by Microsoft code. You cannot blame Microsoft for a device driver written by another vendor that does something that is explicitly illegal (according to the DDK) which therefore brings down the system. (Is it the cop's fault when you're pulled over for a speeding ticket?)
Microsoft's primary problem here, in my opinion, is that MSFT is automatically blamed for all blue screens, when in fact only a tiny percentage of BSODs are actually caused by Microsoft code. If Microsoft could close the loop on OCA and report to the users the cause of their crashes more frequently, and users could begin to appreciate how few blue screens really are caused by Microsoft code, I think the collective opinion of Windows' stability would change greatly.
Just to add value to this post, here are some common bugchecks caused by software. Any kernel mode code can cause these bugchecks:
STOP 0x0000000A (0x0A)
STOP 0x1E
STOP 0x50
STOP 0x7F
STOP 0x7E
STOP 0x8E
And hardware bugchecks:
STOP 0x9C (replace your CPU)
STOP 0x1A (replace your RAM)
STOP 0x4E (replace your RAM)
STOP 0x77 (examine your hard drive system)
STOP 0x7A (examine your hard drive system)
Any STOP code that begins with 0xc....... indicates some kind of environment problem, usually you get these during bootup.