sysv-ipc
SysV IPC primitives (semaphores, shared memory and message queues) for Python
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-ipcuv
uv add sysv-ipcpoetry
poetry add sysv-ipcInstalling 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
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
posix-ipcposix_ipc provides Python bindings to POSIX…
permissive · top 15,000 on PyPI
freertos-gdbA GDB Python plugin that adds commands to…
permissive · top 5,000 on PyPI
jeepneyJeepney is a pure Python implementation of…
permissive · top 1,000 on PyPI
multiprocessMultiprocess is an enhanced fork of Python's…
permissive · top 1,000 on PyPI
fifolockFifolock provides a low-level building block…
permissive · top 15,000 on PyPI
uptimeRetrieves the system uptime (time since last…
permissive · top 15,000 on PyPI
zc.lockfileProvides portable inter-process locks…
unclear · top 5,000 on PyPI
exit-codesProvides platform-independent exit codes for…
permissive · top 15,000 on PyPI
janusProvides a thread-safe queue with both…
permissive · top 5,000 on PyPI
intel-sycl-rtProvides the Intel oneAPI DPC++/C++ SYCL…
unclear · top 15,000 on PyPI