about the alien thread

Adam Lackorzynski adam at os.inf.tu-dresden.de
Sun Jan 12 23:24:04 CET 2014


On Sun Jan 12, 2014 at 04:57:07 +0800, Wei Jin wrote:
> I'm tring to understand how the alien thread works. I'm not confident in
> what I have got.
> Please correct me:
> When an alien thread invokes an IPC call, it raises an exception, which
> would be caught by the
> excenption handler as configured.
> The exception handler could get the status of the alien thread by reading
> exception regs in UTCB
> ( l4_utcb_exc<http://os.inf.tu-dresden.de/L4Re/doc/group__l4__utcb__exc__api.html#ga3d957c3c28e526804e2c1a2e183df88f>
> () ).
> The exception handler could also set this IPC call allowed or not.
> If this IPC call is allowed, the alien thread acts like a non-alien thread
> the performs the IPC call.
> // This is what I doubt since the alien example does not provide a valid
> IPC call.

So far ok. The example does an l4_sleep() call, so it is an IPC.

> If this IPC call is not allowed, the alien thread executes from where it
> raise the exception.

The exception handler has to reply and sends a, possible modified,
exception state back and the thread continues with those values loaded.

Adam                 adam at os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/

More information about the l4-hackers mailing list