[okl4-developer] A doubt about blocking receive

Gernot Heiser gernot at ok-labs.com
Tue Sep 4 22:36:53 EST 2007


Mwarton wrote:

> You are correct in this case, t1 will remain blocked waiting for t2,
> even if t2 is deleted.  However, If t1 was blocked sending to t2, it
> would be aborted and returned failure.  The reason for the difference
> is that the kernel does not internally track waiters on a specific
> thread.

Please note that it is inherently not the microkernel's job to keep
track of what partners you might be communicating with, and whether or
not they still exist.

In fact, from the security point of view, this would create a security
hole (covert channel). The present receive behaviour is therefore
required. You can expect the present send behaviour to change in a
future API version, in order to eliminate this potential covert
channel.

Gernot



More information about the Developer mailing list