Опубликован: 15.06.2004 | Доступ: свободный | Студентов: 2557 / 712 | Оценка: 4.35 / 3.96 | Длительность: 27:47:00
ISBN: 978-5-9556-0011-6

Лекция 10: Опрос характеристик хостов и их использование в приложениях

< Лекция 9 || Лекция 10: 12345 || Лекция 11 >

Разного рода лимиты на количество и размеры заданы в заголовочном файле <limits.h>. Стандарт определяет минимально допустимые значения для подобных лимитов, которые поддерживаются реализациями и предоставляются приложениям.

Мобильные приложения не должны полагаться на какие-то конкретные значения лимитов и требовать больше ресурсов, чем предусмотрено минимально допустимыми значениями.

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

ARG_MAX (_POSIX_ARG_MAX = 4096)

Максимально допустимая длина аргумента функций семейства exec*() (включая данные окружения).

ATEXIT_MAX (32)

Максимально допустимое число функций, которые можно зарегистрировать посредством atexit().

CHARCLASS_NAME_MAX 
       (_POSIX2_CHARCLASS_NAME_MAX = 14)

Максимально допустимое число байт в имени класса символов.

CHILD_MAX (_POSIX_CHILD_MAX = 25)

Максимально допустимое число одновременно существующих процессов с одним реальным идентификатором пользователя.

HOST_NAME_MAX (_POSIX_HOST_NAME_MAX = 255)

Максимально допустимая длина имени хоста (без завершающего нулевого байта).

LINE_MAX (_POSIX2_LINE_MAX = 2048)

Максимально допустимое число байт в строке текстового файла.

LOGIN_NAME_MAX (_POSIX_LOGIN_NAME_MAX = 9)

Максимально допустимая длина входного имени (с учетом завершающего нулевого байта). Таким образом, по соображениям мобильности входное имя должно состоять не более чем из восьми байт.

NGROUPS_MAX (_POSIX_NGROUPS_MAX = 8)

Максимально допустимое число дополнительных групп для процесса.

OPEN_MAX (_POSIX_OPEN_MAX = 20)

Максимально допустимое число файлов, одновременно открытых в одном процессе.

PAGESIZE, PAGE_SIZE (1)

Размер страницы оперативной памяти в байтах.

RE_DUP_MAX (_POSIX2_RE_DUP_MAX = 255)

Максимально допустимое число повторных вхождений регулярного выражения при использовании интервальной нотации \{m,n\}.

STREAM_MAX (_POSIX_STREAM_MAX = 8)

Максимально допустимое число потоков, одновременно открытых в одном процессе.

SYMLOOP_MAX (_POSIX_SYMLOOP_MAX = 8)

Максимально допустимое число символьных ссылок, которые могут быть обработаны в случае разрешения маршрутных имен файлов при отсутствии циклов.

TTY_NAME_MAX (_POSIX_TTY_NAME_MAX = 9)

Максимально допустимая длина имени терминального устройства (с учетом завершающего нулевого байта).

TZNAME_MAX (_POSIX_TZNAME_MAX = 6)

Максимально допустимая длина имени часового пояса.

< Лекция 9 || Лекция 10: 12345 || Лекция 11 >
Антон Коновалов
Антон Коновалов

В настоящее время актуальный стандарт - это POSIX 2008 и его дополнение POSIX 1003.13
Планируется ли актуализация материалов данного очень полезного курса?