14 repositorios
Tools and configurations for troubleshooting driver-level code and kernel-mode components.
Distinct from Component Debugging Tools: Candidates focus on application-level or general testing; this is specifically for kernel-mode components.
Explore 14 awesome GitHub repositories matching operating systems & systems programming · Kernel Component Debugging. Refine with filters or upvote what's useful.
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
Supports troubleshooting kernel-mode components using network-based debugging tools and test-signed configurations.
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 debugging kernel modules using /proc, sysfs, and debugfs interfaces in a virtual machine.
XXPermissions is a framework and manager for handling runtime and special system permissions across different Android operating system versions. It provides a unified interface for requesting standard permissions and directing users to system settings pages for advanced access control, such as file access and accessibility services. The project features a backward compatibility layer that abstracts version-specific logic, removing the need for manual operating system version checks in client code. It utilizes a chainable request pipeline to queue multiple permissions and manage their asynchro
Provides an assertion engine that triggers exceptions during debug mode to identify incorrect permission implementation patterns.
The Rust RFCs repository is the formal home for the Rust language evolution process, housing the structured design documents and community review mechanisms that govern changes to the Rust programming language, its compiler, and its standard library. It defines the complete lifecycle for proposing, discussing, and implementing substantial changes through RFC documents, from initial submission and community feedback through final comment periods and sub-team sign-offs. The repository codifies the governance and collaboration processes that shape Rust's development, including mechanisms for com
Provides a debug_assert! macro that is compiled away in release builds for zero-cost debugging.
SSHFS-Win is a Windows implementation of SSHFS that mounts remote directories over SSH as local Windows drives, enabling seamless file access as if they were local network drives. It provides both command-line and graphical interfaces for creating, managing, and disconnecting SSHFS mounts, supporting password or SSH key authentication with optional credential storage in the Windows Credential Manager. The project extends beyond basic SSH mounting to support a wide range of remote file access scenarios, including mounting cloud storage services like Azure Blob or Amazon S3, distributed POSIX f
Configures Windows VMs for kernel debugging over the network with test-signed driver loading.
Warp is a Python framework that JIT-compiles Python functions into CUDA kernels for GPU-accelerated parallel computation, with built-in automatic differentiation and multi-framework array interoperability. At its core, it provides a GPU kernel compilation system that enables writing and executing custom GPU kernels directly from Python, while supporting automatic gradient computation through those kernels for integration with machine learning pipelines. The framework also includes tile-based cooperative computing, where thread blocks partition into tiles for shared-memory and tensor-core opera
Interrupts GPU kernel execution when a Boolean expression evaluates to false in debug mode.
seL4 is a formally verified microkernel whose C implementation is backed by machine-checked mathematical proofs of correctness, confidentiality, integrity, and availability. It enforces strict isolation between processes through hardware-enforced address space separation and a capability-based access control system, where each process holds explicit rights only to the resources it has been granted. The kernel exposes hardware resources through a minimal API of system calls that manage threads, address spaces, and inter-process communication, with synchronous IPC supporting sender-identifying b
Outputs the current kernel operation at any point during execution to aid in debugging.
Battery Historian es una herramienta de visualización y perfilado para analizar el consumo de energía y el drenaje de batería en dispositivos Android. Funciona como un visor de informes de errores (bugreport) y perfilador de consumo de energía que analiza los registros del sistema para extraer estadísticas de batería y datos del kernel en una interfaz basada en web. La herramienta se especializa en correlacionar fuentes de datos dispares en una línea de tiempo cronológica sincronizada. Identifica actividades que consumen energía mediante el seguimiento de transiciones de wakelock de espacio de usuario y kernel, mapeando fuentes de activación del kernel a marcas de tiempo en tiempo real y superponiendo registros de monitores de energía de hardware externos sobre eventos del sistema. El sistema proporciona capacidades para el análisis comparativo, permitiendo el cálculo de deltas entre múltiples informes de errores para medir cambios en el comportamiento energético. Además, agrega métricas a nivel de aplicación y eventos del sistema para identificar disparadores de software específicos que impiden que un dispositivo entre en modo de suspensión.
Correlates kernel wakeup sources and system events on a timeline to troubleshoot low-level power drainage issues.
TileLang is a Python-embedded domain-specific language compiler that JIT-compiles and autotunes GPU kernels. It uses a tile-based DSL, automatic software pipelining, and parallel autotuning to generate optimized GPU kernels at runtime. It supports tensor core operations with Pythonic syntax, automatic memory management, and thread mapping. The compiler searches over tile sizes, thread counts, and scheduling policies, compiling and benchmarking candidates in parallel to find the fastest kernel. It also caches compiled binaries and tuning results to disk for reuse across sessions. TileLang inc
Implements GPU kernel assertions that halt execution and optionally print a message when a condition fails.
This project provides a Linux kernel development environment and a system emulation suite for building and debugging kernel modules and baremetal assembly across multiple hardware architectures. It functions as a comprehensive sandbox and framework for low-level system development, utilizing QEMU to simulate hardware environments without the need for physical devices. The environment integrates cross-compilation toolchains using Buildroot and crosstool-NG to target x86_64, ARMv7, and ARMv8 platforms from a single host. It features a specialized kernel debugging framework that leverages GDB an
Provides a collection of GDB and KGDB configurations for step-debugging kernel modules and system behavior.
Este proyecto es un manual técnico integral para instalar macOS en hardware x86 que no es de Apple utilizando el bootloader OpenCore. Sirve como una guía de configuración para emular hardware de Apple y parchear el firmware del sistema para lograr la compatibilidad del sistema operativo en PCs. La documentación proporciona instrucciones detalladas para la emulación de hardware SMBIOS, incluyendo la generación de identificadores de sistema y perfiles de modelo. Cubre la aplicación de parches de tablas ACPI para habilitar la gestión de energía nativa y la modificación de servicios de tiempo de ejecución UEFI para resolver problemas de mapa de memoria y protección contra escritura. El recurso detalla además la compatibilidad de hardware para componentes de red, gráficos y audio, así como la gestión de extensiones de kernel. Incluye orientación sobre la configuración del bootloader, la creación de instaladores arrancables y el uso de registros detallados (verbose) y kits de depuración para solucionar pánicos de kernel.
Provides instructions for deploying specialized debug versions of system foundations to troubleshoot kernel-mode components.
HyperDbg is a hardware-assisted kernel-mode debugging platform that leverages virtualization to monitor and control system execution. By utilizing hypervisor-level primitives, it enables deep system analysis and instrumentation without relying on standard operating system debugging interfaces. The framework provides a comprehensive environment for inspecting both kernel and user-mode processes, allowing for granular control over execution flow and system state. The project distinguishes itself through a transparent debugging layer designed to remain invisible to the target environment. It emp
Monitors both user-mode and kernel-mode processes by virtualizing the system for unified execution tracking.
This project is an educational operating system kernel designed to demonstrate the fundamental architectural principles of memory paging and process management. It is implemented as a minimal kernel that serves as a practical reference for building a functioning system from the ground up. The implementation features a preemptive multitasking kernel that switches execution contexts between threads to share a single CPU. It includes an x86 virtual memory manager that uses paging to map virtual addresses to physical memory and isolate processes. The system covers low-level hardware interfacing
Provides diagnostic workflows for troubleshooting driver-level code and kernel-mode memory management.
XNU is an operating system kernel designed to manage system hardware and process execution across different processor architectures. It utilizes a hybrid microkernel design that combines microkernel message passing with monolithic kernel performance by embedding critical subsystems into a single address space. The project implements a port-based asynchronous messaging system for communication between kernel tasks and userspace processes. It manages hardware interactions through a layered driver architecture and enforces system-wide security policies via a mandatory access control interface.
Supports connecting external hardware interfaces to inspect system state and manage crashes during development.