> I am a PhD student at Indiana University working on the application of
> some Plan 9 related to the embedded domain. Specifically I am looking at
> embedded debugging, configuration and device management using the
> distributed virtual filesystem model. I have looked at a few
> different types of embedded systems including multi board systems
> containing SoC's (system on chips) and sensor networks. I have come up
> with a few different ideas (listed below) to address as part of my thesis
> work regarding which I hope to get feedback from the wider Plan 9
> community. Any thoughts and opinions are greatly appreciated.
That's great. At the labs we're also using Plan 9 as an embedded operating
system and we're demonstrating to the old-fashioned folks who believe
in dedicated embedded systems from manufacturares that shall remain nameless
that we can get things going reliably in a fraction of the time.
> * Downloadable namespaces
> The namespace supported by a filesystem can be modified (possibly using a
> configuration file provided by the filesystem) to correspond to changes in
> system that the filesystem in encapsulating.
Right now, Plan 9 interprets the file /lib/namespace when it starts up
(and when it starts up applications that respond to external requests).
That describes a tailored — but not dynamic — name space already.
> For instance, if the
> filesystem was to abstract a set of sensor networks, then at start up
> time the user would describe the layout of the network to the
> filesystem possibly by writing it as an XML description to the
> configuration file and
> modify(initialize) the namespace. If the layout of the
> network changes in due course, the namespace could be similarly modified
> by using the configuration file to reflect the change.
XML? You must like overkill. First question is, does each node have it's
own local file system or does it get its files from a file server? If the
latter,
I can imagine building a file system that serves different nodes with different,
tailored and dynamic, content. If the former, I can imagine a distributed
implementation of such a service. If your name space is highly dynamic,
mounting and unmounting may not be the most efficient or flexible path.
A file server that adapts the files it serves to the sensor node's needs may
be a more powerful way, as well as one that is easier to realize.
Sape