Why Linux Is a Model Citizen of Quality Code
|
|
|
Comments (18)
Comparison with Windows (NT) Code?
Hey, Coverity? How about doing a scan on Windows XP and/or 7 code? That would be an interesting comparison, now wouldn't it? I think it's been done, but the results are under layers of NDAs.
The graph of API calls in IIS vs. Apache demonstrates the mindset of the developers.
(Link anyone?)
(Link anyone?)
images...
Apache on Linux: http://i.zdnet.com/blogs/SysCallApache.jpg
IIS on Windows: http://i.zdnet.com/blogs/SysCallIIS.jpg
Apache on Linux: http://i.zdnet.com/blogs/SysCallApache.jpg

IIS on Windows: http://i.zdnet.com/blogs/SysCallIIS.jpg

No wonder IIS is such a lump of lard
Hey now, lard is at least useful. Can't say the same for IIS.
Sorry for the dumb question, but what exactly are these graphs, and where did they come from? I don't see them in the article or the link on computerworld.com. And I can't zoom in on them to actually read any of the balloons and understand what I'm looking at. They look sorta like call graphs, but surely a call graph of either webserver (esp. IIS) would be far more complex than this, and furthermore I don't know how anyone would be able to produce a call graph of IIS unless MS gave them access to the source code.
I'm assuming that those are flow charts for the respective programs (Apache & IIS).
edit: Ooops, no -- they're labelled SysCallApache.jpg and SysCallIIS.jpg, so "flowchart" isn't quite the right term (though I suppose the conclusions to be taken from the comparison are similar)
edit: Ooops, no -- they're labelled SysCallApache.jpg and SysCallIIS.jpg, so "flowchart" isn't quite the right term (though I suppose the conclusions to be taken from the comparison are similar)
They are maps of the system calls for Apache on Linux vs. system calls of IIS on Windows (win 2000 server I believe).
They were quite famous when they came out and pretty much stopped an old line of MS advertising FUD dead in its tracks. MS used to claim how inferior FOSS software was in design and implementation compared to professional grade commercial software.
A few examples like the charts above and studies from groups like Coverity proved that the exact opposite was true. FOSS tended to be superior in design and implementation to commercial software in almost every way measurable.
The Linux/Apache chart shows the classic 'onion dome' shape. small at the top quickly widening in the middle, but still in the upper half, and tapering away again towards the bottom. It shows forethought in design. The IIS / Windows chart is classic spaghetti, exactly what you want to avoid.
They were quite famous when they came out and pretty much stopped an old line of MS advertising FUD dead in its tracks. MS used to claim how inferior FOSS software was in design and implementation compared to professional grade commercial software.
A few examples like the charts above and studies from groups like Coverity proved that the exact opposite was true. FOSS tended to be superior in design and implementation to commercial software in almost every way measurable.
The Linux/Apache chart shows the classic 'onion dome' shape. small at the top quickly widening in the middle, but still in the upper half, and tapering away again towards the bottom. It shows forethought in design. The IIS / Windows chart is classic spaghetti, exactly what you want to avoid.
Quoting:The IIS / Windows chart is classic spaghetti, exactly what you want to avoid.
And the reason for all this spaghetti is lack of modular design, numerous security-holes patching, and constant adding of features trying to catch up with Apache.
On the other hand, Apache benefited a lot form Top-Down (v1.x) & Bottom-Up (2.x) combination of modern methods of software development.
wikipedia: Top-down and bottom-up design
Which is a strength and a luxury that FOSS has and MS keeps ignoring.
And that accretional design has been part of MS's methodology since day one. Remember, in the antitrust trial, when it was brought out that every iteration of MS's OS is intentionally slower and fatter than the last one so you'll have to buy new hardware for it, so the rising OS price as a percentage of bundled system cost stays below the user-revolt point?
It freaked me out when the guy at Staples said that a fully patched version of winXP needed 2GB of space for the OS alone. Just to think of all the half-supplanted dlls sitting in memory like so many floaters...
It freaked me out when the guy at Staples said that a fully patched version of winXP needed 2GB of space for the OS alone. Just to think of all the half-supplanted dlls sitting in memory like so many floaters...
Let's give Microsoft credit where credit is due. They have hired graduates of the most prestigious computer science and programming departments for many years. They run marketing focus groups in huge numbers, and push hardware manufacturers to the limits of what technology is capable of.
F/OSS and Linux, in comparison, has embraced people with a love of what they do, who are actively interested in the projects to which they contribute, and who, like the software calls above demonstrate, constantly strive to simplify, clarify, and strengthen.
I looked up commentaries about that leak of WinXP code from a few years ago. Much of the commentaries concerned the mild vulgarity in the code comments, but also addressed the fact that the code WAS commented, as well as generally being of very high quality.
But what it also showed was layers of cruft. Patches on patches, undocumented APIs, deep system calls available to applications, etc. All those things that F/OSS projects deliberately and explicitly avoid.
F/OSS and Linux, in comparison, has embraced people with a love of what they do, who are actively interested in the projects to which they contribute, and who, like the software calls above demonstrate, constantly strive to simplify, clarify, and strengthen.
I looked up commentaries about that leak of WinXP code from a few years ago. Much of the commentaries concerned the mild vulgarity in the code comments, but also addressed the fact that the code WAS commented, as well as generally being of very high quality.
But what it also showed was layers of cruft. Patches on patches, undocumented APIs, deep system calls available to applications, etc. All those things that F/OSS projects deliberately and explicitly avoid.
I've seen those before, quite the representation of Linux's inherent efficiency over Windows.
Scott,
I heard the corporate trainer where I work discussing Linux to some support staff, because they need to know some Linux stuff in order to troubleshoot the few people with Linux systems who call for help, as well as some of the company servers that run Linux, etc.
Anyway, I heard him address the efficiency of F/OSS as an aside, so I emailed the blog entry with these two graphs to him right away. He was impressed, but not surprised.
Smart guy.
I heard the corporate trainer where I work discussing Linux to some support staff, because they need to know some Linux stuff in order to troubleshoot the few people with Linux systems who call for help, as well as some of the company servers that run Linux, etc.
Anyway, I heard him address the efficiency of F/OSS as an aside, so I emailed the blog entry with these two graphs to him right away. He was impressed, but not surprised.
Smart guy.
Link
The current Full story and Read more links point to an LXer page.
The links should point to the original article.
The links should point to the original article.
I have confirmed a bug that affects Linux.com stories. I post a story, I copy in the link, and then the link disappears when I click the 'add news item' button.
Link fixed.
Link fixed.
TC, that's not a bug. That's a feature.
@Bob: No, that's a bug. It's supposed to do that for stories written by Ken Hess, but it's not working.
Post a comment
A free account is needed to post. Write your comment here first: your text is kept in this browser while you sign up or log in, and is waiting for you when you come back.
Your message:Markdown: **bold**, *italic*, [text](https://link), - lists, > quotes, $x^2$ for math. Formatting help
Sign up and post (it is free) or Log in and post
