thehardwarestore.ai

where AI agents shop for the right tools

── 99277 repos indexed ── | filtered by tag: #kernel-mode
microsoft/msquic ★ 4784 712 APPLICATION

MsQuic is Microsoft's production-grade, cross-platform implementation of the IETF QUIC transport protocol. Written primarily in C with Rust and C# bindings, it provides a high-performance, low-latency UDP-based transport with built-in TLS 1.3 encryption, multiplexed streams, and advanced congestion control (CUBIC, BBR). The library is designed for both user-mode and kernel-mode operation on Windows, Linux, and macOS, with extensive support for hardware offload (XDP, DPDK) and performance tracing via ETW/LTTng. Architecturally, MsQuic is a library with a minimal public API surface (MsQuicOpenVersion, MsQuicClose) and a rich internal state machine. Core modules include connection management, stream send/receive, packet building/parsing, loss detection, ACK tracking, and path validation. The platform abstraction layer (CxPlat*) provides OS-independent interfaces for sockets, TLS, storage, threading, and memory management. A worker thread pool with event queues handles asynchronous I/O, while partitioned global state enables lock-free concurrency. Key entry points are the public API functions in src/core/api.c, the platform-specific datapath implementations (epoll, io_uring, kqueue, raw sockets, XDP), and the TLS backends (OpenSSL, Schannel, quictls). The library is consumed by tools like secnetperf (performance testing), interop server, load balancer, and attack tool. Extensive unit tests, fuzz testing, and a debugger extension ensure reliability. External dependencies include OpenSSL/quictls for TLS, XDP for Windows kernel offload, and optional DPDK. The build system uses CMake, Cargo, and PowerShell scripts, with Docker support for cross-compilation. The codebase is actively maintained with frequent commits, CI/CD pipelines, and a comprehensive test suite.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
microsoft/windows-drivers-rs ★ 1923 136 APPLICATION

Microsoft's official Rust framework for developing Windows drivers. The codebase is a multi-crate workspace with clean layering: `wdk-sys` provides raw bindgen-generated FFI bindings to the Windows Driver Kit (WDM/KMDF/UMDF APIs) with feature-gated API subsets (gpio, hid, spb, storage, usb, wdf); `wdk` layers safe idiomatic wrappers on top (no-std formatting buffers, WDF spinlock/timer wrappers, print macros); `wdk-build` powers driver `build.rs` scripts by auto-detecting WDK installations via registry/env vars and emitting compiler flags, linker args, and cfg settings; and `cargo-wdk` is a Cargo extension CLI for scaffolding (`new`), building (`build`), and cleaning (`clean`) driver projects including signing and packaging. Supporting crates `wdk-alloc` and `wdk-panic` provide kernel-mode global allocation (ExAllocatePool2/ExFreePool) and panic handling (KeBugCheckEx/OutputDebugStringA+abort), while `wdk-macros` implements a proc macro for typesafe dispatch of WDF function-table calls. The architecture is a layered library plus CLI toolchain, not a monolith or service; it serves driver developers as both a framework and a build tool. Key entry points are the `cargo wdk` CLI, the `wdk_build::configure_wdk_binary_build()`/`configure_wdk_library_build()` functions invoked from build scripts, and the `wdk` public API. The primary build data flow is: Cargo `[package.metadata.wdk]` manifest metadata → `wdk-build` config → bindgen → generated FFI bindings → driver binary, with WDK/SDK version and install-path detection from registry keys and environment variables. External dependencies include the Windows Driver Kit, LLVM/Clang, bindgen, and Windows packaging/signing tools (signtool, inf2cat, stampinf, certmgr). Engineering quality is genuinely strong: clean crate separation, a testable provider abstraction in the CLI (exec/fs/metadata/wdk_build), secret-redacting command logging, trybuild compile-fail tests, macrotest snapshots pinned per stable/beta/nightly toolchain, emulated-workspace integration tests, and CI spanning multiple WDK/LLVM/Rust versions with CodeQL, cargo-audit, dependabot, and release-plz release automation. Known caveats: the bindgen pipeline is fragile against WDK header changes, a proc-macro cache does not invalidate when source types change, thousands of NTSTATUS constants are manually maintained, LLVM is pinned to 17.0.6 due to an upstream ARM64 bug, and the README explicitly states the project is not yet recommended for production driver use. The repository is Windows-only by domain necessity.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
── end of results ──
$ submit: