25-01-2012, 01:48 PM
TinyOS/Motes Overview
nesc-tutorial.pdf (Size: 762.41 KB / Downloads: 90)
Components
• Programs are built out of components
• Each component is specified by an interface. A Component has:
– Frame (internal states)
– Tasks (data processing)
– Interface(s) (commands/events)
• Commands and Events are function calls (later)
• Application is a wiring of multiple interfaces(components).
• The components are statically wired together based on their interfaces. (For
runtime efficiency)
Tasks
• FIFO scheduling
• non-preemptable by other task, preemtable by events
• perform computationally intensive work
• handling of multiple data flows:
– a sequence of non-blocking command/event through the component graph
– post task for computational intensive work
– preempt the running task, to handle new data
Wiring
• Not only the interfaces can be wired together, commands/events also can be;
• any wired elements must be compatible;
• Wiring statements:
– S1 = S2
S1 and S2 are both external, one is provided and the other is used
one is internal, the other is external; and both are provided or used.
– S1− > S2 or S2 < −S1:
Both are internal. One is provided and other used.
• internal specification element: from a configuration’s specification
• external specification element: from a configuration’s component’s specification