Home Man
Search
Today's Posts
Register

Linux & Unix Commands - Search Man Pages

OpenSolaris 2009.06 - man page for shmids (opensolaris section 2)

shmids(2)				   System Calls 				shmids(2)

NAME
       shmids - discover all shared memory identifiers

SYNOPSIS
       #include <sys/shm.h>

       int shmids(int *buf, uint_t nids, uint_t *pnids);

DESCRIPTION
       The shmids() function copies all active shared memory identifiers from the system into the
       user-defined buffer specified by buf, provided that the number of such identifiers is  not
       greater	than the number of integers the buffer can contain, as specified by nids.  If the
       size of the buffer is insufficient to contain all of the active shared memory  identifiers
       in the system, none are copied.

       Whether	or not the size of the buffer is sufficient to contain all of them, the number of
       active shared memory identifiers in the system is copied into the unsigned integer pointed
       to by pnids.

       If  nids  is  0 or less than the number of active shared memory identifiers in the system,
       buf is ignored.

RETURN VALUES
       Upon successful completion, shmids() returns 0.	Otherwise, -1 is returned  and	errno  is
       set to indicate the error.

ERRORS
       The shmids() function will fail if:

       EFAULT	 The buf or pnids argument points to an illegal address.

USAGE
       The  shmids()  function	returns a snapshot of all the active shared memory identifiers in
       the system.  More may be added and some may be removed before they  can	be  used  by  the
       caller.

EXAMPLES
       Example 1 shmids() example

       This is sample C code indicating how to use the shmids() function.

	 void
	 examine_shmids()
	 {
	      int *ids = NULL;
	      uint_t nids = 0;
	      uint_t n;
	      int i;

	      for (;;) {
		   if (shmids(ids, nids, &n) != 0) {
			perror("shmids");
			exit(1);
		   }
		   if (n <= nids)     /* we got them all */
			break;
		   /* we need a bigger buffer */
		   ids = realloc(ids, (nids = n) * sizeof (int));
	      }

	      for (i = 0; i < n; i++)
		   process_shmid(ids[i]);

	      free(ids);
	 }

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       +-----------------------------+-----------------------------+
       |      ATTRIBUTE TYPE	     |	    ATTRIBUTE VALUE	   |
       +-----------------------------+-----------------------------+
       |MT-Level		     |Async-Signal-Safe 	   |
       +-----------------------------+-----------------------------+

SEE ALSO
       ipcrm(1), ipcs(1), Intro(2), shmctl(2), shmget(2), shmop(2), attributes(5)

SunOS 5.11				    8 Mar 2000					shmids(2)


All times are GMT -4. The time now is 07:27 AM.

Unix & Linux Forums Content Copyrightę1993-2018. All Rights Reserved.
UNIX.COM Login
Username:
Password:  
Show Password