(PHP 4, PHP 5, PHP 7, PHP 8)
posix_getrlimit — Возвращает информацию об ограничениях системных ресурсов
Функция posix_getrlimit() возвращает array с информацией о текущих мягких и жёстких ограничениях системных ресурсов.
С каждым ресурсом ассоциированы свои мягкие и жёсткие ограничения. Мягкие ограничения — это величина, которую ядро обещает обеспечить ресурсу. Жёсткие ограничения — это величина, которая характеризует потолок мягких ресурсов. Непривилегированный процесс умеет управлять только своими мягкими ограничениями, выставляя их от 0 до величины жёсткого ограничения.
resource
При передаче значения null функция возвращает все текущие ограничения ресурсов.
Для получения конкретного ограничения указывают
константу ограничения ресурсов.
Функция возвращает ассоциативный array, каждый элемент которого соответствует конкретному ограничению. Для каждого ограничения указывается мягкое и жёсткое ограничения.
| Ограничение | Описание ограничения |
|---|---|
| core | Предельный размер системного файла. При некорректном завершении программы операционная система завершает этот процесс и создаёт системный файл с дампом состояния программы. Это помогает программистам разобраться в причинах принудительной остановки процесса. При установке для ограничения значения 0 системные файлы не создаются. При превышении предела системным файлом он обрезается до заданного размера. |
| totalmem | Максимальный размер памяти, доступной процессу, в байтах. |
| virtualmem | Максимальный размер виртуальной памяти, доступной процессу, в байтах. |
| data | Максимальный размер сегмента данных для процесса, в байтах. |
| stack | Максимальный размер стека процесса в байтах. |
| rss | Максимальное количество виртуальных страниц в оперативной памяти |
| maxproc | Максимальное количество процессов, которое создаётся для отдельного действительного ID пользователя, вызвавшего процесс. |
| memlock | Максимальный объем памяти в байтах, который блокируется в RAM. |
| cpu | Количество процессорного времени, доступного для CPU. |
| filesize | Максимальный размер сегмента данных для процесса, в байтах. |
| openfiles | На один больше, чем доступное максимальное количество открытых файловых дескрипторов. |
false, если возникла ошибка.
| Версия | Описание |
|---|---|
| 8.3.0 |
Добавили необязательный параметр resource.
|
Пример #1 Пример получения информации об ограничениях системных ресурсов функцией posix_getrlimit()
<?php
$limits = posix_getrlimit();
print_r($limits);Вывод приведённого примера будет похож на:
Array
(
[soft core] => 0
[hard core] => unlimited
[soft data] => unlimited
[hard data] => unlimited
[soft stack] => 8388608
[hard stack] => unlimited
[soft totalmem] => unlimited
[hard totalmem] => unlimited
[soft rss] => unlimited
[hard rss] => unlimited
[soft maxproc] => unlimited
[hard maxproc] => unlimited
[soft memlock] => unlimited
[hard memlock] => unlimited
[soft cpu] => unlimited
[hard cpu] => unlimited
[soft filesize] => unlimited
[hard filesize] => unlimited
[soft openfiles] => 1024
[hard openfiles] => 1024
)