diff options
author | Dr. Matthew Swabey <matthew@swabey.org> | 2023-03-27 21:34:24 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-27 21:34:24 -0400 |
commit | 4026365270daa8ba26c52eef01ecd0156626bfb2 (patch) | |
tree | 1dec5f8a4609212ddb91ec82e1462d1d8223bf81 /test | |
parent | d518152ab27637c306eb1a275c5211e5fd5d2a2a (diff) | |
download | kutter-4026365270daa8ba26c52eef01ecd0156626bfb2.tar.gz kutter-4026365270daa8ba26c52eef01ecd0156626bfb2.tar.xz kutter-4026365270daa8ba26c52eef01ecd0156626bfb2.zip |
linux: Lock Memory and Increase Priority (#6131)
Realtime programming best practice is to lock realtime code
memory to prevent paging which will lead to unbounded latencies. The
Linux MCU process has well bounded memory and small RAM footprint
so locking the entire process' RAM has no downsides and will improve
behavior when the system comes under memory pressure.
(See bootlin training and Linux Foundation documentation linked below.)
RT process priority ranges from 0-99 (although POSIX only requires 32),
boost MCU process priority to half the max/2 to improve robustness when
the system comes under pressure from other RT Kernel or user processes.
Reference links:
bootlin: https://bootlin.com/doc/training/preempt-rt/preempt-rt-slides.pdf
Linux Foundation: https://wiki.linuxfoundation.org/realtime/documentation/howto/applications/application_base#howto_build_a_simple_rt_application
Signed-off-by: Matthew Swabey <matthew@swabey.org>
Diffstat (limited to 'test')
0 files changed, 0 insertions, 0 deletions