Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ msync(3c) — Atari System V 1.1-06

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

memcntl(2)

mmap(2)

sysconf(3C)





   msync(3C)                                                         msync(3C)


   NAME
         msync - synchronize memory with physical storage

   SYNOPSIS
         #include <sys/types.h>
         #include <sys/mman.h>
         int msync(caddrt addr, sizet len, int flags);

   DESCRIPTION
         The function msync writes all modified copies of pages over the range
         [addr, addr + len) to their backing storage locations.  msync
         optionally invalidates any copies so that further references to the
         pages will be obtained by the system from their backing storage
         locations.  The backing storage for a modified MAPSHARED mapping is
         the file the page is mapped to; the backing storage for a modified
         MAPPRIVATE mapping is its swap area.

         flags is a bit pattern built from the following values:
                    MSASYNC        perform asynchronous writes
                    MSSYNC         perform synchronous writes
                    MSINVALIDATE   invalidate mappings

         If MSASYNC is set, msync returns immediately once all write
         operations are scheduled; if MSSYNC is set, msync does not return
         until all write operations are completed.

         MSINVALIDATE invalidates all cached copies of data in memory, so
         that further references to the pages will be obtained by the system
         from their backing storage locations.

         The effect of msync(addr, len, flags) is equivalent to:

               memcntl(addr, len, MCSYNC, flags, 0, 0)

   RETURN VALUE
         Upon successful completion, the function msync returns a value of 0;
         otherwise, it returns a value of -1 and sets errno to indicate an
         error.

   ERRORS
         See memcntl(2).

   NOTES
         msync should be used by programs that require a memory object to be
         in a known state, for example in building transaction facilities.

   SEE ALSO
         memcntl(2), mmap(2), sysconf(3C).





   8/91                                                                 Page 1





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