jgarzik/hk
A modern, Linux compatible OS kernel
{ "createdAt": "2025-12-18T23:38:31Z", "defaultBranch": "main", "description": "A modern, Linux compatible OS kernel", "fullName": "jgarzik/hk", "homepage": "", "language": "Rust", "name": "hk", "pushedAt": "2025-12-30T02:03:26Z", "stargazersCount": 328, "topics": [ "kernel", "linux", "linux-kernel" ], "updatedAt": "2026-01-06T11:18:38Z", "url": "https://github.com/jgarzik/hk"}hk - an operating system kernel written in Rust
Section titled “hk - an operating system kernel written in Rust”Design goals
Section titled “Design goals”Modern multi-processing
Section titled “Modern multi-processing”Multi-threaded, multi-core: Designed for modern 64-bit multi-core processors.
Initially targeting x86-64 and aarch64.
Device tree
Section titled “Device tree”The kernel uses a device tree to describe the hardware components of the system. This allows for a flexible and extensible way to manage hardware resources.
Linux compatible
Section titled “Linux compatible”Uses the Linux syscall ABI for each respective architecture.
Wishlist
Section titled “Wishlist”- hybrid kernel/user model for DMA’ing device drivers
- eBPF even more widely used
- Policy cut-off for legacy hardware: Require >= 2021 ? Open to debate.
Building etc
Section titled “Building etc”Run make check or make check-arm. Run make help for more info.
Requires qemu, dosfstools, and iso tools.
Naming
Section titled “Naming”hk stands for… happy koala, or hacker kernel, or hong kong,