usopenpollsema man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]



USOPENPOLLSEMA(3P)					    USOPENPOLLSEMA(3P)

NAME
     usopenpollsema - attach a file descriptor to a pollable semaphore

C SYNOPSIS
     #include <ulocks.h>

     int usopenpollsema (usema_t *sema, mode_t acc);

DESCRIPTION
     usopenpollsema attaches a file descriptor to a pollable semaphore.	 The
     returned file descriptor is used when calling poll(2) or select(2) to
     acquire the semaphore after an unsuccessful uspsema(3P).

     If the caller is the first process to call usopenpollsema on sema then a
     new semaphore device is allocated (see usema(7M)).	 The user and group id
     of the semaphore device take on the effective user/group id of the
     caller.  The access mode is set to acc(see chmod(2)).  Calls to
     usopenpollsema on the same semaphore by other processes simply attach to
     the previously allocated device.  They must pass standard Unix file
     permission tests to be allowed to attach.

     All processes sharing a pollable semaphore, related and unrelated alike,
     must call usopenpollsema before performing any semaphore operation on
     sema.

     Forked children must perform their own usopenpollsema, as the file
     descriptor inherited from the parent through the fork(2) will not be
     usable.

     A process requires the file descriptor to call usvsema even if it never
     calls uspsema.

     usopenpollsema will fail if one or more of the following are true:

     [EACCES]	   The caller does not have the required permission to open
		   one or both of the two semaphore device files, /dev/usema
		   and /dev/usemaclone.

     [EACCES]	   The caller is attempting to attach to a previously
		   allocated semaphore device and does not have the requisite
		   permissions.

     [ENOSPC]	   There are no more selectable semaphores available in the
		   system.  This is configurable up to 255.  See
		   /var/sysgen/master.d/usema.

     [EMFILE]	   The system imposed limit for open file descriptors per
		   process {OPEN_MAX} has already been reached.

     [ENFILE]	   The system file table has exceeded {NFILE_MAX} concurrently
		   open files.

									Page 1

USOPENPOLLSEMA(3P)					    USOPENPOLLSEMA(3P)

     [ENXIO]	   One or both of the two semaphore device files, /dev/usema
		   and /dev/usemaclone, do not exist, or the device is not
		   configured into the system.

SEE ALSO
     chmod(2), open(2), amalloc(3P), usclosepollsema(3P), usconfig(3P),
     uscpsema(3P), usctlsema(3P), usdumpsema(3P), usfreesema(3P),
     usfreepollsema(3P), usinit(3P), usnewsema(3P), usnewpollsema(3P),
     uspsema(3P), usvsema(3P), usema(7M).

DIAGNOSTICS
     Upon successful completion, a file descriptor is returned. Otherwise, a
     value of -1 is returned and errno is set to indicate the error.

									Page 2

[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net