14 Repos
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 ist ein Visualisierungs- und Profiling-Tool zur Analyse des Stromverbrauchs und der Batterieentladung auf Android-Geräten. Es fungiert als Bugreport-Viewer und Stromverbrauchsprofiler, der System-Logs parst, um Batteriestatistiken und Kernel-Daten in eine webbasierte Oberfläche zu extrahieren. Das Tool ist darauf spezialisiert, disparate Datenquellen auf einer synchronisierten chronologischen Zeitachse zu korrelieren. Es identifiziert stromverbrauchende Aktivitäten durch das Tracking von Userspace- und Kernel-Wakelock-Übergängen, das Mapping von Kernel-Wakeup-Quellen auf Echtzeit-Zeitstempel und das Überlagern von externen Hardware-Strommonitor-Logs auf Systemereignisse. Das System bietet Funktionen für vergleichende Analysen, die die Berechnung von Deltas zwischen mehreren Bugreports ermöglichen, um Änderungen im Stromverbrauchsverhalten zu messen. Zudem aggregiert es Metriken auf Anwendungsebene und Systemereignisse, um spezifische Software-Trigger zu identifizieren, die verhindern, dass ein Gerät in den Schlafmodus wechselt.
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.
Dieses Projekt bietet eine Linux-Kernel-Entwicklungsumgebung und eine System-Emulations-Suite für das Erstellen und Debuggen von Kernel-Modulen und Bare-Metal-Assembly über mehrere Hardware-Architekturen hinweg. Es fungiert als umfassende Sandbox und Framework für Low-Level-Systementwicklung und nutzt QEMU, um Hardware-Umgebungen ohne physische Geräte zu simulieren. Die Umgebung integriert Cross-Compilation-Toolchains unter Verwendung von Buildroot und crosstool-NG, um x86_64-, ARMv7- und ARMv8-Plattformen von einem einzigen Host aus anzusteuern. Sie bietet ein spezialisiertes Kernel-Debugging-Framework, das GDB und KGDB für die schrittweise Ausführung und Zustandsinspektion von Kernel- und Userland-Prozessen nutzt. Zu den breiten Funktionen gehören automatisierte Regressionstests zur Isolierung von Boot- und Funktionsfehlern durch Versionskontroll-Bisection, Hardware-Abstraktion für das Management von CPU-Energiezuständen und Systemregistern sowie Low-Level-Testprimitive für Speicherzustandsintegrität und Assembly-Analyse. Das System enthält zudem Utilities für Performance-Benchmarking von Befehlen, Output-Logging und containerisiertes Workspace-Bootstrapping.
Provides a collection of GDB and KGDB configurations for step-debugging kernel modules and system behavior.
Dieses Projekt ist ein umfassendes technisches Handbuch für die Installation von macOS auf Nicht-Apple-x86-Hardware unter Verwendung des OpenCore-Bootloaders. Es dient als Konfigurationsleitfaden für die Emulation von Apple-Hardware und das Patchen von System-Firmware, um Betriebssystemkompatibilität auf PCs zu erreichen. Die Dokumentation bietet detaillierte Anweisungen für die SMBIOS-Hardware-Emulation, einschließlich der Generierung von Systemidentifikatoren und Modellprofilen. Sie deckt die Anwendung von ACPI-Tabellen-Patches zur Aktivierung nativer Energieverwaltung und die Modifikation von UEFI-Laufzeitdiensten zur Lösung von Problemen mit Speicherkarten und Schreibschutz ab. Die Ressource beschreibt zudem die Hardwarekompatibilität für Netzwerk-, Grafik- und Audiokomponenten sowie die Verwaltung von Kernel-Erweiterungen. Sie enthält Anleitungen zur Bootloader-Konfiguration, zur Erstellung bootfähiger Installationsmedien und zur Verwendung von ausführlichem Logging und Debug-Kits zur Fehlerbehebung bei Kernel-Panics.
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.