Einführung
Diese Erweiterungen bieten Schnittstellen zur Nutzung der Unix System V IPC-Funktionen. Sie unterstützen Semaphore, gemeinsame Speicherbereiche (Shared Memory) und den Nachrichtenaustausch zwischen Prozessen (Inter Process Communication - IPC).
Semaphore können genutzt werden, um den exklusiven Zugriff auf eine Ressource zu koordinieren oder um die Anzahl der gleichzeitigen Zugriffe auf eine Ressource zu limitieren.
Diese Erweiterungen bieten auch Funktionen zur Nutzung von gemeinsamen Speicherbereichen. Der gemeinsamen Speicherbereich kann verwendet werden, um den Zugriff auf globale Variablen zu gewähren. Verschiedene httpd-Daemons und sogar in anderen Sprachen (z. B. Perl, C, ...) geschriebene Anwendungen können auf diese Daten zugreifen und so einen globalen Datenaustausch bereitstellen. Zu beachten ist, dass der gemeinsame Speicherbereich KEINEN Schutz gegen gleichzeitige Zugriffe bietet. Zur Synchronisierung sollten Semaphoren verwendet werden.
SHMMAX | Die maximale Größe des gemeinsamen Speicherbereichs; üblich sind 131072 Bytes |
SHMMIN | Die minimale Größe des gemeinsamen Speicherbereichs; üblich ist 1 Byte |
SHMMNI | Die maximale Anzahl von gemeinsamen Speichersegmenten auf dem System; üblich sind 100 |
SHMSEG | Die maximale Anzahl von gemeinsamen Speichersegmenten je Prozess; üblich sind 6 |
Die Funktionen zum Nachrichtenaustausch können genutzt werden, um Nachrichten an andere Prozesse zu verschicken oder zu empfangen. Sie bieten einen einfachen und effektiven Weg zum Datenaustausch zwischen Prozessen, ohne auf Alternativen wie Unix Domain Sockets zurückgreifen zu müssen.
Hinweis: Nur die Funktionen für gemeinsam genutzten Speicher und ftok() sind unter Windows verfügbar. Weder Semaphoren noch die Funktionen für prozessübergreifenden Nachrichtenaustausch werden auf dieser Plattform unterstützt.