docs: Update Code_Overview.md with more realistic task timing guidelines
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
parent
95676343db
commit
e8dc44a0ca
|
@ -58,9 +58,12 @@ functions are declared using the DECL_COMMAND() macro (see the
|
|||
|
||||
Task, init, and command functions always run with interrupts enabled
|
||||
(however, they can temporarily disable interrupts if needed). These
|
||||
functions should never pause, delay, or do any work that lasts more
|
||||
than a few micro-seconds. These functions schedule work at specific
|
||||
times by scheduling timers.
|
||||
functions should avoid long pauses, delays, or do work that lasts a
|
||||
significant time. These functions schedule work at specific times by
|
||||
scheduling timers. Long delays in these "task" functions result in
|
||||
scheduling jitter for other "tasks" - delays over 100us may become
|
||||
noticeable, delays over 500us may result in command retransmissions,
|
||||
delays over 100ms may result in watchdog reboots.
|
||||
|
||||
Timer functions are scheduled by calling sched_add_timer() (located in
|
||||
**src/sched.c**). The scheduler code will arrange for the given
|
||||
|
|
Loading…
Reference in New Issue