Parâmetro de configuração de tamanho de segmento de memória compartilhada (-shmsegsize)
O novo parâmetro foi inserido para permitir o ajuste do tamanho dos segmentos de memória compartilhada. Os valores válidos são:
- Sistema 32bits: 128, 256, 512, 1024, 2048, 4096 MB(MegaBytes) ou ainda 1g, 2g, 4g (g = GigaBytes). A especificação de valores de 4096 MB e 4g permitirá ao OpenEdge a criação de segmentos de memória compartilhada maiores do que 2GB em sistemas que suportam segmentos de memória maiores que 2GB.
- Sistemas 64bits: 1024, 2048, 4096, 8192, 16383, 32767 MB ou 1g, 2g, 4g, 8g, 16g, 32g. (g = GigaBytes).
O parâmetro controla o tamanho máximo do segmento utilizado pelo OpenEdge. O tamanho real do segmento criado pode ser menor por uma variedade de motivos tais como:
- A quantidade de memória necessária pode ser menor do que a configurada no parâmetro –shmsegsize.
- O tamanho máximo do segmento do sistema operacional pode ser menor que o requisitado pelo parâmetro.
- O espaço de memória enderecável ainda sem uso pode ser menor que o requisitado pelo parâmetro.
- O valor do SHMMAX e de outras variáveis de kernel que podem ser configuradas podem forçar valores menores.
O tamanho inicial máximo do segmento de memória compartilhada é calculado com base nos requisitos de memória compartilhada, e no que o sistema operacional suporta. OpenEdge tentará alocar a memória compartilhada requisitada no menor segmento possível. Quando suportado pelo sistema operacional o OpenEdge criará um número menor de segmentos, porém maior em capacidade. Isto permite a reserva de áreas de buffer de banco um pouco maiores, em sistemas 32bits.
No próximo post será apresentado o impacto da utilização do parâmetro sobre o banco.