[Tinyos-2-commits] CVS: tinyos-2.x/doc/txt tep106.txt,1.6,1.7

Phil Levis scipio at users.sourceforge.net
Fri Jan 19 16:39:16 PST 2007


Update of /cvsroot/tinyos/tinyos-2.x/doc/txt
In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv11184

Modified Files:
	tep106.txt 
Log Message:
Addressed review comments.


Index: tep106.txt
===================================================================
RCS file: /cvsroot/tinyos/tinyos-2.x/doc/txt/tep106.txt,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** tep106.txt	12 Dec 2006 18:22:54 -0000	1.6
--- tep106.txt	20 Jan 2007 00:39:14 -0000	1.7
***************
*** 179,185 ****
  ``uint16_t`` parameter. When the scheduler runs the task, it will
  signal the ``runTask`` event with the passed parameter, which contains
! the task's logic. Note, however, that this does not save any RAM: if
! anything, it will cost RAM as space must be allocated in the scheduler
! and may then also be allocated in the component. Furthermore, as
  there can only be one copy of a task outstanding at any time, it
  is just as simple to store the variable in the component. E.g.,
--- 179,184 ----
  ``uint16_t`` parameter. When the scheduler runs the task, it will
  signal the ``runTask`` event with the passed parameter, which contains
! the task's logic. Note, however, that this does not save any RAM: 
! the scheduler must have RAM allocated for the parameter.  Furthermore, as
  there can only be one copy of a task outstanding at any time, it
  is just as simple to store the variable in the component. E.g.,
***************
*** 272,275 ****
--- 271,279 ----
  into a low power state when the processor is idle: it never returns.
  
+ The scheduler is repsonsible for putting the processor to sleep
+ predominantly for efficiency reasons. Including the sleep call
+ within the scheduler improves the efficiency of the task loop,
+ in terms of the assembly generated by the TinyOS toolchain. 
+ 
  This is the TaskBasic interface::
  
***************
*** 294,297 ****
--- 298,305 ----
  parameterized TaskBasic interface.
  
+ While the default TinyOS scheduler uses a FIFO policy, TinyOS
+ components MUST NOT assume a FIFO policy. If two tasks must run
+ in a particular temporal order, this order should be enforced by
+ the earlier task posting the later task.
  
  5. Replacing the Scheduler
***************
*** 397,401 ****
  requires that a scheduler supporting EDF tasks must ensure that
  basic tasks run eventually even if there is an unending stream of
! short deadline tasks to run.
  
  If the scheduler provides two instances of the same task interface,
--- 405,411 ----
  requires that a scheduler supporting EDF tasks must ensure that
  basic tasks run eventually even if there is an unending stream of
! short deadline tasks to run. Quantifying "eventually" is difficult,
! but a 1% share of the MCU cycles (or invocations) is a reasonable 
! approximation. 
  
  If the scheduler provides two instances of the same task interface,



More information about the Tinyos-2-commits mailing list