Вопрос

Кто-нибудь знает, что делает функция C prlimit64()?Кажется, у меня нет его на моей машине с Ubuntu x86_64, но он существует в Arch, и я не могу найти никого или что-либо, кто знает, что он делает.

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

Решение

Это непростой вопрос;но это 64-битная версия (что бы это ни значило) prlimit();специфическая для Linux функция из семейства getrlimit(2) family .

Похоже, это бесполезно для 64-битных приложений, поскольку это связано с эмуляцией 64-битной среды, когда она недоступна.

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

prlimit позволяет вамустановить или получить ограничения ресурсов rlimit (например, количество дескрипторов файлов, память и т. д.) для другого процесса.Он специфичен для Linux.

Обычно ограничения, которые вы можете установить, зависят от макроса _FILE_OFFSET_BITS, который равен 64 во всех современных системах.Следовательно, члены структур, используемых prlimit и его друзьями, всегда имеют ширину 64 бита, независимо от того, используете ли вы 32-битную или 64-битную систему.

Однако в непонятном случае, когда значение _FILE_OFFSET_BITS равно 32 (что означает, что вы не можете правильно работать с файлами размером более 2 ГБ), вам, тем не менее, понадобится альтернативный системный вызов prlimit64, чтобы использовать 64-битные ограничения.

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