2021-05-29 16:58:11 -07:00
|
|
|
# The Little Kernel Embedded Operating System
|
2013-02-09 13:25:38 -08:00
|
|
|
|
2021-05-29 16:58:11 -07:00
|
|
|
The LK kernel is an SMP-aware kernel designed for small systems ported to a variety of platforms and cpu architectures.
|
2015-06-25 14:31:13 -07:00
|
|
|
|
2025-07-09 23:31:23 -07:00
|
|
|
It is used in a variety of open source and closed source projects, notably the bootloader for a lot of Android phones of various make.
|
|
|
|
|
|
2016-02-20 11:47:50 -08:00
|
|
|
See https://github.com/littlekernel/lk for the latest version.
|
|
|
|
|
|
2025-07-09 23:31:23 -07:00
|
|
|
For comprehensive documentation, see [Index](docs/index.md).
|
|
|
|
|
|
|
|
|
|
## High Level Features
|
2015-06-25 14:31:13 -07:00
|
|
|
|
2021-06-04 13:25:52 -07:00
|
|
|
- Fully-reentrant multi-threaded preemptive kernel
|
|
|
|
|
- Portable to many 32 and 64 bit architectures
|
|
|
|
|
- Support for wide variety of embedded and larger platforms
|
|
|
|
|
- Powerful modular build system
|
|
|
|
|
- Large number of utility components selectable at build time
|
2016-05-01 23:35:08 -07:00
|
|
|
|
2025-07-09 23:31:23 -07:00
|
|
|
## Supported architectures
|
2016-05-01 23:35:08 -07:00
|
|
|
|
2024-03-09 17:58:08 -08:00
|
|
|
- ARM32
|
2024-06-14 14:34:44 -07:00
|
|
|
- Cortex-M class cores (armv6m - armv8m)
|
|
|
|
|
- ARMv7+ Cortex-A class cores
|
2024-03-09 17:58:08 -08:00
|
|
|
- ARM64
|
2024-06-14 14:34:44 -07:00
|
|
|
- ARMv8 and ARMv9 cores
|
2024-03-09 17:58:08 -08:00
|
|
|
- RISC-V 32 and 64bit bit in machine and supervisor mode
|
2024-06-14 14:34:44 -07:00
|
|
|
- x86-32 and x86-64
|
2024-03-09 17:58:08 -08:00
|
|
|
- Motorola 68000
|
|
|
|
|
- Microblaze
|
|
|
|
|
- MIPS
|
|
|
|
|
- OpenRISC 1000
|
|
|
|
|
- VAX (experimental)
|