Clone this repo:
  1. cc4f65b [vm] Fix ubsan overflows by Arve Hjønnevåg · 6 days ago master
  2. f17a5e6 [kernel][vm] Expose vmm_find_region method by Zhong,Fangjian · 5 weeks ago
  3. 79892e6 Ensure the boot time allocator is not used after startup by Nick Bray · 2 weeks ago
  4. b056394 Check for errors when marking early allocated pages by Nick Bray · 2 weeks ago
  5. bc55238 [lib][dpc] Rewrite DPC implementation by Michael Ryleev · 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