NAME
sys/shm.h — XSI
shared memory facility
SYNOPSIS
DESCRIPTION
The <sys/shm.h> header shall define the following symbolic constants:
- SHM_RDONLY
- Attach read-only (else read-write).
- SHM_RND
- Round attach address to SHMLBA.
- SHMLBA
- Segment low boundary address multiple.
The <sys/shm.h> header shall define the symbolic constant SHM_FAILED which shall evaluate to the same value as (( void *) ( intptr_t) -1).
The <sys/shm.h> header shall define the type intptr_t as described in <stdint.h>.
The <sys/shm.h> header shall define the following data type through typedef:
- shmatt_t
- Unsigned integer used for the number of current attaches that shall be able to store values at least as large as a type unsigned short .
The <sys/shm.h> header shall define the shmid_ds structure, which shall include the following members:
struct ipc_perm shm_perm Operation permission structure. size_t shm_segsz Size of segment in bytes. pid_t shm_lpid Process ID of last shared memory operation. pid_t shm_cpid Process ID of creator. shmatt_t shm_nattch Number of current attaches. time_t shm_atime Time of last shmat(). time_t shm_dtime Time of last shmdt(). time_t shm_ctime Time of last change by shmctl().
The <sys/shm.h> header shall define the pid_t, size_t, and time_t types as described in <sys/types.h>.
The following shall be declared as functions and may also be defined as macros. Function prototypes shall be provided.
void *shmat(int, const void *, int); int shmctl(int, int, struct shmid_ds *); int shmdt(const void *); int shmget(key_t, size_t, int);
In addition, the <sys/shm.h> header shall include the <sys/ipc.h> header.
APPLICATION USAGE
None.
RATIONALE
None.
FUTURE DIRECTIONS
None.
SEE ALSO
CHANGE HISTORY
First released in Issue 2. Derived from System V Release 2.0.
Issue 5
Issue 7
Austin Group Interpretation 1003.1-2001 #179 is applied.
This reference page is clarified with respect to macros and symbolic constants.
Issue 8
Austin Group Defect 1239 is applied, adding SHM_FAILED and requiring <sys/shm.h> to define intptr_t.