Comparison with Windows (NT) Code?

Story: Why Linux Is a Model Citizen of Quality CodeTotal Replies: 13
Author Content

Feb 26, 2012
10:08 AM EST
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.

Feb 26, 2012
12:36 PM EST
The graph of API calls in IIS vs. Apache demonstrates the mindset of the developers.

(Link anyone?)

Feb 26, 2012
8:54 PM EST
images are linked on this page:


Feb 26, 2012
9:03 PM EST

Apache on Linux:

IIS on Windows:

Feb 26, 2012
9:09 PM EST
No wonder IIS is such a lump of lard

Feb 26, 2012
9:11 PM EST
Hey now, lard is at least useful. Can't say the same for IIS.

Feb 27, 2012
1:02 AM EST
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 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.

Feb 27, 2012
1:30 AM EST
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)


Feb 27, 2012
8:24 AM EST
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.

Feb 27, 2012
9:27 AM EST
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.


Feb 27, 2012
9:44 AM EST
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...

Feb 28, 2012
9:26 AM EST
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.


Feb 28, 2012
10:18 AM EST
I've seen those before, quite the representation of Linux's inherent efficiency over Windows.


Feb 28, 2012
10:42 AM EST

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.

Posting in this forum is limited to members of the group: [ForumMods, SITEADMINS, MEMBERS.]

Becoming a member of LXer is easy and free. Join Us!