без прав рута эта функция не работает. и давать эти права моей программулине не хотелось бы.
а что если сказать
sysctl -w kern.maxfilesperproc=4096
может это поможет?
и обязательно ли задавать sysctl -w kern.maxfiles= ??
да, и еще вопрос. ядро как то резервирует память для дескрипторов или динамически выделяет память для каждого дескриптора по мере необходимости. сколько памяти требуется ядру для 1 дескриптора ?
>sysctl -w kern.maxfilesperproc=4096
Упс... у тебя БЗД что ли? Что же сразу не сказал?
Поковыряй там login capabilities (login.conf или что-то вроде того).
>да, и еще вопрос. ядро как то резервирует память для дескрипторов или динамически выделяет память для каждого дескриптора по мере необходимости. сколько памяти требуется ядру для 1 дескриптора
Linux динамически. Тратится по указателю на struct file на дескриптор и несколько битовых масок на набор дескрипторов.