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
·

19 repository-uri

Awesome GitHub RepositoriesVirtual Device Drivers

High-performance virtualized hardware drivers for guest-to-host communication.

Distinguishing note: Specifically targets the VirtIO standard for device emulation.

Explore 19 awesome GitHub repositories matching operating systems & systems programming · Virtual Device Drivers. Refine with filters or upvote what's useful.

Awesome Virtual Device Drivers GitHub Repositories

Găsește cele mai bune repo-uri cu AI.Vom căuta cele mai potrivite repository-uri folosind AI.
  • firecracker-microvm/firecrackerAvatar firecracker-microvm

    firecracker-microvm/firecracker

    34,954Vezi pe GitHub↗

    Firecracker is a virtual machine monitor that leverages hardware-assisted virtualization to create and manage isolated execution environments. It functions as a lightweight runtime designed to launch virtual machines with minimal memory overhead and near-instantaneous startup times, providing the security of traditional hardware virtualization with the efficiency of containerized workloads. The project distinguishes itself through a security-focused architecture that enforces strict process boundaries using system-level barriers and restricted user privileges. It minimizes the attack surface

    Provides high-performance virtualized hardware drivers for efficient communication between guest and host.

    Rustcontainersminimalistopen-source
    Vezi pe GitHub↗34,954
  • utmapp/utmAvatar utmapp

    utmapp/UTM

    34,401Vezi pe GitHub↗

    UTM is a comprehensive virtualization suite that provides a unified interface for running guest operating systems on host hardware. It functions as a cross-platform system emulator and hypervisor, coordinating both hardware-accelerated virtualization and software-based instruction emulation to execute diverse operating systems. By leveraging native kernel-level virtualization frameworks, the software achieves near-native performance while maintaining strict security through sandboxed process isolation. The project distinguishes itself by enabling full-featured desktop operating systems to run

    Facilitates high-performance communication between guest operating systems and host-provided virtual hardware resources.

    Swiftappleemulationios
    Vezi pe GitHub↗34,401
  • waydabber/betterdisplayAvatar waydabber

    waydabber/BetterDisplay

    32,337Vezi pe GitHub↗

    BetterDisplay is a comprehensive display management utility and virtual display engine designed to provide granular control over monitor configurations. It functions as a low-level hardware controller that interacts directly with graphics drivers and system APIs to override manufacturer limitations, enabling users to manage resolution, scaling, brightness, and color profiles across complex multi-monitor setups. The project distinguishes itself through its ability to generate synthetic virtual displays and inject custom framebuffers into the graphics pipeline, allowing for arbitrary resolution

    Creates synthetic display devices by injecting custom framebuffers into the system graphics pipeline.

    4kbrightnessddc
    Vezi pe GitHub↗32,337
  • ish-app/ishAvatar ish-app

    ish-app/ish

    19,325Vezi pe GitHub↗

    This project provides a complete Linux environment for mobile devices by emulating an x86 architecture and translating system calls into native mobile operations. It functions as a terminal emulator that allows users to run standard command-line utilities, manage software packages, and execute unmodified Linux binaries directly on their mobile hardware. The environment distinguishes itself through its ability to maintain persistent background execution, preventing the mobile operating system from suspending shell tasks or active processes. It supports a containerized approach to the root file

    Implements virtual hardware interfaces by defining file operations to expose system-specific functionality.

    Cemulatorhacktoberfestios
    Vezi pe GitHub↗19,325
  • existentialaudio/blackholeAvatar ExistentialAudio

    ExistentialAudio/BlackHole

    19,175Vezi pe GitHub↗

    BlackHole is a system-level virtual audio driver designed for macOS that enables real-time routing of digital audio signals between applications and hardware. By functioning as a kernel-level extension, it creates a virtual loopback interface that allows users to transfer sound streams across software environments without the need for physical cables or external hardware. The software distinguishes itself through its ability to aggregate multiple physical and virtual audio sources into a single, unified interface. This abstraction layer supports complex signal management, including the mirror

    Provides CLI commands to manage the lifecycle of the virtual audio driver.

    Caudiodriverloopback
    Vezi pe GitHub↗19,175
  • nvidia/nvidia-dockerAvatar NVIDIA

    NVIDIA/nvidia-docker

    17,496Vezi pe GitHub↗

    NVIDIA Docker is a container runtime wrapper that enables the use of host-level graphics processing units within isolated container environments. It functions as a containerized GPU orchestrator, mapping physical hardware resources into virtualized environments to support high-performance computing and machine learning workloads. The project provides a toolkit that facilitates integration between containerized applications and host-level graphics hardware. By utilizing a pre-start hook to intercept container creation, the runtime injects necessary device drivers and libraries into the isolate

    Maps host-side graphics device nodes and shared libraries directly into the container namespace.

    cudadockergpu
    Vezi pe GitHub↗17,496
  • s-matyukevich/raspberry-pi-osAvatar s-matyukevich

    s-matyukevich/raspberry-pi-os

    13,854Vezi pe GitHub↗

    This project is a bare-metal operating system developed for ARM64 architecture. It serves as a low-level implementation of kernel engineering, focusing on the fundamental construction of an OS from the hardware level up. The system is distinguished by its comprehensive approach to ARM64 processor control, featuring a red-black tree task scheduler and a hierarchical page table system for virtual memory management. It implements a sophisticated privilege model that handles transitions between kernel and user modes, ensuring process isolation through address space splitting and exception level m

    Reads physical base addresses from a device tree to map them into virtual memory regions for hardware driver access.

    Carmarmv8assembler
    Vezi pe GitHub↗13,854
  • virtualdrivers/virtual-display-driverAvatar VirtualDrivers

    VirtualDrivers/Virtual-Display-Driver

    8,412Vezi pe GitHub↗

    Virtual-Display-Driver is a kernel-level driver for Windows that emulates physical monitors and audio devices. It serves as a virtual monitor emulator, headless server display emulator, and virtual audio device driver to enable extended desktop space and sound routing on systems without physical hardware connections. The project enables the simulation of monitors with custom resolutions, refresh rates, and identification profiles, including support for High Dynamic Range output. It also provides software-defined audio interfaces to simulate virtual microphones and speakers. The software cove

    Provides a control utility and scripts for managing the lifecycle and behavior of virtual audio drivers.

    C++displaydisplay-driverdisplays
    Vezi pe GitHub↗8,412
  • yuk7/archwslAvatar yuk7

    yuk7/ArchWSL

    7,372Vezi pe GitHub↗

    ArchWSL is a pre-configured Arch Linux distribution designed to run within the Windows Subsystem for Linux. It provides a method for deploying a functional Linux environment through root filesystem bootstrapping via application packages or zip archives. The project includes a dedicated instance manager for backing up, restoring, and managing multiple isolated Linux environment instances. It also features a compatibility patch for the standard C library and core system libraries to ensure software runs on older kernel versions. The system covers service management through native or emulated s

    Maps host-side graphics libraries into the subsystem via symbolic links to enable hardware acceleration.

    Makefilearchlinuxuwp-appswindows-10
    Vezi pe GitHub↗7,372
  • lakr233/vphone-cliAvatar Lakr233

    Lakr233/vphone-cli

    6,936Vezi pe GitHub↗

    vphone-cli is a command line interface for booting virtual iOS devices using Apple's native virtualization framework. It provides a sandboxed virtual mobile environment and tools for executing iOS system images on a host operating system. The project includes a firmware flashing utility capable of building signed ramdisks and applying custom firmware patches to virtual device boot chains. It facilitates the installation of custom firmware variants to remove system security restrictions. The toolset covers virtual device provisioning through system image restoration and security blob retrieva

    Implements the underlying execution environment to run a virtualized mobile device on a host operating system.

    Swift
    Vezi pe GitHub↗6,936
  • libusb/libusbAvatar libusb

    libusb/libusb

    6,085Vezi pe GitHub↗

    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.

    C
    Vezi pe GitHub↗6,085
  • lxc/lxdAvatar lxc

    lxc/lxd

    5,554Vezi pe GitHub↗

    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.

    Go
    Vezi pe GitHub↗5,554
  • cloud-hypervisor/cloud-hypervisorAvatar cloud-hypervisor

    cloud-hypervisor/cloud-hypervisor

    5,285Vezi pe GitHub↗

    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 PCI hardware from a running instance using unique device identifiers and API requests.

    Rustcloud-workloadskvmrust-vmm
    Vezi pe GitHub↗5,285
  • lxc/incusAvatar lxc

    lxc/incus

    4,893Vezi pe GitHub↗

    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.

    Gocloudcontainershacktoberfest
    Vezi pe GitHub↗4,893
  • v4l2loopback/v4l2loopbackAvatar v4l2loopback

    v4l2loopback/v4l2loopback

    4,197Vezi pe GitHub↗

    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.

    C
    Vezi pe GitHub↗4,197
  • xiaowenxia/embedded-notesAvatar xiaowenxia

    xiaowenxia/embedded-notes

    3,998Vezi pe GitHub↗

    embedded-notes is a collection of technical study guides and development notes focused on embedded Linux, Linux kernel internals, and C programming. It serves as a reference for embedded systems development and a preparation resource for technical interviews in the field. The project provides detailed documentation on writing device drivers, managing virtual memory, and understanding kernel internals. It also includes guides on IoT network protocols, such as MQTT and TCP/IP, and outlines the architectural details of chip architectures and hardware peripherals. The material covers a broad sur

    Provides memory addresses and functional descriptions for system control and interrupt registers.

    armcdriver
    Vezi pe GitHub↗3,998
  • project-hami/hamiAvatar Project-HAMi

    Project-HAMi/HAMi

    3,028Vezi pe GitHub↗

    HAMi is a hardware orchestration and virtualization system designed to manage accelerators within Kubernetes. It functions as a device plugin that partitions physical hardware into isolated virtual slices, enabling multiple containers to share a single device through enforced memory limits and compute quotas. The project provides a virtualization manager and a heterogeneous compute scheduler that distributes tasks across diverse accelerator types. It uses packing and topology policies to optimize workload placement and allows for specific hardware targeting using unique device identifiers. T

    Implements a Kubernetes device plugin to partition physical accelerators into isolated virtual slices for containers.

    Goascendcambriconcncf
    Vezi pe GitHub↗3,028
  • darklife/darkriscvAvatar darklife

    darklife/darkriscv

    2,490Vezi pe GitHub↗

    darkriscv is a collection of tools and projects for RISC-V processor implementation, hardware debugging, and automated FPGA synthesis. It provides a hardware design that implements a RISC-V processor core and system components for deployment on programmable logic. The project includes a hardware debugger with a command-line interface for verifying processor state by manipulating registers and dumping memory on a hardware target. It also features a set of scripts and project files to automate the synthesis and programming of hardware designs within a Linux environment. The codebase covers har

    Implements physical register mapping to allow external software to control hardware behavior via specific address locations.

    Verilogcorefpgarisc-v
    Vezi pe GitHub↗2,490
  • golemparts/rppalAvatar golemparts

    golemparts/rppal

    1,463Vezi pe GitHub↗

    Această bibliotecă oferă o colecție de abstracțiuni de nivel scăzut pentru interacțiunea cu perifericele hardware pe dispozitivele Raspberry Pi, folosind limbajul de programare Rust. Aceasta servește drept interfață type-safe pentru controlul pinilor fizici și gestionarea comunicării cu componente electronice externe și senzori. Proiectul se distinge prin utilizarea abstracțiunilor la momentul compilării, care mapează apelurile de funcții de nivel înalt direct la instrucțiuni hardware, asigurând un overhead minim la runtime. Oferă acces consistent la hardware prin împachetarea interfețelor de dispozitiv de nivel kernel și a registrelor mapate în memorie în abstracțiuni sigure, bazate pe trăsături (traits), care permit implementări interschimbabile de drivere. Biblioteca acoperă o gamă largă de capabilități de integrare hardware, inclusiv gestionarea protocoalelor standard de comunicare serială precum I2C, SPI și UART. De asemenea, suportă modularea în lățime a impulsurilor (PWM) și controlul pinilor GPIO, permițând integrarea senzorilor industriali și declanșarea actuatoarelor. Software-ul este distribuit sub formă de crate, oferind o abordare structurată pentru dezvoltarea sistemelor embedded și interfațarea hardware pe computere cu o singură placă bazate pe Linux.

    Maps physical hardware register addresses into process memory for low-latency register manipulation.

    Rustgpioi2cpwm
    Vezi pe GitHub↗1,463
  1. Home
  2. Operating Systems & Systems Programming
  3. Virtualization & Emulation
  4. Virtual Device Drivers

Explorează sub-etichetele

  • Audio Driver Lifecycle ManagementCLI utilities for installing, removing, and configuring virtual audio drivers. **Distinct from Virtual Device Drivers:** Focuses on driver lifecycle management rather than guest-to-host communication.
  • Device Plugin VirtualizationImplementation of hardware virtualization through Kubernetes device plugins to create isolated virtual slices. **Distinct from Virtual Device Drivers:** Focuses on the Kubernetes device plugin mechanism for partitioning, rather than general VirtIO drivers.
  • Virtual Device Hotplugging5 sub-tag-uriThe 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.
  • Virtual Hardware Mappings2 sub-tag-uriInterfaces for routing virtual device file operations to native system drivers. **Distinct from Virtual Device Drivers:** Distinct from VirtIO-specific drivers: focuses on mapping custom character devices to native mobile hardware functionality.