Perl 5 version 32.0 documentation

IPC::SysV

NAME

IPC::SysV - System V IPC constants and system calls

SYNOPSIS

  1. use IPC::SysV qw(IPC_STAT IPC_PRIVATE);

DESCRIPTION

IPC::SysV defines and conditionally exports all the constants defined in your system include files which are needed by the SysV IPC calls. Common ones include

  1. IPC_CREAT IPC_EXCL IPC_NOWAIT IPC_PRIVATE IPC_RMID IPC_SET IPC_STAT
  2. GETVAL SETVAL GETPID GETNCNT GETZCNT GETALL SETALL
  3. SEM_A SEM_R SEM_UNDO
  4. SHM_RDONLY SHM_RND SHMLBA

and auxiliary ones

  1. S_IRUSR S_IWUSR S_IRWXU
  2. S_IRGRP S_IWGRP S_IRWXG
  3. S_IROTH S_IWOTH S_IRWXO

but your system might have more.

  • ftok( PATH )
  • ftok( PATH, ID )

    Return a key based on PATH and ID, which can be used as a key for msgget, semget and shmget. See ftok(3).

    If ID is omitted, it defaults to 1 . If a single character is given for ID, the numeric value of that character is used.

  • shmat( ID, ADDR, FLAG )

    Attach the shared memory segment identified by ID to the address space of the calling process. See shmat(2).

    ADDR should be undef unless you really know what you're doing.

  • shmdt( ADDR )

    Detach the shared memory segment located at the address specified by ADDR from the address space of the calling process. See shmdt(2).

  • memread( ADDR, VAR, POS, SIZE )

    Reads SIZE bytes from a memory segment at ADDR starting at position POS. VAR must be a variable that will hold the data read. Returns true if successful, or false if there is an error. memread() taints the variable.

  • memwrite( ADDR, STRING, POS, SIZE )

    Writes SIZE bytes from STRING to a memory segment at ADDR starting at position POS. If STRING is too long, only SIZE bytes are used; if STRING is too short, nulls are written to fill out SIZE bytes. Returns true if successful, or false if there is an error.

SEE ALSO

IPC::Msg, IPC::Semaphore, IPC::SharedMem, ftok(3), shmat(2), shmdt(2)

AUTHORS

Graham Barr <gbarr@pobox.com>, Jarkko Hietaniemi <jhi@iki.fi>, Marcus Holland-Moritz <mhx@cpan.org>

COPYRIGHT

Version 2.x, Copyright (C) 2007-2013, Marcus Holland-Moritz.

Version 1.x, Copyright (c) 1997, Graham Barr.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.