Arquivo limits.h

Propósito

Define limites de implementação identificados pelo IEEE POSIX 1003.

Descrição

O arquivo limits.h contém definições requeridas pelo ANSI X3.159-198x Programming Language C Standard e o Institute of Electrical and Electronics Engineers (IEEE) P1003.1 Portable Operating System Interface for Computer Environments (POSIX) padrão.

As constantes exigidas pela Norma ANSI C descrevem os tamanhos de tipos de dados básicos, da seguinte forma:

Símbolo Valor Explicação
CHAR_BIT 8 Número de bits em uma variável do tipo char
CHAR_MAX 255 Valor máximo de uma variável do tipo char
CHAR_MIN 0 Valor mínimo de uma variável do tipo char
INT_MAX 2.147.483.647 Valor máximo de uma variável do tipo int
INT_MIN -2 147.483.648 Valor mínimo de uma variável do tipo int
LONG_MAX 2.147.483.647 Valor máximo de uma variável do tipo long
LONG_MIN -2 147.483.648 Valor máximo de uma variável do tipo long
SCHAR_MAX 127 Valor máximo de uma variável do tipo assinado char
SCHAR_MIN -128 Valor mínimo de uma variável do tipo assinado char
SHRT_MAX 32.767 Valor máximo de uma variável do tipo short
SHRT_MIN -32.768 Valor máximo de uma variável do tipo short
UCHAR_MAX 255 Valor máximo de uma variável do tipo unsigned char
UINT_MAX 4.294.967.295 Valor máximo de uma variável do tipo unsigned int
ULONG_MAX 4.294.967.295 Valor máximo de uma variável do tipo unsigned long
USHRT_MAX 65.535 Valor máximo de uma variável do tipo unsigned short

Executar-Valores Invariantes de Tempo de Execução

O primeiro conjunto de valores requerido pelo POSIX, valores invariáveis de tempo de execução, são constantes simples determinados por tamanhos básicos de estrutura de dados do sistema operacional.

Símbolo Valor Explicação
MAX_INPUT 512 Nada menos do que o número de bytes especificados pelo símbolo MAX_INPUT são permitidos em uma fila de entrada de terminal.
NGROUPS_MAX 2048 Tamanho máximo da lista de grupos simultâneos.
PASS_MAX 255 Número máximo de bytes em uma senha (não incluindo o terminador nulo).
PID_MAX INT_MAX Valor máximo para um processID.
UID_MAX ULONG_MAX Valor máximo para um ID de usuário ou grupo.

Valores Invariantes de Tempo de Tempo (possivelmente Indeterminate)

O segundo conjunto de valores invariáveis de tempo de execução exigido pelo POSIX especificam valores que podem variar, especialmente devido à carga do sistema, mas que podem ser atingidos em um sistema levemente carregado.

Símbolo Valor Explicação
ARG_MAX 1048576 Comprimento máximo (em bytes) de argumentos para a subroutina exec , incluindo o ambiente. Este é um valor padrão que pode ser configurado para um tamanho diferente.
Nota: A lista de argumentos e o ambiente têm permissão para consumir todo o segmento de dados do usuário.
Símbolo Valor Explicação
CHILD_MAX 40 Número máximo de processos simultâneos por ID de usuário
MAX_CANON 256 Número máximo de bytes em uma linha de entrada canônica
OPEN_MAX 65534 Número máximo de arquivos que um processo pode ter aberto em qualquer momento
CHRS_ABRIR_MÁXIMO 65000 O número máximo de descritores de arquivo para se encaixar no segmento de checkpoint / restart.

Valores Variáveis de Nome do Caminho

O terceiro conjunto de valores requerido pelo POSIX, valores variáveis de nome do caminho, representam restrições impostas pelo sistema de arquivos em nomes de caminhos de arquivo. Outras restrições sobre esses valores podem ser impostas pela implementação do sistema de arquivos subjacente. Use o subroutine pathconf ou fpathconf para determinar quaisquer características de implementação de arquivo específicas para o sistema de arquivos subjacente.

Símbolo Valor Explicação
NOME_MAX Não definido Número máximo de bytes em um nome de componente de arquivo (não incluindo o terminador nulo)
PATH_MAX 512 Número máximo de bytes em um nome de caminho (não incluindo o terminador nulo)

Valores Aumentáveis de Tempo de execução

O quarto conjunto de valores requerido pelo POSIX especifica valores que podem ser aumentados no tempo de execução. Use o subroutine pathconf ou fpathconf para determinar quaisquer características de implementação de arquivo específicas para o sistema de arquivos subjacente.

Item Descrição
Símbolo Valor Explicação
LINK_MAX 32.767 Valor máximo de uma contagem de link de um arquivo (SHRT_MAX).
BUF_TUBO 32.768 Número máximo de bytes garantidos para serem gravados automaticamente em um cano.