Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ sigsem(S) — System V/386 Software Development System 3.2.2b

Media Vault

Software Library

Restoration Projects

Artifacts Sought



     SIGSEM(S)                 UNIX System V                 SIGSEM(S)



     Name
          sigsem - signals a process waiting on a semaphore

     Syntax
          int sigsem(sem_num);
          int sem_num;

     Description
          sigsem signals a process that is waiting on the semaphore
          sem_num that it may proceed and use the resource governed by
          the semaphore.  sigsem is used in conjunction with
          waitsem(S) to allow synchronization of processes wishing to
          access a resource.  One or more processes may waitsem on the
          given semaphore and will be put to sleep until the process
          which currently has access to the resource issues a sigsem
          call.  If there are any waiting processes, sigsem causes the
          process which is next in line on the semaphore's queue to be
          rescheduled for execution.  The semaphore's queue is
          organized in first in first out (FIFO) order.

     See Also
          creatsem(S), opensem(S), waitsem(S)

     System Compatibility
          sigsem can only be used to signal semaphores created under
          UNIX Version 3.0, not for UNIX System V semaphores.

     Diagnostics
          sigsem returns the value (int) -1 if an error occurs.  If
          sem_num does not refer to a semaphore type file, errno is
          set to ENOTNAM.  If sem_num has not been previously opened
          by opensem, errno is set to EBADF.  If the process issuing a
          sigsem call is not the current ``owner'' of the semaphore
          (i.e., if the process has not issued a waitsem call before
          the sigsem), errno is set to ENAVAIL.

     Notes
          This feature is a XENIX specific enhancement and may not be
          present in all UNIX implementations.  This function must be
          linked using the linker option -lx.

                                             (printed 6/20/89)



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026