精读鸿蒙内核源码,百万汉字注解分析; 百篇博客深入解剖,挖透内核地基工程. 定期同步官方源码,输出覆盖主流站点.
中文注解鸿蒙轻内核 | kernel_liteos_a_note 是在 OpenHarmony 的 kernel_liteos_a 基础上给内核源码加上中文注解的版本,同步官方代码迭代推进
因大学时阅读 linux 2.6 内核痛并快乐的经历,一直有个心愿,对底层基础技术进行一次系统性的整理,方便自己随时翻看,同时让更多对底层感兴趣的小伙伴减少时间,加速对计算机系统级的理解,而不至于过早的放弃。奈想法很美好,现实很骨感,多年一直没有行动,基本要放弃这件事了。恰逢 2020年9月10日 鸿蒙正式开源,重新激活了多年的心愿,就有那么点如黄河之水一发不可收拾了
今年已是第五年,中间断断续续的,时间无法稳定投入,有就多做,没就少做,但从未放弃,一步一脚印,慢慢往前拱,坚持做对的事,方向对,速度没那么重要,时间会给答案。除了注解,也写写画画了不少,百篇内核文章分析1.0版 完成了80篇左右,怎么看AI
内核注解同时在 gitee | github | 关于 zzz 目录
中文加注版比官方版无新增文件,只多了一个zzz的目录,里面放了一些加注所需文件,它与内核代码无关,可以忽略它,取名zzz是为了排在最后,减少对原有代码目录级的侵入,zzz 的想法源于微信中名称为AAA的那帮朋友,你的微信里应该也有他们熟悉的身影吧 :-)
/kernel/liteos_a_note ├── apps # 用户态的init和shell应用程序 ├── arch # 体系架构的目录,如arm等 │ └── arm # arm架构代码 ├── bsd # freebsd相关的驱动和适配层模块代码引入,例如USB等 ├── compat # 内核接口兼容性目录 │ └── posix # posix相关接口 ├── drivers # 内核驱动 │ └── char # 字符设备 │ ├── mem # 访问物理IO设备驱动 │ ├── quickstart # 系统快速启动接口目录 │ ├── random # 随机数设备驱动 │ └── video # framebuffer驱动框架 ├── figures # 内核架构图 ├── fs # 文件系统模块,主要来源于NuttX开源项目 │ ├── fat # fat文件系统 │ ├── jffs2 # jffs2文件系统 │ ├── include # 对外暴露头文件存放目录 │ ├── nfs # nfs文件系统 │ ├── proc # proc文件系统 │ ├── ramfs # ramfs文件系统 │ └── vfs # vfs层 ├── kernel # 进程、内存、IPC等模块 │ ├── base # 基础内核,包括调度、内存等模块 │ ├── common # 内核通用组件 │ ├── extended # 扩展内核,包括动态加载、vdso、liteipc等模块 │ ├── include # 对外暴露头文件存放目录 │ └── user # 加载init进程 ├── lib # 内核的lib库 ├── net # 网络模块,主要来源于lwip开源项目 ├── platform # 支持不同的芯片平台代码,如Hi3516DV300等 │ ├── hw # 时钟与中断相关逻辑代码 │ ├── include # 对外暴露头文件存放目录 │ └── uart # 串口相关逻辑代码 ├── security # 安全特性相关的代码,包括进程权限管理和虚拟id映射管理 ├── shell # 接收用户输入的命令,内核去执行 ├── syscall # 系统调用 ├── testsuilts # 测试套件 ├── tools # 构建工具及相关配置和代码 └── zzz # 中文注解版新增目录
感谢过程中(统计至 2025年11月09日)无私赞助的 29 位热心朋友,有企事业单位职工,有在校学生,有行业内资深大佬,也有非专业的纯粹爱好者,在此一并谢过,作者将带着这份温暖继续前行。 >> 进入了解