XCVI. Semaphor und Shared Memory Funktionen
Dieses Modul bietet Unterstützung für die Nutzung von Semaphoren und gemeinamen Speichersegmenten mit Hilfe der UNIX System V Mechanismen zur Interprozess-Kommunikation.
Mit Hilfe von Semaphoren kann der exklusive Zugriff auf Resourcen eines Systems sichergestellt oder die Anzahl der Prozesse begrenzt werden, die gleichzeitig eine bestimmte Systemresource nutzen.
Mit Hilfe gemeinsamer Speichersegmente (shared memory) können system-globale Variablen angelegt und bereitgestellt werden. Diese Speicherbereiche stehen allen Prozessen des Systems, insbesondere aber allen parallel laufenden PHP-Instanzen zum Datenaustausch zur Verfügung. Beachten Sie bitte, dass gemeinsame Speichersegmente keinen Schutze vor konkurrierenden gleichzeitigen Zugriffen bieten. Benutzen Sie Semaphore für die Koordination solcher Zugriffe.
Tabelle 1. Limits of Shared Memory by the Unix OS
| SHMMAX | Maximalgröße eines gemeinsamen Speicherbereichs, üblich sind 131072 Byte (128KB) |
| SHMMIN | Minimalgröße eines gemeinsamen Speicherbereichs, normalerweise 1 Byte |
| SHMMNI | maximale Anzahl unterschiedlicher Speichersegmente, üblich sind 100 |
| SHMSEG | Anzahl der Speichersegmente, die ein einzelner Prozess einbinden darf, üblich sind 6 |
- Inhaltsverzeichnis
- ftok -- Convert a pathname and a project identifier to a System V IPC key
- msg_get_queue -- Create or attach to a message queue
- msg_receive -- Receive a message from a message queue
- msg_remove_queue -- Destroy a message queue
- msg_send -- Send a message to a message queue
- msg_set_queue -- Set information in the message queue data structure
- msg_stat_queue -- Returns information from the message queue data structure
- sem_acquire -- Zugriff auf einen Semaphore anfordern
- sem_get -- Liefert ein Semaphore-Handle
- sem_release -- Freigabe eines angeforderten Semaphores
- sem_remove -- Remove a semaphore
- shm_attach -- Anlegen oder anbinden eines gemeinsamen Speichersegments
- shm_detach -- Beenden der Anbindung an ein gemeinsames Speichersegment
- shm_get_var -- Liest einen in einem gemeinsamen Speicherbereich angelegten Wert.
- shm_put_var -- Aktualisiert einen in einem gemeinsamen Speicherbereich angelegten Wert.
- shm_remove_var -- Entfernt einen in einem gemeinsamen Speicherbereich angelegten Wert.
- shm_remove -- Entfernt ein gemeinsames Speichersegment
| Zurück | Zum Anfang | Weiter |
| sql_regcase | Nach oben | ftok |