8

Я использую фоновый сервис, который время от времени теряет память. Чтобы не использовать Alt+SysRq REISUB [ 1 ], я бы хотел ограничить использование оперативной памяти для одного процесса или системного пользователя.

Я действительно хотел бы сказать: пользователь x может использовать максимальный объем оперативной памяти в 1 ГБ.

Это возможно? Нужна ли виртуальная машина для этого? Я использую Ubuntu 9.10.

2 ответа2

10

ulimit твой друг. Проверьте флаг -m. Я думаю, что вы установили это до того, как запустите свой процесс, и с тех пор он применяется (в текущей оболочке).

4

В дополнение к командам оболочки ulimit (для bash) или limit (для csh), вы можете управлять этим из своего кода с помощью функции ulimit() .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .