{"id":3949,"date":"2022-12-20T17:28:29","date_gmt":"2022-12-20T20:28:29","guid":{"rendered":"http:\/\/lode.uno\/linux-man\/index.php\/2022\/12\/20\/svipc-man7\/"},"modified":"2022-12-20T17:28:29","modified_gmt":"2022-12-20T20:28:29","slug":"svipc-man7","status":"publish","type":"post","link":"https:\/\/lode.uno\/linux-man\/2022\/12\/20\/svipc-man7\/","title":{"rendered":"SVIPC (man7)"},"content":{"rendered":"<h1 align=\"center\">SVIPC<\/h1>\n<p> <a href=\"#NAME\">NAME<\/a><br \/> <a href=\"#DESCRIPTION\">DESCRIPTION<\/a><br \/> <a href=\"#SEE ALSO\">SEE ALSO<\/a><br \/> <a href=\"#COLOPHON\">COLOPHON<\/a> <\/p>\n<hr>\n<h2>NAME <a name=\"NAME\"><\/a> <\/h2>\n<p style=\"margin-left:11%; margin-top: 1em\">sysvipc \u2212 System V interprocess communication mechanisms<\/p>\n<h2>DESCRIPTION <a name=\"DESCRIPTION\"><\/a> <\/h2>\n<p style=\"margin-left:11%; margin-top: 1em\">System V IPC is the name given to three interprocess communication mechanisms that are widely available on UNIX systems: message queues, semaphore, and shared memory.<\/p>\n<p style=\"margin-left:11%; margin-top: 1em\"><b>Message queues<\/b> <br \/> System V message queues allow data to be exchanged in units called messages. Each messages can have an associated priority, POSIX message queues provide an alternative API for achieving the same result; see <b>mq_overview<\/b>(7).<\/p>\n<p style=\"margin-left:11%; margin-top: 1em\">The System V message queue API consists of the following system calls: <b><br \/> msgget<\/b>(2)<\/p>\n<p style=\"margin-left:22%;\">Create a new message queue or obtain the ID of an existing message queue. This call returns an identifier that is used in the remaining APIs.<\/p>\n<p style=\"margin-left:11%;\"><b>msgsnd<\/b>(2)<\/p>\n<p style=\"margin-left:22%;\">Add a message to a queue.<\/p>\n<p style=\"margin-left:11%;\"><b>msgrcv<\/b>(2)<\/p>\n<p style=\"margin-left:22%;\">Remove a message from a queue.<\/p>\n<p style=\"margin-left:11%;\"><b>msgctl<\/b>(2)<\/p>\n<p style=\"margin-left:22%;\">Perform various control operations on a queue, including deletion.<\/p>\n<p style=\"margin-left:11%; margin-top: 1em\"><b>Semaphore sets<\/b> <br \/> System V semaphores allow processes to synchronize their actions System V semaphores are allocated in groups called sets; each semaphore in a set is a counting semaphore. POSIX semaphores provide an alternative API for achieving the same result; see <b>sem_overview<\/b>(7).<\/p>\n<p style=\"margin-left:11%; margin-top: 1em\">The System V semaphore API consists of the following system calls: <b><br \/> semget<\/b>(2)<\/p>\n<p style=\"margin-left:22%;\">Create a new set or obtain the ID of an existing set. This call returns an identifier that is used in the remaining APIs.<\/p>\n<p style=\"margin-left:11%;\"><b>semop<\/b>(2)<\/p>\n<p style=\"margin-left:22%;\">Perform operations on the semaphores in a set.<\/p>\n<p style=\"margin-left:11%;\"><b>semctl<\/b>(2)<\/p>\n<p style=\"margin-left:22%;\">Perform various control operations on a set, including deletion.<\/p>\n<p style=\"margin-left:11%; margin-top: 1em\"><b>Shared memory segments<\/b> <br \/> System V shared memory allows processes to share a region a memory (a &#8220;segment&#8221;). POSIX shared memory is an alternative API for achieving the same result; see <b>shm_overview<\/b>(7).<\/p>\n<p style=\"margin-left:11%; margin-top: 1em\">The System V shared memory API consists of the following system calls: <b><br \/> shmget<\/b>(2)<\/p>\n<p style=\"margin-left:22%;\">Create a new segment or obtain the ID of an existing segment. This call returns an identifier that is used in the remaining APIs.<\/p>\n<p style=\"margin-left:11%;\"><b>shmat<\/b>(2)<\/p>\n<p style=\"margin-left:22%;\">Attach an existing shared memory object into the calling process\u2019s address space.<\/p>\n<p style=\"margin-left:11%;\"><b>shmdt<\/b>(2)<\/p>\n<p style=\"margin-left:22%;\">Detach a segment from the calling process\u2019s address space.<\/p>\n<p style=\"margin-left:11%;\"><b>shmctl<\/b>(2)<\/p>\n<p style=\"margin-left:22%;\">Perform various control operations on a segment, including deletion.<\/p>\n<p style=\"margin-left:11%; margin-top: 1em\"><b>IPC namespaces<\/b> <br \/> For a discussion of the interaction of System V IPC objects and IPC namespaces, see <b>ipc_namespaces<\/b>(7).<\/p>\n<h2>SEE ALSO <a name=\"SEE ALSO\"><\/a> <\/h2>\n<p style=\"margin-left:11%; margin-top: 1em\"><b>ipcmk<\/b>(1), <b>ipcrm<\/b>(1), <b>ipcs<\/b>(1), <b>lsipc<\/b>(1), <b>ipc<\/b>(2), <b>msgctl<\/b>(2), <b>msgget<\/b>(2), <b>msgrcv<\/b>(2), <b>msgsnd<\/b>(2), <b>semctl<\/b>(2), <b>semget<\/b>(2), <b>semop<\/b>(2), <b>shmat<\/b>(2), <b>shmctl<\/b>(2), <b>shmdt<\/b>(2), <b>shmget<\/b>(2), <b>ftok<\/b>(3), <b>ipc_namespaces<\/b>(7)<\/p>\n<h2>COLOPHON <a name=\"COLOPHON\"><\/a> <\/h2>\n<p style=\"margin-left:11%; margin-top: 1em\">This page is part of release 5.10 of the Linux <i>man-pages<\/i> project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https:\/\/www.kernel.org\/doc\/man\u2212pages\/.<\/p>\n<hr>\n","protected":false},"excerpt":{"rendered":"<p>  sysvipc \u2212 System V interprocess communication mechanisms <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[971],"tags":[973,972,1041],"class_list":["post-3949","post","type-post","status-publish","format-standard","hentry","category-7-miscelanea","tag-973","tag-man7","tag-sysvipc"],"gutentor_comment":0,"_links":{"self":[{"href":"https:\/\/lode.uno\/linux-man\/wp-json\/wp\/v2\/posts\/3949","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lode.uno\/linux-man\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lode.uno\/linux-man\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lode.uno\/linux-man\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lode.uno\/linux-man\/wp-json\/wp\/v2\/comments?post=3949"}],"version-history":[{"count":0,"href":"https:\/\/lode.uno\/linux-man\/wp-json\/wp\/v2\/posts\/3949\/revisions"}],"wp:attachment":[{"href":"https:\/\/lode.uno\/linux-man\/wp-json\/wp\/v2\/media?parent=3949"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lode.uno\/linux-man\/wp-json\/wp\/v2\/categories?post=3949"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lode.uno\/linux-man\/wp-json\/wp\/v2\/tags?post=3949"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}