awesome-repositories.com
Blog
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

13 repository-uri

Awesome GitHub RepositoriesPipe-Based Communication

Unidirectional data channels that allow byte stream exchange between processes.

Distinct from Inter-Process Communication: Specifically implements Unix-style pipes rather than general IPC protocols

Explore 13 awesome GitHub repositories matching operating systems & systems programming · Pipe-Based Communication. Refine with filters or upvote what's useful.

Awesome Pipe-Based Communication GitHub Repositories

Găsește cele mai bune repo-uri cu AI.Vom căuta cele mai potrivite repository-uri folosind AI.
  • google/xi-editorAvatar google

    google/xi-editor

    19,816Vezi pe GitHub↗

    Xi Editor is a high-performance text editor core written in Rust. It employs a decoupled architecture that separates core logic from the presentation layer using a JSON-based client-server protocol. The project features a language-agnostic plugin system that communicates with external extensions via JSON messages over pipes. It manages text buffers using a persistent rope data structure to enable efficient editing of very large files. The system supports asynchronous editor workflows by running expensive operations in background threads using data snapshots. This prevents background processi

    Communicates with external plugins using JSON messages exchanged over standard input and output pipes.

    Rust
    Vezi pe GitHub↗19,816
  • mit-pdos/xv6-publicAvatar mit-pdos

    mit-pdos/xv6-public

    9,466Vezi pe GitHub↗

    xv6 is a Unix-like educational operating system designed for teaching kernel concepts. It is implemented as an instructional kernel for x86 and RISC-V architectures, featuring a virtual memory manager and support for symmetric multiprocessing. The system is designed to demonstrate core OS principles through a simplified re-implementation of Unix Version 6. It provides a controlled environment for studying system calls, trap handling, and process lifecycles. Its capability surface covers process management, including scheduling and context switching, and memory management via page tables for

    Provides unidirectional byte-stream channels for communication between processes.

    C
    Vezi pe GitHub↗9,466
  • akavel/upAvatar akavel

    akavel/up

    8,836Vezi pe GitHub↗

    Up is an interactive shell pipeline tool and Linux pipeline builder designed for prototyping text-processing sequences. It provides a terminal user interface for constructing chains of shell commands while displaying real-time data transformations. The tool allows for the iterative development of command sequences with an instant live preview of processing results. Once a sequence is finalized, it functions as a shell script generator that exports the completed pipeline into a reusable script file. The workspace includes capabilities for terminal data exploration and text processing workflow

    Uses standard Unix pipes to stream data between consecutive shell command processes for transformation.

    Go
    Vezi pe GitHub↗8,836
  • winfsp/winfspAvatar winfsp

    winfsp/winfsp

    8,687Vezi pe GitHub↗

    WinFSP is a framework for implementing custom file systems on Windows. It enables the creation of user-mode file systems that appear as standard disk drives or network shares to the operating system, allowing developers to implement file system logic in user space via a proxy architecture that avoids the need for custom kernel code. A primary differentiator is its FUSE compatibility layer, which maps POSIX-based file system calls to native Windows requests. This allows existing file systems written for the FUSE API to be ported to Windows and Cygwin environments. The project covers a wide ra

    Uses named pipes and a dedicated service to manage the lifecycle and control of user-mode filesystem instances.

    Cdriverfilesystemfuse
    Vezi pe GitHub↗8,687
  • roadrunner-server/roadrunnerAvatar roadrunner-server

    roadrunner-server/roadrunner

    8,473Vezi pe GitHub↗

    RoadRunner is a high-performance application server and process manager designed to serve PHP applications using a persistent worker model. It eliminates bootload overhead and initialization time by keeping application processes alive between requests, acting as a protocol-agnostic proxy that routes traffic to a pool of supervised workers. The server is built with a plugin-based modular architecture, allowing it to be extended with custom Go plugins and compiled into tailored binaries. It distinguishes itself by providing a unified execution model for a wide array of communication protocols,

    Exchanges request and response payloads between the Go server and PHP workers using standard pipes.

    Goapplication-servergolanghacktoberfest
    Vezi pe GitHub↗8,473
  • kata-containers/kata-containersAvatar kata-containers

    kata-containers/kata-containers

    8,106Vezi pe GitHub↗

    Kata Containers is an OCI container runtime that launches containers inside lightweight virtual machines to combine hardware-level isolation with container operational speed. It functions as a hardware-isolated container engine and lightweight VM hypervisor, providing a virtual machine monitor interface that abstracts multiple hypervisors to optimize for performance or specific hardware emulation. The project distinguishes itself through a confidential computing runtime that leverages hardware-backed trusted execution environments, such as Intel TDX and AMD SEV-SNP, to protect data in use. It

    Uses VSOCK-based socket communication to coordinate container lifecycle operations between the host and guest.

    Rustacrncontainerscri
    Vezi pe GitHub↗8,106
  • ithewei/libhvAvatar ithewei

    ithewei/libhv

    7,521Vezi pe GitHub↗

    libhv is a high-performance C/C++ network library and event-driven I/O framework used to build TCP, UDP, SSL, HTTP, WebSocket, and MQTT clients and servers. It provides a non-blocking event loop for managing network sockets, timers, and system signals across multiple threads. The project is distinguished by its integrated support for specialized network roles, including a full HTTP web server with RESTful routing and middleware, an MQTT messaging client for IoT communication, and the ability to implement SOCKS5 and HTTP proxies. It also features a reliable UDP implementation to ensure ordered

    Establishes unidirectional data channels for communication between processes or threads within the event loop.

    Ccurlepollhttp-client
    Vezi pe GitHub↗7,521
  • tokio-rs/mioAvatar tokio-rs

    tokio-rs/mio

    7,024Vezi pe GitHub↗

    Mio is a low-level I/O library for Rust that provides an event-driven framework for monitoring multiple network sockets and file descriptors. It acts as a portable wrapper for operating system native polling systems, including epoll, kqueue, and IOCP, allowing applications to trigger events when resources are ready for reading or writing without blocking the execution thread. The library provides a non-blocking socket interface for managing TCP, UDP, and Unix sockets. It distinguishes itself through a vectored I/O implementation, enabling scatter-gather reads and writes across multiple buffer

    Supports non-blocking byte stream exchange between processes using platform-specific pipe communication.

    Rustasynchronousnetworkingnon-blocking
    Vezi pe GitHub↗7,024
  • balloonwj/cppguideAvatar balloonwj

    balloonwj/CppGuide

    6,030Vezi pe GitHub↗

    CppGuide is a curated collection of educational resources and practical guides focused on C++ server development, Linux kernel internals, concurrent programming, network protocols, and security exploitation. It provides structured learning paths for backend developers, covering everything from interview preparation to building high-performance network servers and understanding operating system fundamentals. The guide distinguishes itself by offering in-depth, hands-on tutorials that walk through real-world implementations, including building a Redis-like server from scratch, designing custom

    Provides tutorials on creating anonymous and named pipes for inter-process data streaming.

    Vezi pe GitHub↗6,030
  • angrave/systemprogrammingAvatar angrave

    angrave/SystemProgramming

    5,734Vezi pe GitHub↗

    This is an open-source, crowd-sourced wiki textbook that teaches Linux system programming in C. It covers the core operating system concepts of process management through the fork-exec-wait model, dynamic memory allocation using implicit free list heap allocators, inode-based file systems, inter-process communication via pipes and shared memory, POSIX threads with synchronization primitives, signal-based asynchronous notification, virtual memory with page table translation, and runtime diagnostics using Valgrind and GDB. The textbook distinguishes itself by providing practical, implementation

    Covers unidirectional byte stream communication between related processes using the pipe system call.

    Vezi pe GitHub↗5,734
  • asterinas/asterinasAvatar asterinas

    asterinas/asterinas

    4,678Vezi pe GitHub↗

    Asterinas is a memory-safe operating system kernel designed to prevent data races and memory corruption. It functions as a Linux-ABI compatible kernel, enabling the execution of existing Linux binaries and container workloads while providing a declarative operating system distribution model. The project distinguishes itself by acting as a virtual machine container host and a confidential computing guest OS, allowing it to run within hardware-isolated Trusted Execution Environments such as Intel TDX. It implements a minimal trusted computing base by isolating unsafe low-level operations and se

    Implements Unix-style unidirectional data channels for byte stream exchange between processes.

    Rustkernelosrust
    Vezi pe GitHub↗4,678
  • microvm-nix/microvm.nixAvatar microvm-nix

    microvm-nix/microvm.nix

    2,682Vezi pe GitHub↗

    microvm.nix is a declarative virtual machine manager and orchestrator for defining, building, and managing isolated guest environments using Nix. It functions as a virtual machine image builder that transforms system specifications into bootable disk images and runner scripts. The project provides a hypervisor abstraction layer, enabling the deployment of guest images across multiple virtualization backends through a unified configuration. It includes specialized tools for PCI hardware passthrough, granting virtual machines direct access to physical host USB and PCI devices. The framework co

    Establishes a virtual socket address to enable high-performance communication between the guest and host.

    Nixcloud-hypervisorcrosvmfirecracker
    Vezi pe GitHub↗2,682
  • riba2534/tcp-ip-networknoteAvatar riba2534

    riba2534/TCP-IP-NetworkNote

    2,505Vezi pe GitHub↗

    TCP-IP-NetworkNote is a comprehensive technical reference and guide for implementing network communication using TCP and UDP sockets in C and C++. It provides a detailed manual for using the POSIX socket API and covers the implementation of network protocols, synchronous and asynchronous I/O patterns, and concurrent programming models. The project is distinguished by its focus on cross-platform networking, offering a detailed comparison of socket implementation details and adaptation utilities between Linux and Windows Winsock environments. It specifically addresses the differences in header

    Demonstrates the use of unidirectional pipes to create communication channels between separate processes.

    C
    Vezi pe GitHub↗2,505
  1. Home
  2. Operating Systems & Systems Programming
  3. Kernel and Core Internals
  4. System Programming Primitives
  5. Inter-Process Communication
  6. Pipe-Based Communication

Explorează sub-etichetele

  • Full Pipe HandlingTechniques for preventing writes from failing when a pipe buffer is full. **Distinct from Pipe-Based Communication:** Distinct from Pipe-Based Communication: focuses on handling the full pipe condition, not general pipe communication.
  • VSOCK CommunicationSocket-based communication channels specifically for host-to-guest virtual machine interaction. **Distinct from Pipe-Based Communication:** Focuses on the VSOCK protocol for VM agent communication rather than standard Unix pipes.