>> Linux 2.0 1998 229
>>
>> The Windows platform with 3433 API calls (up to NT4 SP3) belongs to a
>> different league; the associated problems are documented elsewhere [2].
>
>Is it fair to count all the Windows API calls and omit Linux GUI calls ?
>I wonder what is the figure for Linux if I would take into account the
Xwindows interface and/or various >libraries that meant to hide it. And what
about the various window managers ?

Yes it is fair. The modular design of Linux (coming from the Unix design
philosophy, of course ;-) means that those API are separate and to a large
extent orthogonal.

The count refers to the MINIMAL OS API one must take into account to write a
program. Now, don't get me wrong, of course you don't have to use every one
of those API calls for every Win* program, but they are there in your name
space and other API calls you do need to use may refer to / require them.

Apache doesn't care about the API for managing graphics display on the
screen. IIS on the other hand uses the same API used also for graphics. For
example, I'm pretty sure IIS maintains some sort of message loop (I am not
sure how much this statement is correct - any Win* guru's [ Hi Aviram! ;-) ]
want to correct me? ). The choice of this kind of design for the program is
inherit by the "choice" to use the Win* API. Apache designers suffered no
such restraints.

I think this opens up a really interesting line of thought:

The first skill that a programmer/designer must learn is how to break up a
problem to different pieces with defined interfaces between them to fight
complexity. Linux does just that. The Win* API shows a much lesser level of
this idea, IMHO.

The prime reason for this is NOT bad engineering as some people think.
Instead, the reasons are:

1. The need to maintain backwards compatibility with aged technology (and,
as my good friend Shachar always says, backwards compatibility is
compatibility done backwards)

2. The need to keep complexity as a way to obscure certain parts of how the
system works so that MSFT will retain dominance in the market by leveraging
it's knowledge of those APIs.

Practices such as these are the direct reason behind MSFT great financial
success in the past because up till now MSFT dealt with the Desktop
environment. There, if your program crashes you just reboot and continue.

This is not acceptable in the Server environment to which MSFT must adapt to
in order to survive. Moreover, because the result of Moor's law brought
about such a situation where technologies reserved in the past for the
Server arena or specific niche markets are now usable on Desktop systems
(e.g. Unix -> Linux) the users of Desktop system start to expect more of the
software they use. These (and secondary effects, like NTs inability to run
on ANYTHING that is not an Intel 32bit platform leading to it being
perceived as a
"dead end" platform) will lead (again, IMHO) to MSFT either adapting by
changing its policies (and therefor abandoning that which made it such a
successful company) or die.

The current reaction of the stock market to MSFT's latest financial results
is proof, in my eyes, that the great unwashed masses, beyond us tech freaks,
start to understand just that. This is the right time to sell those MSFT
stocks ;-)

Gilad, who wishes he he programed on an enviorment with just one API call -
DoWhatIHaveInMind(Brain &pbrain) const ...


=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]

Reply via email to