Clone this repo:
  1. 45f6605 Enable -Wimplicit-fallthrough for Clang builds. by Nick Bray · 3 months ago master
  2. e86483c Default to building with Clang. by Nick Bray · 4 months ago
  3. 80b0506 [include][shared][lk][macros] Move DIV_ROUND_UP to macros.h by Roberto Pereira · 4 months ago
  4. df1837f Use --std=c11 rather than gnu11. by Nick Bray · 4 months ago
  5. a4a3d43 Enable -Werror. by Nick Bray · 4 months ago


The LK embedded kernel. An SMP-aware kernel designed for small systems.

See for the latest version.

See for documentation.


Build Status

To build and test for ARM on linux

  1. install or build qemu. v2.4 and above is recommended.
  2. install gcc for embedded arm (see note 1)
  3. run scripts/do-qemuarm (from the lk directory)
  4. you should see ‘welcome to lk/MP’

This will get you a interactive prompt into LK which is running in qemu arm machine ‘virt’ emulation. type ‘help’ for commands.

note 1: for ubuntu: sudo apt-get install gcc-arm-none-eabi or fetch a prebuilt toolchain from