[openbeos] Re: Preferences/File Help

  • From: "Michael Phipps" <mphipps1@xxxxxxxxxxxxxxxx>
  • To: openbeos@xxxxxxxxxxxxx
  • Date: Thu, 17 Jan 2002 22:55:49 -0500

>> >P.S. Why don't you make everything a server??? ;-)
>> 
>> Be pretty much did, as far as I can tell. 
>
>With all due respect, are you insane? Most of the OS is not a server. 

Most people seem to think so. :-) 

>Large quantities are shared libraries or seperate applications (Tracker 
>is *not* a server). I just pulled up the handy-dandy BeBook here. Let's 
>go through, shall we?

OK, but I have no clue how you came up with your opinions on what
is remote and what is not.

>The Application Kit- 2/13 classes implemented remotely (BApplication 
>and BRoster)

BClipboard may or may not (not really sure).

>The Device Kit- 0/2 classes implemented remotely

My device kit shows 5 classes. :-/ None in servers.

>The Game Kit- 2/5 classes implemented remotely (BDirectWindow and 
>BWindowScreen)

I *thought* (and I could be wrong) that the sound classes used the media kit.
If so, they are talking through a server.

>The Interface Kit- 4/45 classes implemented remotely (BView, BWindow, 
>BPrintJob, and BScrollbar)

This is somewhat misleading. Most of those classes derive from BView
either directly or through BControl. So most of them *DO* talk to servers.

>The Kernel Kit- 3/4 function sets implemented remotely (areas, ports, 
>and semaphores)

Actually, I think that everything in here talks to the kernel via system calls.
So not really server or shared library. :-)

>The Mail Kit- 0.5/1.5 classes implemented remotely (the C mail API 
>counts here)

I would think that both would need to talk to the server.

>The Media Kit- Don't know. I am not familiar with it. I suspect ~ 30% 
>remote

I wouldn't even guess.

>The Midi Kit- ditto

There is a midi server, so at least some of it.

>The Network Kit- 2/4 classes/function sets implemented remotely 
>(sockets/BNetEndpoint)
>The Storage Kit- 1/18 classes implemented remotely (BQuery)

I can't agree with you here. Example - BDirectory creates a new file.
I would *HOPE* that functionality is not in the shared library, but is in the
FS. :-) Which means that it is in the kernel. If you call the kernel a server 
for BQuery,
you have to call it a server for most of these classes.

>The Support Kit- 0/10 classes implemented remotely

Some of these, too, have remote functionality. Specifically, anything that is a 
Locker.

>The Translation Kit- 0/4 classes implemented remotely

Agreed.

>Grand Total- 14.5/106.5 classes/function sets implemented remotely
>
>Only slightly more than 10% of the Be API is implemented in a server. I 
>would hardly call this most everything.

That is one measure.
Another is this: 
in servers, there is 3.6 meg of code.
The kernel is another 700k.
Plus all of the add-ons, etc.
In lib, there is 9.7 meg of code. This includes std C++ lib, tracker (> 2 meg), 
etc.

That puts the two pieces closer to an equal footing. It really all depends on 
what
and how you count. In any case, Be seemed to think that servers were a good 
thing and
used them quite a bit. Maybe not "almost all", Maybe not 10%. Probably somewhere
in betwee. ;-)




Other related posts: