Вопрос

Согласно странице руководства, «-l» в ulimit означает «Максимальный размер, который может быть заблокирован в памяти».Что именно означает это предложение?Как это может повлиять на запуск программ?

Это было полезно?

Решение

Заблокированную память нельзя выгрузить — это уменьшает объем памяти, доступной для других процессов.Этот параметр ограничивает объем памяти, который можно заблокировать.

Другие советы

Это ограничивает объем памяти, которую вы можете сделать не подкачиваемой. млок

А setrlimit страница руководства говорит:

Максимальное количество байтов памяти, которое может быть заблокировано в ОЗУ.Фактически этот предел округляется до ближайшего кратного размеру системной страницы.Это ограничение влияет на mlock(2) и mlockall(2), а также на операцию mmap(2) MAP_LOCKED.Начиная с Linux 2.6.9, это также влияет на операцию shmctl(2) SHM_LOCK, где она устанавливает максимальное общее количество байтов в сегментах разделяемой памяти (см. shmget(2)), которые могут быть заблокированы реальным идентификатором пользователя вызывающего процесса.Блокировки shmctl(2) SHM_LOCK учитываются отдельно от блокировок памяти для каждого процесса, установленных mlock(2), mlockall(2) и mmap(2) MAP_LOCKED;процесс может блокировать байты до этого предела в каждой из этих двух категорий.В ядрах Linux до версии 2.6.9 этот предел контролировал объем памяти, который мог быть заблокирован привилегированным процессом.Начиная с Linux 2.6.9, на объем памяти, который может заблокировать привилегированный процесс, не налагается никаких ограничений, и вместо этого этот предел определяет объем памяти, который может заблокировать непривилегированный процесс.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top