Changeset 3b1ae6d in rtems-central


Ignore:
Timestamp:
Sep 16, 2020, 2:22:15 PM (13 months ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
master
Children:
4c59ac4
Parents:
3bdf817
git-author:
Sebastian Huber <sebastian.huber@…> (09/16/20 14:22:15)
git-committer:
Sebastian Huber <sebastian.huber@…> (09/16/20 14:33:04)
Message:

spec: Document rtems_task_construct(), ...

Location:
spec
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • spec/acfg/if/max-thread-local-storage-size.yml

    r3bdf817 r3b1ae6d  
    3131  ${/rtems/task/if/storage-alignment:/name} to adjust the size to meet the
    3232  minimum alignment requirement of a thread-local storage area.
     33
     34  The actual thread-local storage size is determined when the application
     35  executable is linked.  The ``rtems-exeinfo`` command line tool included in
     36  the RTEMS Tools can be used to obtain the thread-local storage size and
     37  alignment of an application executable.
    3338text: ''
    3439type: interface
  • spec/rtems/task/if/config.yml

    r3bdf817 r3b1ae6d  
    6363      If the is less than the task storage area size, then the task
    6464      construction by ${construct:/name} fails.
     65
     66      The actual thread-local storage size is determined when the application
     67      executable is linked.  The ``rtems-exeinfo`` command line tool included
     68      in the RTEMS Tools can be used to obtain the thread-local storage size
     69      and alignment of an application executable.
     70
     71      The application may configure the maximum thread-local storage size for
     72      all threads explicitly through the
     73      ${/acfg/if/max-thread-local-storage-size} configuration option.
    6574    kind: member
    6675    name: maximum_thread_local_storage_size
  • spec/rtems/task/if/construct.yml

    r3bdf817 r3b1ae6d  
    2727  context on architectures with a separate floating-point context.
    2828
    29   It is not recommended to mix ${create:/name} and ${.:/name} in an
    30   application.  This directive is intended for applications which do not want
    31   to use the RTEMS Workspace and instead statically allocate all operating
    32   system resources.  The stack space estimate done by <rtems/confdefs.h>
    33   assumes that all tasks are created by ${create:/name}.  The estimate can be
    34   adjusted to take user-provided task storage areas into account through the
     29  This directive is intended for applications which do not want to use the
     30  RTEMS Workspace and instead statically allocate all operating system
     31  resources.  It is not recommended to use ${create:/name} and ${.:/name}
     32  together in an application.  It is also not recommended to use ${.:/name} for
     33  drivers or general purpose libraries.  The reason for these recommendations
     34  is that the task configuration needs settings which can be only given with a
     35  through knowledge of the application resources.
     36
     37  An application based solely on static allocation can avoid any runtime memory
     38  allocators.  This can simplfiy the application architecture as well as any
     39  analysis that may be required.
     40
     41  The stack space estimate done by <rtems/confdefs.h> assumes that all tasks
     42  are created by ${create:/name}.  The estimate can be adjusted to take
     43  user-provided task storage areas into account through the
    3544  ${/acfg/if/min-tasks-with-user-provided-storage:/name} application
    3645  configuration option.
     46
     47  The ${/acfg/if/max-tasks:/name} should include tasks constructed by
     48  ${create:/name}.
    3749params:
    3850- description: is the task configuration.
Note: See TracChangeset for help on using the changeset viewer.