Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ sdget(2) — Atari System V 1.1-06

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

sdenter(2)

sdgetv(2)





   sdget(2)               (XENIX Compatibility Package)               sdget(2)


   NAME
         sdget, sdfree - attaches and detaches a shared data segment.

   SYNOPSIS
         cc [flag ...] file ... -lx
         #include <sys/sd.h>

         char *sdget(char *path, int flags /*, long size, int mode */)fP;

         int sdfree(char *addr);

   DESCRIPTION
         sdget attaches a shared data segment to the data space of the current
         process.  The actions performed are controlled by the value of flags.
         flags values are constructed by OR-ing flags from the following list:
         Attach the segment for reading only.  Attach the segment for both
         reading and writing.  If the segment named by path exists and is not
         in use (active), this flag will have the same effect as creating a
         segment from scratch.  Otherwise, the segment is created according to
         the values of size and mode.  Read and write access to the segment is
         granted to other processes based on the permissions passed in mode,
         and functions the same as those for regular files.  Execute
         permission is meaningless.  The segment is initialized to contain all
         zeroes.  If the segment is created because of this call, the segment
         will be made so that more than one process can be between sdenter and
         sdleave calls.

         sdfree detaches the current process from the shared data segment that
         is attached at the specified address.  If the current process has
         done sdenter but not an sdleave for the specified segment, sdleave
         will be done before detaching the segment.

         When no process remains attached to the segment, the contents of that
         segment disappear, and no process can attach to the segment without
         creating it by using the SDCREAT flag in sdget.  errno is set to
         EEXIST if a process tries to create a shared data segment that exists
         and is in use.  errno is set to ENOTNAM if a process attempts an
         sdget on a file that exists but is not a shared data type.

   DIAGNOSTICS
         On successful completion, the address at which the segment was
         attached is returned.  Otherwise, -1 is returned, and errno is set to
         indicate the error.  errno is set to EINVAL if a process does an
         sdget on a shared data segment to which it is already attached.
         errno is set to EEXIST if a process tries to create a shared data
         segment that exists an is in use.  errno is set to ENOTNAM if a
         process attempts an sdget on a file that exists but is not a shared
         data type.





   8/91                                                                 Page 1









   sdget(2)               (XENIX Compatibility Package)               sdget(2)


         The mode parameter must be included on the first call of the sdget
         function.

   SEE ALSO
         sdenter(2), sdgetv(2).
















































   Page 2                                                                 8/91





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