posix-ipc
POSIX IPC primitives (semaphores, shared memory and message queues) for Python
Decision gist · record as of 2026-08-14
Yes, if you need low-level POSIX IPC primitives for multi-process coordination on Unix-like systems. The package is stable, actively maintained, has no known vulnerabilities, and carries a permissive license. Install friction is moderate due to C compilation, but pre-built wheels cover common platforms. Not suitable if you need Windows support without Cygwin or if you prefer higher-level abstractions like multiprocessing or queue modules.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires a POSIX-compliant system (Unix, Linux, macOS, or Windows with Cygwin ≥ 1.7); C compiler needed if building from source rather than using pre-built wheels.
- Medium install friction due to C extension compilation required across multiple platforms.
- Pre-built wheels are available for common Python versions and architectures, reducing friction for standard setups.
License · maintenance · safety
BSD-3-Clause (permissive) — BSD-3-Clause permissive license allows use in both open-source and proprietary projects with minimal restrictions; you must include the license text and acknowledge the authors.
last release 2025-10-23 (295 days) · last repo commit 2026-08-03 · 162 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 448,256 downloads/mo, #6,603 on PyPI
Alternatives
Verify before relying
pip install posix-ipc
import posix_ipc
# Create a semaphore
sem = posix_ipc.Semaphore('/my_sem', flags=posix_ipc.O_CREX)
sem.acquire()
sem.release()- Whether the package works with Python versions older than those with pre-built wheels (description mentions Python 3 compatibility but requires_python is unspecified).
- Current state of Windows + Cygwin support and whether pre-built wheels are available for that platform.
- Exact Python version range supported beyond the wheel evidence.
What it is and what it does
posix_ipc is a C-based Python module that wraps POSIX Realtime Extensions (POSIX 1003.1b-1993) inter-process communication primitives. It lets you create and manage semaphores, shared memory segments, and message queues for coordinating work across multiple processes on Unix-like systems. The module has no runtime dependencies and exposes these low-level IPC mechanisms directly to Python, making it suitable for applications that need efficient, kernel-level process synchronization without higher-level abstractions.
The package is production-stable (Development Status 5), actively maintained, and has been in use since its first release with no reported bugs in the core code for seven years. Pre-built wheels are available for common platforms, though building from source requires a C compiler. The permissive BSD-3-Clause license makes it suitable for both open-source and commercial projects.
Use it for
- Coordinate multiple worker processes in a daemon or service that needs kernel-level synchronization without external dependencies.
- Implement fast inter-process message passing for real-time or low-latency applications where socket-based IPC adds overhead.
- Build process pools or job queues that use POSIX semaphores for mutual exclusion and shared memory for efficient data exchange.
- Create named semaphores for inter-process locking in multi-process Python applications running on the same machine.
- Implement producer-consumer patterns using POSIX message queues for decoupled process communication.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need low-level POSIX IPC primitives for multi-process coordination on Unix-like systems.
The package is stable, actively maintained, has no known vulnerabilities, and carries a permissive license. Install friction is moderate due to C compilation, but pre-built wheels cover common platforms. Not suitable if you need Windows support without Cygwin or if you prefer higher-level abstractions like multiprocessing or queue modules.
Install
posix-ipc on PyPI
Before you install
Medium install friction due to C extension compilation required across multiple platforms. Pre-built wheels are available for common Python versions and architectures, reducing friction for standard setups. Maintenance is active with recent releases.
Requires a POSIX-compliant system (Unix, Linux, macOS, or Windows with Cygwin ≥ 1.7); C compiler needed if building from source rather than using pre-built wheels.
License in practice
BSD-3-Clause permissive license allows use in both open-source and proprietary projects with minimal restrictions; you must include the license text and acknowledge the authors.
Quickstart
pip install posix-ipc
import posix_ipc
# Create a semaphore
sem = posix_ipc.Semaphore('/my_sem', flags=posix_ipc.O_CREX)
sem.acquire()
sem.release()
Verify before relying
- Whether the package works with Python versions older than those with pre-built wheels (description mentions Python 3 compatibility but requires_python is unspecified).
- Current state of Windows + Cygwin support and whether pre-built wheels are available for that platform.
- Exact Python version range supported beyond the wheel evidence.
Package facts
| License | BSD-3-Clause permissive |
| Python support | Not specified |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 295 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 448,256 / month, #6,603 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | 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 |
Evidence: posix_ipc-1.3.2-cp310-cp310-macosx_10_9_x86_64.whl; posix_ipc-1.3.2-cp310-cp310-macosx_11_0_arm64.whl; posix_ipc-1.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; posix_ipc-1.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl; posix_ipc-1.3.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl; posix_ipc-1.3.2-cp310-cp310-musllinux_1_2_aarch64.whl; posix_ipc-1.3.2-cp310-cp310-musllinux_1_2_i686.whl; posix_ipc-1.3.2-cp310-cp310-musllinux_1_2_x86_64.whl; posix_ipc-1.3.2-cp311-cp311-macosx_10_9_x86_64.whl; posix_ipc-1.3.2-cp311-cp311-macosx_11_0_arm64.whl; posix_ipc-1.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; posix_ipc-1.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl; posix_ipc-1.3.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl; posix_ipc-1.3.2-cp311-cp311-musllinux_1_2_aarch64.whl; posix_ipc-1.3.2-cp311-cp311-musllinux_1_2_i686.whl; posix_ipc-1.3.2-cp311-cp311-musllinux_1_2_x86_64.whl; posix_ipc-1.3.2-cp312-cp312-macosx_10_13_x86_64.whl; posix_ipc-1.3.2-cp312-cp312-macosx_11_0_arm64.whl; posix_ipc-1.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; posix_ipc-1.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “posix ipc semaphores shared memory”
- posix-ipcposix_ipc provides Python bindings to POSIX inter-process…
- sysv-ipcProvides Python access to System V IPC primitives—semaphores, shared…
- zc.lockfileProvides portable inter-process locks implemented using lock files…
Give your agent the search over MCP, or paste the wish link into any chat.
More Utilities packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Detects and normalizes text encoding from unknown or ambiguous sources, supporting all IANA character sets that Python's core library provides codecs for, with the ability to register custom codecs.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
Pygments is a syntax highlighter that colorizes source code and text in over 500 languages and formats, outputting to HTML, LaTeX, RTF, SVG, images, or ANSI terminal sequences.
Install it if you need to display or transform source code.
Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.
See also sysv-ipc · jeepney · locket · zc.lockfile · fifolock · atomic_dict · multiprocess · libucxx-cu12 · dbus-python · janus