14 个仓库
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 是一款用于分析 Android 设备功耗和电池损耗的可视化和分析工具。它作为一个错误报告查看器和功耗分析器,解析系统日志以将电池统计数据和内核数据提取到基于 Web 的界面中。 该工具专门用于在同步的时间轴上关联不同的数据源。它通过追踪用户空间和内核唤醒锁(wakelock)转换、将内核唤醒源映射到实时时间戳,并将外部硬件功耗监控日志叠加到系统事件上来识别耗电活动。 该系统提供了比较分析功能,允许计算多个错误报告之间的增量以衡量功耗行为的变化。它进一步聚合了应用程序级指标和系统事件,以查明导致设备无法进入睡眠模式的具体软件触发因素。
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.
该项目提供了一个 Linux 内核开发环境和一个系统仿真套件,用于跨多种硬件架构构建和调试内核模块及裸机汇编。它作为一个全面的沙箱和框架,用于底层系统开发,利用 QEMU 模拟硬件环境,无需物理设备。 该环境使用 Buildroot 和 crosstool-NG 集成交叉编译工具链,以从单个主机针对 x86_64、ARMv7 和 ARMv8 平台。它具有一个专门的内核调试框架,利用 GDB 和 KGDB 对内核和用户空间进程进行逐步执行和状态检查。 广泛的功能包括通过版本控制二分法隔离引导和功能故障的自动化回归测试、用于管理 CPU 电源状态和系统寄存器的硬件抽象,以及用于内存状态完整性和汇编分析的底层测试原语。该系统还包括用于命令性能基准测试、输出日志记录和容器化工作区引导的实用工具。
Provides a collection of GDB and KGDB configurations for step-debugging kernel modules and system behavior.
本项目是一份全面的技术手册,旨在指导如何在非 Apple x86 硬件上使用 OpenCore 引导加载程序安装 macOS。它作为一份配置指南,用于模拟 Apple 硬件并修补系统固件,以在 PC 上实现操作系统兼容性。 该文档提供了关于 SMBIOS 硬件模拟的详细说明,包括系统标识符和模型配置文件的生成。它涵盖了 ACPI 表补丁的应用以启用原生电源管理,以及修改 UEFI 运行时服务以解决内存映射和写保护问题。 该资源进一步详细说明了网络、图形和音频组件的硬件兼容性,以及内核扩展的管理。它包括关于引导加载程序配置、创建可引导安装程序以及使用详细日志和调试工具包来排查内核崩溃的指导。
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.