{
    "content": [
        {
            "type": "text",
            "text": "# IPC::SysV (perldoc)\n\n**Summary:** IPC::SysV - System V IPC constants and system calls\n\n**Synopsis:** use IPC::SysV qw(IPCSTAT IPCPRIVATE);\n\n## See Also\n\n- ftok(3)\n- shmat(2)\n- shmdt(2)\n\n## Section Outline\n\n- **NAME** (2 lines)\n- **SYNOPSIS** (2 lines)\n- **DESCRIPTION** (16 lines) — 6 subsections\n  - ftok (1 lines)\n  - ftok (6 lines)\n  - shmat (5 lines)\n  - shmdt (3 lines)\n  - memread (4 lines)\n  - memwrite (4 lines)\n- **SEE ALSO** (2 lines)\n- **AUTHORS** (3 lines)\n- **COPYRIGHT** (7 lines)\n\n## Full Content\n\n### NAME\n\nIPC::SysV - System V IPC constants and system calls\n\n### SYNOPSIS\n\nuse IPC::SysV qw(IPCSTAT IPCPRIVATE);\n\n### DESCRIPTION\n\n\"IPC::SysV\" defines and conditionally exports all the constants defined in your system include\nfiles which are needed by the SysV IPC calls. Common ones include\n\nIPCCREAT IPCEXCL IPCNOWAIT IPCPRIVATE IPCRMID IPCSET IPCSTAT\nGETVAL SETVAL GETPID GETNCNT GETZCNT GETALL SETALL\nSEMA SEMR SEMUNDO\nSHMRDONLY SHMRND SHMLBA\n\nand auxiliary ones\n\nSIRUSR SIWUSR SIRWXU\nSIRGRP SIWGRP SIRWXG\nSIROTH SIWOTH SIRWXO\n\nbut your system might have more.\n\n#### ftok\n\n#### ftok\n\nReturn a key based on PATH and ID, which can be used as a key for \"msgget\", \"semget\" and\n\"shmget\". See ftok(3).\n\nIf ID is omitted, it defaults to 1. If a single character is given for ID, the numeric value\nof that character is used.\n\n#### shmat\n\nAttach the shared memory segment identified by ID to the address space of the calling\nprocess. See shmat(2).\n\nADDR should be \"undef\" unless you really know what you're doing.\n\n#### shmdt\n\nDetach the shared memory segment located at the address specified by ADDR from the address\nspace of the calling process. See shmdt(2).\n\n#### memread\n\nReads SIZE bytes from a memory segment at ADDR starting at position POS. VAR must be a\nvariable that will hold the data read. Returns true if successful, or false if there is an\nerror. memread() taints the variable.\n\n#### memwrite\n\nWrites SIZE bytes from STRING to a memory segment at ADDR starting at position POS. If\nSTRING is too long, only SIZE bytes are used; if STRING is too short, nulls are written to\nfill out SIZE bytes. Returns true if successful, or false if there is an error.\n\n### SEE ALSO\n\nIPC::Msg, IPC::Semaphore, IPC::SharedMem, ftok(3), shmat(2), shmdt(2)\n\n### AUTHORS\n\nGraham Barr <gbarr@pobox.com>, Jarkko Hietaniemi <jhi@iki.fi>, Marcus Holland-Moritz\n<mhx@cpan.org>\n\n### COPYRIGHT\n\nVersion 2.x, Copyright (C) 2007-2013, Marcus Holland-Moritz.\n\nVersion 1.x, Copyright (c) 1997, Graham Barr.\n\nThis program is free software; you can redistribute it and/or modify it under the same terms as\nPerl itself.\n\n"
        }
    ],
    "structuredContent": {
        "command": "IPC::SysV",
        "section": "",
        "mode": "perldoc",
        "summary": "IPC::SysV - System V IPC constants and system calls",
        "synopsis": "use IPC::SysV qw(IPCSTAT IPCPRIVATE);",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [
            {
                "name": "ftok",
                "section": "3",
                "url": "https://www.chedong.com/phpMan.php/man/ftok/3/json"
            },
            {
                "name": "shmat",
                "section": "2",
                "url": "https://www.chedong.com/phpMan.php/man/shmat/2/json"
            },
            {
                "name": "shmdt",
                "section": "2",
                "url": "https://www.chedong.com/phpMan.php/man/shmdt/2/json"
            }
        ],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 16,
                "subsections": [
                    {
                        "name": "ftok",
                        "lines": 1
                    },
                    {
                        "name": "ftok",
                        "lines": 6
                    },
                    {
                        "name": "shmat",
                        "lines": 5
                    },
                    {
                        "name": "shmdt",
                        "lines": 3
                    },
                    {
                        "name": "memread",
                        "lines": 4
                    },
                    {
                        "name": "memwrite",
                        "lines": 4
                    }
                ]
            },
            {
                "name": "SEE ALSO",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "AUTHORS",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "COPYRIGHT",
                "lines": 7,
                "subsections": []
            }
        ]
    }
}