The Open Group Base Specifications Issue 6
IEEE Std 1003.1, 2004 Edition
Copyright © 2001-2004 The IEEE and The Open Group, All Rights reserved.

#### NAME

> sys/shm.h - XSI shared memory facility

#### SYNOPSIS

> `[XSI] #include <sys/shm.h>`

#### 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.

> The <sys/shm.h> header shall define the following symbolic value:

> SHMLBA
>   Segment low boundary address multiple.

> The following data types shall be defined through typedef:

> shmatt_t
>   Unsigned integer used for the number of current attaches that must be able to store values at least as large as a type unsigned short.

> The shmid_ds structure shall contain 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 pid_t, time_t, key_t, and size_t types shall be defined 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, all of the symbols from <sys/ipc.h> shall be defined when this header is included.

The following sections are informative.

#### APPLICATION USAGE

> None.

#### RATIONALE

> None.

#### FUTURE DIRECTIONS

> None.

#### SEE ALSO

> <sys/ipc.h>, <sys/types.h>, the System Interfaces volume of IEEE Std 1003.1-2001, shmat(), shmctl(), shmdt(), shmget()

#### CHANGE HISTORY

> First released in Issue 2. Derived from System V Release 2.0.

#### Issue 5

> The type of shm_segsz is changed from int to size_t.

End of informative text.

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
[ Main Index | XBD | XCU | XSH | XRAT ]