Rechercher une page de manuel
shmget.2freebsd
Langue: en
Version: 265945 (debian - 07/07/09)
Section: 2 (Appels système)
BSD mandoc
NAME
shmget - obtain a shared memory identifierLIBRARY
Lb libcSYNOPSIS
In machine/param.h In sys/types.h In sys/ipc.h In sys/shm.h Ft int Fn shmget key_t key size_t size int flagDESCRIPTION
Based on the values of Fa key and Fa flag , Fn shmget returns the identifier of a newly created or previously existing shared memory segment. The key is analogous to a filename: it provides a handle that names an IPC object. There are three ways to specify a key:- IPC_PRIVATE may be specified, in which case a new IPC object will be created.
- An integer constant may be specified. If no IPC object corresponding to Fa key is specified and the IPC_CREAT bit is set in Fa flag , a new one will be created.
- The ftok(3) may be used to generate a key from a pathname.
The mode of a newly created IPC object is determined by OR 'ing the following constants into the Fa flag argument:
- SHM_R
- Read access for user.
- SHM_W
- Write access for user.
- ( SHM_R>>3
- Read access for group.
- ( SHM_W>>3
- Write access for group.
- ( SHM_R>>6
- Read access for other.
- ( SHM_W>>6
- Write access for other.
When creating a new shared memory segment, Fa size indicates the desired size of the new segment in bytes. The size of the segment may be rounded up to a multiple convenient to the kernel (i.e., the page size).
RETURN VALUES
Upon successful completion, Fn shmget returns the positive integer identifier of a shared memory segment. Otherwise, -1 is returned and errno set to indicate the error.ERRORS
The Fn shmget system call will fail if:- Bq Er EINVAL
- Size specified is greater than the size of the previously existing segment. Size specified is less than the system imposed minimum, or greater than the system imposed maximum.
- Bq Er ENOENT
- No shared memory segment was found matching Fa key , and IPC_CREAT was not specified.
- Bq Er ENOSPC
- The kernel was unable to allocate enough memory to satisfy the request.
- Bq Er EEXIST
- IPC_CREAT and IPC_EXCL were specified, and a shared memory segment corresponding to Fa key already exists.
SEE ALSO
shmat(2), shmctl(2), shmdt(2), ftok(3)Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre