[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
Получение и установка ограничений для пользователя
Системный вызов ulimit(2) используется, чтобы получить ограничение на
размер файла, выраженное в блоках по 512 байтов, или установить это
ограничение. Это значение ограничивает размер обычного файла. Этот
системный вызов используется также для получения максимально
допустимого значения границы выделяемой памяти (см. brk(2) и sbrk(2))
и текущего значения максимального числа открытых файлов в процессе,
установленное в системе.
Максимальный размер файла является частью среды исполнения программы.
Shell использует ulimit(2) при исполнении встроенного оператора
ulimit.
Значение, возвращаемое вызовом ulimit(2), и newlimit измеряется в
блоках по 512 байтов, независимо от размера блока файловой системы.
Аргумент cmd может принять значение одной из следующих символьных
констант:
UL_GETFSIZE Возвращает текущее ограничение процесса на размер
файла.
UL_SETFSIZE Устанавливает ограничение на размер файла. Только
суперпользователь может увеличить это ограничение.
Остальные могут только уменьшить его. Может быть
полезно ограничить размер файла при отладке программы,
которая создает и пишет в файлы.
UL_GMEMLIM Возвращает максимально допустимое значение границы
выделяемой памяти. Это значение можно использовать при
проверке того, что программа пытается получить память с
помощью brk(2) или sbrk(2) больше, чем допустимо.
UL_GDESLIM Возвращает ограничение, устанавливаемое программно при
конфигурации системы, на число файлов, которые процесс
может открыть.
newlimit используется при cmd равном UL_SETFSIZE. Это новый размер
файла в блоках.
ПОЛУЧЕНИЕ И УСТАНОВКА ОГРАНИЧЕНИЙ ДЛЯ ПОЛЬЗОВАТЕЛЯ
ulimit(2)
ИМЯ
ulimit - получение и установка ограничений для пользователя
ИСПОЛЬЗОВАНИЕ
#include <ulimit.h>
long ulimit (int cmd,.../* newlimit */);
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
успех - неотрицательное число
неуспех - -1 и errno установлена