posix_typed_mem_open(3p) - phpMan

Command: man perldoc info search(apropos)  


POSIX_TYPED_MEM_OPEN(P)                                POSIX_TYPED_MEM_OPEN(P)



NAME
       posix_typed_mem_open - open a typed memory object (ADVANCED REALTIME)

SYNOPSIS
       #include <sys/mman.h>

       int posix_typed_mem_open(const char *name, int oflag, int tflag);


DESCRIPTION
       The  posix_typed_mem_open() function shall establish a connection between the typed
       memory object specified by the string pointed to by name and a file descriptor.  It
       shall  create an open file description that refers to the typed memory object and a
       file descriptor that refers to that open file description. The file  descriptor  is
       used  by  other  functions  to refer to that typed memory object. It is unspecified
       whether the name appears in the file system and is visible to other functions  that
       take  pathnames  as  arguments. The name argument shall conform to the construction
       rules for a pathname. If name begins with the slash character, then processes call-
       ing  posix_typed_mem_open()  with  the  same  value of name shall refer to the same
       typed memory object. If name does not begin with the slash character, the effect is
       implementation-defined. The interpretation of slash characters other than the lead-
       ing slash character in name is implementation-defined.

       Each typed memory object supported in a system shall be identified by a name  which
       specifies  not  only its associated typed memory pool, but also the path or port by
       which it is accessed. That is, the same typed memory pool accessed via several dif-
       ferent  ports shall have several different corresponding names. The binding between
       names and typed memory objects is established in an implementation-defined  manner.
       Unlike  shared  memory  objects,  there is no way within IEEE Std 1003.1-2001 for a
       program to create a typed memory object.

       The value of tflag shall determine how the typed memory object behaves when  subse-
       quently  mapped  by calls to mmap(). At most, one of the following flags defined in
       <sys/mman.h> may be specified:

       POSIX_TYPED_MEM_ALLOCATE
              Allocate on mmap().

       POSIX_TYPED_MEM_ALLOCATE_CONTIG
              Allocate contiguously on mmap().

       POSIX_TYPED_MEM_MAP_ALLOCATABLE
              Map on mmap(), without affecting allocatability.


       If tflag has the flag POSIX_TYPED_MEM_ALLOCATE specified, any  subsequent  call  to
       mmap() using the returned file descriptor shall result in allocation and mapping of
       typed memory from the specified typed memory pool. The allocated memory  may  be  a
       contiguous previously unallocated area of the typed memory pool or several non-con-
       tiguous previously unallocated areas (mapped to a contiguous portion of the process
       address  space).   If tflag has the flag POSIX_TYPED_MEM_ALLOCATE_CONTIG specified,
       any subsequent call to mmap() using the returned file descriptor  shall  result  in
       allocation  and  mapping  of a single contiguous previously unallocated area of the
       typed memory pool (also mapped to a  contiguous  portion  of  the  process  address
       space).    If   tflag   has   none   of   the   flags  POSIX_TYPED_MEM_ALLOCATE  or
       POSIX_TYPED_MEM_ALLOCATE_CONTIG specified, any subsequent call to mmap() using  the
       returned  file  descriptor  shall map an application-chosen area from the specified
       typed memory pool such that this mapped area  becomes  unavailable  for  allocation
       until unmapped by all processes. If tflag has the flag POSIX_TYPED_MEM_MAP_ALLOCAT-
       ABLE specified, any subsequent call to mmap() using the  returned  file  descriptor
       shall  map  an application-chosen area from the specified typed memory pool without
       an effect on the availability of that area for allocation; that is, mapping such an
       object  leaves each byte of the mapped area unallocated if it was unallocated prior
       to the mapping or allocated if it was allocated prior to the mapping. The appropri-
       ate  privilege  to  specify the POSIX_TYPED_MEM_MAP_ALLOCATABLE flag is implementa-
       tion-defined.

       If successful, posix_typed_mem_open() shall return a file descriptor for the  typed
       memory  object  that  is the lowest numbered file descriptor not currently open for
       that process. The open file description is new, and therefore the  file  descriptor
       shall  not  share  it  with any other processes. It is unspecified whether the file
       offset is set. The FD_CLOEXEC file descriptor flag associated  with  the  new  file
       descriptor shall be cleared.

       The  behavior  of  msync(), ftruncate(), and all file operations other than mmap(),
       posix_mem_offset(),  posix_typed_mem_get_info(),  fstat(),   dup(),   dup2(),   and
       close(),  is  unspecified when passed a file descriptor connected to a typed memory
       object by this function.

       The file status flags of the open file description shall be set  according  to  the
       value  of  oflag.  Applications  shall specify exactly one of the three access mode
       values described below and defined in the <fcntl.h> header, as the value of  oflag.

       O_RDONLY
              Open for read access only.

       O_WRONLY
              Open for write access only.

       O_RDWR Open for read or write access.


RETURN VALUE
       Upon successful completion, the posix_typed_mem_open() function shall return a non-
       negative integer representing the lowest numbered unused  file  descriptor.  Other-
       wise, it shall return -1 and set errno to indicate the error.

ERRORS
       The posix_typed_mem_open() function shall fail if:

       EACCES The  typed  memory  object exists and the permissions specified by oflag are
              denied.

       EINTR  The posix_typed_mem_open() operation was interrupted by a signal.

       EINVAL The  flags  specified   in   tflag   are   invalid   (more   than   one   of
              POSIX_TYPED_MEM_ALLOCATE,         POSIX_TYPED_MEM_ALLOCATE_CONTIG,        or
              POSIX_TYPED_MEM_MAP_ALLOCATABLE is specified).

       EMFILE Too many file descriptors are currently in use by this process.

       ENAMETOOLONG
              The length of the name argument exceeds {PATH_MAX} or a  pathname  component
              is longer than {NAME_MAX}.

       ENFILE Too many file descriptors are currently open in the system.

       ENOENT The named typed memory object does not exist.

       EPERM  The   caller   lacks   the   appropriate   privilege  to  specify  the  flag
              POSIX_TYPED_MEM_MAP_ALLOCATABLE in argument tflag.


       The following sections are informative.

EXAMPLES
       None.

APPLICATION USAGE
       None.

RATIONALE
       None.

FUTURE DIRECTIONS
       None.

SEE ALSO
       close() , dup() , exec() , fcntl() , fstat() , ftruncate() ,  mmap()  ,  msync()  ,
       posix_mem_offset()  ,  posix_typed_mem_get_info()  , umask() , the Base Definitions
       volume of IEEE Std 1003.1-2001, <fcntl.h>, <sys/mman.h>

COPYRIGHT
       Portions of this text are reprinted and reproduced in electronic form from IEEE Std
       1003.1,  2003  Edition,  Standard  for Information Technology -- Portable Operating
       System Interface (POSIX), The Open Group Base Specifications Issue 6, Copyright (C)
       2001-2003  by  the  Institute  of Electrical and Electronics Engineers, Inc and The
       Open Group. In the event of any discrepancy between this version and  the  original
       IEEE  and The Open Group Standard, the original IEEE and The Open Group Standard is
       the  referee  document.  The  original  Standard  can   be   obtained   online   at
       http://www.opengroup.org/unix/online.html .



POSIX                                2003              POSIX_TYPED_MEM_OPEN(P)

Generated by $Id: phpMan.php,v 4.55 2007/09/05 04:42:51 chedong Exp $ Author: Che Dong
On Apache/1.3.41 (Unix) PHP/5.2.5 mod_perl/1.30 mod_gzip/1.3.26.1a
Under GNU General Public License
2009-01-10 09:28 @38.103.63.58 CrawledBy CCBot/1.0 (+http://www.commoncrawl.org/bot.html)
Valid XHTML 1.0!Valid CSS!