| |
В справочной статье shmctl синтаксис данного системного вызова описан так:
        #include <sys/types.h>
        #include <sys/ipc.h>
        #include <sys/shm.h>
        int shmctl (shmid, cmd, buf)
        int shmid, cmd;
        struct shmid_ds *buf;
При  успешном завершении результат равен нулю; в случае неудачи
возвращается -1.
В качестве аргумента shmid должен выступать идентификатор разделяемого сегмента памяти, предварительно полученный при помощи системного вызова shmget.
Управляющее действие определяется значением аргумента cmd. Допустимы следующие значения:
IPC_STAT
Поместить информацию о состоянии разделяемого сегмента, содержащуюся в структуре данных, ассоциированной с идентификатором shmid, в пользовательскую структуру, на которую указывает аргумент buf.
IPC_SET
В структуре данных, ассоциированной с идентификатором shmid, переустановить значения действующих идентификаторов пользователя и группы, а также прав на операции. Нужные значения извлекаются из структуры данных, на которую указывает аргумент buf.
IPC_RMID
Удалить из системы идентификатор shmid, ликвидировать разделяемый сегмент памяти и ассоциированную с ним структуру данных.
SHM_LOCK
Удерживать в памяти разделяемый сегмент, заданный идентификатором shmid.
SHM_UNLOCK
Освободить (перестать удерживать в памяти) разделяемый сегмент, заданный идентификатором shmid.
| 
Закладки на сайте Проследить за страницей  | 
Created 1996-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру  |