TosData Struct Reference

Since at that time a task is running there is no need for the OS stack, we make a union of the background variables and the OS stack. More...

#include <femtoos_types.h>

Collaboration diagram for TosData:

Collaboration graph
[legend]

Data Fields

Tchar StackOS [StackSizeOS]
TtaskSave pxSave

Detailed Description

Since at that time a task is running there is no need for the OS stack, we make a union of the background variables and the OS stack.

Note that this places boundaries of the StackSize (which can be checked), and implies that the structure of TtaskSave depends on the direction of stack growth and the alignment of the array and the structure (which is assumed to be top-aligned, i.e. the lowest used addresses match). Thus this is a delicate matter. Therefore we have the possibility to use a normal struct as well. Note the StackOS must be the first field, because of the definition of __do_stack_def: in the devices files. (i don't know a way to address xOS.StackOS in assembly directly).

Definition at line 193 of file femtoos_types.h.


Field Documentation

Tchar TosData::StackOS[StackSizeOS]

Definition at line 194 of file femtoos_types.h.

Referenced by portSaveContext(), privCheckOsStackLevel(), privCheckOsStackRegion(), privEnterIdle(), privEnterSleep(), and privIsrExit().

TtaskSave TosData::pxSave

Definition at line 195 of file femtoos_types.h.

Referenced by portBeginISR(), portRestoreContext(), portReturnISR(), portSaveContext(), portYieldISR(), privInitOs(), and taskStackCheck().


The documentation for this struct was generated from the following file:
Generated on Fri Oct 16 00:05:35 2009 for FemtoOS by  doxygen 1.5.2