ebpf-for-windows  by microsoft

eBPF implementation for Windows, enabling kernel programmability

Created 5 years ago
3,467 stars

Top 13.8% on SourcePulse

GitHubView on GitHub
Project Summary

This project provides an implementation of eBPF for Windows, enabling developers to leverage familiar Linux eBPF toolchains and APIs for kernel extensions, observability, and security on Windows. It targets developers and power users seeking to extend Windows kernel functionality with eBPF.

How It Works

The project translates eBPF bytecode into native Windows drivers via a bpf2c tool and the PREVAIL verifier. This "native mode" is preferred for security and compatibility with Hyper-V enforced Code Integrity (HVCI). Alternative modes include JIT compilation via a user-mode service (eBPFSvc.exe) and an interpreter (debug builds only), both of which are less secure and incompatible with HVCI. eBPF programs interact with the Windows kernel through a shim that wraps native APIs.

Quick Start & Requirements

  • Install/Run: Follow the Getting Started Guide.
  • Prerequisites: Windows 11+ or Windows Server 2022+. Requires Visual Studio toolchain for native driver builds.
  • Setup Time: Not specified, but native driver compilation can be time-consuming.

Highlighted Details

  • Supports native code generation for HVCI compatibility.
  • Exposes Libbpf APIs for application compatibility.
  • Leverages existing projects like IOVisor uBPF and PREVAIL.
  • Offers Slack and GitHub Discussions for community interaction.

Maintenance & Community

Licensing & Compatibility

  • License: MIT.
  • Compatible with commercial and closed-source applications.

Limitations & Caveats

The interpreter mode is only available in debug builds and is not suitable for production environments, especially those with HVCI enabled. Source code compatibility is focused on generic hooks and helpers, not Linux-specific internal data structures.

Health Check
Last Commit

3 days ago

Responsiveness

1 week

Pull Requests (30d)
35
Issues (30d)
31
Star History
27 stars in the last 30 days

Explore Similar Projects

Starred by Boris Cherny Boris Cherny(Creator of Claude Code; MTS at Anthropic), Patrick von Platen Patrick von Platen(Author of Hugging Face Diffusers; Research Engineer at Mistral), and
4 more.

kaldi by kaldi-asr

0.1%
15k
Speech recognition toolkit for Linux, macOS, Cygwin, and Windows
Created 11 years ago
Updated 6 months ago
Feedback? Help us improve.