编程接口指南

访问共享内存段

shmget(2) 用于获取对共享内存段的访问。 当此调用成功时,便会返回共享内存段 ID (shmid)。 以下代码说明了 shmget(2)

#include  <sys/types.h>

#include <sys/ipc.h>

#include <sys/shm.h>

...

 	key_t		key;			/* key to be passed to shmget() */

 	int		shmflg;		/* shmflg to be passed to shmget() */

 	int		shmid;		/* return value from shmget() */

 	size_t	size;			/* size to be passed to shmget() */

 	...

 	key = ...

 	size = ...

 	shmflg) = ...

 	if ((shmid = shmget (key, size, shmflg)) == –1) {

 		perror("shmget: shmget failed");

 		exit(1);

 	} else {

 		(void) fprintf(stderr,

 					"shmget: shmget returned %d\n", shmid);

 		exit(0);

 	}

 ...