l4-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: task server


From: Bas Wijnen
Subject: Re: task server
Date: Thu, 07 Oct 2004 12:03:36 +0200
User-agent: Mozilla Thunderbird 0.8 (X11/20040926)

Marcus Brinkmann wrote:
There is something that needs to be said about task death
notifications.  Notifications in L4 are an impossibility for us.  It's
simply not possible to implement them robustly and securely.
Everywhere where we are saying notifications, we actually mean some
sort of polling mechanism (a dedicated thread in the client polling
for new events).

Actually, if it's a dedicated thread, then it should be possible:
1 - A calls an IPC to task, with infinite receive timeout.
2 - task notes that A is ready to receive a message.
3 - A sends (from a different thread) a notice to task that it wants to be notified when B dies.
4 - Task records this.
5 - same for C.
6 - Task records this.
7 - B dies.
8 - Task sends a message about it to A.
9 - C dies.
10- Task waits (and does _not_ notify A yet.)
11- A has handled the death of B and starts receiving again (using the same system as in 1.)
12- Task sends a message about C's death to A.
etc.

If task's death notification fails, then the receiving task is not behaving correctly, and may not expect anything (it may not receive any notifications anymore, it will definately not receive the same death notification again, it may be killed by task, anything can happen.)

Thanks,
Bas

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]