<?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.11 $ --> <reference id="ref.sem"> <title>Semaphore, Shared Memory and IPC Functions</title> <titleabbrev>Semaphore</titleabbrev> <partintro> <section id="sem.intro"> &reftitle.intro; <para> This module provides wrappers for the System V IPC family of functions. It includes semaphores, shared memory and inter-process messaging (IPC). </para> <para> Semaphores may be used to provide exclusive access to resources on the current machine, or to limit the number of processes that may simultaneously use a resource. </para> <para> This module provides also shared memory functions using System V shared memory. Shared memory may be used to provide access to global variables. Different httpd-daemons and even other programs (such as Perl, C, ...) are able to access this data to provide a global data-exchange. Remember, that shared memory is NOT safe against simultaneous access. Use semaphores for synchronization. <table> <title>Limits of Shared Memory by the Unix OS</title> <tgroup cols="2"> <tbody> <row> <entry>SHMMAX</entry> <entry>max size of shared memory, normally 131072 bytes</entry> </row> <row> <entry>SHMMIN</entry> <entry>minimum size of shared memory, normally 1 byte</entry> </row> <row> <entry>SHMMNI</entry> <entry> max amount of shared memory segments on a system, normally 100 </entry> </row> <row> <entry>SHMSEG</entry> <entry> max amount of shared memory segments per process, normally 6 </entry> </row> </tbody> </tgroup> </table> </para> <para> The messaging functions may be used to send and receive messages to/from other processes. They provide a simple and effective means of exchanging data between processes, without the need for setting up an alternative using Unix domain sockets. </para> ¬e.no-windows.extension; </section> <section id="sem.requirements"> &reftitle.required; &no.requirement; </section> &reference.sem.configure; <section id="sem.configuration"> &reftitle.runtime; &no.config; </section> <section id="sem.resources"> &reftitle.resources; <para> </para> </section> <section id="sem.constants"> &reftitle.constants; &no.constants; </section> </partintro> &reference.sem.functions; </reference> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 -->