Where IS everybody

Peter Mueller mueller@sc.ZIB-Berlin.DE
Sun, 16 May 93 14:48:26 +0200


Hi,

sorry for beeing absent quite a long time, but I'm currently full of work to
finish my diploma thesis. I apologize to let you alone ... ;-)

Maybe there's a possibility to get things started. Mmh, I think we all do agree,
that the basic mechanism which must be provided by the kernel (Moose) must
be interprocess communication. (Or: message passing).

Therefore we have to create a module, which provides an interface with three
primitives, namely:

	send(destination, message)
	receive(from, message)
	reply(to)

I suggest synchronous ipc, because it seems to me to be the basis of any other
ipc types.

Where we still have to get to an agreement is:

o How looks a destination address? 
  Should it look like this: (machine address, object id, method id)
  or only like this: (object id, method id)
  or like this: (machine address, process id)
  or: ???

o How is address translation done?
  We have to specify the size of the address's parts.
  Here we have to say definitely where we expect Moose to run. Should it be
  able to run Moose on several machines or only on one? The latter will not
  require a machine address part, but that's clear.

o How is abstraction to hardware provided? 
  This covers the lower area of message passing. We need routines (but only a
  few) which realize the message transfer. There should also be routines for
  signal handling. (They should build a message which is then sent to an
  appropriate signal server.)

Let me know what you think. If you want, I can try to write a draft about
the IPC interface. I will wait for Dennis' next spec's because it will
give a us a basis. Ok?

Next: Forgive my english, I've had a long long night yesterday and it seems
that I'm standing 1 m besides myself ...

Bye,

Peter

P.S: One for the compiler designer. I don't think, that the missing of a
compiler is a thing which disables us to start writing. If you provide the
possibility to use interfaces to other languages (preferably some which are
in common use, like C++), it's possible to start writing. (BTW: As some code
of the kernel must be done in Assembler, there must be at last an interface
to that sort of language ...)