Linking genode processes at different address space

Parfait Tokponnon parfait.tokponnon at ...9...
Tue Oct 18 11:16:01 CEST 2016


Hello Martin,

2016-10-17 9:57 GMT+01:00 Martin Stein <martin.stein at ...1...>:

> Hello Parfait,
>
> Am 15.10.2016 um 14:34 schrieb Parfait Tokponnon:
> > Dear Genode community,
> > I would like to know if there is a way to link Genode process (or
> > components) at different address spaces especially when building
> > Heeselicht scenario.
> > When playing with the kernel (Nova), I encounter some weird values from
> > a userland process, but which component exactly it is, i don't really
> > know since almost all of them are linked to the same virtual adress.
> > According to me, one way to deal with it would be to name each PD
> > (protection domain) in the kernel according to the Genode component they
> > belong to, but I think this would be a bit tedious.
> > So what I am projecting to do is to guess the component name from the
> > adress space they are executing in  (if they have different address
> > space, right?).
> > Any other idea is welcome.
>
> Yes, the components are all in different virtual address spaces.
> Anyway, I assume that changing the linking in such a way to get a
> components name would be like taking a sledgehammer to crack a nut. I
> wonder what exactly you mean with weird values (IP, stack pointer,
> pagefaults, ...?) and at where you are when observing them (Core,
> Kernel, debugger, ...?).


I am in the kernel.
My real problem is this :
When an EC (Execution Context) traps into the kernel, how the kernel can
know which component it belongs to or which component originates this trap,
and when the kernel, returning to userspace, elects an EC, which component
this EC belongs to. I would like to get from the kernel at runtime the
component an Ec belongs to. Is it Possible?


> I ask because, for example, the
> Region-Management code in Core actually knows which Address Space is
> used by which component. If your component causes a pagefault, Core not
> only prints the name of the component but also name and IP of the thread
> that caused it.
>
> Because I am in the kernel, I assume i have no idea of what is going on in
core and other components.

> Cheers,
> Martin
>
> ------------------------------------------------------------
> ------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> _______________________________________________
> genode-main mailing list
> genode-main at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
>

Thank you a lot!

-- 
Parfait T.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.genode.org/pipermail/users/attachments/20161018/9589a7cb/attachment.html>


More information about the users mailing list