Copyright Digital Equipment Corp. All rights reserved.

Arguments

 

section-name

   OpenVMS usage char_string
   type          character string
   access        read only
   mechanism     by descriptor
   Name of the shared memory section you want to create. The
   section-name argument is the address of a descriptor pointing
   to the shared memory section name.
 

memory-area

   OpenVMS usage vector_longword_unsigned
   type          longword (unsigned)
   access        modify
   mechanism     by reference, array reference
   The area of memory into which the shared memory is mapped. The
   memory-area argument is the address of a two-longword array
   containing, in order, the length (in bytes) and the starting
   virtual address for the area of memory.

   If you specify the starting address as zero, the PPL$ facility
   selects the virtual address space so that each current process
   in the application can map the section to the same set of virtual
   addresses.

   PPL$CREATE_SHARED_MEMORY returns to this argument the actual
   length and starting virtual address of the shared memory created
   or mapped.
 

flags

   OpenVMS usage mask_longword
   type          longword (unsigned)
   access        read only
   mechanism     by reference
   Specifies options for creating and mapping shared memory. The
   flags argument is the address of a longword bit mask containing
   the flag. Valid values are as follows:

   PPL$M_NOZERO  Does not initialize the shared memory to zero. By
                 default, PPL$CREATE_SHARED_MEMORY initializes the
                 shared memory to zero.
   PPL$M_NOWRT   Maps the shared memory with no write access (in
                 other words, read only). By default, the shared
                 memory is available with read/write access.
   PPL$M_NOUNI   Names the shared memory a nonunique name. By
                 default, PPL$CREATE_SHARED_MEMORY gives the
                 specified shared memory a name unique to the
                 application by using PPL$UNIQUE_NAME.
   PPL$M_PERM    Creates permanent shared memory in which data
                 is maintained even though there are no active
                 processes. The default is determined by your
                 call to PPL$CREATE_APPLICATION: if you specify
                 the PPL$M_PERM flag in your call to PPL$CREATE_
                 APPLICATION, this behavior is the default and
                 you do not need to specify PPL$M_PERM in your
                 call to PPL$CREATE_SHARED_MEMORY. If you do not
                 specify the PPL$M_PERM flag in your calls to
                 PPL$CREATE_APPLICATION and PPL$CREATE_SHARED_
                 MEMORY, application data is lost when the last
                 process in the application exits. Use of this flag
                 requires PRMGBL privilege.
   PPL$M_SYSTEM  Creates systemwide shared memory. The default is
                 determined by your call to PPL$CREATE_APPLICATION:
                 if you specify the PPL$M_SYSTEM flag in your call
                 to PPL$CREATE_APPLICATION, this behavior is the
                 default and you do not need to specify PPL$M_
                 SYSTEM in your call to PPL$CREATE_SHARED_MEMORY.
                 If you do not specify the PPL$M_SYSTEM flag in your
                 calls to PPL$CREATE_APPLICATION and PPL$CREATE_
                 SHARED_MEMORY, the application is available only to
                 processes running under the same group UIC. Use of
                 this flag requires the SYSGBL privilege.
 

file-name

   OpenVMS usage char_string
   type          character string
   access        read only
   mechanism     by descriptor
   Name of the file used for backup storage of the shared memory.
   The file-name argument is the address of a descriptor pointing
   to the file name. The size of the resulting address space is the
   smaller of the following:

   o  The specified section size

   o  The size of the file being mapped

   If you do not specify a file name, PPL$CREATE_SHARED_MEMORY
   creates for backup storage a page file section instead of a disk
   file section.

   If you specify a file that does not exist, PPL$CREATE_SHARED_
   MEMORY creates it.
 

protection

   OpenVMS usage file_protection
   type          longword (unsigned)
   access        read only
   mechanism     by reference
   Numeric value representing the protection mask to be applied
   to the shared memory. The optional protection argument is the
   address of an unsigned longword containing this numeric value.
   If you do not specify a value, the default is the value for
   protection specified in the call to PPL$CREATE_APPLICATION.
   For more information, see the description of the $CRMPSC system
   service in the OpenVMS System Services Reference Manual.