2026.1.25-2026.2.1

这周工作量不是很大,一直在帮学校师兄那边跑实验。抽时间去阅读了StarryOS文档,了解其项目结构。并在自己的机器上能跑通StarryOS。现在正在阅读代码,进一步了解不同模块加载流程,进而能够进行裁剪。

StarryOS的内核模块分成两大部分:ArceOS和StarryOS。二者又分别分成核心模块与外部组件。而按需加载的逻辑是在启动时只加载最基本的部分,其余全是懒加载。所以理论上StarryOS(ArceOS)部分没有被拆分出作为独立模块的功能也可以作为库按需加载,不过这需要我进一步去阅读代码了解其结构,最好可以不动原有架构,否则得重构成库的形式。

基于目前计划,我可以先从StarryOS的外部组件入手,因为这些组件本身就是独立的功能,可以作为库按需加载。然后逐步向核心模块扩展。先裁剪这些外部组件,然后启动内核,运行测试样例,此时会触发未命中,然后再根据注册表去加载对应模块并缓存。