# IPC::SysV - man - phpman

## NAME
    [IPC::SysV](https://www.chedong.com/phpMan.php/perldoc/IPC%3A%3ASysV/markdown) - System V IPC constants and system calls

## SYNOPSIS
      use [IPC::SysV](https://www.chedong.com/phpMan.php/perldoc/IPC%3A%3ASysV/markdown) qw(IPC_STAT IPC_PRIVATE);

## DESCRIPTION
    "[IPC::SysV](https://www.chedong.com/phpMan.php/perldoc/IPC%3A%3ASysV/markdown)" defines and conditionally exports all the constants defined in your system include
    files which are needed by the SysV IPC calls. Common ones include

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

    and auxiliary ones

      S_IRUSR S_IWUSR S_IRWXU
      S_IRGRP S_IWGRP S_IRWXG
      S_IROTH S_IWOTH S_IRWXO

    but your system might have more.

### ftok
### ftok
        Return a key based on PATH and ID, which can be used as a key for "msgget", "semget" and
        "shmget". See [ftok(3)](https://www.chedong.com/phpMan.php/man/ftok/3/markdown).

        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
        Attach the shared memory segment identified by ID to the address space of the calling
        process. See [shmat(2)](https://www.chedong.com/phpMan.php/man/shmat/2/markdown).

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

### shmdt
        Detach the shared memory segment located at the address specified by ADDR from the address
        space of the calling process. See [shmdt(2)](https://www.chedong.com/phpMan.php/man/shmdt/2/markdown).

### memread
        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
        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](https://www.chedong.com/phpMan.php/perldoc/IPC%3A%3AMsg/markdown), [IPC::Semaphore](https://www.chedong.com/phpMan.php/perldoc/IPC%3A%3ASemaphore/markdown), [IPC::SharedMem](https://www.chedong.com/phpMan.php/perldoc/IPC%3A%3ASharedMem/markdown), [ftok(3)](https://www.chedong.com/phpMan.php/man/ftok/3/markdown), [shmat(2)](https://www.chedong.com/phpMan.php/man/shmat/2/markdown), [shmdt(2)](https://www.chedong.com/phpMan.php/man/shmdt/2/markdown)

## 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.

