diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2020-06-24 10:40:42 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2020-09-18 18:55:09 +0200 |
commit | d433b724272abbf9e3516da8c426157c7994f66b (patch) | |
tree | 750155ae831eb9d20f39223540a0d7e179a04413 /cpukit/include/rtems/rtems/tasks.h | |
parent | rtems: From <rtems.h> to <rtems/rtems/object.h> (diff) | |
download | rtems-d433b724272abbf9e3516da8c426157c7994f66b.tar.bz2 |
rtems: From <rtems.h> to <rtems/rtems/tasks.h>
Move task related declarations and definitions to <rtems/rtems/tasks.h>.
The goal is to make <rtems.h> an include only header file.
Diffstat (limited to '')
-rw-r--r-- | cpukit/include/rtems/rtems/tasks.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/cpukit/include/rtems/rtems/tasks.h b/cpukit/include/rtems/rtems/tasks.h index aebd3e0f0d..f685c315e3 100644 --- a/cpukit/include/rtems/rtems/tasks.h +++ b/cpukit/include/rtems/rtems/tasks.h @@ -23,6 +23,7 @@ #include <rtems/rtems/types.h> #include <rtems/score/context.h> #include <rtems/score/smp.h> +#include <rtems/score/stack.h> #ifdef __cplusplus extern "C" { @@ -51,6 +52,34 @@ extern "C" { #define RTEMS_YIELD_PROCESSOR WATCHDOG_NO_TIMEOUT /** + * @brief Minimum stack size which every thread must exceed. + * + * It is the minimum stack size recommended for use on this processor. This + * value is selected by the RTEMS developers conservatively to minimize the + * risk of blown stacks for most user applications. Using this constant when + * specifying the task stack size, indicates that the stack size will be at + * least RTEMS_MINIMUM_STACK_SIZE bytes in size. If the user configured minimum + * stack size is larger than the recommended minimum, then it will be used. + */ +#define RTEMS_MINIMUM_STACK_SIZE STACK_MINIMUM_SIZE + +/** + * @brief Specifies that the task should be created with the configured minimum + * stack size. + * + * Using this constant when specifying the task stack size indicates that this + * task is to be created with a stack size of the minimum stack size that was + * configured by the application. If not explicitly configured by the + * application, the default configured minimum stack size is the processor + * dependent value RTEMS_MINIMUM_STACK_SIZE. Since this uses the configured + * minimum stack size value, you may get a stack size that is smaller or larger + * than the recommended minimum. This can be used to provide large stacks for + * all tasks on complex applications or small stacks on applications that are + * trying to conserve memory. + */ +#define RTEMS_CONFIGURED_MINIMUM_STACK_SIZE 0 + +/** * Define the type for an RTEMS API task priority. */ typedef uint32_t rtems_task_priority; |