Не працює "ulimit -m" на (сучасному) Linux?


12

Ця стаття стверджує, що -mпрапор ulimitнічого не робить у сучасному Linux. Я не можу знайти нічого іншого, щоб підтвердити це твердження. Це точно?

Ви можете спробувати обмежити використання пам'яті процесу, встановивши максимальний розмір резидентного набору (ulimit -m). Це не впливає на Linux. man setrlimit каже, що це працювало лише в стародавніх версіях. Натомість слід обмежити максимальний об'єм віртуальної пам'яті (ulimit -v).

Якщо це правда, що вона працювала у старих версіях Linux, яка версія перестала підтримувати це?


Ось цікава стаття, яка детально описує різні межі та те, що вони означають. Це десять років, але, мабуть, більшість цього матеріалу не змінюється. answer.google.com/answers/threadview/id/311442.html
Dan Pritts

Відповіді:


12

Там сказано прямо у статті:

Це не впливає на Linux. man setrlimit каже, що це працювало лише в стародавніх версіях.

На сторінці чоловіка setrlimit написано:

 RLIMIT_RSS
        Specifies the limit (in pages) of the process's resident set
        (the number of virtual pages resident in RAM).  This limit has
        effect only in Linux 2.4.x, x < 30, and there affects only
        calls to madvise(2) specifying MADV_WILLNEED.

Тож вона перестала працювати в 2,44 .


Дякую. Я переглянув сторінку setrlimit, але не знав, що шукати.
Flimzy

Ви повинні були шукати residentвід резидентів встановленого розміру .
Крістіан Цюпіту
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.