*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> msem_init (3)              
Title
Content
Arch
Section
 

msem_init(3)

Contents


NAME    [Toc]    [Back]

       msem_init  -  Initialize  a  semaphore in a mapped file or
       shared memory region

SYNOPSIS    [Toc]    [Back]

       #include <sys/mman.h>

       msemaphore *msem_init(
               msemaphore *sem ,
               int initial_value );

LIBRARY    [Toc]    [Back]

       Standard C Library (libc)

PARAMETERS    [Toc]    [Back]

       Points to an msemaphore structure in which  the  state  of
       the semaphore is stored.  Determines whether the semaphore
       is locked or unlocked at allocation.

DESCRIPTION    [Toc]    [Back]

       The msem_init() function allocates a new binary  semaphore
       and initializes the state of the new semaphore.

       If  the  initial_value  parameter  is MSEM_LOCKED, the new
       semaphore is initialized in the locked state. If the  initial_value
  parameter  is MSEM_UNLOCKED, the new semaphore
       is initialized in the unlocked state.

       The msemaphore structure is located within a  mapped  file
       or  shared  memory  region created by a successful call to
       the mmap() function and having both read and write access.

       If  a  semaphore  is  created in a mapped file region, any
       reference by a process which has  mapped  the  same  file,
       using  a  (struct  msemaphore *) pointer which resolves to
       the same file offset, is taken as a reference to the  same
       semaphore.  If  a  semaphore  is  created  in an anonymous
       shared memory region, any reference  by  a  process  which
       shares  the  same  region,  using  a (struct msemaphore *)
       pointer which resolves to the same offset from  the  start
       of  the  region,  is  taken  as  a  reference  to the same
       semaphore.

       Any previous semaphore  state  stored  in  the  msemaphore
       structure is ignored and overwritten.

NOTES    [Toc]    [Back]

       Trial use

RETURN VALUES    [Toc]    [Back]

       Upon   successful  completion,  the  msem_init()  function
       returns a pointer to the initialized msemaphore structure.
       On  error,  the msem_init() function returns null and sets
       errno to indicate the error.








ERRORS    [Toc]    [Back]

       If the msem_init() function fails, errno may be set to one
       of  the  following  values: The initial_value parameter is
       not valid.  A new semaphore could not be created.

SEE ALSO    [Toc]    [Back]

      
      
       Functions:    mmap(2),    msem_lock(3),    msem_remove(3),
       msem_unlock(3)



                                                     msem_init(3)
[ Back ]
 Similar pages
Name OS Title
msem_init HP-UX initialize a semaphore in a mapped file or anonymous memory region
msem_remove HP-UX remove a semaphore in mapped file or anonymous region
shmdt Tru64 Detach a shared memory region
shmat Tru64 Attach a shared memory region
shmid_ds Tru64 Defines a shared memory region
shmget Tru64 Return (and possibly create) the ID for a shared memory region
nshmget Tru64 Returns (or creates) the ID for a shared memory region (libnuma library)
msync NetBSD synchronize a mapped region
msync OpenBSD synchronize a mapped region
munmap Tru64 Unmap a mapped region
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service