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. |
| 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. |