Hi,
On Mon, Aug 11, 2014 at 03:52:53PM +0200, Norman Feske wrote:
Hi Wolfgang,
Service A is pronounces to “init”. “Init” has the capability to Service A (e.g. AHCI). Program B is started. If Program B requests a service (e.g. read something fromAHCI), Init looks up its root list and notifies A that the service is requested, A creates a new capability and passes it to “Init”, which passes the capability further to B.
Is this correct? And does this happen always?
yes and yes.
Please forgive me that I interfere, but reading your post I'd like to substantiate Norman's answer a bit. The answer to your second question depends on the concrete use case. The mediation of session-creation requests always happens as there is no way around it. But once the session is created, communication happens directly between server and client without interposition of the parent. So your example of "read something from AHCI" has two phases:
1. Session creation with mediation by the parent creates session capability 2. Client calls the read function via the session capability directly at the server.
Regards