Zircon内核与LK内核的关系

LK(Little Kernel)是一个为嵌入式应用设计的微系统内核,它为FreeRTOS、ThreadX这样的商业项目提供了一个不错的选择。这些系统仅提供有限的内存、有限的外设和任务集;Zircon运行在那些拥有快速处理器、不定大小内存、能够挂载任意外设的现代手机、PC等末端计算设备上。

Zircon内部构建在LK层之上;Zircon有进程的概念,LK则没有;Zircon的进程构建在LK的线程、内存结构之上。

更多的不同点:

  • Zircon有一类用户模式的支持,LK没有;
  • Zircon是一个对象句柄系统,LK没有这个概念;
  • Zircon有能力安全模型,在LK里所有代码都是被信任的。

随着时间的推移,为了满足新的需求、更好的适应上层系统,低层次的结构也可能会改变。

原文链接:

https://fuchsia.googlesource.com/zircon/+/HEAD/docs/zx_and_lk.md

延伸:

LK:

https://github.com/littlekernel/lk/wiki/Introduction

LK内核正在被使用的场景:

  • Android的bootloader
  • Trusted Execution Environment