skillfed

sysv-ipc

SysV IPC primitives (semaphores, shared memory and message queues) for Python

sysv-ipc v1.2.0 207.6K downloads/30d#9,545 on PyPI25
Permissive license BSD-3-Clause AGING released

What it is and what it does

sysv_ipc is a C-based Python module that wraps the native System V IPC API, letting you create and manage semaphores, shared memory segments, and message queues on Unix-like systems. It's a thin binding to the underlying OS primitives rather than a high-level abstraction, so you interact with them much as you would in C—acquiring semaphores, attaching to shared memory, sending and receiving messages. The module is stable and production-ready, with no known vulnerabilities and a long release history dating back to 2014.

You'd use this when you need low-level inter-process communication on Unix systems—typically for coordinating multiple processes on the same machine, sharing data efficiently without serialization overhead, or implementing classic Unix patterns. It's not a replacement for higher-level IPC libraries; it's for cases where you specifically need System V IPC semantics or are integrating with existing C code that uses them.

Use it for:

  • Coordinate multiple Python processes using System V semaphores for mutual exclusion or signaling.
  • Share large data structures between processes via System V shared memory without serialization overhead.
  • Implement message-passing patterns between processes using System V message queues.
  • Integrate Python code with existing C applications that rely on System V IPC primitives.
  • Build process pools or worker systems that need efficient, OS-level synchronization on Unix.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides Python access to System V IPC primitives—semaphores, shared memory, and message queues—on Unix-like systems via a C extension module.

Yes, if you need System V IPC on Unix systems. The package is stable, permissively licensed, has no known vulnerabilities, and offers prebuilt wheels for common platforms. Install friction is moderate due to the C extension, but wheels are widely available. Not suitable for Windows without WSL/Cygwin, and only necessary if you specifically require System V IPC semantics rather than higher-level alternatives.

Install

sysv-ipc on PyPI

pip

pip install sysv-ipc

uv

uv add sysv-ipc

poetry

poetry add sysv-ipc

Installing sysv-ipc

Before you install

Medium install friction due to compiled C extension; prebuilt wheels available for Python 3.10–3.13 on macOS, Linux (x86_64 and aarch64), and musl-based systems. Last release 217 days ago; repo is active and not archived, though maintenance status is aging.

License in practice

Released under BSD-3-Clause (permissive), allowing commercial and private use with minimal restrictions; include a copy of the license in distributions.

Quickstart

pip install sysv-ipc

import sysv_ipc

# Create or access a semaphore
sem = sysv_ipc.Semaphore(flags=sysv_ipc.IPC_CREAT)
sem.acquire()
sem.release()

Requires a Unix-like OS with System V IPC support (Linux, macOS, BSD, Solaris); not available on Windows without WSL or Cygwin. No minimum Python version specified in metadata.

Verify before relying

  • Whether Windows + WSL or Cygwin support is reliable or tested in practice.
  • Current status of Python 2.x compatibility mentioned in the description.
  • Whether the six-year gap since the last reported bug reflects maturity or lack of active use.

Package facts

License BSD-3-Clause (permissive)
Python support not specified
Install friction medium — platform-specific wheel
Runtime dependencies none
Maintenance aging — 217 days since the last release
Last repo commit
First released
Downloads 207,635/month — #9,545 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: sysv_ipc-1.2.0-cp310-cp310-macosx_10_9_x86_64.whl; sysv_ipc-1.2.0-cp310-cp310-macosx_11_0_arm64.whl; sysv_ipc-1.2.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; sysv_ipc-1.2.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; sysv_ipc-1.2.0-cp310-cp310-musllinux_1_2_aarch64.whl; sysv_ipc-1.2.0-cp310-cp310-musllinux_1_2_x86_64.whl; sysv_ipc-1.2.0-cp311-cp311-macosx_10_9_x86_64.whl; sysv_ipc-1.2.0-cp311-cp311-macosx_11_0_arm64.whl; sysv_ipc-1.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; sysv_ipc-1.2.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; sysv_ipc-1.2.0-cp311-cp311-musllinux_1_2_aarch64.whl; sysv_ipc-1.2.0-cp311-cp311-musllinux_1_2_x86_64.whl; sysv_ipc-1.2.0-cp312-cp312-macosx_10_13_x86_64.whl; sysv_ipc-1.2.0-cp312-cp312-macosx_11_0_arm64.whl; sysv_ipc-1.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; sysv_ipc-1.2.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; sysv_ipc-1.2.0-cp312-cp312-musllinux_1_2_aarch64.whl; sysv_ipc-1.2.0-cp312-cp312-musllinux_1_2_x86_64.whl; sysv_ipc-1.2.0-cp313-cp313-macosx_10_13_x86_64.whl; sysv_ipc-1.2.0-cp313-cp313-macosx_11_0_arm64.whl

Development Status :: 5 - Production/StableIntended Audience :: DevelopersOperating System :: MacOS :: MacOS XOperating System :: POSIXOperating System :: POSIX :: BSD :: FreeBSDOperating System :: POSIX :: LinuxOperating System :: POSIX :: SunOS/SolarisOperating System :: UnixProgramming Language :: PythonProgramming Language :: Python :: 3Topic :: Utilities

Tags

system v ipc pythonsemaphores shared memory message queuesunix ipc primitivesinterprocess communication pythonsysv semaphore pythonshared memory access pythonmessage queue unix
ipcunix-systemsc-extension

More Utilities packages