Hi Stephen,

I'm the author of Céu [1], a Esterel-based language, which appeared in
SenSys last year [2].
It is mostly cooperative ("synchronous" would be more accurate), but with
support for time-consuming asynchronous execution (not in the paper).
Not intended for hard real-time systems, though (the scheduler does not use
interrupts/preemption).
It is actively supported by our group at PUC-Rio [3].
Feel free to ask questions here or in private.

Regards,
Francisco

[1]: http://www.ceu-lang.org/
[2]: http://dl.acm.org/citation.cfm?id=2517360 ("preprint" available here:
http://www.ceu-lang.org/chico/ceu_sensys13_pre.pdf)
[3]: http://www.lua.inf.puc-rio.br/



On Fri, Feb 14, 2014 at 11:10 PM, Stephen Schaub <[email protected]> wrote:

> Janos,
>
> I'm aware of Ocram. I believe it is a cooperative multithreading system,
> and doesn't appear to have been updated in a year. Do you know whether
> anyone is actively using it?
>
> Stephen
>
> On 2/14/2014 4:37 PM, Janos Sallai wrote:
> > There's also Ocram:
> >
> > https://github.com/copton/ocram
> >
> > Make sure you read the paper at
> >
> > http://www.vs.inf.ethz.ch/publ/papers/bernauer_ipsn2013.pdf
> >
> > Janos
> >
> > On Fri, Feb 14, 2014 at 3:11 PM, Stephen Schaub <[email protected]>
> wrote:
> >> I am doing pure research on TOS threading solutions. There is no
> particular
> >> application at the moment. I was drawn to tosthreads as a reference
> >> threading solution because of its inclusion in the distribution, but ran
> >> into trouble when developing a test application with it.
> >>
> >> I am relatively new to TOS, and one of the things that appeals to me
> about
> >> tosthreads is the way it permits the application developer to make
> blocking
> >> calls within a thread. The resulting elimination of the need for many
> >> callbacks seems to simplify the code.
> >>
> >> Thanks so much for your feedback!
> >>
> >> Stephen
> >>
> >>
> >> On 2/14/2014 4:05 PM, Eric Decker wrote:
> >>
> >>
> >> TinyOs is a low level event driven embedded OS.  Predominately
> applications
> >> use a combination of interrupt level and the TinyOS task level which is
> the
> >> middle layer (tosthreads is a lower background layer).
> >>
> >> I am not aware of any other threaded implementations that are
> equivilent to
> >> tosthreads.
> >>
> >> the question I originally asked is why do you need tosthreads?   what
> >> problem are your solving.
> >>
> >> I understand that you are researching it.   But what problem are you
> trying
> >> to solve and why is tosthreads a match for solving that problem.
> >>
> >>
> >>
> >> On Fri, Feb 14, 2014 at 12:52 PM, Stephen Schaub <[email protected]>
> wrote:
> >>> Thanks for the info about tosthreads not being maintained. That's
> helpful
> >>> to know.
> >>>
> >>> I would be interested to know if there are any competitively
> multithreaded
> >>> solutions for TOS that are being actively supported.
> >>>
> >>> Stephen
> >>>
> >>>
> >>> On 2/14/2014 2:33 PM, Eric Decker wrote:
> >>>
> >>>
> >>> tosthreads isn't being actively maintained.
> >>>
> >>> and it sounds like you have found a bug.   so you will probably have to
> >>> debug it to figure out what is going on.
> >>>
> >>> do you have an environment where you can actively observe the machine
> >>> state?  ie.  a jtag environment?
> >>>
> >>>
> >>> On Fri, Feb 14, 2014 at 4:41 AM, Stephen Schaub <[email protected]>
> wrote:
> >>>> Eric,
> >>>>
> >>>> I am researching TOS threading approaches. I thought I would start
> with
> >>>> tosthreads since it is included in the distribution.
> >>>>
> >>>> On 2/13/2014 10:42 PM, Eric Decker wrote:
> >>>>
> >>>> why are you using tosthreads?
> >>>>
> >>>>
> >>>> On Thu, Feb 13, 2014 at 11:12 AM, Stephen Schaub <[email protected]>
> >>>> wrote:
> >>>>> I have not had success using TOSThreads to write to the Uart
> interface.
> >>>>> So, I devised the following test.
> >>>>>
> >>>>> Using tinyos-2.1.2 distribution, I performed the following test with
> two
> >>>>> telos motes:
> >>>>>
> >>>>> cd apps/tosthreads/apps/RadioStress
> >>>>> make install,1 telosb threads bsl,/dev/ttyUSB1
> >>>>>
> >>>>> The mote's led's indicate that it is transmitting.
> >>>>>
> >>>>> cd apps/tosthreads/apps/BaseStation
> >>>>> make install,2 telosb threads bsl,/dev/ttyUSB0
> >>>>>
> >>>>> The mote's led's indicate that it is receiving.
> >>>>>
> >>>>> export MOTECOM=serial@/dev/ttyUSB0:telosb
> >>>>> java net.tinyos.tools.Listen
> >>>>>
> >>>>> Output to the console is a stream of bad packet messages:
> >>>>>
> >>>>> serial@/dev/ttyUSB0:115200: bad packet
> >>>>> serial@/dev/ttyUSB0:115200: bad packet
> >>>>> ...
> >>>>>
> >>>>> Now, I replace the threaded version of BaseStation with the
> event-based
> >>>>> one:
> >>>>>
> >>>>> cd apps/BaseStation
> >>>>> make install,2 telosb bsl,/dev/ttyUSB0
> >>>>>
> >>>>> Output from java net.tinyos.tools.Listen now appears correct.
> >>>>>
> >>>>> Can anyone confirm this behavior? Is this a known problem with the
> >>>>> BaseStation threads demo?
> >>>>>
> >>>>> Stephen
> >>>>> _______________________________________________
> >>>>> Tinyos-help mailing list
> >>>>> [email protected]
> >>>>>
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
> >>>>
> >>>>
> >>>>
> >>>> --
> >>>> Eric B. Decker
> >>>> Senior (over 50 :-) Researcher
> >>>>
> >>>>
> >>>
> >>>
> >>> --
> >>> Eric B. Decker
> >>> Senior (over 50 :-) Researcher
> >>>
> >>>
> >>
> >>
> >> --
> >> Eric B. Decker
> >> Senior (over 50 :-) Researcher
> >>
> >>
> >>
> >> _______________________________________________
> >> Tinyos-help mailing list
> >> [email protected]
> >>
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
>
> _______________________________________________
> Tinyos-help mailing list
> [email protected]
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
>
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to