5 Repos
The live addition or removal of emulated virtual hardware components without requiring a guest reboot.
Distinct from Virtual Device Drivers: Moves from the driver's existence to the dynamic lifecycle management of the device.
Explore 5 awesome GitHub repositories matching operating systems & systems programming · Virtual Device Hotplugging. Refine with filters or upvote what's useful.
libusb is a cross-platform user-space library that provides a consistent C API for discovering, configuring, and communicating with USB devices from applications. It abstracts operating-system-specific USB driver details behind a single interface that works on Linux, macOS, Windows, and other platforms, enabling developers to write portable USB code without platform-specific knowledge. The library supports both synchronous and asynchronous I/O models for USB transfers. Synchronous operations block the calling thread until a transfer completes, offering a straightforward sequential programming
Monitors system device notifications and fires callbacks when USB devices are attached or removed during runtime.
LXD is a unified platform for managing both system containers and virtual machines through a single REST API and command-line interface. It provides a programmatic HTTP interface for controlling the full lifecycle of instances, enabling automation and integration with external tools. The system runs unprivileged containers with per-instance UID/GID mappings, seccomp filters, and AppArmor profiles for kernel-level isolation, while supporting multiple storage backends including directory, Btrfs, LVM, ZFS, Ceph, LINSTOR, and TrueNAS through a unified driver interface. The platform distinguishes
Automatically passes host block devices into running containers when they appear and removes them when they disappear.
Cloud Hypervisor is a Rust-based hypervisor and KVM virtual machine monitor designed to execute 64-bit guest operating systems. It functions as a user-space virtual machine manager that employs a minimal emulation layer to reduce memory overhead and latency for cloud workloads. The project distinguishes itself through the use of a memory-safe language to implement a virtio device emulator and a user-space device model. It provides a standardized web API for managing virtual machine lifecycles and resource configurations. The platform covers broad virtualization capabilities, including the em
Adds or removes hardware components from a running virtual machine without requiring a system reboot.
Incus is a unified orchestration platform for managing system containers, OCI application containers, and virtual machines through a single control plane. It brings together cluster infrastructure management, secure multi-tenancy, software-defined networking, and pluggable storage backend orchestration into one cohesive system exposed via a full REST API and command-line interface. What distinguishes Incus is its ability to run multiple instance types side by side—full Linux system containers, OCI application containers, and QEMU virtual machines—all managed with consistent tooling. Networkin
Attaches host Unix devices into containers with hotplug support.
v4l2loopback is a Linux kernel video driver that creates virtual video devices to route video streams between applications. It functions as a software-defined video source, simulating physical hardware to provide a standard video input for applications that require a capture device. The project enables video stream routing by piping data from one process to another using the Video4Linux2 standard. It includes mechanisms for device capability masking and conditional reporting to bypass strict hardware detection requirements in external software. The driver provides tools for virtual camera si
Enables the live addition or removal of virtual video devices without requiring a process restart.