[unios] Reflection

Anders Petersson anders.petersson@mbox320.swipnet.se
Fri, 01 Jan 1999 15:20:13 +0100


From: Anders Petersson <anders.petersson@mbox320.swipnet.se>

So, I finally understood reflection.

What can I say... it sounds quite good, althou fussy.

The problem is that knowing the meaning of reflection doesn't bring you any
closer to the implementation of the OS. The idea is so general that it is
no more than a vague goal. Tril has said over and over again: this can be
done with reflection. Yes, in most cases he's right, but that says nothing
about *how* reflection is to be achieved. Until someone finds
out/alternatively tells me, I regard this idea to be nothing but an
achademic property to strive for in the design.
It's like saying "our OS will be fast". You can say the system will be
good, since its speed will solve this and this, but if you don't know *how*
it will achieve its speed, you're in trouble.

Could mOS support reflection? It does have some properties that makes it
more suitable for reflection. Each system is devided into lots and lots of
small units, each one (or the vast majority) movable, and replacable in
real-time. Updates are also noticed as they are done, not by a reboot.
What speaks against is that mOS shows the user the true system topology. It
is not as I understand Tunes does - to present the user with a view that is
independent of the underlaying structures. As reflection changes the way
the system is structured, without any help from the user, reflection could
confuse for the user by changing the way *the user* sees the system. 
If it's only about choosing between different algorithms etc, mOS would
feel fine hosting reflection. The actual *implementation* is not only
hidden for the user, but for all objects in the system. The user sees
exactly what the rest of the system sees, but all anyone see is the
objects, and what can be done with them (interfaces).

I could well imagine UniOS having some behavior-driven module, that watches
performance and how the system is used, and based on that changes system
parts. This could be a part of UniOS, but not mOS. As part of UniOS, work
on it can begin as soon as mOS is completed or anytime later. If mOS
supports it, it doesn't matter when it's done (as long as the target
implementation isn't limiting).

binEng



------------------------------------------------------------------------
To unsubscribe from this mailing list, or to change your subscription
to digest, go to the ONElist web site, at http://www.onelist.com and
select the User Center link from the menu bar on the left.
------------------------------------------------------------------------
UniOS Group
http://members.xoom.com/unios