[okl4-developer] spatial and temporal partitioning control?

Josh Matthews jmatthews at ok-labs.com
Sun Sep 6 10:13:01 EST 2009


On Sat, Sep 5, 2009 at 5:17 PM, Stefan M. Petters <smp at isep.ipp.pt> wrote:

> Dear Jean Christophe,
>
> Jean-Christophe Dubois wrote:
> > On Sunday 30 August 2009 18:49:11 Jean-Christophe Dubois wrote:
> >
> >> Now, I am a bit uneasy on how this would work on a non SOC device using
> for
> >> example a PCI bus or an USB bus. Would we get the ability to assign each
> >> PCI card/USB device to a single Cell. How should the bus
> >> enumeration/configuration happen? Considering the PCI enumeration could
> >> change the various devices physical addresses how would it work? How
> about
> >> PCI hotplug? I am not sure ... does anybody has a view on this? Or is
> this
> >> a field to explore?
> >>
>

One solution to this would be to have a PCI or USB device cell, which has
complete control over all devices hanging off the PCI card or USB bus and
hands out access (using capabilities) dynamically to clients.


> >> Still this let the temporal partitioning issue. OKL4 is mostly based on
> >> priority. If a high priority cell goes mad, we are stuck because it will
> >> eat up all of our CPU without any possibility for other cells to try to
> fix
> >> the problem.
> Yes, that's the very definition of priority. In order to fix this you
> might want to have a high prio thread which is periodicly checking
> whether it received some alive IPC from a  lower prio task. If not, fix
> it. However, this is rather crude, but if you don't trust your high prio
> cells ...
>

Indeed - and it makes me wonder why you don't trust your high prio cell; can
you elaborate?
Depending on your use case, it may make me question your system design: are
you sure your requirements aren't better met with a single cell with
multiple protection domains, with a high priority cell manager acting as a
watchdog over the processes within those protection domains?


> >>  And even if we have an even higher priority cell controlling
> >> the all thing, how could it find that one specific cell has gone mad and
> >> all others cells are starving on CPU resource.
> >>
> <...>
>
>> BTW, now that there is no more "privileged" cell (as opposed to OKL4 2.4)
>  >> how could one cell theoretically restart another cell that is
> crashed/has
> >> gone mad? We can certainly reset the all system but is there a finer
> >> grained way to do it.
> >>
>

The above concerns would again point me towards your requirements being met
with a single-cell design with a cell manager that acts as your "privileged
cell". If you can elaborate on your requirements, perhaps we can all comment
further.

Kind regards,
Josh
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.okl4.org/pipermail/developer/attachments/20090905/49b7898f/attachment.htm 


More information about the Developer mailing list