284 Star 1.8K Fork 799

OpenHarmony / kernel_liteos_a

 / 详情

【置顶-通告】轻内核TODOList & 社区开发报名中

Backlog
Task member
Opened this issue  
2021-06-19 11:40

本issue会长期更新轻内核TODO事务,通过社区持续构建轻内核小体积、快启动、高性能、易用易移植等关键能力, 欢迎感兴趣的同学一起参与轻内核的社区贡献
如对轻内核的演进方向、应用场景等有建议或者诉求,欢迎一起交流碰撞

如何参与
1 issue回帖
2 私信 @Denny @SimonLi @wangmihu
3 通过#I3PXB3:【置顶-通告】欢迎参与OpenHarmony轻内核技术交流讨论

当前TODO的关键任务

任务 状态 计划完成时间 开发人员
liteos_m易用性
dump增强(配套解析工具) todo
完善增强L0低功耗框架 doing 8月20日 @zhushengle
全内存dump(配套解析工具) doing 8月31日 @LeonChan
liteos_m能力增强
基于MPU/PMP的多任务简化隔离 todo
基于MPU/PMP的多BIN隔离及灌段隔离 todo
扩展支持中断嵌套 todo
支持xtensa架构 doing 9月15日 @Zhaotianyu
支持任务结束后资源回收 todo 8月31日 @JerryH
互斥锁优先级继承机制优化 doing 8月31号 @JerryH
文件系统增强
NandFlash文件系统 (基于littlefs增强:小体积、性能、开源) todo
liteos_m VFS增强 doing @LeonChan
pagecache优化:使用vnode替代filep,减少fd占用 doing 8月31日 @LeonChan
面向fat32、jffs2持续性能优化,做到极致 doing
fat32支持fast seek (现有fast seek限制文件扩展,需要改造) todo
接口层去nuttx todo @野生毛霉君
FAT文件系统去大锁 doing 8月31日 @Far
liteos_a支持三方芯片易移植性
启动框架中双核并行开关打开 todo 8月18日 @Zhaotianyu
支持libc++引入 todo @zhangfanfan2
支持C库编译解耦,导入GCC编译 doing @Caoruihong
宏配置依赖关系整理 todo @Caoruihong
典型商用配置场景整理并导入门禁(1V1映射,去缺页,去隔离,单进程等等) doing 8月31日 @JerryH
liteos_a易用性
dump支持符号解析 doing 7月31日 @zhangfanfan2
trace、backtrace等 todo @Zhaotianyu
liteos_a能力增强
rootfs降内存demo验证 doing @boxi
单链表整改(SMP多核性能) todo @boxi
快启 doing @boxi
SMP spinlock死锁维测功能修复和完善 todo @zhangfanfan2
A53/A72支持(hikey960,树莓派B4) todo
liteos_a支持direct启动 suspend @boxi
liteos_a三方库移植
libuv、dlna、benchmark、pcap、gstreamer、iperf、perf、tcpdump 等等 todo
C库能力补全(epoll实现等) todo
资料、文档类任务
开发指南中补充toybox等章节 doing
开发指南中内核编译构建、menuconfig配置等章节 todo
开发指南中内核测试套章节 doing
设备开发指南书籍 doing @kenneth
测试验证
syzkaller、difuze等 todo
探索性课题
基于rust重写liteos_m基础内核 doing
用户态驱动(对比业界并增强) todo
用户态文件系统 todo
公共
实现完整L0 OHOS的qemu仿真 qemu仓跟踪
实现L1 LiteOS-A及上层鸿蒙组件的qemu仿真 qemu仓跟踪
liteos_a内核C库缩小,liteos_m扩大 doing 8月30日 @Zhaotianyu

Comments (11)

Denny created任务
Denny set assignee to Denny
Denny set branch to master
Denny set start time to 2021-06-19
Denny set deadline to 2021-10-31
Denny set top level to High
Denny set related repository to OpenHarmony/kernel_liteos_a
Denny changed assignee from Denny to not set
Denny changed issue state from 待办的 to 进行中
Denny changed description
Denny changed description
Denny changed description
Denny changed issue state from 进行中 to 待办的
Denny changed description
Denny changed description
Denny changed description
Denny changed description
kenneth changed description
Expand operation logs

6/28刷新进展:
完成TODO项:

  • 低功耗框架及实现(含投票机制)
  • 头文件引用关系整理
  • 启动框架重构
  • mksh移植
  • procfs适配(ifconfig、fd、free等)
  • rwlock

新增todo项:

  • liteos_m支持任务结束后资源回收
  • 支持libc++引入替换编译器C++库
  • 支持C库编译解耦,导入GCC编译
  • liteos_a支持direct启动
Denny changed description

How about c-sky?

欢迎贡献

Denny changed description
Denny changed description

8-16进展刷新:

完成项:

  • liteos_m开发者手册
  • liteos_m支持Shell + AT
  • liteos_m支持elf动态加载
  • 支持arm9架构
  • 支持软链接、硬链接
  • bootargs重构
  • musl库归一化
  • 编译框架整合到gn
  • 实现基于python的kconfig可视化配置
  • toybox命令集增强
  • 典型高频函数C库性能优化
  • liteos_a开发者手册

新增项:

  • 完善增强L0低功耗框架
  • 非连续内存堆归一
  • 互斥锁优先级继承机制优化
  • pagecache优化:使用vnode替代filep,减少fd占用
  • 启动框架中双核并行开关打开
  • rootfs降内存demo验证
  • SMP spinlock死锁维测功能修复和完善
  • 开发指南中补充toybox等章节
  • 开发指南中内核编译构建、menuconfig配置等章节
  • 开发指南中内核测试套章节
  • 设备开发指南书籍

linux用到L1上了,liteos-a有尝试过用到L2上吗,真的做到内核可以切换,全方位验证代码的可灵活组装特性,不然我觉得还不如都用linux,舍弃掉liteos-a,这个有点浪费人力物力财力。

liteos_a有小体积,高性能,实时等方面的天然优势,目前C库兼容性与Linux差异不大,大部分Linux生态应用可以直接移植上来,L2的子系统也可以移植到liteos_a,这个按实际需要的场景来分优先级支持

我觉得应该强调posix兼容,不应强调Linux生态应用,两者界限还是有一点差别,所以你们这个L2是不是和linux有很深入的绑定关系,不能无缝切换其它的内核,例如liteos_a的内核,理论上上层软件使用hdf和一些抽象概念特性的接口,和特定内核特性无关,鸿蒙系统上面这套框架应该可以做到和内核没有太大牵扯,但是内核上,我不知道随着项目的推进,比如增加procfs等等东西,我不是说排斥这些东西,是不是其实就是朝着linux上前进,与其如此,内核上还不如直接linux,如果觉得不够小巧,性能不足,可以对linux进行相关剪裁变动,毕竟linux内核的生态其实还可以,查看某些信息,或者别的一些工具等等之类,不然你们也不会往这个上面靠拢了,或者要么你们增强liteos_a的能力,能够做点不一样的东西,可以和linux媲美,局部更好,做到有吸收,但也有不同的特性,搞不好还可以形成一个liteos_a内核的生态,不仅鸿蒙系统可以拿来用,将来可能其它系统也可以拿你们这个内核去用,不然我确实觉得用linux挺好的

在3~4年前,你的观点是强有力的,但在今天就很难讲了,这可能会涉及到卡脖子问题,反而我看到了华为用liteos_a替换掉linux的眉目。

kenneth changed description
kenneth changed description

这个都不更新了吗?

有harmonyOS linux 内核的开发交流群吗?

有harmonyOS linux 内核的开发交流群吗?

@钟斌 不了解群,有个zulip交流社区。https://zulip.openharmony.cn/login/#narrow/stream/1-general/topic/Welcome

kenneth set assignee to LeonChan
kenneth changed title

Sign in to comment

Status
Assignees
Projects
Milestones
Pull Requests
Successfully merging a pull request will close this issue.
Branches
Planed to start   -   Planed to end
-
Top level
Priority
Duration (hours)
Confirm
参与者(6)
1564930 dennyshen 1615514438
C
1
https://git.oschina.net/openharmony/kernel_liteos_a.git
git@git.oschina.net:openharmony/kernel_liteos_a.git
openharmony
kernel_liteos_a
kernel_liteos_a

Search