1
0
mirror of https://github.com/php/doc-ru.git synced 2026-03-25 08:12:14 +01:00
Files
archived-doc-ru/reference/sem/book.xml
Sergey Panteleev daef8df962 Обнуление тега Reviewed (#364)
[skip-lint]
[skip-spellcheck]
2021-11-16 13:03:53 +03:00

99 lines
4.4 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 2d99025327523f0f00ce02156664447165307950 Maintainer: rjhdby Status: ready -->
<!-- Reviewed: no -->
<book xml:id="book.sem" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<?phpdoc extension-membership="bundled" ?>
<title>Семафоры, разделяемая память и IPC</title>
<titleabbrev>Семафоры</titleabbrev>
<!-- {{{ preface -->
<preface xml:id="intro.sem">
&reftitle.intro;
<para>
Модули обеспечивают поддержку семейства функций межпроцессного взаимодействия
System V. Сюда входят семафоры, разделяемая память и обмен сообщениями между
процессами (IPC).
</para>
<para>
Семафоры могут использоваться для получения эксклюзивного доступа к ресурсам локальной
машины или для ограничения числа процессов, одновременно использующих ресурс.
</para>
<para>
Также этот модуль поддерживает функции для работы с разделяемой памятью System V.
Разделяемая память может быть использована для предоставления доступа к глобальным
переменным. Различные httpd-демоны и даже другие программы (написанные на Perl, C и т.д.)
могут получать доступ к этим данным для осуществления глобального обмена данными.
Помните, что разделяемая память НЕ ЗАЩИЩЕНА от одновременного доступа.
Используйте семафоры для синхронизации.
<table>
<title>Лимиты, наложенные на разделяемую память в Unix OS</title>
<tgroup cols="2">
<tbody>
<row>
<entry>SHMMAX</entry>
<entry>максимальный размер разделяемой памяти, обычно 131072 байт</entry>
</row>
<row>
<entry>SHMMIN</entry>
<entry>минимальный размер разделяемой памяти, обычно 1 байт</entry>
</row>
<row>
<entry>SHMMNI</entry>
<entry>
максимальное количество сегментов разделяемой памяти в системе, обычно 100
</entry>
</row>
<row>
<entry>SHMSEG</entry>
<entry>
максимальное количество сегментов разделяемой памяти на процесс, обычно 6
</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
<para>
Функции обмена сообщениями можно использовать для отправки и получения сообщений в/из
другой процесс. Они обеспечивают простое и эффективное средство обмена данными между
процессами без необходимости создания UNIX-сокетов.
</para>
<note>
<simpara>
В Windows доступны только функции разделяемой памяти и <function>ftok</function>.
На этой платформе не поддерживаются ни семафоры, ни функции обмена сообщениями между процессами.
</simpara>
</note>
</preface>
<!-- }}} -->
&reference.sem.setup;
&reference.sem.constants;
&reference.sem.reference;
&reference.sem.sysvmessagequeue;
&reference.sem.sysvsemaphore;
&reference.sem.sysvsharedmemory;
</book><!-- 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:"~/.phpdoc/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
-->