Microsoft Code at Fault for Half of all Windows Crashes
Flamester writes "In a ZDNet Australia story, Microsoft is claiming that half of all MS Windows crashes are the fault of third party code, not their own. That is, according to Dr. Watson.
The article also goes into the 'rigor in which MS tests their products before release'. "
So they're saying that a poorly designed application can take down the entire operating system? The OS should be resilient enough to handle application crashes and keep on running, who cares who causes the crash? It's the OS's responsibility to handle it.
Also I would like to see where they got these numbers? If they are using the new 'feature' that notifies microsoft of application crashes then I'd be skeptical... If the OS crashes then the notices won't be sent to Microsoft.
Also, it is likely that MORE than half of the applications run on a Windows box are non-microsoft applications, that would mean that statistically MS apps crash more often than third party apps.
Visualize the world of wine
That sure is encouraging. What a wonderful operating system you have when half the time it crashes, the crash is caused by third party code. A properly designed OS shouldn't allow third party software to crash it. No OS is perfect, but half the time is just silly.
Assuming this is true, wouldn't this be an example of how closed source can contribute to programming mistakes? If developers had more access to the OS source could wouldn't they be less likely to affect it adversly with bad code?
UNIX/Linux Consulting
What he just admitted is that HALF of ALL crashes are Microsoft OS related. Every application that runs on a account for more than let's say 5% or 6% of total crashes, but Microsoft still has their full 50% share. That's STUPID-speak on his part. Way to instill company pride by shooting yourself in the foot, and then putting it in your mouth.
-Christopher Wu
http://www.christopherwu.net/
"Empathise with stupidity, and you're halfway to thinking like an idiot." - Iain M. Banks
I'm currently using Linux, which also gives drivers such low-level access that a bad driver can crash the whole machine. I was under the impression that this was a design decision which couldn't be changed without sacrificing performance.
Because only "weenies" make excuses for their vendor. I've only ever seen the excuse as a response to somebody complaining about Windows instability - whether it's Microsoft's fault or not is irrelevent if it's stopping you from getting your work done.
I dare say it is, but what does Linux have to do with it?
I'll probably be modded off-topic, since a story like this on Slashdot is nothing more than MS-bashing flamebait, but I'll try anyone.
First of all, the article says "crashes in Windows," not "crashes of Windows." So it's not entirely clear to me if they are counting application crashes which don't impact the whole system or just the ones that bring down the OS (as most of the bashers in this thread seem to think).
Second, if this is based on error reports, it's skewed by a lot of things. For example, I send the reports when I suspect it's MS code at fault, and I don't send them when I suspect a third party app. I figure MS can't do anything about the third parties, so why bother. The point is, lots of things can skew these numbers.
But most importantly, the bulk of the article, which most Slashdotters seem to be ignoring, is about tracking root causes of bugs. There is no silver bullet in software quality, but this approach is a good place to start. It's something that should be taught in CS courses, and it's something we experienced programmers should be training our juniors to pay attention to.
When you fix a bug, do you ask yourself how it got in there? Where else in your code a similar bug may appear? How can you avoid making the same mistake in the future. How you could have detected the bug sooner? How did the test cases miss it? These are powerful questions if you take them seriously.
It's a mindset all programmers should have. Ironically, I learned it from a Microsoft book, Writing Solid Code by Steven Maguire. Buy it, read it. Pass a copy onto your peers.
Um... where in the article does it say 3rd party code brings down the WHOLE O/S? In my experience the robustness of Windows has improved dramatically with every version (nevermind ME :-) I see individual applications crashing -- about 2 or 3 times a month. In fact, I typically go weeks and months between reboots (generally only when applying patches). There are plenty of things not to like about Windows, but the bad days of blue screens is a fading memory. Of course there are exceptions for odd hardware configurations and out-of-date drivers, but I've seen the same or worse problems with Linux support for oddball hardware.
BTW -- you may have noticed that sometimes when an app "hangs", and displays a "not responding" message in Task Manager, it is actually still running just fine (though chewing up a ton of CPU). Depending on the problem I may wait it out until the process finishes or simply kill it. One of my gripes with MS is that sometimes I have to use a third-party tool (sysinternals.com) tool to kill runaway processes -- Task Manager is not always able to kill it. Not perfect, but it works.
I think all of this applies to Windows server configurations also. I run IIS/ASP servers with dozens of users and applications. When configured so each account runs in its own memory space, with CPU utilization limits, NOBODY is able to bring down the whole web server with bad code -- just their own site.
The fact is, most of us are so bigoted about our O/S of choice, we are unwilling to learn enough about the "enemy" to use it properly.
Is this sig nificant?