The Open Group Base Specifications Issue 7, 2018 edition
IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008)
Copyright © 2001-2018 IEEE and The Open Group

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.
SHMLBA
Segment low boundary address multiple.

The <sys/shm.h> header shall define the following data types 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 <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.


The following sections are informative.

APPLICATION USAGE

None.

RATIONALE

None.

FUTURE DIRECTIONS

None.

SEE ALSO

<sys/ipc.h>, <sys/types.h>

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

Issue 7

Austin Group Interpretation 1003.1-2001 #179 is applied.

This reference page is clarified with respect to macros and symbolic constants.

End of informative text.

 

return to top of page

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
Copyright © 2001-2018 IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]