[coyotos-dev] RcvQueue sender capabilities removed

Jonathan S. Shapiro shap at eros-os.com
Sun Mar 4 21:12:09 CST 2007


As part of the wrapper discussion, we realized that RecvQueue sender
capabilities no longer serve a purpose.

Prior to the introduction of the endpointID, there were two reasonable
architectures:

  1. Demux the receiving process first, then the receiving endpoint.
  2. Demux the receiving endpoint first, then the receiving process.

We chose the first, leading to the conclusion that RcvQueues would need
sender capabilities.

Now that endpoints carry identity, only option (2) makes sense. The
RcvQueue is now simply a place where endpoints and processes can
rendezvous in an SMP server.

One consequence of this is that the interrupt-layer mechanism needs to
be respecified. Interrupts no longer wake up receive queues. Either we
will have a "wait for interrupt" call or we will provide a mechanism for
per-interrupt endpoint registry. Doesn't really matter much which one we
do, and I haven't tried to resolve the choice in the specification yet.

With removal of RcvQueue sender and Wrapper objects, we jump to
specification version 0.5.

Negative specification days are even better than negative code days...


shap



More information about the coyotos-dev mailing list