summaryrefslogtreecommitdiffstats
path: root/spec/rtems/timer/glossary/scheduled.yml
blob: 9d3b88afb31cebc5dbaaa6042a5c8d2262ff63ae (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
SPDX-License-Identifier: CC-BY-SA-4.0
copyrights:
- Copyright (C) 2021 embedded brains GmbH & Co. KG
enabled-by: true
glossary-type: term
links:
- role: glossary-member
  uid: group
term: scheduled
text: |
  A timer in scheduled ${../glossary/state:/term} is set to
  ${../glossary/fire:/term} at a defined point in the future. A timer enters
  scheduled ${../glossary/state:/term} when the user calls one of the directives
  listed below or ${../if/reset:/name} and these directives return
  ${/glossary/statuscode:/term} ${../../status/if/successful:/name}.

  All directives called on a timer are executed in strict sequential order. The
  timer remembers the data from the last call (if any) to one of the four
  directives listed below till another call to one of these directives
  overwrites the remembered data or the timer is deleted. This stored data is
  used when the ${../if/reset:/name} directive is called.

  The table below lists the directives which schedule a single invocation of a
  ${../glossary/timerserviceroutine:/term}. The table states the
  ${../glossary/context:/term} in which the
  ${../glossary/timerserviceroutine:/term} will be invoked and the
  ${../glossary/clock:/term} which ${/glossary/rtems:/term} uses to determine
  when to ${../glossary/fire:/term} the execution.

  .. list-table:: Timer scheduling directives set ${../glossary/clock:/term} and ${../glossary/context:/term}
     :widths: 20 10 10
     :header-rows: 1

     * - Directive
       - Execution ${../glossary/context:/term}
       - ${../glossary/clock:/term} used
     * - ${../if/fire-after:/name}
       - ${../glossary/interruptcontext:/term}
       - ${../glossary/ticksbasedclock:/term}
     * - ${../if/fire-when:/name}
       - ${../glossary/interruptcontext:/term}
       - ${../glossary/realtimeclock:/term}
     * - ${../if/server-fire-after:/name}
       - ${../glossary/servercontext:/term}
       - ${../glossary/ticksbasedclock:/term}
     * - ${../if/server-fire-when:/name}
       - ${../glossary/servercontext:/term}
       - ${../glossary/realtimeclock:/term}
type: glossary