Semáforos, Memória Compartilhada e Comunicação entre Processos
Semaphore
&reftitle.intro;
Esses módulos fornecem encapsulamento para a família de funções IPC do System V.
Inclui semáforos, memória compartilhada e mensagens entre processos (IPC).
Semáforos podem ser usados para fornecer acesso exclusivo a
recursos na máquina atual ou para limitar o número de
processos que podem usar um recurso simultaneamente.
Este módulo também fornece funções de memória compartilhada usando a memória
compartilhada do System V. A memória compartilhada pode ser usada para fornecer acesso a
variáveis globais. Diferentes daemons httpd e até mesmo outros programas
(como Perl, C, ...) são capazes de acessar esses dados para fornecer uma
troca global de dados. Lembre-se de que a memória compartilhada NÃO é segura
contra acesso simultâneo. Use semáforos para sincronização.
Limites de memória compartilhada pelo sistema operacional Unix
SHMMAX
tamanho máximo da memória compartilhada, normalmente 131072 bytes
SHMMIN
tamanho mínimo de memória compartilhada, normalmente 1 byte
SHMMNI
quantidade máxima de segmentos de memória compartilhada em um sistema,
normalmente 100
SHMSEG
quantidade máxima de segmentos de memória compartilhada por processo, normalmente 6
As funções de mensagens podem ser usadas para enviar e receber mensagens de/para
outros processos. Elas fornecem um meio simples e eficaz de trocar
dados entre processos, sem a necessidade de configurar uma alternativa
usando soquetes de domínio Unix.
Somente as funções de memória compartilhada e ftok estão disponíveis
no Windows. Nem semáforos nem funções de mensagens entre processos são
suportadas nessa plataforma.
&reference.sem.setup;
&reference.sem.constants;
&reference.sem.reference;
&reference.sem.sysvmessagequeue;
&reference.sem.sysvsemaphore;
&reference.sem.sysvsharedmemory;