8 repository-uri
The process of building loadable kernel modules from source code for specific operating system kernels.
Distinct from GPU Module Compilation Overrides: The candidates focus on GPU-specific overrides or C++20 modules; this is the general act of compiling Linux kernel modules.
Explore 8 awesome GitHub repositories matching operating systems & systems programming · Kernel Module Compilation. Refine with filters or upvote what's useful.
This project is an open source Linux GPU kernel driver implemented as a loadable kernel module. It functions as a GPU firmware loader, providing the low-level driver services necessary to enable direct communication between the operating system and graphics processing units. The driver utilizes a dual-module architecture that separates GPL-licensed kernel code from proprietary firmware blobs. This system extracts and links signed binary firmware images into the kernel modules at driver load time. The project provides driver support for Turing-architecture GPUs and all subsequent newer hardwa
Builds hardware driver modules from source for multiple supported architectures.
This project is a Linux kernel designed for Windows Linux integration, providing the underlying operating system kernel required to execute binary files and applications within the Windows Subsystem for Linux. It utilizes hypervisor-based virtualization to run a full kernel within a lightweight utility virtual machine managed by a Windows host. The repository enables the customization and compilation of the kernel from source. This allows for the modification of system behavior, the addition of specific drivers, and the tailoring of hardware compatibility for virtualized environments. The sy
Enables compiling a kernel from source with specific configuration changes and packaging modules into a virtual disk image.
The Linux Kernel Module Programming Guide is an educational resource that teaches how to write, compile, and manage loadable kernel modules for modern Linux kernels. It covers the complete lifecycle of kernel modules, from building and loading to unloading and debugging, with a focus on extending kernel functionality without recompiling the entire kernel. The guide provides comprehensive coverage of core kernel programming concepts including dynamic module loading, file-operation registration, interrupt handling, kernel-user data copying, concurrency control, and deferred task scheduling. It
Teaches compiling kernel module source code against the running kernel's build tree to produce a .ko file.
ANE is an open-source framework for training neural networks directly on Apple's Neural Engine hardware, bypassing Apple's public Core ML toolchain through reverse-engineered private APIs. It provides low-level control over the ANE, enabling developers to compile custom compute graphs into binary kernels, partition transformer model layers into hardware-compatible subgraphs, and share GPU-allocated memory with the Neural Engine via zero-copy IOSurface buffers. The framework distinguishes itself by offering direct access to hardware performance counters and power telemetry for benchmarking thr
Compiles custom compute graphs into ANE-specific binary kernels using reverse-engineered private compiler services.
OpenWrt-Rpi is a firmware builder and embedded Linux build toolset designed to compile custom router operating system images for Raspberry Pi and NanoPi hardware. It utilizes a GitHub Actions CI pipeline to automate the generation of fresh firmware images from the latest source code via daily updates. The project maintains a custom package repository and local software sources for managing community plugins and kernel modules. This infrastructure is used to ensure version consistency and prevent dependency conflicts during the installation of network drivers and system extensions. The build
Builds loadable kernel modules from source to provide hardware support while preventing dependency conflicts.
This is the official documentation repository for Raspberry Pi hardware and software. It covers the complete range of Raspberry Pi single-board computers, the RP-series microcontrollers, and the Raspberry Pi operating system. The documentation provides reference material for setting up devices, configuring hardware, and using the system for tasks including AI inference, camera and video capture, embedded development, and remote access. The documentation covers the full boot chain from the GPU firmware and EEPROM bootloader through to kernel loading, with detailed guidance on boot configuratio
Documents configuring and compiling a custom Linux kernel using native or cross-compilation.
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 instructions for building loadable kernel module objects and installing them for dynamic loading.
Acest proiect oferă un framework de dezvoltare pentru scrierea modulelor de kernel Linux încărcabile folosind limbajul de programare Rust. Stabilește o metodologie pentru programarea sigură a sistemelor prin impunerea siguranței memoriei și a firelor de execuție în mediul restricționat al kernel-ului, permițând dezvoltatorilor să extindă funcționalitatea sistemului de operare prevenind în același timp erorile comune de corupere a memoriei. Framework-ul se distinge prin generarea automată de interfețe de funcții străine (FFI) sigure din punct de vedere al tipurilor, care fac legătura între codul de nivel înalt și headerele sau structurile de sistem de nivel scăzut ale kernel-ului. Acesta mapează constructele de sincronizare de nivel înalt direct la mecanismele native de blocare ale kernel-ului, asigurându-se că datele partajate rămân protejate în mai multe fire de execuție și contexte de întrerupere. Setul de instrumente se integrează cu pipeline-urile native de build ale kernel-ului pentru a gestiona compilarea și link-area codului sursă în obiecte binare. Oferind abstracții sigure pentru interfațarea cu hardware-ul și mediile cu resurse limitate, acesta susține crearea de drivere de dispozitiv și componente de sistem fiabile, care mențin reguli stricte de proprietate și împrumut la momentul compilării.
Provides tools to transform source code into static libraries compatible with native kernel build systems.