Quote:
Originally Posted by dtustudy68
has pages locked into memory (for real-time and custom IO)
What does this mean ?
|
It means the program has asked the kernel to keep those pages in memory. It is quite usual, if the program does time-sensitive I/O -- for example, if it streams important data to or from a disk, or a peripheral device like a sensor or something.
Like sundialsvcs wrote in the above post, in some cases (when using DMA to transfer data to or from a device) locking the memory is
required for correct operation.
Quote:
Originally Posted by dtustudy68
How to avoid this ?
|
Normally there is no reason to try to avoid that. Most distributions set sensible memory locking limits by default.
If you insist, set the memlock resource limit. You can use the pam_limits module to set default limits; see
man limits.conf and
man pam_limits. You can also use the
ulimit built-in command provided by most shells, to set the limit for a specific program before running that program:
Code:
ulimit -l 64
/usr/bin/whatever-command arguments...
which sets the limit at 64*1024 bytes (65536 bytes). See for example
man bash-builtins to see the usage for ulimit when using Bash.
You can run
in a newly started shell to see what limits are set by default. (Note that for system services, the limits are usually different.)
Finally, if the limit is set too low, programs that need to lock memory will usually refuse to run. If you don't want them to run, just disable them directly.