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] [Option Start] #include <sys/shm.h> [Option End]

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 ]